Matlab与化工数值计算-第1讲简介与基本数学运算.ppt

上传人:小飞机 文档编号:6511740 上传时间:2023-11-08 格式:PPT 页数:79 大小:584.50KB
返回 下载 相关 举报
Matlab与化工数值计算-第1讲简介与基本数学运算.ppt_第1页
第1页 / 共79页
Matlab与化工数值计算-第1讲简介与基本数学运算.ppt_第2页
第2页 / 共79页
Matlab与化工数值计算-第1讲简介与基本数学运算.ppt_第3页
第3页 / 共79页
Matlab与化工数值计算-第1讲简介与基本数学运算.ppt_第4页
第4页 / 共79页
Matlab与化工数值计算-第1讲简介与基本数学运算.ppt_第5页
第5页 / 共79页
点击查看更多>>
资源描述

《Matlab与化工数值计算-第1讲简介与基本数学运算.ppt》由会员分享,可在线阅读,更多相关《Matlab与化工数值计算-第1讲简介与基本数学运算.ppt(79页珍藏版)》请在三一办公上搜索。

1、Matlab与化工数值计算第一讲 简介与基本数学运算,隋志军化工学院软件应用教科组,64252169 实验16楼605室,化学工程师的任务,化学工程专业数学模型类型,非线性方程(组),常微分方程(组),偏微分方程(组),非线性模型,难以获得解析解,必须采用数值解法模型的数值解法是应用数学的一个分支,通常称为计算数学(数值分析,数值方法),化学工程常用软件,MatlabMathematicaMathcadMapleStaticstica,PRO/II(SimSci)AspenPlusChemCADFlowtranSuperpro DesignerFluentCHEMKIN,数学软件:,化工模拟软

2、件:,本课程的学习目的,化工专业知识作为背景,不涉及模型的推导,注重模型求解过程的方法与技巧,学会Matlab的使用,可以利用Matlab求解较为复杂的化工数学模型,对于数值分析的内容不过多涉及,只注意数值计算结果的准确性,本课程基本内容,第一讲 Matlab简介与基本数学运算第二讲 非线性方程组求解与迭代法第三讲 矩阵操作与线性方程组求解第四讲 插值、拟合与数值微分、积分第五讲 常微分方程数值解第六讲 偏微分方程数值解第七讲 统计初步与最优化方法,学习本课程的注意事项,学好本课程的唯一途径是多上机实践 数值计算效率和效果的保证有很多技巧,可以参考数值方法(数值分析)方面的教科书刘则毅,科学计

3、算技术与Matlab,科学出版社同济大学计算数学教研室,现代数值数学和计算,同济大学出版社黄华江,实用化工计算机模拟,化学工业出版社张志涌,精通Matlab6.5版,北京航空航天大学出版社 对于数值计算的结果,应注意分析结果的意义,Matlab简介,Matlab是Matrix Labotary的缩写,最初是美国新墨西哥大学Moler教授编写的LINPACK和EISPACK接口程序,1984年,MathWorks公司创建,MATLAB正式推向市场20世纪90年代以来,MATLAB已成为数值计算软件的佼佼者,Matlab简介,MATLAB具有用法简单、灵活、结构性强、延展性好等优点,逐渐成为科技计

4、算、视图交互系统和程序中的首选语言工具。功能强大的数值运算功能 强大的图形处理能力 高级但简单的程序环境丰富的工具箱与模块集 易于扩充,开始的问题,计算在1/2英寸不锈钢管中,以2000lb/hr流量输送水,当水的温度为10、20、30、40、50、60、70、80时,压降分别为多少?牛顿流体在不锈钢管中的流动压降可由下式估算:其中,摩擦压降,psi/(100英尺等量管长);M,质量流量,lb/hr;,粘度,cP;,密度,lb/ft3,D,管径,inch。流体密度可由下式描述:,g/ml;对于水,A0.34710;B0.2740;Tc647.13K;n0.28571。流体粘度由下式描述:,cP

5、;对于水,A=-10.2158;B=1.7925E3;C1.7730E-2;D=-1.2631E-05。,Matlab窗口介绍,命令窗口,命令历史,变量空间,当前路径,Matlab的通用命令,通过Help学习Matlab,在命令窗口中键入 help,则显示以下内容:matlabgeneral-General purpose commands.matlabops-Operators and special characters.matlablang-Programming language constructs.matlabelmat-Elementary matrices and matrix

