ImageVerifierCode 换一换
格式:PPT , 页数:68 ,大小:835KB ,
资源ID:6944191      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-6944191.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(MATLAB数学建模.ppt)为本站会员(j35w19)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

MATLAB数学建模.ppt

1、基于MATLAB的 高等数学实验,主 讲: 张 朝 元 数学与计算机学院 应用数学教研室 2009.3.-4.,第一章 MATLAB基本知识,第二章 MATLAB矩阵和数组计算,第三章 MATLAB符号运算,第四章 MATLAB绘图,第五章 MATLAB语言的程序设计,第六章 MATLAB应用,一、MATLAB简介和特点,二、MATLAB的安装与启动,三、MATLAB 基本知识,四、MATLAB基本操作,上机练习,第一章 MATLAB基本知识,MATLAB 是Matrix Laboratory (矩阵实验室)的缩写,是由美国MathWorks 公司开发的集数值计算、符号计算和图形可视化三大基本

2、功能于一体的,功能强大、操作简单的语言。,主要特点: 运算符和库函数极其丰富,语言简洁,编程效率高, 既具有结构化的控制语句,又有面向对象的编程特性。 图形功能强大。 功能强大的工具箱。 易于扩充。,Back,1、MATLAB的运行方式:命令行方式和M文件方式,例1.1、求矩阵 , 的和。,2、MATLAB的窗口,3、MATLAB的帮助系统,4、“clear”命令和“clc”命令,Back,1、MATLAB的常用操作键,表1.1 命令窗口常用功能键,2、MATLAB的变量和函数,MATLAB的变量命名规则: 变量必须以字母打头,之后可以是任意字母、数字或下划线; 变量名区分字母大小写; 变量名

3、不能超过19个字符。,调用单值函数格式: 变量名=函数名(P1,P2) P为输入参数,表1.2 MATLAB中特殊变量名,表1.3 基本函数表,运算符号:+、-、*、/、,3、数字变量的运算及显示格式,四种显示格式: short 小数点后4位(默认) long 小数点后14位 short e 5位指数形式 long e 15位指数形式,4、数据的输入输出函数,变量名=input(提示信息),输出函数,从键盘输入数据,disp(输出项),5、MATLAB的符号表达式,定义方式:变量名=表达式,6、逻辑关系运算,表1.5 逻辑关系运算表,1.计算 的值; 2求 ; 3计算 ; 4求 的值; 5求1

4、5、35的最大公因数; 6. 计算3.14朝零取整; 7用变量名y1表示方程 8熟悉MATLAB的各窗口。,上机练习,第二章 MATLAB矩阵和数组计算,一、矩阵的建立,二、矩阵元素的操作,三、矩阵的基本运算,四、矩阵的线性变换,五、矩阵的分解,六、向量运算,七、多项式运算,一、矩阵的建立,直接输入矩阵的元素,利用函数创建,zeros 零矩阵 ones 常数矩阵 eye 单位矩阵 rand 均匀分布的随机矩阵 randn 正态分布的随机矩阵 linspace 线性等间隔向量 logspace 对数等间隔向量,利用数据文件装入,利用矩阵编辑器(Matrix Editor)创建,二、矩阵元素的操作

5、,1、选取矩阵中某些元素而构成新的矩阵或数组,b=a(m行:n行,r列:s列)表示从a中抽出m到n行、r到s列 b=a(:,r列:s列)表示所有行均选 b=a(m行:n行,:)表示所有列均选 c=a(m,r)表示第m行r列元素被选中,2、小矩阵拼成大矩阵,大矩阵c=a;b把b的元素补进a矩阵中,三、矩阵的基本运算,1、矩阵的四则运算,加(+)、减(-),乘法(*)、点乘(.*),除法(左除和右除/),点除(./),2、矩阵与标量的四则运算,3、矩阵的幂运算,A.n,p.B,A.B,Ap,4、矩阵的指数运算、对数运算和开方运算,矩阵的指数运算 exam exam1 exam2,矩阵的对数运算 l

