0
点赞
收藏
分享

微信扫一扫

matlab---基础知识

诗远 2022-02-02 阅读 105
matlab

目录

前言

一、matlab系统环境

1.matlab的界面

 换行方式

 2.设置当前文件夹

 cd函数怎么建立

​ 3.工具区窗口

 4.简单的赋值应用

5. matlab的搜索路径

如何设置文件搜索路径

 思考:

二、matlab数值数据

1.数值数据类型的分类

2.数值数据输出格式

3.常用数学函数

(1)函数的调用格式为:

(2)常用函数的应用

 (3)函数应用举例

三.变量及其操作

1.变量与赋值语句

2.赋值语句

3.预定义变量

4.变量的管理

(1)内存变量的删除与修改

(2)内存变量文件

四. matlab矩阵的表示

1.矩阵的建立

2.冒号表达式

 3.结构矩阵和单元矩阵

五.矩阵元素的引用

1.矩阵元素的引用方式

    (1)通过下标来引用矩阵的元素

     (2)通过序号来引用

六.MATLAB基本运算

1.算术运算

2.关系运算

3.逻辑运算

七.字符串处理

1.字符串的表示

2.字符串的操作

(1)字符串的执行

 (2)字符串与数值之间的转换

(3)字符串的比较

(4)字符串的查找与替换

总结


前言

matlab第一节:基础知识

一、matlab系统环境

1.matlab的界面

 换行方式

 2.设置当前文件夹

 cd函数怎么建立

 3.工具区窗口

 4.简单的赋值应用

 clear:清屏。

5. matlab的搜索路径

变量——>内部函数——>程序文件——>当前文件夹下的程序文件——>文件搜索路径下文件夹的程序文件

如果定义变量时,请不要使用已有的特定函数名。

如何设置文件搜索路径

1.用path命令设置文件搜索路径。例如:

>>path(path,'e:\mat.work')

2.用对话框设置文件搜索路径。

 思考:

(1)如果在当前文件夹和搜索路径文件夹下建立了一个同名的M文件,那么在命令行窗口输入文件名时,执行哪个文件?

程序文件搜索顺序现在当前文件夹中搜索再在文件搜索路径中查找

(2)如果用户建立的文件即没有保存在文件夹下,也没有保存在文件搜索路径中,那么在命令行窗口输入文件名时,会出现什么信息?

出现错误信息

二、matlab数值数据

1.数值数据类型的分类

1.整型:

(1)无符号:8位(00000000~11111111)

(2)带符号:8位(10000000~01111111)

uint8函数将数值数据转换为无符号的8位整数,int8函数将数值数据转换为带符号8位整数

>>x=int8(129)
x=
   127  %%带符号的最大为127,所以转换时只能转成127
>>x=uint8(129)
x=
   129  %%无符号的最大为255,所以转换后仍为129

2.浮点型:

(1)单精度:四个字节

(2)双精度:八个字节(精度更高)(数值数据默认为双精度)

使用single,将其他类型的数转换为单精度。

使用double,转换为双精度

>>class(4)
ans=
double   %%调用class函数
>>class(single(4))
ans=
single   %%调用single函数

3.复数型:

复数类型包括实部与虚部两个部分,实部和虚部默认为双精度型,虚部单位用i或j表示

>>6+5i
ans=6.0000+5.0000i
>>6+5j
ans=6.0000+5.0000i

使用real函数求实部,用imag函数求虚部 

2.数值数据输出格式

format命令的格式:format格式符

>>format long
>>50/3
ans=16.666666666666668
>>format
>>50/3
ans=16.6667   %%format只影响数据输出格式不影响其定义

3.常用数学函数

(1)函数的调用格式为:

    函数名(函数自变量的值)

            函数的自变量规定为矩阵变量,当然也可以是标量,标量本身为矩阵的一种特例。

            函数在运算时是将函数逐项作用与矩阵的每个元素上,所以最后运算的结果为一个与自变量同型的矩阵

>>A=[4,2;3,6]
A=
  4  2
  3  6  %%创建矩阵A 2*2
>>B=exp(A)
B=
  54.5982   7.3891
  20.0855 403.4288    %%调用exp函数,求自然指数
                         B中数据均为A求自然指数所对应

(2)常用函数的应用

     1.三角函数有以弧度为单位的函数和以角度为单位的函数,如果是以角度为单位的函数就在函数名后加上"d",以示区别。

>>sin(pi/2)
ans=
    1
