2022年matlab基础知识简介.docx
名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -MATLAB 基础学问一、 MATLAB简介二、 MATLAB基础学问1、命令窗口是用户与MATLAB进行交互作业的主要场所,用户输入的MATLAB交互命令均在命令窗口执行;例如:在 MATLAB命令窗口下键入a=3 2 3;4 7 6;7 5 9 按回车键后,显示结果 a= 3 2 3 4 7 6 7 5 9 2、求逆矩阵命令 格式: 变量=inv 参数 例如:输入 b=inva ,按回车后,显示 b= 1.3750 -0.1250 -0.3750 0.2500 0.2500 -0.2500 -1.2083 -0.0417 0.5417 3、MATLAB系统仍具有储存历史纪录的功能,它将本次启动 MATLAB系统 之后,用户输入的命令和创建的全部变量的值储存起来,用户通过方向键可查找所需的命令;MATLAB供应了储备变量和删除变量的命令;SAVE 文件名 变量名 1,变量名 2,. 功能:将命令中的变量储存在给出的文件中;说明:(1)如过文件名省略,默认储存在MATLAB.MAT中;(2)如变量名省略,就储存全部的变量到指定的文件中;( 3)如文件名和变量名都省略,就储存全部定义过的变量到 MATLAB.MAT中;细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 1 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -例如: SAVE AA.MAT a b c % 将变量 a b c储存在文件 AA.MAT中; SAVE BB.MAT % 将全部的变量储存到文件 BB.MAT中; SAVE % 将全部变量储存到文件 MATLAB.MAT中;clear 变量名 1 变量名 2,. 功能:删除指定的变量;说明:如变量名表省略,说明删除当前工作空间中的全部变量;例如: clear a b c % 删除变量 a b c clear % 删除当前工作空间的全部变量;MATLAB仍供应了一些命令,特地治理和掌握命令窗口;例如:clc 格式: clc 功能:清除命令窗口;home 格式: home 功能:光标移动到左上角 who 格式: who 功能:查看当前的全部变量,只给出变量名;whos 格式: whos 功能:查看当前的全部变量,给出变量的具体信息;信息同变量浏览器;clear 格式: clear 变量名 功能:删除后面列出的变量,假如变量名省略,就删除全部的变量;4、MATLAB中的常量 MATLAB供应了整数、实数、复数和字符四种类型数据;对应的常量 类型也是这四种;实数在屏幕显时默认的小数位数为 4 位;可以用命令 转变实数的显示格式;命令 format 格式: format 格式 第 2 页,共 29 页 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -例如: format long : 输出实数为 16 位 format short e :5 位加指数 format long e : 16 位加指数 format rat : 有理数近似矩阵操作1、 提取矩阵的元素 例如: A=1 2 3 3; 3 2 4 1; 3 4 5 6 执行 b=A1,2 ,结果为:b= 2 执行 v=A1,2,3,4,结果为:v= 3 3 4 1 2、 矩阵的修改例如:执行A1,2=3后,结果为:A= 1 3 3 3 3 2 4 1 3 4 5 6 作用:修改了第一行其次列的元素值;执行 A: ,3= 后,结果为:A= 1 3 3 3 2 1 3 4 6 相当于删除了第三列;接着执行 A2, := 后,结果为:A= 1 3 3 3 4 6 相当于删除了其次行;说明:只能删除矩阵的某一行或某一列,不能删除某一个元素;3、 有关矩阵的其他操作( 1)提取矩阵的上三角矩阵和下三角矩阵 A= 1 3 3 4 2 1 4 4 6 执行 B=triuA 后,结果为:B= 1 3 3 0 2 1 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 3 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -0 0 6 执行 C=trilA后,结果为:C= 1 0 0 4 2 0 4 4 6 2 提取矩阵的对角元素执行 B=diagA 后,结果为:B= 1 2 6 3 利用向量建立对角矩阵 执行 C=diagB 后,结果为:C= 1 0 0 0 2 0 0 0 6 4 矩阵的秩、特点向量和特阵值 A= 1 3 3 4 2 4 3 4 5 执行 rankA 后,结果为: % 求矩阵的秩 ans=2 执行 eigA 后, 结果为: % 求矩阵的特点值 ans= 10.0000 -2.0000 -0.0000 执行 v, d=eigA后, 结果为: %求矩阵的特点向量和对应的特征值组成的对角阵v = -0.4243 0.5883 0.4243 -0.5657 -0.7845 0.5657 -0.7071 0.1961 -0.7071 d = 10.0000 0 0 0 -2.0000 0 0 0 -0.0000 5 矩阵的算术运算和矩阵元素之间的运算 a= 1 2 3 2 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 4 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -b= 2 1 1 2 执行 c=a+b 后,结果为:c= 3 3 4 4 执行 d=a-b 后,结果为:d= -1 1 2 0 执行 e=a*b 后,结果为:执行 f=a.*b 后,结果为:f= 2 2 3 4 执行 g=a.b 后,结果为:g= 2 1/2 1/3 1 执行 h=a./b 后,结果为:h= 1/2 2 3 1 执行 j=a.b 后,结果为:j= 1 2 3 4 执行 k=b.3 后,结果为:k= 8 1 1 8 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 5 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -试验二 MATLAB程序设计1、关系运算符< 小于 <= 小于等于 >大于 >=大于等于 = =等于 =不等于 格式: A 关系运算符 B 例如:a=-1 2 4;5 4 8; b=0 1 5;5 1 2; 就 c=a>b c=0 1 0 0 1 1 2、规律运算符 规律与: & , 格式: c=a&b 规律或: | ,格式: c=a|b 规律非: ,格式: c=a 例如: c=a&b c=0 1 1 1 1 1 c=a|b c=1 1 1 1 1 1 3、程序的掌握结构 挑选结构:(1)if 语句 格式 1: if < 表达式 > < 语句组 1> end 格式 2: if <表达式 > 第 6 页,共 29 页 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - - < 语句组 1> else < 语句组 2> end 格式 3: if < 表达式 > < 语句组 1> elseif < 表达式 2> < 语句组 2> . elseif < 表达式 n> 语句组 n> < else < 语句组 n+1> end 格式 4:if < 表达式 > if < 表达式 1> < 语句组 1> else < 语句组 2> end else if < 表达式 2> < 语句组 3> else < 语句组 4> end end (2)switch 语句 格式: switch 表达式细心整理归纳 精选学习资料 case 表达式值 1 第 7 页,共 29 页 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -语句组 1 case 表达式值 2 语句组 2 . case 表达式值 n 语句组 n otherwise 语句组 n+1 end 例 1:data=inputinput the value of data; n=moddata, 5; switch n case 1 y=1; case 2 y=2; case 3 y=3; case 4 y=4 otherwise y=n; end y 例 2: var=inputinput a number; switch var case 1 细心整理归纳 精选学习资料 disp 1 第 8 页,共 29 页 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - - case 2,3,4 disp2 or 3 or 4 case 5 disp5 otherwise dispsomething else end 3while 语句 格式: while 表达式 语句组 end 例 3:使用 while 语句求 1+2+3.+100; i=1;sum=0; whilei<=100 sum=sum+i: i=i+1; end str= 运算结果为:num2strsum; 4for循环语句格式: for 循环变量 =初始值:增量:终值语句组; end 例 4:使用 for 语句求 1+2+3.+100; sum=0; for i=1:100 sum=sum+i; end str=运算结果为:num2strsum; 第 9 页,共 29 页 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - - dispstr 4、函数 M-文件 格式: function 输出参数表 = 函数名(形式参数)语句组 end 说明:(1)函数 M-文件独自储存为一个文件,文件名就是函数名;(2)调用格式: 输出参数表 = 函数名(实际参数)(3)输出参数可以是多个变量,两两之间用逗号隔开,它们表示 要运算的项;(4)形式参数是一组形式变量,本身没有任何意义,也不代表任 何内容,只有在调用时给予它实际值,才有意义;例 5:求向量的平均值和标准差 function mean, stdev=statx (x); n=length mean=sumx/n; stdev=sqrtsumx.2/n-mean.2; end 说明:函数 M-文件储存为 stat.m ;lengthx: 求向量 x 的长度;x 是一矩阵,就按 sumx: 求向量 x 中各个元素的总和,假如 列求和; sqrtx: 求 x 的平均值;调用:重新打开一 m文件,输入:x=1 2 3;6 2 1;-1 -6 -4; mean, stdev=stat(x); 然后储存为任一文件名即可; (除函数名外)细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 10 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -试验三 函数极限与导数1、函数的极限格式: limit表达式,变量,常量,right 和left 右极限;含义:当变量趋向于常量时, 表达式的左极限或说明:(1)当变量省略时,默认的变量是 最近的字母作为变量;(2)当常量省略时,默认为 0;x,没有 x 时,找字母表中离 x(3)在不说明是左极限仍是右极限时,求表达式的极限;例如: syms x a t h limitsinx/x; limitx-2/x2-4,2; limit1+x/x2*x,x,inf; v=1+a/xx,exp-x; limitv,x,inf,left ; 2、导数与微分 求导公式 格式: diff 表达式,变量,阶数 功能:它表示将“ 表达式” 依据“ 变量” 求“ 阶数” 阶导数;说明:如阶数省略,就表示求一阶导数;例如:syms x f=logx; difff difff,4 g=x+expx*sinx1/2; diffg prettyans 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 11 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -diffg,2 simplifyans prettyans 3、积分 格式: int 被积函数,积分变量,积分下限,积分上限 功能:求“ 被积函数” 对“ 积分变量” 从“ 积分下限” 到“ 积分上限”的定积分;说明:当积分上下限省略时,求“ 被积函数” 的不定积分;例如: syms x a b intx*logx int1/1+sqrt1-x2 intcoslogx evalintexp-x2,x,-1,1 evalintexp-x2,x,-inf,1 evalintexp-x2,x,-inf,inf 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 12 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -试验四 微分方程、多元函数微积分一、解方程 1、代数方程 格式: solvef,t 功能:对变量 t 解方程 f=0 ,t 缺省时默认为 x 或最接近字母 x 的符号变 量;例如:求解一元二次方程f=a*x2+b*x+c的实根,执行 solvef,x 结果为: ans=1/2/a*-b+b2-4*a*c1/2 1/2/a*-b-b2-4*a*c1/2 又如:求解一元二次方程 solveg,x; evalans g=4*x2+6*x-9 的实根,执行结果为: 0.9271 , -2.4271 2、微分方程(1)常微分方程的同解当微分方程中不含任何附加条件(初值条件)时,其解就是该方程的通解;格式: dsolve 微分方程, 自变量 说明:其中“ 微分方程” 和“ 自变量” 都按字符串形式给出,并用单引号括住, 且当自变量为 t 时可省略;例如: syms x y z t a b dsolve Dy-x*Dy=a*y2+Dy , x 注:Dy<=>y, D2y<=>y ” , D3y<=>y ” , 依次类推;dsolve D3y=exp2*x-cosx, x 2 常微分方程的特解细心整理归纳 精选学习资料 格式:dsolve 微分方程,初值条件 1,初值条件 2,. , 第 13 页,共 29 页 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -自变量 说明: yx0=y0<=>y|x=x0=y0 ;Dyx0=y1<=> y|x=x0=y1 ;例如: syms x y z t a b dsolve Dx=a*x*b-x , x0=x0 ; 自变量为 t dsolve x*D2y+Dy=0, y1=1, Dy1=6, x 3 常微分方程组求解对于无初值条件的微分方程组,其通解的求法格式为:dsolve 微分方程 1,微分方程 2, , 自变量 对于带初值条件的微分方程组,其特解的求解格式为:dsolve 微分方程 1,微分方程 2, , 条件 1,条件 2, ,自变量 例如:求f'' 3gsinxg'f'cosxf'20的通解和特解,其命令如下:f00g00syms x f g h f1,g1=dsolveD2f+3*g=sinx, Df+Dg=cosx, x f,g=dsolveD2f+3*g=sinx, Df+Dg=cosx, Df2=0, f0=0,g0=0, x 二、多元函数微积分1、多元函数极限这里我们仅对极限存在的函数,求沿坐标轴方向的极限; ,即将求多元函数极限问题,化成求多次单极限的问题;例如:syms x y z t a b limitlimitx2+y2/sinx+cosy,0,pi limitlimitlimitx+y*z+expsinx*z/x+y/z,1,2,3 2、多元函数偏导数 对多元函数中的某一变量求偏导数,等价于将其余变量看作常量,细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 14 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -仅对该变量求导数;syms x y z t u v diffx3+2*x*y+y2-6,x diffdiffx3+2*x*y+y2-6,x,y 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 15 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -试验五 绘图和级数一、化简和代换 simplify 利用各种恒等式化简代数式 expand 将乘积绽开为和式 factor 把多项式转换为乘积形式 collet 合并同类项 horner 把多项式转换为嵌套表示形式 例如:合并同类项:collect3*x3-0.5*x3+3*x2 结果为: ans=5/2*x3+3*x2 进行因式分解执行:factor3*x3-0.5*x3+3*x2 结果为: ans=1/2*x2*5*x+6 绽开多项式执行: expandx-a*x-b 结果为:ans=x2-x*b-a*x+a*b 把多项式转换成嵌套表示形式执行: hornerx3-6*x2+11*x-6 结果为: ans=-6+11+-6+x*x*x 二、绘图命令matlab 供应了两个特别简便的绘图命令,分别如下:1、格式: ezplotf, xmin, xmax 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 16 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -功能:绘出以 x 为横坐标的曲线f ,x 在xmin, xmax内取值,当 xmin和 xmax缺省时,默认 xmin=-2*pi ,xmax=2*pi;例如:描述函数 cos2*x 在区间 -2*pi, 2*pi 如下:ezplotcos2*x, -2*pi, 2*pi 2、格式: plotx, y, 格式串, 上的图形,执行命令功能:绘出以 x 为横坐标 y 为纵坐标的散点图或折线图;其中,x 和 y 为同维向量,“ 格式串” 指定图形格式,包括颜色、线形等;例如:执行 x=1 2 3 5 8; y=1 14 19 22 37; plotx, y, -*k *” 表示;其中,-*k 表示黑色实线,点用“初等函数的图形:x=linspace-pi,pi,60; z=linspace0.1,2*pi,60; t=linspace-1,1,60; u=linspace-10,10,60; y1=x; y2=x.2; y3=x.3;y4=x.4; subplot3,2,1; plotx,y1,- ,x,y2,: ,x,y3,-. ,x,y4,- - ; axis-pi pi -2 5; text-0.5,4,幂函数 ;三、级数 1、常数项级数 格式: symsum一般项,变量,起始,终止 功能:用指定变量从“ 起始” 到“ 终止” 求级数和;当“ 终止” 值取有限值时,可求出级数指定项数的部分和;例如:细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 17 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -symsum1/n2,n,1,10; symsum1/n,n,1,10; symsum1+n/1+n2,n,1,10; 当“ 终止” 值为 inf 时,可求出级数的收敛和;例如:symsum1/n2,n,1,inf; symsum1/n,n,1,inf; symsum1+n/1+n2,n,1,inf; 当“ 终止” 值为变量,比如取 该一般项以 m为变量,当 m 例如:symsum1/n,n,1,m symsum1/n2,n,1,m; m时,可求得级数部分和数列的一般项,时,取得极限即为收敛和;symsum1+n/1+n2,n,1,m; 2、幂级数幂级数的收敛半径:rlim na n1,求的收敛半径,用与求常数项级数收a n敛和相同的方法求幂级数的收敛和函数;例如:syms x n limitn+1/n,n,inf symsum-1n-1*xn/n,n,1,inf limit2n+1*n+1/2n*n,n,inf symsumx-1n/2n*n,n,1,inf 3、将函数绽开成幂级数 格式: taylor 函数,阶数 n,x0 点,变量 x 功能:将给定“ 函数” 在“数;x0 点” 处按“ 变量 x” 绽开成 n-1 阶的泰勒级说明:(1)阶数 n 省略,默认为 6;细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 18 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -(2)x0 点省略,默认为 0;(3)“ 变量 x” 省略 , 默认用 findsymf查找默认变量;(4)后面的三个参数次序仍可以打乱次序,但如 x0点和阶数均为整数时,必需阶数在前,x0 点在后;例如: taylorexp-x,x,8,7 表示将 e x 在 x0=7 点处绽开为七阶泰勒级数;taylorexpx % 将 e x 在 x=0 点绽开成 5 阶泰勒级数;taylorexp-x2,x,n % 将 e x 2在 x=n 点绽开成 5 阶泰勒级数 . taylorcosx,8 %将 cosx 在 x=0 点绽开成 7 阶泰勒级数注:参数终止给出一个整数,认为是阶数;四、傅立叶级数三角级数:a2 0n 1 a n cos nx b n sin nx 其中,a 0 1 f x dx ,a n 1f x cos nxdx n=0,1,2,3, ,b n 1f x sin nxdx n=0,1,2,3, ,正弦级数:b n sin nx n=0,1,2,3, 余弦级数:a2 0 a n cos nx n=0,1,2,3, 在 matlab 中,编写以下四个函数 mfourierf, msinf, mcosf 和mlfourierf, l ,分别用于求函数 f 的傅立叶级数、正弦级数、余弦级数,以及周期为 2l 的傅立叶级数的系数;function a0, an, bn=mfourierf syms n x a0=intf, -pi, pi/pi; 第 19 页,共 29 页 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -an=intf*cosn*x, -pi, pi/pi;bn=intf*sinn*x, -pi, pi/pi;end function bn=msinf syms n x bn=intf*sinn*x, -pi, pi/pi;end functiona0, an=mcosf syms n x a0=intf, -l, l/pi;an=intf*cosn*x, -pi, pi/pi;end function a0, an, bn=mlfourierf, l syms n x a0=intf, -pi, pi/pi;an=intf*cosn*pi*x/l, -l, l/l;bn=intf*sinn*pi*x/l, -l, l/l;end 说明:以上四个函数分别储存在四个M-文件中,以函数名作为文件名;细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 20 页,共 29 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -试验六 方程组求解和数值微积分一、欠定方程组的求解 如有方程组 AX=B,其中 X 为 m个变量构成的列向量,一共有 n 个方 程,就 A 为 n*m 矩阵;如 rankA<m,就方程有无穷多组解,称为欠定 方程组;如 b 中元素全