6、ogm,矩阵的开方运算 sqrtm,5、矩阵的转置 矩阵的逆矩阵 inv,6、矩阵元素的行列式的值:det矩阵的秩:rank矩阵的迹:trace矩阵的范数:norm矩阵的条件数:cond,7、矩阵a的特征值(n)特征向量(m):m,n=eig(a),例2.5 求矩阵A=2,2,-1,1;4,3,-1,2;8,5,-3,4;3,3,-2,2 的行列式、迹、范数、条件数、秩和特征值特征向量。,例2.6 解线性方程组,四、矩阵的线性变换,rot90矩阵逆时针旋转90度; fliplr矩阵作左右翻转; fliqud矩阵作上下翻转; diag产生对角矩阵; tril产生下三角矩阵; triu产生上三角矩

7、阵; reshape矩阵重建; size矩阵尺寸; length向量长度。,五、矩阵的分解,Cholesky分解:chol(A),三角分解:L,U=lu(A),正交分解:Q,R=qr(A),六、向量运算,1、向量的产生,2、向量运算,向量名=初值:增量:终值,向量可用中括号以及其中的数字产生,linspace(初值,终值,数据个数),例2.8、 建立一个10以内的正奇数向量; 建立一个110内的有4个数的向量。,向量与标量的运算,向量间的运算,和x1+x2 差 x1-x2 点积dot(x1,x2) 叉积cross(x1,x2) 混合积 dot(x1,cross(x2,x3),七、多项式运算,多

8、项式一般可表示为:,1、多项式构造,命令:poly2sym,例2.11、构造多项式,2、求多项式的值,3、多项式四则运算,命令:polyval(p,s),加“+” 减“-” 乘conv(a,b)除q,r=deconva,b,第三章 MATLAB的符号计算,一、符号定义,二、代数式的符号运算,三、可视化符号函数计算器,四、函数的极值和零点,五、求极限,六、求导数和偏导数,七、积分运算,八、级数,九、解方程和微分方程,上机练习,1、创建符号变量,符号变量名=sym(表达式),Syms 符号变量名1 符号变量名2 符号变量名3 ,2、符号赋值,符号要用具体数值代替,格式为:R=subs(s,old,

9、new),表达式R的值可用命令:vpa(R),一、符号定义,符号表达式的化简函数,表2.1 符号化简函数表,二、代数式的符号运算,三、可视化符号函数计算器,函数自运算,启动可视化符号函数计算器:funtool,函数与常数的运算,两函数间运算,其它功能,可进行函数的运算操作,四、函数的极值和零点,表2.2 函数的极值和零点的主要函数表,五、求极限,表2.3 符号极限的函数格式,六、求导数和偏导数,1、表达式的导数,diff(s,x,n),2、多元函数的偏导数,diff(函数f(x,y),变量x,n),求出,3、求雅可比矩阵,jacobian(函数f(x,y,z);函数g(x,y,z);函数h(x

10、,y,z),x,y,z),七、积分运算,表2.3 符号积分的函数格式,八、级数,表3.3 泰勒级数的函数格式,表3.4 级数求和函数格式,九、解方程和微分方程,表2.3 符号方程求解函数格式,九、解方程和微分方程,表2.4 符号微分方程求解的函数格式,第四章 MATLAB绘图,一、二维图形绘制,二、三维图形绘制,上机练习,1、plot函数常用形式, plot(x,y), plot(x), plot(x,y,参数),表5.1 颜色控制符, plot(x1,y1,参数1,x2,y2,参数1),表5.2 线型控制符,表5.3 数据点标记符,2、图形的修饰与控制,坐标轴的调整,axis( ),axis

11、(控制字符串),表5.4 axis控制符,对图形坐标轴的刻度进行标示:,set(gca,xtick,标示向量)set(gca,ytick,标示向量),文字标示,title(字符串)图形标题 xlabel(字符串)x轴标注 ylabel(字符串)y轴标注text(x,y,字符串)在坐标(x,y)处标注gtext(字符串)用鼠标在指定处标注,图例注解,格式 :legend(字符串1,字符串2,参数),表5.6 图例参数的含义,图形保持,hold保持当前图形 hold on保持当前图形及轴系的所有特性 hold off解除hold on,网格控制,grid on添加网格线 grid off去掉网格线

12、,图形窗口分割,subplot(m,n,p),图形的填充,fill(x,y,color),3、特殊坐标二维图形,表5.7 特殊坐标二维图形函数,4、其它二维图形,MATLAB绘制特殊二维图形,表5.8 特殊二维图形函数,Back,1、三维数据生成,生成空间网格:x,y,z=meshgrid(x,y,z),创建双峰函数:x,y,z=peaks(n),2、空间曲线的绘制,plot3(x1,y1,z1,参数1,x2,y2,z, 参数1,),若x,y,z是同样长度的矢量,则绘制出一条在三维空间贯穿的曲线; 若x,y,z是 阶的矩阵,则绘制出m条三维空间曲线。,3、空间曲面的绘制,表5.9 三维曲面图形

13、函数,一、命令文件,二、函数文件,三、程序流程语句,上机练习,第五章 MATLAB语言的程序设计,一、命令文件,1、创建M文件,菜单操作 FileNewM-file 命令操作 edit 命令按扭 用“新建”小图标,打开M文件,菜单操作 Fileopen 命令操作 edit 命令按扭 用“打开”小图标,创建M文件,2、M文件的调试,文本编辑器窗口,文本编辑器窗口的调试功能,例1、编写一个命令文件,将变量a,b的值互换,并运行。,程序设计:a=1 3 5 7 9;b=2 4 6 8 10;c=a; a=b; b=c;ab,Back,二、函数文件,function输出变量名1,2=函数名(输入变量名

14、或符号表达式),例2、编写一个函数文件,对两个数进行加、减运算。,Back,程序设计:functionhe,ca=hc(a,b)he=a+b;ca=a-b;,三、程序流程语句,程序的三种基本结构,顺序结构 选择结构 循环结构,MATLAB的程序流程语句,if语句 switch语句 try语句,选择结构:,循环结构:,while语句 for语句,均以end为结束标志,1、 if,if 表达式语句组 end,单分支if 语句基本格式为:,双分支if 语句基本格式为:,if 表达式语句组1 else语句组2 end,多分支if 语句基本格式为:,if结构是一种条件分支结构,判断某个条件是否成立,如果

15、成立则执行结构内的语句,否则就跳出if分支结构,执行后面的命令。,if 表达式语句 else if 表达式语句else 表达式语句end end,程序设计:a=100;b=20;if aa)elsefprintf(ab)end,例3、比较两个数a和b的大小,运行结果:ab,2、 switch,基本格式为:,switch 表达式case 表达式1语句组1case 表达式2语句组2case 表达式n语句组notherwise语句组n+1end,switch结构是一种典型的多分支选择结构,根据表达式的结果执行后面与表达式一致的case中的语句。,例4、从键盘输入一个数字,判断它能否被5整除?,程序设