>>sind(900
ans=
    1

   2.abs函数可以求实数的绝对值,复数的模,字符串的ASCII值

>>abs(-4)
ans=
   4
>>abs(3+4i)
ans=
   5
>>abs('a')
ans=
  97

  3.取整函数

 round函数按照四舍五入规则取整

 ceil函数为向上取整,取大于等于这个数的第一个整数

 floor函数向下取整,取小于等于这个数的第一个整数

 fix函数是固定取靠近0的数,舍去小数取整

 (3)函数应用举例

分别求一个三位正整数的个,十,百位

>>m=345
>>m1=rem(m,10)  %%相当于a%b
m1=
  5
>>m2=rem(fix(m/10),10)   %%fix函数取靠近0的整数
m2=
  4
>>m3=fix(m/100)
m3=
  3

 求【1,100】所有素数

MATLB提供了判断n是否为素数的函数isprime(n),当n为素数时返回1,否则返回0.

>>x=1:100;   %%生成1到100间所有整数组成的向量x
>>k=isprime(x);   %%调用isprime函数
>>k1=find(k);   %%调用find函数(找出函数中非0数)
>>p=x(k1)  %%输出全部素数
p=
  1至15列
    2  3  5  7  11  13  17  19  23  29  31  37  41  43  47
  16至25列
    53  59  61  67  71  73  79  83  89  97

三.变量及其操作

1.变量与赋值语句

  变量本质上为内存单元的一个抽象

  在matlab中,变量名是以字母开头,后接字母,数字或下划线的字符序列,最多63个字符。

2.赋值语句

(1)变量=表达式

(2)表达式

3.预定义变量

4.变量的管理

(1)内存变量的删除与修改

  

a.在工作区按右键进行修改

b. who命令与whos命令

 使用这两个命令,可以显示工作区中的内容

(2)内存变量文件

     用于保存matlab工作区变量的文件叫做内存变量文件,其扩展名为.mat,也叫MAT文件

>>save mydata a x  %%把a x存入mydata文件中,下次就可以使用
>>load mydata    %%将mydata文件中的内容存入此次工程中

四. matlab矩阵的表示

1.矩阵的建立

向量是矩阵特殊类型

五.矩阵元素的引用

1.矩阵元素的引用方式

    (1)通过下标来引用矩阵的元素

        A[3,2]表示的是A矩阵第3行第2列的元素。

        >>A(3,2)=200  %%仅改变了该处元素的量

例子:%%不足时,自动补0,使矩阵完整,如例子

     (2)通过序号来引用

利用空矩阵删除矩阵的元素

空矩阵指没有任何元素的矩阵

>>x=[]

x=

     []

x为空矩阵

改变矩阵的形状

reshape(A,m,n):在矩阵总元素保持不变的前提下,将矩阵重新排列成m*n的二维矩阵

注意:reshape函数只改变原矩阵的元素个数及其储存顺序

六.MATLAB基本运算

1.算术运算

(1)基本算术运算

    基本算术运算符:+,-,*,/(右除),\(左除)

MATLAB的算术运算是矩阵意义下进行的

单个数据的算术运算只是矩阵运算的特例

a.加减运算

两个矩阵同型,则运算时两矩阵的相应元素相加减。

若两个矩阵不同型,则MATLAB将给出错误信息。

b.乘法运算

矩阵A和B进行乘法运算,要求A的列与B的行一致,称A和B可乘,或A和B矩阵维数或大小相容

维数不同则错误

c.除法运算

在MATLAB中有:右除 '/' 和左除 ‘\’ 

若A矩阵是非奇异方阵,则A/B等效于B*inv(A),B\A等效于inv(A)*B.

对于矩阵来说,右除和左除表示两种不同的除数矩阵和被除数矩阵关系

b.乘方运算

一个矩阵的乘方运算可以表示为A^x,要求A为方阵,x为变量。

(2)点运算

点运算符: .* ; ,/ ; ,\ ; ,^

两个矩阵进行相关运算是指他们对应元素进行相关运算,要求两个矩阵同型

2.关系运算

关系运算符:<,<=,>,>=,==,~=(不等于)

(1)当两个比较量是标量时,直接比较两个数的大小,若不成立则输出0,反之输出1。

(2)当参与比较的量时两个同型的矩阵时,比较是对两个矩阵相同位置的元素按标量关系运算规则逐个进行,最终的关系运算的结果是一个与原矩阵同型的矩阵,它由0和1构成。

(3)当参与比较的是标量和矩阵时,则把矩阵的每一个元素按标量关系运算规则逐个比较,最终的关系运算的结果是一个与原矩阵同型的矩阵,由0或1构成 

 rem函数与mod函数

3.逻辑运算

逻辑运算符:&   |   ~(单目运算)

算术运算>逻辑运算

单目运算(运算时仅需要一个变量)>双目运算(运算时需要两个变量)

七.字符串处理

1.字符串的表示

>> xm='Njtech University'
>> xm(1 , 3)   %取字符串1到3的字符
ans =
Njt
>> 'I''m a teacher.'
ans =
I'm a teacher
>> ch=['abcdef';'123456']; %两行的矩阵
>> ch(2,3)
ans=
  3
>>ch='ABc123d4e56Fg9';
>>subch=ch(1:5)    %取出1~5位的字符
subch=
ABc12
>>revch=ch(end:-1:1)   %输出从最后一位开始,以-1为步长移动,到第一位结束
revch=
9gF65e4d321cBA
>>k=find(ch>='a'&ch<='z')  %查找出小写字母
k=
  3 7 9 13
>>ch(k)=ch(k)-('a'-'A')  %将小写字母加上32,通过ASCII改变该字母为大写
ch=ABC123D4E56FG9
>>length(k)
ans=
   4

2.字符串的操作

>>t=pi;
>>m='[t,sint(t),cos(t)]';   %m为字符串
>>y=eval(m)
y=
  3.1416   0.0000   -1.0000
>>s1='MATLAB';
>>a=abs(s1)
a=
  77 65 84 76 65 66
>> char(a+32)
ans=
matlab
s1 = 'matlab';
s2 = 'matlab';
strcmp(s1,s2)
ans=
   1
s3 = 'matlab';
s4 = 'mat';
strncmp(s3,s4,3)
ans=
   1
s5 = 'Matlab';
s6 = 'MATLAB';
strcmpi(s5,s6)
ans=
   1
strncmpi(s5,s6,1)
ans=
   1
>>p=findstr('This is a test!','is')
p=
  3  6
>>p=findstr('is','This is a test!')  %%空格也算一个字符
p=
  3  6
>>result=strrep('This is a test!','test','class')
result=
This is a class!

总结

matlab基础知识的概数

举报

相关推荐

0 条评论