6、 manipulation.matlabelfun-Elementary math functions.matlabspecfun-Specialized math functions.matlabmatfun-Matrix functions-numerical linear algebra.matlabdatafun-Data analysis and Fourier transforms.matlabpolyfun-Interpolation and polynomials.matlabfunfun-Function functions and ODE solvers.matlabspa

7、rfun-Sparse matrices.matlabscribe-Annotation and Plot Editing.matlabgraph2d-Two dimensional graphs.matlabgraph3d-Three dimensional graphs.,Help主题名称,help ops Operators and special characters.Arithmetic operators.plus-Plus+uplus-Unary plus+minus-Minus-uminus-Unary minus-mtimes-Matrix multiply*times-Ar

8、ray multiply.*mpower-Matrix power power-Array power.mldivide-Backslash or left matrix divide mrdivide-Slash or right matrix divide/ldivide-Left array divide.rdivide-Right array divide./,基本算术运算符,help power.Array power.Z=X.Y denotes element-by-element powers.X and Y must have the same dimensions unles

9、s one is a scalar.A scalar can operate into anything.C=POWER(A,B)is called for the syntax A.B when A or B is an object.Help+函数名可获得详细的函数使用方法,Help函数名,Matlab语言的标点,数值类型,分类方法一双精度型(系统默认类型)单精度型带符号整数无符号整数分类方法二标量向量数组分类方法三实数复数,数值的表示,以下表达方式均合法:345-990.01 1.3e-3 4.5e331 2 3 1;2;3 1 2;2 113+3i 6-8j,计算以下表达式的值:1)1

10、 2 3*3 2 12)1 2 3.*3 2 13)1 2 324)1 2 3.25)1+3*226)(3*2)27)(3*2)2;8)(-8)(1/3),基本数学运算符的使用,20001.8*(10(-10.2158+1.7925e3/283+1.773e-2*283-1.2631e-5*2832)0.2/(20000*0.54.8*(0.3471*0.274(-(1-283/647.13)0.28574)/0.2323)回车可以得到结果ans=287.8245,Matlab的计算器功能,命令的窗口的快捷键,数学函数(elfun),计算以下表达式的值:sin(30)sind(30)exp(1

11、 2 3)log10(10 100 1000)abs(3+4i)abs(-5),基本数学函数的使用,format命令,程序的组成,数据输入,运算,数据输出,变量,变量,数学运算,关系运算,逻辑运算,流程控制,图形输出,文件输出,屏幕输出,文件输入,键盘输入,变量,变量的命名方式:变量名由字母、数字和下划线组成;变量名中的英文字母大小写是有区别的;变量名的最大长度是有规定的不同版本的系统规定不同:19个字符、31或63个字符等可调用namelengthmax函数得到系统规定长度,变量的使用,clear%删除工作区中所有定义过的变量whos%查看当前工作区内变量信息,无显示表示没有定义的变量 xy

12、=1;yx=2;%对变量赋值 xy%查看变量xy的当前数值xy=1 whos Name Size Bytes Class xy 1x1 8 double array yx 1x1 8 double arrayGrand total is 2 elements using 16 bytes clear xy yx%删除变量xy及yx whos xy%这时变量xy已经不存在了?Undefined function or variable xy.,MATLAB系统的特殊变量和常数,MATLAB数据类型,数值(标量,向量,数组)字符串单元数组(cell array)结构体(structure)函数句柄

13、,向量的生成,1)直接输入向量格式上要求向量元素需要用“”括起来,元素之间可以用空格、逗号或分号分隔。用空格和逗号分隔生成行向量,用分号生成列向量。2)利用冒号生成向量冒号表达式的基本形式为:xx0:step:xn若step1,则此项输入可以忽略。3)linspace函数可以使用linspace函数生成线性等分向量:ylinspace(x1,x2)生成(1*100)维行向量,y(1)=x1,y(100)=x2ylinspace(x1,x2,n)生成(1*n)维行向量,y(1)=x1,y(n)=x24)logspace函数logspace用于生成对数等分向量,格式如下:ylogspace(x1,

14、x2,n)生成(1*n)维对数等分向量,y(1)=10 x1,y(n)=10 x2;n可以省略,此时其默认值为50。,向量的运算,1)向量加减与数加减向量的加减与数加减的形式与普通标量加减相同2)向量的点积、叉积与混合积的实现点积:向量的点积由函数dot实现。dot(a,b)返回向量a和b的数量点积,其中a,b必须同维。叉积:叉积由cross函数实现。向量a,b必须为三维向量混合积:可由以下命令实现,dot(a,cross(b,c)3)向量的数乘、数组乘和向量乘例:当a1:1:3;b=2:2:6时,以下命令的运行结果是什么?1)a1=2*a 2)a2=a.*b 3)a3=a*b,字符串类型,字