16、计:n=input(请输入一个数字n=)switch mod(n,5)case 0fprintf(n是5的倍数,n)otherwisefprintf(n不是5的倍数,n)end,运行结果:请输入一个数字:n=4444不是5的倍数,3、 while,是条件循环语句 ,格式为:,while 表达式语句体end,4、 for,是记数循环语句,一般格式为:,for与end之间的部分称为循环体,i一般定义为一个循环向量(增量可自定义,缺省值为1)。这样变量i从初值开始,循环体中的语句每执行一遍i就增加一个增量,直到i=终值为止。,for i=初值:增量:终值指令1指令n end,例5、求1+2+100的

17、和?,程序设计: sum=0; 设定初值(必须要有) for i=1:100; for循环,增量为1sum=sum+I; 循环体end 结束循环 sum 运算结果,运行结果: sum=5050,例6、计算1100的奇数的和。,程序设计: x=0;sum=0; 设定初值(必须要有) while x101; while循环,逻辑表达式为x101sum=sum+x; 循环体1x=x+2; 循环体2end 结束循环 sum 运算结果,运行结果: sum=2550,5、 其它流程控制语句,continue语句:用于控制for循环和while循环跳过某些执行语句,break语句:用于终止for循环和whi

18、le循环的执行,return语句:用于终止当前的程序序列,并返回到调用的函数或键盘操作中,也用于终止keyboard方式,try语句:是一种试探性执行语句,Back,上机练习,1、用一M文件接受键盘输入的数据,求其立方值。 2、编写一程序,计算平面直角坐标系内两点间的距离。 3、计算分段函数,4、求,5、编写程序:选取一个正整数(由键盘输入),若为偶数 则除以2,若为奇数则乘3加1,重复该过程至该数变为1。,的值。,第六章 MATLAB应用,一、数据分析,二、数值插值和曲线拟合,三、数值积分与微分方程数值解,上机练习,四、数学建模实例,表6.1 基本统计命令,一、数据分析,表6.2 离差函数和

