MATLAB在数学建模中的应用_第1页
MATLAB在数学建模中的应用_第2页
MATLAB在数学建模中的应用_第3页
MATLAB在数学建模中的应用_第4页
MATLAB在数学建模中的应用_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MATLAB在数学建模中的应用摘要:通过对实际问题的抽象和简化,引入一些数学符号、变量和参数,运用某些规律,用数学语言和数学方法建立变量、参数间的内在联系,得出一个数学结构,该数学结构是实现的一个近似刻画,称之为数学模型。建立和求解数学模型的全过程就是数学建模,它包括模型的建立、求解、分析、检验循环往返的全过程,MATLAB语言正是处理此类问题的很好工具,既能进行数值求解,又能绘制有关曲线,非常方便实用。关键词:MATLAB数学建模数学模型数学建模是通过对实际问题的抽象和简化,引入一些数学符号、变量和参数,用数学语言和方法建立变量参数间的内在关系,得出一个可以近似刻画实际问题的数学模型,进而对其进行求解、模拟、分析检验的过程。在数学建模中MATLAB软件发挥了重要的作用,借助于MATLAB的强据处理、图形处理能力可以方便、快捷、高效的解决数学建模中各种问题。通过介绍计算机软件MATLAB在数学建模中的应用,以提高数学建模的质量和效率,增强解决实际问题的能力。MATLAB既是一种语言,又是一种编程环境。MATLAB提供了很多方便用户的工具,用于管理变量、输入输出数据以及生成和管理M文件。MATLAB中的M文件的语法与其他的高级语言类似,是一种程序化的编程语言,同时也是一种解释性的编程语言,即逐行解释运行程序,程序更容易调试。它只是一个简单的ASCII码文本文件,语法比一般的高级语言都要简单,与数学语言比较接近,更容易掌握和理解。MATLAB进行数值计算的基本处理单位是复数数组(或称阵列)。它拥有一流水平的数值计算函数库,其所有数值计算算法都是国际公认的、先进的可靠算法;而执行算法的指令形式非常简单、易读易用,应用MATLAB进行函数图形绘制也非常方便。它也有简单易用的程序语言,MATLAB是一个高级的矩阵语言,它包含控制语句、函数、数构、输入和输出和面向对象编程特点。支持命令和程序两种工作方式。移植性好、可拓展性极强。它也有强大的科学计算数据处理能力,MATLAB包含了大量计算算法,拥有600多个丁程中用到的数可以方便地实现用户所需的各种计算功能。它还有出色的图形处理功能,MATLAB具有方便的数据可视化功能,以将向量和距阵用图形表现出来。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。正因为MATLAB能够能够较好的解决众多实际问题,因此受到学建模者的青睬。一:基本数学运算在MATLAB下进行基本数学运算,只需将运算式直接打在提示号>>后面,并按入Enter键即可。MATLAB将计算的结果以ans显示。【例】求的算术运算结果。(1)用键盘在MATLAB指令窗中输入以下内容>>(12+2*(7-4))/3^2(2)在上述表达式输入完成后,按【Enter】键,该就指令被执行。(3)在指令执行后,MATLAB指令窗中将显示以下结果。ans=2我们也可给运算式的结果设定一个变量x:x=(5*2+1.3-0.8)*10^2/25x=42表达式MATLAB书写表达式的规则与“手写算式”差不多相同,但要求所有表达式都是以纯文本形式输入。如果一个指令过长可以在结尾加上...(代表此行指令与下一行连续),例如:>>1*2+3*4+5*6+7*8+9*10+11*12+...13*14+15*16ans=744若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可。MATLAB会忽略所有在百分比符号(%)之後的文字,因此百分比之後的文字均可视为程式的注解(Comments)。例:计算圆面积Area=,半径r=2,则可键入>>r=2;%圆半径r=2,>>area=pi*r^2;%计算圆面积area>>area=12.5664MATLAB提供基本的算术运算有:加(+)、减(-)、乘(*)、除(/)、幂次方(^)。阵列与矩阵A.矩阵的四则运算在前面已经讲过,MATLAB是以(复)矩阵为基本计算单元的,因此矩阵的四则运算的格式与3.1节中讲的数字的运算是相同的,不过对具体的运算还有一些具体的要求。此以乘法为例:矩阵的乘法使用算符“*”,要求相乘的矩阵线性代数中矩阵相乘的要求,A和B才可以相乘。a=[123;234;345];b=[111;222;333];e=a*de=141414302020204526262660B.矩阵与常数间运算常数与矩阵的运算即是同此矩阵各元素之间进行运算,如数加是指矩阵每个元素都加上此常数,数乘是指矩阵每个元素都与此常数相乘。需要注意的是:当进行数除时,数只能作除数。C.矩阵的逆运算矩阵的逆运算是矩阵运算中很重要的一种运算。它在线性代数及计算方法中都有很多的论述。而在MATLAB中,众多的复杂理论只变成了一个简单的命令——inv。求矩阵A=的逆。解A=[21-3-1;3107;-124-2;10-15];inv(A)ans=-0.04710.5882-0.2706-0.94120.3882-0.35290.48240.7647-0.22350.2941-0.0353-0.4706-0.0353-0.05880.04710.2941D.矩阵的行列式运算矩阵的行列式的值可由det函数计算得出。det(A)ans=-85E.矩阵的幂运算矩阵的幂运算的形式同数字的幂运算的形式相同,即用算符“^”来表示。矩阵的幂运算在计算过程中与矩阵的某种分解有关,计算所得值并非是矩阵每个元素的幂值。这一点是值得读者注意的A^2ans=9-3-176164-1639-2921-38-1-1226注意:A.^2%指每个数分别平方四、多项式运算A.求多项式的值求多项式的值可以有2种形式,对应着2种算法。一种是将输人变量值代入多项式,计算时以数组为单元,此时的计算函数为polyval;另一种则以矩阵为计算单元,进行矩阵式运算,以求得多项式的值,此时的函数为polvalm。这2种计算结果在数值上有很大的差别,这种差别来自于矩阵计算和数组运算的差别。B.求多项式的根求多项式的根可以有2种办法,一种是直接调用MATLAB的函数roots,求解多项式的所有根;另一种是通过建立多项式的伴随矩阵再求其特征值的方法得到多项式的所有根。例、求解方程的所有根。解q=[1-351-1]q=1-351-1roots(q)ans=1.5399+1.7489i1.5399-1.7489i-0.47090.3911C.多项式的乘除法运算多项式乘法由函数conv来实现,此函数同于向量的卷积函数;多项式的除法由函数deconv来实现,同于向量的解卷函数。计算两多项式的乘除法。p=[123456]p=123456poly2sym(p)ans=x^5+2*x^4+3*x^3+4*x^2+5*x+6d=[345]d=345pd=conv(p,d)pd=310223446584930poly2sym(pd)ans=3*x^7+10*x^6+22*x^5+34*x^4+46*x^3+58*x^2+49*x+30p1=deconv(pd,d)p1=1.00002.00003.00004.00005.00006.0000D.多项式微分多项式的微分函数polyder可以用来进行多项式的微分运算。D.对多项式进行微分运算p=[123456]poly2sym(p)p=123456ans=x^5+2*x^4+3*x^3+4*x^2+5*x+6dp=polyder(p)dp=58985poly2sym(dp)ans=5*x^4+8*x^3+9*x^2+8*x+5E.多项式拟合多项式拟合是多项式运算的一个重要组成部分,在工程应用及科研工作中都得到了广泛的应用。其实现一方面可以由矩阵的除法求解超定方程来进行;另一方面在MATLAB中还提供了专用的拟合函数polyfit。其调用格式为:polyfit(x,y,n)其中x、y为拟合数据,n为拟合多项式的次数。[p,s]=polyfit(x,y,n)其中p为拟合多项式系数向量,s为拟合多项式系数向量的结构信息。用5阶多项式对上的正弦函数值进行最小二乘拟合。解x=0:pi/20:pi/2;y=sin(x);a=polyfit(x,y,5);x1=0:pi/30:pi*2;y1=sin(x1);y2=polyval(a,x1);plot(x1,y1,'b-',x1,y2,'r*')%作二维图形曲线图和点图。legend('原曲线','拟合曲线')%显示图例axis([0,7,-1.2,4])%显示坐标轴的长度由于拟合是在上进行的,故所得曲线在此区间内与原曲线符合得很好。而在区间外,两曲线差别较大。总结通过以上对“MATLAB在简单数学建模中的应用”的分析。我们可以认

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论