15、符串:包含在一对单引号中的字符集合 s=hello,MATLAB%定义字符串变量ss=hello,MATLAB whos Name Size Bytes Class s 1x13 26 char arrayGrand total is 13 elements using 26 bytes,单元数组(Cell Array),单元数组是MATLAB数组的一种特殊数据类型,它用于保存不同类型和/或不同大小的数据。三种直接赋值方式 单元下标用括号“()”括起来,而单元的内容用“”括起来,如:clear alla(1,1)=1 2;3 4;a(1,2)=0 1;a(2,1)=Hello;a(2,2)=2

16、+3i 2.单元下标用“”括起来,而赋值语句等式右边的单元内容用“”括起来:a1,1=1 2;3 4;a1,2=0 1;a2,1=Hello;%右边只有一个元素时可省略去“”a2,2=2+3i 3.直接使用a=1 2;3 4,0 1,Hello,2+3i,单元数组的操作,显示单元数组的命令a%显示单元数组a的信息celldisp(a)%显示单元数组a的完整内容先使用函数cell()创建空的单元数组,然后再赋值:b=cell(2,3)赋值方法同直接赋值方式。对单元数组元素的操作c=a1,2%将单元数组a的1,2元素赋给变量c,注意是“”,而不是“()”。,结构体,与C语言类似,MATLAB结构体

17、用于存取相关的数据,它由一组称为域(fields)的成员变量(向量)构成,每一个域可以为不同的MATLAB数据类型。结构数组的定义有两种方法,一种是直接赋值,另一种是使用strct()函数。,结构体的赋值,student.name=Zhang Jun;student.major=Chemical Engineering;student.subject=英语,政治,数学,化工原理,物理化学;student.entrance_exam=62 68 72 82 90;,student(2).name=Li Xia;student(2).major=Chemical Engineering;stude

