数学建模实验教案_第1页
数学建模实验教案_第2页
数学建模实验教案_第3页
数学建模实验教案_第4页
数学建模实验教案_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、 数学实验第一讲 MATLAB简介 MATLAB软件的界面风格,常用的窗口命令和菜单选项 界面风格(略) 常用的窗口命令和菜单选项: clc: 清除命令窗口中显示内存 clf: 清除图形窗口 clear: 清除内存中的变量 who,whos:列出内存中的变量(以及属性) help: edit: format ,long,short,lng e,short e,short g,:定义输出格式 菜单选项:主要介绍file, edit, windows, help四个菜单 变量的命名,基本运算,常用的函数 变量名的第一个字符必须是英文字母,最多可达31个字符;变量名中不能含有空格和标点符号;变量名和

2、函数名对字母的大小写是由区别的。变量名和函数名不得使用以下的预定义变量: ans, eps, Flops, Inf, inf, pi, NaN, nan, nargin, nargout, realmax基本运算:“+” : 加法;“”:减法;:“*”:乘法; “/或”:除法;“”:乘幂例如:3/4,34,34,43常用函数:例如 x=12; c=round(cos(x)/log(x)2+atan(x); 标点符号的使用,数组和矩阵的生成以及运算标点符号: “空格和逗号”:输入量与输入量,数组元素之间的分隔符。 “句号”:数值运算中的小数点。 “分号”:不显示运算结果,也是数组行与行的分隔符。

3、 “冒号”:缺省标志,表示全部。 “”: 由它起始的行为注释行。 “”: 字符串标记。 “ ”: 输入数组标记。例如 a=4*2+25; b=1 2;3,5.1 c=sin(2*pi*x)+ceil(-1.28) % d=a+b+c e=b(1,: ); f=b(:,2); g=b(:)数组和矩阵的生成以及调用: 一维数组 生成方式有两种: x=1 2*pi sin(pi/2);-4, 5.1, 3.5 x=a:step:b 请学生尝试改变 a,b step的值,看看结果如何。 调用:x(i) : 调用数组的第i个元素 rand(k,l) : 产生一个k×l的随机数组 x(1:3)=

4、1 2 3 : 给数组的前三个元素赋值 a=x(3:-1:1):将数组的前三个元素倒序后生成一个新的数组 find(x>1): 找出数组x的大于1的元素的下标 x(find(x>1): 由数组x的大于1的元素构成一个子数组并保持原来的顺序 二维数组 生成方式与一维数组相同,只是行与行之间必须以分号隔开 调用: a(I,j): 表示a的第i行第j列元素 a(I,:): 第i行的所有元素 a(:,j): 第j列的所有元素 a(:): a的所有元素 a(k): a的第k个元素,按列数特殊数组 eye(n,n): 生成n维单位矩阵 ones(m,n): 生成全是1的矩阵 zeros(m,n

5、): 生成全是0的矩阵 rand(m,n): 生成m行n列的随机矩阵 randn(m,n): 生成正态分布的m行n列的随机矩阵 diag(a): 提取a 的对角线向量或者以向量a为对角线形成一个对角矩阵 数组和矩阵的运算: a+b: 对应元素相加; a-b: 对应元素相减 a*b: 矩阵相乘; a.*b: 对应元素相乘 a/b: a右乘b的逆; a./b: a的元素除以b的对应元素 ab: 与上面类似; a.b: 与上面类似 a: 转置 ax: 矩阵的幂; a.x: 矩阵元素的幂 x+a: 标量x与矩阵 a的元素相加 x*a: 标量x与矩阵 a的元素相乘 inv(a): 矩阵a的逆例如 a=e

6、ye(3,3); b=a+4.1; a(2,3)=-2; a; inv(a) a.*b, a*b; b./a b/a a2 脚本文件的生成和运行 脚本文件的编辑环境: 在MATLAB的命令窗口输入edit 在MATLAB的file选项中选择new-M-file 运行:只需在命令窗口中输入 M文件的名字即可 在M文件的编辑中,只需将相关命令依次输入,然后保存即可例 建立一个名为examp的M文件,用于计算n! jirguo=1;for i=1:n jieguo=jieguo*I; end jieguo例 已知函数求, y=0; if x<0 ; elseif x1 ; else ; end

7、 y作业:1. 将任意一个自然数反序2. 输入一个n阶方阵并求它的逆3. 输入一个数组,求出其中所有大于1.5的元素之和4. 建立一个m文件用于计算 第二讲 利用MATLAB加深对微积分中的基本概念的理解1. 极限与间断点 极限limit(f,x,a):求函数f(x)在x趋于a时的极限 limit(f,x,a,left): 求函数f(x)在x趋于a时的左极限limit(f,x,a,right): 求函数f(x)在x趋于a时的右极限例题1. 命令 limit(x-sin(x)/(x3),x,0) 例题2. 命令 limit(x+3)/(x+2)x,x,inf) 例题3. 观察函数在时的极限过程

8、x=1:-0.01:0; y=cos(1/x); plot(x,y)例题4. syms xlimit(cos(x)-exp(-x2/2)/(x4),x,0)例题5. syms nlimit(1/(log(log(n)log(n),n,inf) 例题6. 观察函数 的图像,理解可去间断点 ,无穷间断点以及跳跃间断点的概念 x1=-2:0.01: 0.5; x2=0.51:0.01:1 y1=sin(x)/(x*(x+1); y2=x2; x=x1,x2; y=y1,y2; plot(x,y)2. 无穷大量与无界函数例题7. 观察函数在时的极限过程,理解无穷大量与无界函数的区别 x=1:-0.01

9、:0; y=(1/x)*cos(1/x); plot(x,y)3. 函数的导数和积分导数 diff(f,x,n): 函数对x求n阶导数例题8. 求函数的一阶和二阶导数 syms x y=exp(2*x)*log(x2+1)*tan(-x); diff(y,x) diff(diff(y,x),x) diff(y,x,2) 观察一下后两个命令的运算结果 例题9. 求y的一阶和三阶导数 syms xf=exp(x2)*cos(x)/log(1+x2)'diff(f,x)diff(f,x,3)例题10. 求 syms xsyms yz='log(x2+y2)/atan(y/x)'

10、;diff(z,x)diff(diff(z,x),y) 积分 int(f,v): 求函数f对变量v的不定积分 int(f,v,a,b): 求函数f对变量v在区间a,b上的定积分 以上两个函数中当v缺省时,表示对符号变量的积分例题11. syms x;y='x*log(1+x2)'int(y,x)例题12. syms x;y='x3/(x4+2*x2+1)'int(y,x,0,5)例题13. syms x y;f='x*sin(x)'int(int(f,x,y,sqrt(y),y,0,1) 例题14. 求函数和的不定积分 syms x f1=x*e

11、xp(-x2/2); f2=1/(x*sqrt(1+x2); int(f1,x) int(f2) 例题15. 求下列定积分和 syms xy1=1/sqrt(1+x2)y2=(sin(x)3/(1+(sin(x)4)*tan(x)int(y1,x,0,1)int(y2,x,0,pi/4) 4. 解方程例题16. 求方程在0到1之间的根 f=inline(x3+x-1) x=fzero(f,0,1) x=fzero(f,0.5)例题17. 求微分方程满足,的特解 dsolve(d2y=1+dy,y(0)=1,dy(0)=0),第三讲 极坐标以及函数的图像函数图像的描绘 极坐标的定义和点的坐标,点

12、的极坐标和直角坐标之间的联系 其中沿逆时针旋转时为正,沿顺时针旋转时为负, 极坐标下常见曲线的方程 圆 圆锥曲线,包括椭圆,双曲线,抛物线的极坐标方程是 是离心率,是左焦点与左准线之间的距离,极坐标的极点在左焦点 心形线 阿基米德螺线 双纽线 极坐标曲线图像的描绘 xx_theta=0:0.1:2*pi;xx_rou=4*(1+cos(xx_theta);ajmd_theta=0:0.1:8*pi;ajmd_rou=2*ajmd_theta;sn_theta=0:0.1:2*pi;sn_rou=8*cos(2*sn_theta);c=find(sn_rou<0);sn_rou(c)=0;

13、subplot(1,3,1)polar(xx_theta,xx_rou)subplot(1,3,2)polar(ajmd_theta,ajmd_rou)subplot(1,3,3)polar(sn_theta,sn_rou) 4. MATLAB中的几个绘制函数图像的命令 plot(x,y,s): x,y为实向量,x为横坐标,y为纵坐标,s是可选参数,用来指定曲线的线形,颜色,数据点的形状等。当x,y之中至少有一个是矩阵时,可以绘制多条曲线。 polar(theta,rou): 用于绘制极坐标曲线 ezplot(f,a,b): 用于绘制函数f在区间a,b上的曲线,该命令还可用于绘制隐函数的图像,

14、具体命令格式为: ezplot(f, xmin,xmax,ymin,ymax) plot3(x,y,z,s): 用法与plot完全相同,用于绘制三维曲线 grid: 在地层绘制三维网格 meshgrid(x,y): 用向量x,y产生一个格点矩阵 mesh(x,y,z,s): 绘制网线图,它的两个同种函数 meshc: 画网格图和基本的等值线图 meshz: 画含零平面的网格图 surf(x,y,z,s): 绘制曲面图,它的两个同种函数 surfc: 画出具有等值线的曲面图 surfl: 画出一个有亮度的曲面图 hold on(off): 保持或不保持屏幕,用于将两个图形重叠画出 shading

15、 flat: 各个曲面块之间平滑加色彩,连接处的黑线已被去掉 shading interp: 插值加色彩 title(sssssss): 加台头 xlable(xx): xx是x轴的说明,同理,还有y,z轴的说明 ezmesh, ezsurf: 曲线和曲面的简单画法 grid,title,轴说明等必须放在画图语句之后。5. 举例 例1. x=-1:0.1:5;y=exp(x)+sin(x.2-1);plot(x,y) 例2. 画出函数的图像 t=-0.9:0.1:5;x=t.2;y=exp(t);z=log(1+t);plot3(x,y,z)grid,xlabel('x-axis

16、9;),ylabel('y-axis'),zlabel('z-axis') 例3. 画出隐函数的图像 ezplot('exp(y+x)-x.*y-1',-10,10,-10,10) 例4. 画出曲面在zxy的图像 x=-5:0.1:5;y=-5:0.1:5;xb,yb=meshgrid(x,y);zb=xb.*yb;subplot(1,2,1)mesh(xb,yb,zb)view(-100,20) subplot(1,2,2) 定义子图 surf(xb,yb,zb) view(-100,20) 改变视角 例5. 各种效果图 X,Y,Z=peaks

17、(50); subplot(2,2,1) meshc(X,Y,Z) grid, xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis) title(peak) subplot(2,2,2)meshz(X,Y,Z) grid, xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis) title(peak) subplot(2,2,3)surfc(X,Y,Z) grid, xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis) title(peak) subplot(2,2,4)surfl(X,Y

18、,Z) grid, xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis) title(peak) 例6. 用平行截面法研究马鞍面 x=-4:0.1:4;y=x;mx,my=meshgrid(x,y);mz=mx.2-my.2;ix=find(mx=2);px=2*ones(1,length(ix);py=my(ix);pz=mz(ix);subplot(1,2,1)hold onmesh(mx,my,mz)view(-60,30)plot3(px,py,pz)subplot(1,2,2)plot3(px,py,pz) 例7. 绘制旋转抛物面的图形 x=-2:0.1:2;

温馨提示

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

最新文档

评论

0/150

提交评论