19、相关函数,1、数值插值,一维插值:Y1=interp1(X,Y,X1,参数),二维插值:Z1=interp2(X,Y,Z,X1,Y1,参数),表6.3 线性插值主要参数,二、数值插值和曲线拟合,2、曲线拟合,P,S=polyfit(X,Y,N),说明:X,Y是两个等长的向量,X是采样点,Y是采样点函数值,P是长度为N+1的向量,代表N次多项式,即多项式系数矩阵S是采样点的误差向量。,1、辛普生积分 quad(函数文件名,a,b),2、梯形法积分 trapz(x,y),3、欧拉法积分 cumsum(y),4、牛顿柯西法积分 quad8(文件名,a,b),5、微分方程的龙格库塔法X,Y=ode23

20、(f,x0,xn,y0)X,Y=ode45(f,x0,xn,y0),三、数值积分与微分方程数值解,假设:只考虑群体的生与死,不考虑迁移;,设单位时间的出生率为b,单位时间的死亡率为d,在,有,令,则,解上述常微分方程得,Malthus模型,四、数学建模实例,群体生长模型,讨论生物群体(包括微生物、植物、动物、以至于特定地区人口)的变化规律,对模型进行验证,根据美国财政部的估计,1965年1月时全世界的总人口数是33.4亿,而从1960年到1970年间世界人口的平均增长率是2%,用MATLAB画出1900年至2000年间的人口变化曲线,于是,t=1900:10:2000; N=33.4.*exp

21、(0.02.*(t-1965); plot(t,N); title(Malthusb人口曲线),用这个模型去预测更远的未来 :,输入:N2050=33.4*exp(0.02*(2050-1965),显示:N2050 = 182.8298,输入:N2500=33.4*exp(0.02*(2500-1965),显示:N2500 = 1.4815e+006,这表明Malthus模型虽在短期人口预测上有较好的效果,但不适宜长期预报。,设 r为,则,其中,解这个微分方程:n=dsolve(Dn=n*r*(1-n/k),n(0)=n0,t),得 n = k/(1+exp(-r*t)*(k-n0)/n0),

22、即,Logistic模型,Logistic模型有以下特点:,若 ,则 , 单调上升,且 即为环境资源能够允许的最大人口数(称为环境容纳量);,在N=k/2时Logistic曲线有一拐点,这说明群体总数在达到其最大值一半前是加速生长期,超过一半后则是减速生长期,在此期间内生长速度逐渐降低,并趋于0。,某些生态学家估计生命系数的自然值为0.029,这样可估计出世界人口容量约为107.6亿,则Logistic模型即为:,绘制这个函数在1500,2500内的曲线: 输入 t=1500:10:2500;N=107.6./(1+2.2216.*exp(-0.029.*(t-1965);plot(t,N,);title(logistic人口曲线),

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报