好文档 - 专业文书写作范文服务资料分享网站

Matlab入门教程

天下 分享 时间: 加入收藏 我要投稿 点赞

cosh tanh exp 双曲余弦 双曲正切 自然指数 log 自然对数 log10 以10为底的对数 2.2 关系和逻辑运算 1、 关系操作符

(1)MATLAB常用的关系操作符有: <(小于)、<=(小于或等于)、 >(大于)、>=(大于或等于)、 = =(等于)、 ~=(不等于)。

(2)MATLAB的关系操作符可以用来比较两个大小相同的数组,或者比较一个数组和一个标量。在与标量比较时,结果和数组大小一样。 (3)如果满足指定的关系,返回1,否则返回0。 ?a=1:9; b=a>4

b =0 0 0 0 1 1 1 1 1 ?c=a(a>4)

c =5 6 7 8 9 2 、逻辑操作符

(1)逻辑操作符定义了一种与或非的关系表达式。 MATLAB的逻辑操作符有

&(与)、|(或)、~(非)

(2)所有逻辑运算符连接的两个操作数或者同维、同大小,或者其中一个为标量。 (3)逻辑运算符都是对元素的操作,每个非零元素都当作“1”处理,逻辑运算的结果是由1和0构成的矩阵。 例如: ?c=~(a>4)

c = 1 1 1 1 0 0 0 0 0 ?c=(a>4)&(a<7)

c =0 0 0 0 1 1 0 0 0 与逻辑运算有关的函数函数: (1)all(A):c=all(x),则

c=1,向量x中全为非零元素; c=0,向量x中含有零元素 (2)any(A):c=any(x),则

c=1,向量x中含有非零元素; c=0,向量x中全为零元素 2.3、矩阵操作 2.3.1 矩阵下标

1、MATLAB通过确认下标,可以对矩阵进行插入子块、提取子块、删除子块(删除某些行列)和重排子块的操作。 >>B=[1 2 3;4 5 6; 7 8 9]; >>B(2,: )=[] >>B=1 2 3

7 8 9

2、为了提取矩阵a的第n行、第m列的元素值,使用a(n,m)可以得到。同样,将矩阵a的第n行、第m列的元素值赋为r,使用a(n,m)=r这样的命令。

注意:在提取矩阵值时,行或列的值大于矩阵的大小,则出错;在给矩阵赋值时,如果行或者列超出矩阵的大小,则MATLAB自动扩充矩阵的规模,使得可以赋值,扩充部分以零填充。

3、利用矩阵下标,MATLAB还提供了子矩阵功能。同样是上面的a(n,m),如果n和m是向量,而不是标量,则将获得指定矩阵的子块.

4、同样,矩阵的子块还可以被赋值。如果在取子块时,n或m是“:”,则返回指定的所有行或列。

5、矩阵的序号编址:按列计数。

2.3.2矩阵大小

1、在MATLAB命令行中,使用whos命令可以查看到所有变量的大小。

2、为了获得矩阵或者向量的大小,MATLAB还提供了两个有用的函数size和length。

3、size按照下面的形式使用:[m,n]=size(a,x)。一般的,(1)不用参量x时:当只有一个输出变量时,size返回一个行向量,第一个数为行数,第二个数为列数;如果有两个输出变量,第一个返回量为行数,第二个返回数为列数。(2)当使用x时:x=1返回行数,x=2返回列数,这时只有一个返回值。 4、length返回行数或者列数的最大值,即length(a)=max(size(a))。 2.3.3 矩阵操作函数

MATLAB提供了一组执行矩阵操作的函数,例如:flipud(a)使得矩阵上下翻转, fliplr(a)使得矩阵左右翻转 2.3.4 矩阵查找和排序

1、子矩阵的查找使用find命令完成,它返回关系表达式为真的下标。例如: ?a=10:20; ?find(a>15) ans =

7 8 9 10 11

2、矩阵的排序使用sort函数,它将矩阵按照升序排列。 2.4 时间和日期 1、日历函数:calendar 2、时间函数:clock

3、查看CPU 时间:cputime 4、日期函数:date 5、秒表定时: tic toc

2.5退出和保存工作空间:

1 、 save:工作空间中的所有变量保存在磁盘上名为matlab.mat的文件中。 2 、 save [文件名] [变量名]

将指定的变量保存在指定的文件中。

如:>>save temp x y z

把x y z这3个变量保存在文件temp.mat中。

3、下次加载MATLAB时,可以利用load命令将保存在文件中的变量恢复到工作空间中,其格式为:

(1)load将保存在matlab.mat中的变量装入到matlab空间中。

