已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章 常见软件包简介在数学实验或数学建模中,我们都需要利用一些软件来辅助我们开展工作,比如对实验问题进行量或形观察,原始数据进行加工处理,对建立的模型进行求解、分析等等,因此有必要掌握一些常用的数学软件包的使用。本章对常用的三款软件:Mathematica、Matlab以及Lingo进行介绍。这三款软件各有千秋,各有各的特长,掌握它们对于数学实验或数学建模大有裨益。2.1 Mathematica简介Mathematica是由美国物理学家Stephen Wolfram领导的一个小组开发的,后来他们成立了Wolfram研究公司。1988年推出了Mathematica 1.0版本,因系统精致的结构和强大的计算能力而广泛流传。经过二十多年的不断扩充和修改,生产的一种数学分析型的软件,以符号计算见长,也具有高精度的数值计算功能和强大的图形功能。一、 Mathematica的启动和运行假设在Windows环境下已安装好Mathematica7.0,启动Windows后,通过“开始/Wolfram Research/ Wolfram Mathematica7”启动Mathematica7,在屏幕上显示如图2.1.1的Notebook(笔记本)窗口,系统暂时取名Untitled-1,直到用户保存时重新命名为止。图2.1.1 Notebook(笔记本)窗口输入1+1,然后按下Shif+Enter键,这时系统开始计算并输出计算结果,并给输入和输出附上次序标识In1和Out1,注意In1是计算后才出现的;再输入第二个表达式,要求系统将一个二项式展开,按Shift+Enter输出计算结果后,系统分别将其标识为In2和Out2,如图2.1.2。在Mathematica的Notebook界面下,可以用这种交互方式完成各种运算,如函数作图,求极限、解方程等,也可以用它编写C程序。在Mathematica系统中定义了许多功能强大的函数,我们称之为内建函数(built-in function), 直接调用这些函数可以取到事半功倍的效果。这些函数分为两类,一类是数学意义上的函数,如:绝对值函数Absx,正弦函数Sinx,余弦函数Cosx,以e为底的对数函数Logx,以a为底的对数函数Loga,x等;第二类是命令意义上的函数,如作函数图形的函数Plot,解方程函数Solve,求导函数D等。图2.1.2 输入、输出示例必须注意的是: Mathematica 严格区分大小写,一般地,内建函数的首写字母必须大写,有时一个函数名是由几个单词构成,则每个单词的首写字母也必须大写,如:求局部极小值函数FindMinimumfx,x,x0等。第二点要注意的是,在Mathematica中,函数名和自变量之间的分隔符是用方括号 ,而不是一般数学书上用的圆括号( ),初学者很容易犯这类错误。实际上,圆括号( )用于计算次序优先,大括号 用于集合,而 用于函数名和自变量之间的分隔。如果输入了不合语法规则的表达式,系统会显示出错信息,并且不给出计算结果,例如:要画正弦函数在区间-10,10上的图形,输入plotSinx,x,-10,10,则plot命令将显示为深红色,意为错误(先前的一些版本,比如Mathematica4.0,若输入plot,系统将提示“可能有拼写错误,新符号plot很像已经存在的符号Plot”) 。实际上,系统作图命令Plot第一个字母必须大写,一般地,系统内建函数首写字母都要大写。再输入PlotSinx,x,-10,10(此处缺少右方括号),运行后系统会将不配对的括号用黄红色显示,如图2.1.3。并且在输入行后面出现,单击后可给出错误提示。若输入Plot (Sinx,x,-10,10),则同样输入行后面出现,单击给出出错提示。 图2.1.3 输入错误提示示例在一个表达式只有准确无误,方能得出正确结果.学会看系统出错信息能帮助我们较快找出错误,提高工作效率。完成各种计算后,点击File-Exit退出,如果文件未存盘,系统提示用户存盘,文件名以“.nb”作为后缀,称为Notebook文件。以后想使用本次保存结果时可以通过File-Open菜单读入,也可以直接双击它,系统自动调用Mathematica将它打开。 二、表达式的输入Mathematica提供了多种输入数学表达式的方法,除了用键盘输入外, 还可以使用工具栏或者快捷方式健入运算符、矩阵或数学表达式。 2.1数学表达式二维格式的输入 Mathematica提供了两种格式的数学表达式,形如x/(2+3x)+y*(x-w)的称为一维格式,形如的称为二维格式。 你可以使用快捷方式输入二维格式,也可用基本输入工具栏输入二维格式。2.2特殊字符的输入 MathemMatica还提供了用以输入各种特殊符号的工具栏。基本输入工具栏包含了常用的特殊字符,只要单击这些字符按钮即可输入。若要输入其它的特殊字符或运算符号,必须使用从Insert菜单中选取Special Character或Palettes菜单中选取Special Characters工具栏,见图2.1.4,单击符号后即可输入。图2.1.4 Special Characters菜单、Special Characters工具栏2.3 Mathematica的联机帮助系统用Mathematica的过程中,常常需要了解一个命令的详细用法,或者想知道系统中是否有完成某一计算的命令,帮助系统永远是最详细、最方便的资料库。在Notebook界面下,用 ?或 ? 可向系统查询运算符、函数和命令的定义和用法,获取简单而直接的帮助信息。例如,向系统查询作图函数Plot命令的用法:输入?Plot系统将给出调用Plot的格式以及Plot命令的功能(如果用两个问号?,则信息会更详细一些),? Plot*给出所有以Plot这四个字母开头的命令。事实上,Mathematica7.0 提供了更加丰富、清晰地的帮助功能。在任何时候都可以通过按F1键或点击Help/Documentation Center,调出帮助文件中心(Documentation Center),见图2.1.5,其中的各下拉式菜单所包含的信息如表2.1.1所示。 图2.1.5 帮助文件中心 图2.1.6 解方程(组)的函数表2.1.1 帮助文件中心的信息CORE LANGUAGE介绍Mathematica软件所提供的符号计算语言MATHEMATICS AND ALGORITHMS介绍软件所包含的数学能力和算法VISUALIZATION AND GRAPHICS介绍符号图像、非并行函数和数据的可视化相关操作DATA MANIPULATION介绍对各种类型和格式的数据的操作COMPUTABLE DATA介绍Mathematica可计算的各类数据的处理方法DYNAMIC INTERACTIVITY介绍Mathematica的动态交互操作NOTEBOOK AND DOCUMENTS绍对Notebook和文档的操作SYSTEMS INTERFACES & DEPLOYMENT介绍系统界面与系统配置的操作如果要查找Mathematica中具有某个功能的函数,可以通过上述菜单逐步定位到自己要找的帮助信息。例如:需要查找Mathematica中有关解方程(组)的函数。单击MATHEMATICS AND ALGORITHMS菜单,再单击Equation Solving,便出现如图2.1.6所示页面。该页面显示了Mathematica系统中所包含的所有的数值求解和分析求解方程的方法及其描述,点击相应的超链接,有关内容的详细说明就马上调出来了。比如单击NSolve,则给出数值求解方程(组)的内建函数NSolve的具体说明和操作实例。如果知道具体的函数名,但不知其详细使用说明,可以在帮助文件中心首页的SEARCH后的文本框中输入相应的函数名后按回车键。三、数据类型和常数3.1数值类型在Mathematica中,基本的数值类型有四种:整数,有理数、实数和复数。如果你的计算机的内存足够大,Mathematica可以表示任意长度的精确实数,而不受所用的计算机字长的影响。整数与整数的计算结果仍是精确的整数或是有理数。 例2.1.1 2的100次方是一个31位的整数: In1:=2100 Out1=1267650600228228229401496703205376在Mathematica中允许使用分数,也就是用有理数表示化简过的分数。当两个整数相除而又不能整除时,系统就用有理数来表示,即有理数是由两个整数的比来组成。 例2.1.2 In2:=12345/5555 Out2=2469/1111 实数是用浮点数表示的,Mathematica实数的有效位可取任意位数,是一种具有任意精确度的近似实数,当然在计算的时候也可以控制实数的精度.实数有两种表示方法:一种是小数点另外一种是用指数方法表示的。 例2.1.3 In3:=0.239998 Out3:=0.23998 In4:=0.12*1011 Out4=0.12*1011实数也可以与整数,有理数进行混合运算,结果还是一个实数。复数是由实部和虚部组成.实部和虚部可以用整数,实数,有理数表示。在Mathematica中,用I表示虚数单位。 例2.1.4 In5:=2+1/4+0.5+0.7*I Out5=2.75+0.7*I 3.2 不同类型数的转换 在Mathematica的不同应用中,通常对数字的类型要求是不同的。例如在公式推导中的数字常用整数或有理数表示,而在数值计算中的数字常用实数表示。在一般情况下在输出行Outn中,系统根据输入行Inn的数字类型对计算结果做出相应的处理。如果有一些特殊的要求,就要进行数据类型转换。表2.1.2 Mathematica提供的几个转换函数Nx将x转换成实数Nx,n将x转换成近似实数,有效数字为n个Rationalizex给出x的有理数近似值Rationalizex,dx给出x的有理数近似值,误差小于dx 例2.1.5 In1 :=N5/3,20 Out1 =1.6666666666666666667 In2:=N%,10 (表示上一输出结果) Out2=1.666666667 In3 :=Rationalize% Out3 =5/33.3数学常数Mathematica 中定义了一些常见的数学常数,它们都是精确数,例如Pi表示圆周率、E表示自然对数的底、Degree表示一单位角度(/180)、I为虚数单位、Infinity表示无穷大、-Infinity表示负无穷大()、GondenRatio表示黄金分割数。数学常数可用在公式推导和数值计算中,在数值计算中表示精确值。3.4数的输出形式在数的输出中可以使用转换函数进行不同数据类型和精度的转换。另外对一些特殊要求的格式还可以使用表2.1.3中的格式函数。表2.1.3数的输出格式函数NumberFormexpr,n以n位精度的实数形式输出实数exprScientificFormatexpr以科学记数法输出实数exprEngineergFormexpr以工程记数法输出实数expr 例2.1.6 In1:=NPi30,30, Out1=8.212893304027495815865035854341014 In2:=NumberForm%,10 Out2=NumberForm=8.2128933041014 In3 :=EngineeringForm% Out3=EngineeringForm=821.2893304027495815865035854341012四、 变量4.1变量的命名 Mathematica中内部函数和命令都是以大写字母开始的标示符。为了不与它们混淆,我们自定义的变量应该是以小写字母开始,后跟数字和字母的组合,长度不限。例如:a12 、ast 、 aST都是合法的,而12a,z*a是非法的。在Mathematica中,变量不仅可以存放一个数值,还可以存放表达式或复杂的算式。4.2 给变量赋值 在Mathmatica中用等号为变量赋值。同一个变量可以表示一个数值,一个数组,一个表达式,甚至一个图形。对不同的变量可同时赋不同的值。 例2.1.7 In1:=x=3 Out1:=3 In2:=x2+2x Out2=15 In3:=x=%+1 Out3:=16 In4:=u,v,w=1,2,3 Out4=1,2,3 In5:=2u+3v+w Out5=11对于已定义的变量,当你不再使用它时,为防止变量值的混淆,可以随时用.清除它的值。如果变量本身也要清除用函数Clearx。 例2.1.8 In6:=u=. In7:=2u+v Out7=2+2u4.3 变量的替换在给定一个表达式时其中的变量可能取不同的值,这时可用变量替换来计算表达式的不同值,方法为用expr/.。 例2.1.9 In1:=f=2*x+1 Out1=2x+1 In2:=f/.x-1Out2=3 如果表达式中有多个(例如有两个)变量也可以同时替换,方法如下。例2.1.10 In1:= (x+y)(x-y)2/.x-3,y-1-a Out1=a3+12a+16五、函数5.1系统函数 在Mathematica中定义了大量的数学函数可以直接调用,这些函数其名称一般表达了一定的意义,可以帮助我们理解,表2.1.4列出了几个常用的函数。Mathematica中的函数与数学上的函数有些不同的地方,Mathematica中函数是一个具有独立功能的程序模块,可以直接被调用。同时每一函数也可以包括一个,或多个参数,也可以没有参数,参数的数据类型也比较复杂。更加详细的可以参看系统帮助,了解各个函数的功能和使用方法是学习Mathematica的基础。表2.1.4 几个常用的函数Floorx(Ceilingx)不比x大(小)的最大(小)整数Roundx接近x的整数Signx符号函数Absxx绝对值Maxx1,x2,x3.(Minx1,x2,x3.)xi中的最大(小)值Minx1,x2,x3. x1,x2,x3.中的最小x1,x2,x3.中的最小值Random01之间的随机函数Expx指数函数Logx( Logb,x)自然(以b为底的)对数函数Sinx,Cosx,Tanx,Cscx,Secx,Cotx三角函数(变量是以弧度为单位的)ArcSinx, ArcCosx, ArcTanx, ArcCotx反三角函数Sinhx,Coshx,Tanhxx,Cschx,Sechx,Cothx双曲函数ArcSechx,ArcCothx反双曲函数Modm,nm被n整除的余数,余数与n的符号相同LCMn1,n2,,GCDn1,n2, ni的最小公倍数,最大公约数n!(n!)n的(双)阶乘5.2 函数的定义5.2.1函数的立即定义 立即定义函数的语法为:fx_=expr(函数名为f,自变量为x,expr是表达式)。在执行时会把expr 中的x都换为f的自变量x(不是x_)。函数的自变量具有局部性,只对所在的函数起作用。函数执行结束后也就没有了,不会改变其它全局定义的同名变量的值。请看下面的例子:定义函数f(x)=x*Sinx+x2。对定义的函数我们可以求函数值,也可绘制它的图形,见图2.1.7。 图2.1.7 定义的函数的图形对于定义的函数我们可以使用命令Clearf清除掉,而Removef则从系统中删除该函数。5.2.2函数的延迟定义 延迟定义函数从定义方法上与即时定义的区别为“=”与“:=”,延迟定义的格式为:fx_:=expr,其他操作基本相同。延迟定义和即时定义的主要区别是:即时定义函数在输入函数后立即定义函数并存放在内存中并可直接调用,延时定义只是在调用函数时才真正定义函数。5.2.3多变量函数的定义也可以定义多个变量的函数,格式为fx_,y_,z_,=expr,自变量为x、y、z、,相应的expr中的自变量会被替换。例2.1.10 定义函数 f(x,y)=xy+ycosx In1:= fx_,y_=x*y+y*C0sxOut1= x y+y cosxIn2: =f2,3Out2= 6+3 cos25.2.4 使用条件运算符定义和If命令定义函数如果要定义如这样的分段函数应该如何定义?显然要根据的不同值给出不同的表达式。一种办法是使用条件运算符,基本格式为:fx_:=expr/;condition ,当condition条件满足时才把expr赋给f。下面定义方法,通过图形可以验证所定义函数的正确性。图2.1.8 使用条件运算符定义的函数及其图形当然使用If命令也可以定义上面的函数,If语句的格式为:If条件,值1,值2。如果条件成立取“值1”,否则取“值2”,下面用If语句来定义上面的分段函数:fx_:=Ifx=0,x-1,Ifx1|x-2这种表示形式说明x取1或2均可。而用Solve可得解集形式。 In2:= Solvex2-3x+2= =0,x Out2= x-1,x-28.1求方程的解表2.1.7 常用的一些方程求解函数Solvelhs=rhs,vars给出方程的解集NSolvelhs=rhs,vars直接给出方程的数值解集Rootslhs=rhs,vars求表达式的根FindRootlhs=rhs,x,x0求x0附近方程的解值Solve函数可处理的主要方程是多项式方程。Mathematica总能对不高于四次的方程进行精确求解,对于三次或四次方程,解的形式可能很复杂。如果方程求解的结果比较复杂,这时可用N 函数近似数值解。 当方程中有一些复杂的函数时,Mathematica可能无法直接给出解来。在这种情况下我们可用FindRoot来求解,但要给出起始条件。例2.1.11 求3cosx=lnx的解。In1:= FindRoot3 Cosx= =Logx,x,1Out1= x-1.44726这时只能求出x=1附近的解。如果方程有几个不同的解,当给定不同的条件时,将给出不同的解。因此确定解的起始位置是比较关键,一种常用的方法是,先绘制图形观察后再解。也就是说先通过图形断定何值附近有根,然后再用FindRoot 来求解。8.2 求方程组的根 使用Solve和NSolve,FindRoot也可求方程组的解,只是使用时格式略有不同,使用时应加以注意。此外需要说明的是Solve,Roots只给出方程的一般解,而Reduce函数数可以给出方程的全部可能解。九、求和与求积在Mathematica中,数学上的各式符号用Sum(NSum)表示,连乘用Product(NProduct)表示。具体使用方法可在帮助系统中获得。例2.1.12 一些运行示例。In1:= Sum2 n-1,n,9Out1= 81In2:= Sumn*xn,n,1,9,2Out2= x+3 x3+5 x5+7 x7+9 x9In3:= Sum1/n!,n,1,11Out3= 8573539/4989600In4:= N%Out4= 1.71828In5:= N%,10Out5= 1.718281826十、微积分运算进行微积分运算是Mathematica的优势与特色,下面我们简单介绍一下常用的极限、求导(微分)、积分及微分方程的求解。10.1 极限在许多运算中,需要计算函数表达式在某点处的取值。前面我们已经介绍了可以完成这一操作。但是在某些情况下,我们必须更谨慎。比如求表达式在点处的值。如果简单地用运算符/.,我们将得到不定的结果,这显然不是我们所期望的正确结果。因此此时必须要进行取极限运算,Mathematica语句为:Limitexpr,x-x0(求趋向于时表达式expr的极限)。例2.1.13 In1:= LimitSinx/x,x-0Out1=1In2:= LimitSinx/x2,x-0Out2=In3:= LimitSinx/x,x-InfinityOut3=0In4:= Sign0(计算符号函数Signx,在处的值)Out4=0 In5:= LimitSignx,x-0 (求符号函数在0处的极限值)Out5=1 (%这里默认是右极限,极限值为1也为正确值)In6:= LimitSin1/x,x-0 (极限不存在)Out6= Interval-1,1 (在-1和1之间振荡)有些函数在某些特定点处,从不同方向趋于该点时极限不同,此时可以使用Limite中的Direction选项来指定趋近的方向。如Limitexpr,x-x0, Direction-1表示求趋向于时表达式expr的左极限,Limitexpr,x-x0, Direction-1表示求趋向于时表达式expr的右极限。10.2 微分(导数)运算Mathematica可以对具体的函数进行微分运算,这里包括求(偏)导数,高阶(偏)导数,全微分,全导数等。具体命令见表2.1.8。表2.1.8 微分(导数)命令 Df, xf对x偏导数Df, x1,x2,f对x1、x2、的偏导数Df,x,nf对x的n阶偏导数Df, x,NonConstants-u1,u2, ui依赖于x情况下的f对x导数 Dtf全微分Dtf,x全导数Dtf, x1,x2,多重全导数Dtf, x,Constants-c1,c2, ci为常数时的全导数例2.1.14 In1:=Dxn, xOut1=nxn-1 In2:= Dxn, x, 3Out2= n(n-1)(n-2)xn-3In3:= Dx2 + y2, xOut3=2xIn4:=Dx*y2 + y2, x,yOut4=2yIn5:=Dx2 + yx2, xOut5=2x+2yxyx In6:= Dx2 + y2, x, NonConstants - yOut6=2x+2yDy,x,NonConstants-yIn7:= DtSinx y,xOut7= Cosx y (y+x Dty,x)从上面的第五个输入输出可以看出,Mathematica不仅可以求具体的函数微分(导数),而且可以求抽象函数的微分和导数。10.3 积分运算函数Integratef,x给出不定积分。这里需要说明两点:一是可以把不定积分运算看成是微分运算的逆运算,即如果对Integratef,x的结果进行微分运算将得到准确的表达式f;二是不定积分是一族函数,它们之间相差一个常数项。然而在使用Integratef,x命令将得到其中的某一个函数。例2.1.15 In1:= Integratex2,xOut1=Integrate函数一般假设积分中的所有符号量有“正常”值。例如Mathematica给出不定积分为,尽管它在时不正确。当然,如果单独求不定积分将得到正确的结果Logx。函数Integratef,x,xmin,xmax可以用来计算定积分。而函数Integratef,x,xmin,xmax,y,ymin,ymax,可以用来计算多重积分。例2.1.16 In2:= IntegrateSinx/x, x,0,InfinityOut2= /2In3:= IntegrateSinSinx,x,0,1Out4= SinSinx dx (原函数不能用初等函数表示)In5:=NIntegrateSinSinx,x,0,1 (求数值积分)Out5= 0.430606In6:= Integrate(x+y),y,0,1,x,0,2Out6=3In7:= Integrate(x+y), y,0,1, xOut7= 1/2 x (1+x)10.4 微分方程的求解Mathematica中用函数DSolve 来求解微分方程,具体命令见表2.1.9。表2.1.9 求解微分方程(组)命令 DSolveeqn,y,x求解关于y的微分方程eqn,其中y为x的函数DSolveeqn1,eqn2,y1,y2,x求解微分方程组DSolveeqn,y,x1,x2,求解偏微分方程例2.1.17 In1:= DSolveyx+yx= =a Sinx,yx,xOut1= yx-e-x C1+1/2 a (-Cosx+Sinx)In2:= DSolveyx+yx= =a Sinx,y0= =0,yx,xOut2= yx-(1/2) a e-x (-1+ex Cosx-ex Sinx)In3:= DSolvext= =xt+2yt,yt= =xt+2t,xt+zt= =0,xt,yt,zt,tOut3= xt-1/8 (-e3t C1+24+t/(-3+Log2),yt-2 t +1/8 (-e3t C1+24+t/(-3+Log2),zt-1/8 (e3t C1-24+t/(-3+Log2)In4:= DSolve3Dyx1,x2,x1+5Dyx1,x2,x2= =x1 ,y,x1,x2Out4= y-Functionx1,x2,1/6 (x12+6 C11/3 (-5 x1+3 x2)2.2 MATLAB简介MATLAB名字由MATrix(矩阵)和 LABoratory(实验室) 两词的前三个字母组合而成,意为“矩阵实验室”。在国际上30几个数学类科技应用软件中,MATLAB在数值计算方面独占鳌头,而Mathematica和Maple则分居符号计算软件的前两名。Mathcad因其提供计算、图形、文字处理的统一环境而深受学生欢迎。但就影响而言,至今仍然没有一个别的计算软件可与MATLAB匹敌,是国际控制界公认的标准计算软件。一、基本操作1.1 MATLAB的启动和运行本书所依据的版本是MATLAB 7.11.0(R2010b),一旦安装成功后,MATLAB的图标()即出现在您的桌面上,您可以用鼠标双击以启动MATLAB,也可以在“开始”的主菜单下,选择“程序MATLABR2010b /MATLAB R2010b”来启动MATLAB。上述这二种方法都可以打开 MATLAB的命令窗口,其外观如图2.2.1所示。图2.2.1 MATLAB 主界面在MATLAB命令窗口上,有标准的下拉式菜单,如File、Edit、Debug、Parallel、Desktop、Window、Help等,其外观如图2.2.1所示。图中,MATLAB桌面被分割成三个小窗口,左边是“当前文件夹窗口”(Current Folder),中间是 “命令窗口”(Command Window),右边则是“工作空间窗口”( Workspace)和“历史命令窗口”(Command History)。 在“命令窗口”下,可以输入命令进行操作。MATLAB是一个交互式的系统,在“”后输入命令,按回车键,系统会马上解释和执行输入的命令并输出结果。如果命令有语法错误,系统会给出提示信息。在当前提示符下,可以通过点击键盘上的上下箭头调出以前输入的命令。用滚动条可以查看以前的输入命令及其输入信息。事实上,MATLAB的桌面还包含很多其他窗口,这些窗口可由Desktop的下拉式菜单来打开或关闭。由于一些主要窗口的功能和其它相差不远,在此不针对每个窗口一一说明。1.2 MATLAB的退出退出MATLAB和退出其它Windows程序一样,可以选择File菜单中的Exit菜单项,也可以使用Alt+F4热键。还可以用鼠标直接点击关闭窗口退出。1.3 MATLAB的帮助系统在MATLAB窗口中输入help后面跟上要查询的函数或命令即可查询该语句的用法。如查询求极限的语句命令limit,则在命令窗口的“”后输入“help limit”,按回车键,将给出“limit”命令的说明、使用格式和实例。具体显示如图2.2.2。图2.2.2 使用help命令查询函数的使用方法也可在MATLAB窗口上方的菜单中点击Help,再选中Product Help,在弹出的窗口中输入limit后按回车键,则会列出所有包含limit的文档,如图2.2.3。图2.2.3 使用帮助系统查询命令的使用有了语句命令查询,我们就可以在MATLAB窗口下随时查找一些语句的用法,以及各参数的意义。这样就可以自助使用MATLAB,来解决应用中的问题。为简洁起见,下面的语句使用介绍中,只列出一些最主要的语句格式,读者可自行在MATLAB窗口下查找其他的格式使用方法。1.4 MATLAB的输入与输出MATLAB输入的命令形式为:变量=表达式,表达式由操作符或其他特殊字符,函数和变量名组成。MATLAB执行表达式并将执行结果显示于命令后,同时存在变量中以留用。如果变量名和=省略,即不指定返回变量,则名为ans的变量将自动建立。例如:键入命令: A = 1.2 3.4 5.6 sin(2) 其中“”由系统自动给出,无需键入(下同)。按回车键,系统将产生4维向量A的输出结果:A =1.200 3.400 5.600 0.9030读者不妨注意一下执行上面几个操作后各窗口(主要是“工作空间窗口”和“历史命令窗口”)显示信息的变化,这在后继的操作中将提供快捷方便的信息。有时,你并不想看到语句的输出结果,特别是运算结果很长时,输出时会长时间的翻屏。这时,可以在语句的后面加上“;”,表明不输出当前命令的结果。 在缺省的状态下,MATLAB以短格式(short 格式)显示计算结果。这在有些情况下是不够的,这时可以使用File/Preferences菜单,在Command Window 中修改Text display中的numeric format;也可直接在运算前键入命令format long 等输出格式语句再计算。由于MATLAB以双精度执行所有的运算,显示格式的设置仅影响数或矩阵的显示,不影响数或矩阵的计算与存储。MATLAB会将所有在百分比符号(%)之后的文字视为程序的注解。(Comments),例如: format long %指定显示格式为long y=(5*2+3.5)/5; %将运算结果储存于变量 y,但不用显示于屏幕 z=y2 %将运算结果储存于变量z 并显示于屏幕z=7.290000000000001在上例中,%之后的文字会被MATLAB忽略不执行,但它的使用可提高MATLAB程序的可读性。MATLAB可同时执行以逗号(,)或分号(;)隔开的数个表达式,例如: x=sin(pi/3); yx2; Z=y*10,Z= 7.5000若一个数学运算式太长,可用三个句点()将其延伸到下一行,例如:z10*sin(pi3)*sin(pi/3);二、MATLAB在代数学中的应用MATLAB是以矩阵为基本运算单元,因此,从最基本的运算单元出发,介绍MATLAB的命令及其用法。2.1 矩阵运算2.1.1 矩阵的表示MATLAB的强大功能之一体现在能直接处理向量或矩阵,当然首要任务是输入待处理的向量或矩阵。不管是任何矩阵(向量),我们可以直接按行方式输入每个元素:同一行中的元素用逗号(,)或者用空格符来分隔,且空格个数不限;不同的行用分号(;)分隔。所有元素处于一方括号( )内;当矩阵是多维(三维以上),且方括号内的元素是维数较低的矩阵时,会有多重的方括号。例如: X_Data = 2.32 3.43;4.37 5.98X_Data = 2.3200 3.4300 4.3700 5.9800 Matrix_B = 1 2 3;2 3 4;3 4 5Matrix_B = 1 2 3 2 3 4 3 4 5 Null_M = %生成一个空矩阵Null_M = a=2.7;b=13/25; C=1,2*a+i*b,b*sqrt(a); sin(pi/4),a+5*b,3.5+1C = 1.0000 5.4000 + 0.5200i 0.8544 0.7071 5.3000 4.5000 2.1.2 矩阵的基本运算首先我们介绍矩阵的一些基本运算。通过线性代数的学习我们知道,矩阵的基本运算有:加、减、乘、“除”和幂运算。其中乘法运算包括矩阵乘、数乘和点乘(即同型矩阵对应元素的乘积),“除法”运算包括左除()和右除(/)等。一般情况下,x=ab是方程a*x =b的解,而x=b/a是方程x*a=b的解。如果a为非奇异矩阵,则ab和b/a可通过a的逆矩阵与b阵得到:ab 等价于 inv(a)*bb/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 社区团购标品品类规划
- 重症医学科心肺复苏基础知识要点
- 老旧小区改造工程施工组织设计
- 《清远市市场监管领域实施执法“观察期”制度工作指引(试行)》
- 2025别墅的精装修合同
- 2025年合同履行担保书模板
- 2025代理邮政业务合同
- 血液科再生障碍性贫血输血管理护理规范培训
- 医疗耗材使用管理
- 物业管理安全管理培训
- 2025年春新人教版数学一年级下册课件 欢乐购物街 第1课时 认识人民币
- 玉林市自来水有限公司笔试内容
- 中班主题活动树叶变变变
- 2025年度敬老院养老服务机构服务质量评估合同规范3篇
- 2025年贵州省公路工程集团招聘笔试参考题库含答案解析
- HDPE塑钢缠绕排水管施工方案
- 2024年无人驾驶环卫行业研究报告
- 三年级语文教学质量提高措施
- 桥下空间整治报告范文
- Python语言与经济大数据分析知到智慧树章节测试课后答案2024年秋上海财经大学
- 上海二手房转让合同样本
评论
0/150
提交评论