1、第二部分 MATLAB基本语法1. 变量及其赋值2. 矩阵及其元素的赋值3. 矩阵的初等运算4. 逻辑判断及流程控制5. 绘图6. M文件和程序调试作业MATLAB语句形式变量表达式;%注释= 将表达式的值赋予变量。当键入回车键该语句被执行。语句执行之后,窗口自动显示出执行结果。;结果不被显示,但它依然被赋值并在MATLAB工作空间中分配了内存。,隔开写在一行的多行命令。% 后为注释,不执行。.1 变量及其赋值标识符变量名,常量名 ,=, (12+2*(7-4)/32(2)在上述表达式输入完成后,按【Enter】键,该指令被执行。(3)在指令执行后,MATLAB 指令窗中将显示以下结果。ans
2、 =2【 例 .2】 指 令 的 续 行 输 入 ( 以 下 格 式 在 除Notebook外的MATLAB环境中可运行) S=1-1/2+1/3-1/4+1/5-1/6 .+1/7-1/8S=0.6345空一格常用数学函数abs(x), sin(),cos (),tan(),asin(),acos(),atan()sqrt(), exp(),imag()(复数虚部), real()(复数实部),log(), log10(),conj()(共扼复数).2 矩阵及其元素的赋值向量的生成:用线性等间距生成向量矩阵start:step:end其中start为起始值,step为步长,end为终止值。当
3、步长为1时可省略step参数;另外step 也可以取负数。a=1:2:10ans=3 5 7 9冒号The Colon Operator 1:10 %增量为1ans =1 2 3 4 5 6 7 8 9 10 100:-7:50ans =100 93 86 79 72 65 58 51 0:pi/4:pians =0 0.7854 1.5708 2.3562 3.1416或采用更为形象的描述方法:a=a11 a12 a13;a21 a22 a23;a31 a32 a33MATLAB输入数组有以下基本规则:(1)数组元素列入方括号中;(2)每行内的元素间用逗号或空格分开;(3)行与行之间用分号或
4、回车键(Enter)隔开。注意:以上几种形式中,aij可以是数值、变量、表达式或字符串。如果是变量或表达式,则执行该语句前一定要首先通过用户输入或通过前面执行的表达式对变量或由变量组成的表达式进行赋值。表达式和变量可以任意组合形式出现。如果是字符串,则每一行中的字母个数应相同。例如:A = 16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1A=16594310615211714138121A=16594310615211714138121求和sum,转置 transpose, 对角线diag sum(A) %计算A阵各列元素的和ans =34 34 34 34A
5、= diag(A) %获取主对角线diagonal的元素16594310615211714138121ans =161071 sum(diag(A) %求对角线上元素之和ans =34下标SubscriptsA(i,j)表示A的i 行j列,例如A(4,2) 就是 15。 A(1,4) + A(2,4) + A(3,4) + A(4,4) %求4列的和ans =34单下标A(k)用于二维矩阵,则将矩阵视为一个长列向量,从第1列的A(1,1) 开始的各列元素,从上到下一列一列的排顺序。如A(8)就是A(4,2) 的另一种表示方法。矩阵下标里的冒号 sum(A(1:4,4) %计算第4列前4行元素
6、sum(A(:,end) %如果只要冒号本身,则代表矩阵行或列的所有元素,end 代表最后一行或列。ans =34 sum(A(1:16)/4ans =34基本矩阵zeros: 全0阵ones: 全1阵rand: 均分布随机矩阵randn 正态分布随机矩阵矩阵的逆 inv(A)A=1 2 3;1 4 9;8 10 1 inv(A)ans =8.6000 -2.8000 -0.6000-7.1000 2.3000 0.60002.2000 -0.6000 -0.2000其他输入数据方法load用TXT文本编辑数据,并存为 magik.dat16.0 3.0 2.0 13.05.0 10.0 11
7、.0 8.09.0 6.0 7.0 12.04.0 15.0 14.0 1.0用 load magik.dat.3 矩阵的初等运算1、转置对于实矩阵用()符号或(.)求转置结果是一样的;对于含复数的矩阵, ()则将同时对复数进行共轭处理,而 (.)则只是将其排列形式进行转置。a=1 2 3;4 5 6a=a=1 2 3;4 5 6.a=123456123456对于复数b=1+2i 2-7ib=1.0000 - 2.0000i2.0000 + 7.0000ib=1+2i 2-7i.b=1.0000 + 2.0000i2.0000 - 7.0000i2、四则运算与幂运算 点运算+、 -、 * 、/
8、 、;.* 、. 、./、. 只有维数相同的矩阵才能进行加减运算。 只有当两个矩阵中前一个矩阵的列数和后一个矩阵的行数相同时,才可以进行乘法运算。 ab运算等效于求a*x=b的解(a-1b); a/b等效于求x*b=a的解(ab)。 只有方阵才可以求幂。 点运算是两个维数相同矩阵对应元素之间的运算,在有的教材中也定义为数组运算。【例 .5】求解下列方程组:2X1+3X2=74X1+X2=9a=2 3; 4 1,b=7;9;x=abx=21此例对于理解线性方程组的求解过程十分重要!a=1 2;3 4;b= 3 5;5 9注意比较左右相似算式的不同!3、矩阵的大小m,n=size(A,x):返回矩阵的行列数m与n,当x=1,则只返回行数m,当x=2,则只返回列数n。length(A)和max(size(A) :返回行数或列数的最大值。【例.6】 a=1 2 3;3 4 5m,n=size(a)m=2n=3length(a)ans =3max(size(a)ans =3