18、nt(2).subject=英语,政治,数学,化工原理,物理化学;student(2).entrance_exam=60 72 68 85 88;,struct_array_name=structure(field1,values1,field2,values2,)Student=struct(name,Zhang Jun,major,Chemical Engineering),管道压降的计算,T=283:10:353;M=2000;D=0.5;density.A=0.3471;density.B=0.274;density.Tc=647.13;density.n=0.28571;Rho=(d

19、ensity.A.*density.B.(-(1-T./density.Tc).density.n)/0.2323;mu.A=-10.2158;mu.B=1.7925e3;mu.C=1.773e-2;mu.D=-1.2631e-5;mu=10.(mu.A+mu.B./T+mu.C.*T+mu.D.*T.2);deltP=(M1.8)*(mu.0.2)./(20000*D4.8.*Rho),函数文件和Script文件,Script文件 Script仅仅是一连串可执行的MATLAB命令,它具有全局性 Script文件中不能定义函数函数 函数定义的一般格式:function y1,y2,yn=Fun

20、cName(x1,x2,xn)%函数声明语句y1=%(表达式1)y2=%(表达式2)yn=%(表达式n)其中,输入参数为x1,x2,xn,输出参数为y1,y2,yn。各参数可以是标量、向量或矩阵。,脚本编辑窗口,函数文件的编写,编写一个函数,计算本章开始问题中流体的粘度,函数要求输出粘度的计算值:,函数声明语句:function vis=viscosity()变量的传递通过调用函数传递vis=viscosity(A,B,C,D,T)通过全局变量传递利用global命令,在主函数和子函数中予以声明编写表达式,函数的调用,在调用函数的主函数中,直接采用函数名调用通过函数句柄调用,function

21、Cha1demo4_7global mu TT=283:10:353;M=2000;D=0.5;density.A=0.3471;density.B=0.2740;density.Tc=647.13;density.n=0.28571;Rho=(density.A.*density.B.(-(1-T./density.Tc).density.n)/0.2323mu.A=-10.2158;mu.B=1.7925e3;mu.C=1.773e-2;mu.D=-1.2631e-5;Mu=viscositydeltP=(M1.8)*(Mu.0.2)./(20000*D4.8.*Rho)%-functio

22、n vis=viscosityglobal mu Tvis=10.(mu.A+mu.B./T+mu.C.*T+mu.D.*T.2);,管道压降的计算函数,函数句柄,创建一个函数句柄,可用于保存函数的所有信息,以便将来对它进行调用。函数句柄可以作为参数传递给其他函数,或与feval函数一起使用,以调用该函数句柄所属的函数。使用函数句柄还可以减少定义函数的文件个数,改善重复操作的性能,保证函数计算的可靠性。funhandle=function_name%function_name为用户指定的函数名,函数句柄,创建一个函数句柄,可用于保存函数的所有信息,以便将来对它进行调用。函数句柄可以作为参数传递

23、给其他函数,或与feval函数一起使用,以调用该函数句柄所属的函数。使用函数句柄还可以减少定义函数的文件个数,改善重复操作的性能,保证函数计算的可靠性。funhandle=function_name%function_name为用户指定的函数名,函数句柄,创建一个函数句柄,可用于保存函数的所有信息,以便将来对它进行调用。函数句柄可以作为参数传递给其他函数,或与feval函数一起使用,以调用该函数句柄所属的函数。使用函数句柄还可以减少定义函数的文件个数,改善重复操作的性能,保证函数计算的可靠性。funhandle=function_name%function_name为用户指定的函数名,管道压降

24、的计算函数,function Cha1demo4_5T=283:10:353;M=2000;D=0.5;density.A=0.3471;density.B=0.274density.Tc=647.13;density.n=0.28571;Rho=(density.A.*density.B.(-(1-T./density.Tc).density.n)/0.2323mu.A=-10.2158;mu.B=1.7925e3;mu.C=1.773e-2;mu.D=-1.2631e-5;Mu=feval(viscosity,mu,T)%Mu=viscosity(mu,T)deltP=(M1.8)*(Mu

25、.0.2)./(20000*D4.8.*Rho)%-function vis=viscosity(mu,T)vis=10.(mu.A+mu.B./T+mu.C.*T+mu.D.*T.2);,内联函数(inline function),内联函数是Matlab提供的一个对象,它的表现和函数文件一样,但内联函数的创建比较容易内联函数的创建inline(CE)inline(CE,arg1,arg2,.)inline(CE,n)涉及内联函数性质的指令class(inline_fun)内联函数类型char(inline_fun)给出内联函数计算公式argnames(inline_fun)给出内联函数的输入

26、变量vectorize(inline_fun)使内联函数适用于数组运算Matlab中许多“泛函”函数都是采用inline,从而具备了适应各种被处理函数形式的能力,内联函数的应用,F1=inline(sin(rho)/rho)f1=F1(2)FF1=vectorize(F1)xx=0.5,1,1.5,2;ff1=FF1(xx)G2=inline(a*exp(x(1)*cos(x(2),a,x)g1=G2(2,-1,pi/3),匿名函数(anonymous function),匿名函数用于在命令行、函数文件或script文件中创建简单形式的函数,避免另外定义新的函数匿名函数的定义形式f=(argl

27、ist)expression,f=(x)x.2a=f(5)结果:a25,f=(x)x.2;g=(x)3*x;h=(x)g(f(x);h(3)结果:ans27,alpha=0.9;f=(x)sin(alpha*x);f(pi)结果:ans0.3090,数据输入和输出,数据输入利用M文件产生数据文件用Load命令从MAT文件或文本文件读取数据用fscanf函数用提示输入函数inputdlmread,importdata,xlsread函数 数据输出用Save命令用fprintf函数用函数disp()将结果输出至屏幕dlmwirte,xlswrite函数 图形输出,管道压降的计算函数,functio

28、n Cha1demo4_5T=283:10:353;M=2000;D=0.5;density.A=input(density.A=);density.B=input(density.B=);density.Tc=input(density.Tc=);density.n=input(density.n=);Rho=(density.A.*density.B.(-(1-T./density.Tc).density.n)/0.2323mu.A=-10.2158;mu.B=1.7925e3;mu.C=1.773e-2;mu.D=-1.2631e-5;Mu=feval(viscosity,mu,T)%M

29、u=viscosity(mu,T)deltP=(M1.8)*(Mu.0.2)./(20000*D4.8.*Rho)%-function vis=viscosity(mu,T)vis=10.(mu.A+mu.B./T+mu.C.*T+mu.D.*T.2);,Matlab二维图形,函数Plot基本调用格式,1)plot(X,s)X为实向量时,以该向量元素的下标为横坐标、元素值为纵坐标画一条连续曲线X是实矩阵时,则按列绘制每列元素值相对其下标的曲线,曲线数目等于X的列数X是复数矩阵时,则按列分别以元素的实部和虚部为横、纵坐标绘制多条曲线s是用来控制线型、色彩、数据点型的选项字符串。s可以缺省,此时曲

30、线按Matlab默认设置绘制。s的取值见下节2)plot(X,Y,s)X、Y是同维向量时,绘制以X、Y为横、纵坐标的曲线X是向量,Y是有一维与X同维的矩阵时,则绘出多根不同色彩的曲线。曲线数等于Y的另一维,X作为这些曲线共同的横坐标X是矩阵,Y是向量时,情况与上相同,只是曲线都以Y为共同纵坐标X、Y是同维矩阵时,则以X、Y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。s的意义,与上相同。3)plot(X1,Y1,s1,X2,Y2,s2,)此格式中,每个绘线“三元组”(X,Y,s)的结构和作用,与上相同。不同“三元组”之间没有约束关系。,曲线的色彩、线型和数据点型貌,坐标、刻度和分

31、格线控制,图形标识,例题,T=283:10:353;M=2000;D=0.5;density.A=0.3471;density.B=0.274;density.Tc=647.13;density.n=0.28571;Rho=(density.A.*density.B.(-(1-T./density.Tc).density.n)/0.2323;mu.A=-10.2158;mu.B=1.7925e3;mu.C=1.773e-2;mu.D=-1.2631e-5;mu=10.(mu.A+mu.B./T+mu.C.*T+mu.D.*T.2);deltP=(M1.8)*(mu.0.2)./(20000*D

32、4.8.*Rho)plot(T,deltP,b-o)title(The pressure drop vs Temperature)xlabel(Temperature(oC)ylabel(Pressure drop(psi/equivalent feet of pipe),图形标识的精细控制,句柄图形的结构,句柄图形的访问与操作,例题,绘制二阶系统阶跃响应曲线,例题,clf;t=6*pi*(0:100)/100;y=1-exp(-0.3*t).*cos(0.7*t);tt=t(find(abs(y-1)0.05);%寻找大于0.05的元素ts=max(tt);寻找tt中最大的元素plot(t,

33、y,r-,LineWidth,3)axis(-inf,6*pi,0.6,inf)set(gca,Xtick,2*pi,4*pi,6*pi,Ytick,0.95,1,1.05,max(y)grid ontitle(it y=1-e-alphatcosomegat)text(13.5,1.2,fontsize12alpha=0.3)text(13.5,1.1,fontsize12omega=0.7)hold on;plot(ts,0.95,bo,MarkerSize,10);hold offcell_string1=fontsize12uparrow;cell_string2=fontsize16

34、 fontname隶书镇定时间;cell_string3=fontsize6;cell_string4=fontsize14rmt_s=num2str(ts);text(ts,0.85,cell_string)xlabel(fontsize14 bft rightarrow)ylabel(fontsize14 bfy rightarrow),多次叠绘、双纵坐标和多子图,1)多次叠绘:hold on,使当前轴及图形保持而不被刷新;hold off,不保持当前轴及图形。2)双坐标图:plotyy(X1,Y1,X2,Y2)以左右不同纵轴分别绘制X1-Y1、X2-Y2两条曲线plotyy(X1,Y1,

35、X2,Y2,Fun)以左右不同纵轴把X1-Y1、X2-Y2绘制成Fun指定的形式的两条曲线3)多子图:采用subplot(m,n,k)使(mn)幅子图中的第k个成为当前子图,再采用其它的图形绘制指令则可将图形绘制到指定的子图中。子图序号的编制原则是:左上方为第1幅,向右向下依次增大。,双坐标曲线绘制方法,画出函数 和积分 在区间 上的曲线,clf;dx=0.1;x=0:dx:4;y=x.*sin(x);s=cumtrapz(y)*dx;%梯形法求累计积分plotyy(x,y,x,s),text(0.5,0,fontsize14ity=xsinx)sint=fontsize16int_fonts

36、ize80 x;text(2.5,3.5,fontsize14its=,sint,fontsize14itxsinxdx),Matlab三维图形,1)三维曲线绘制命令 plot32)三维网格图形绘制命令 mesh3)三维曲面绘制名利 surf,X0 Y0 Z0=sphere(30);X=2*X0;Y=2*Y0;Z=2*Z0;surf(X0,Y0,Z0);shading interphold onmesh(X,Y,Z)colormap(hot)hidden offhold offaxis equalaxis off,Matlab图形绘制函数,Matlab图形绘制函数分属于以下帮助主题 graph

37、2d graph3d specgraph,程序的组成,数据输入,运算,数据输出,变量,变量,数学运算,关系运算,逻辑运算,流程控制,图形输出,文件输出,屏幕输出,文件输入,键盘输入,Script文件或函数文件,MATLAB关系运算符,关系运算符:,MATLAB逻辑、关系运算的规定,逻辑和关系运算均可以在任意具有相同维数的数组之间进行标量可以和任意维数的数组运算在所有关系表达式和逻辑表达式中,作为输入的任何非0数均被看作是“逻辑真”,只有0是“逻辑假”所有关系表达式和逻辑表达式的运算结果是一个由0和1组成的逻辑数组逻辑数组是“数值数组”的子类,可以按数值数组实施操作;它又有不同与普通数值数组的特

38、性,即表示着对对象判断的真假;可用于数组寻访等特殊场合,MATLAB逻辑运算符,逻辑运算符:,A=0 1 1 0;B=1 1 0 0 A&B=0 1 0 0 A|B=1 1 1 0 A=1 0 0 1 xor(A,B)=1 0 1 0,先决逻辑运算符:,逻辑、关系运算示例,A=-3:3;B=3:-1:-3;L1=(A0)L2=A0L3=AL4=A-2&A1L5=A=B&L1,运行结果:A=-3-2-1 0 1 2 3B=3 2 1 0-1-2-3L1=1 1 1 1 0 0 0L2=0 0 0 1 0 0 0L3=0 0 0 1 0 0 0L4=0 0 1 1 0 0 0L5=0 0 0 1

39、0 0 0,运算优先级:括号逻辑否乘除加减关系运算逻辑运算先决与先决否,高,低,MATLAB关系运算函数,isempty数组是否为空isequal两个数组是否相等any数组有非零元素则结果为1all数组元素全非零则结果为1find数组非零元素的下标isscalar是否为标量isvector是否为向量isnan是否为非数isinf是否为无穷isfinite是否为有限,for循环结构,for i=1:10 x(i)=i;endx,for 循环变量=表达式1(初值):表达式2(步长):表达式3(终值)statements(语句组)end字符串:包含在一对单引号中的字符集合,为了得到高效代码,应尽量提

40、高代码的向量化程度,避免使用循环结构为了得到高效代码,在循环指令之前应尽量对数组进行预定义,while循环结构,while cndition(表达式)statements(执行语句组)end,Fibonacci数组的元素满足Fibonacci规则:ak+2=ak+ak+1,(k=1,2,.);且a1=a2=1。求该数组中第一个大于10000的元素。,a(1)=1;a(2)=1;i=2;while a(i)=10000 a(i+1)=a(i-1)+a(i);i=i+1;endi,a(i),if-else-end分支结构,if语句的一般格式:if condition1 statements%如果c

41、ondition1的值为True,则执行该语句组elseif condition2 statements%如果condition2的值为True,则执行该语句组else statements%如果condition1和condition2的都为False,则执行该语句组end,用for循环指令寻求Fibonacci数组中第一个大于10000的元素n=100;a=1:100;for i=3:n a(i)=a(i-1)+a(i-2);if a(i)=10000 a(i),break;endendi,可以用break语句强制终止循环的运行,switch-case结构,switch-case的一般格式

42、:switch test_expr%测试表达式test_expr可以是标量或字符串case value statements 当test_expr值是value时,执行该语句组case value1,value2,statements 当test_expr值是value1或value2或时,执行该语句组otherwise,statementsend,switchcaseotherwise语句的能力与ifelseend语句类似,但对多重选择的情况switch语句使代码更加易读。,try-catch结构,try-catch的一般格式:try statements 此组语句总被执行。若正确则跳出此结构catchstatements 当上组语句出现执行错误后,该组语句被执行end,当两组语句都出错后,Matlab将跳出该结构可以采用lasterr函数查询出错原因,N=4;A=1 2 3;tryA_N=A(N)catchA_N=A(end)endlasterr,A_N=3ans=Index exceeds matrix dimensions.,本讲小结,Matlab的基本数学运算符和运算函数的使用注意区别矩阵和数组的乘、除、乘方运算Matlab数据输入输出功能,尤其是绘图功能的实现Matlab函数文件的基本形式及其调用字符、单元数组、结构体的定义Matlab的流程控制语句,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号