(2)load [文件名] [变量名]从指定文件中将指定的变量装入到matlab的工作空间中。如:>>load temp x从文件temp.mat 中只将变量x装入到 matlab的工作空间中。

2.6 Matlab的变量 1、基本运算

变量 逗号、分号的意义 行内编辑、注释、运算规则 2、变量要求

变量区分字母的大小写 名字不能超过31个字符

变量必须以字母开头,之后可以是任意字母、数字或者下划线 变量中不能含有标点符号 2.6.1 特殊变量

2.6.2 复数

不需要特殊的处理,可以直接进行。 复数可以表示为:a=10-9i 2.6.3 MATLAB数据类型:

双精度型、字符型、稀疏型、单元型、结构型、8位型

最常使用的是双精度型和字符型;稀疏型用于稀疏矩阵;单元型和结构型用于编写大型软件;8位型(6.0以上版本:16位型、32位型)用于图象处理。 1、双精度型(double):

在缺省情况下,当结果为整数,作为整数显示;当结果为实数,以小数后4

位的精度近似显示。

如果结果中的有效数字超出了这一范围,以科学计数法显示结果。 2、字符型(char):

>> a=['sss';'bbb'] a =sss bbb

(1)字符数组的定义:字符数组就是字符串,字符串中的每一个字符在系统内部都相应地表示一个数值。 a='You are welcome!' a =You are welcome! size(a)

ans = 1 16 相关函数

A、函数disp用来显示字符串:disp('Hello') Hello

B、判断一个变量是否为字符型数组,可以用函数class或ischar。 x=class(a) y=ischar(a) x =char y = 1

(2)字符与数值的相互转换:

double:将一个字符串转换为一个数值 char:将数值转换为字符串 s='Good morning!' s1=double(s) s2=char(s1) s =Good morning!

s1 = 71 111 111 100 32 109 111 114 110 105 110 103 33 s2 =Good morning! (3)字符串的比较

A、strcmp:判别两个字符串是否相等

B、strncmp:判别两个字符串的前n个字符是否相等 s1='glisten';s2='glitter'; a1=strcmp(s1,s2) a2=strncmp(s1,s2,3) a1 = 0 a2 = 1

(4)二维字符数组:

创建二维字符数组时,每行的长度要相等。如果字符串长度不等,可以用空格充填较短的字符串。 例如:

s=['abc ';'defg'] s = abc defg

用char函数创建二维字符数组比较方便。当字符串长度不等时,char函数

可以自动地在较短的字符中加上一定数量的尾部空格,使其与最长字符串的长度相等。 例如:

y=char('abc','defg','abcde') z1=length(y) z2=size(y)

y =abc defg abcde z1 = 5

z2 = 3 5

3、稀疏型(sparse):含有大量0的矩阵,称为~矩阵。只存储矩阵中的非0元素 >>speye(4) 生成单位稀疏矩阵 ans = (1,1) 1

(2,2) 1 (3,3) 1 (4,4) 1

4、单元型(cell):把不同类型的数据存储在一起的数组称为单元数组。单元数组中的每个元素是其他任意一种数据类型,通常可以将相关的尺寸大小不同的数据组合在一起。

>> a={1,'good',[1 2 3]}

a = [1] 'good' [1x3 double] (1)创建单元数组:cell

c=cell(n):生成一个n*n维的空数组 c=cell(m,n):生成一个m*n维的空数组

c=cell(size(A)):生成一个和所包含的数组A阶数完全相同的空数组 EX1:

A=eye(2)

c=cell(size(A)) A = 1 0 0 1 c = [] [] [] [] EX2:给单元数组赋值 D=cell(1,3)

D{1,1}='Good'; D{1,2}=[1 2;4 5];D{1,3}=1+4i; D

D = [] [] []

D = 'Good' [2x2 double] [1.0000+ 4.0000i]

EX3:利用直接输入的方法创建单元数组,单元数组的下标用圆括号括起来,右边是单元数组的内容,用花括号括起来。

Aa(1,1)={['GOOD']};Aa(1,2)={200};Aa(2,1)={5-6i};Aa(3,2)={[1 2;4 5]} Aa = 'GOOD' [ 200]

[5.0000- 6.0000i] [] [] [2x2 double]

(2)单元数组的显示

Matlab入门教程

coshtanhexp双曲余弦双曲正切自然指数log自然对数log10以10为底的对数2.2关系和逻辑运算1、关系操作符(1)MATLAB常用的关系操作符有:<(小于)、(大于)、>=(大于或等于)、==(等于)、~=(不等于)。(2)MATLAB的关系操作符
推荐度:
点击下载文档文档为doc格式
14nft9stdx5gf8x599lp
领取福利

微信扫码领取福利

微信扫码分享