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) : 产生一个kl的随机数组 x(1:3
4、)=1 2 3 : 给数组的前三个元素赋值 a=x(3:-1:1):将数组的前三个元素倒序后生成一个新的数组 find(x1): 找出数组x的大于1的元素的下标 x(find(x1): 由数组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=eye(3,3
6、); 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 x0 ; elseif x1 ; else ; end y作业:1. 将任
7、意一个自然数反序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. 观察函数在时的极限过程 x=1:-0.01:
8、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:0; y=(1/x
9、)*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);diff(z,x)diff(diff(z,x
10、),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*exp(-x2/2); f2=1/(x*sqrt(1+x2); int(f1,x) int(f2) 例
11、题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_rou4); zz(ii)=nan;surfl(xx,yy,zz)shading interpcolormap pink 例8. 绘制封闭曲面,
13、由旋转抛物面与平面围成 x=-2:0.1:2;y=x;xx,yy=meshgrid(x,y);z=4*ones(size(xx);zz=xx.2+yy.2;ii=find(xx.2+yy.24);zz(ii)=nan;z(ii)=nan; hold onview(-37.5,30)surf(xx,yy,zz)mesh(xx,yy,z) 例9. 绘制上例中的立体的投影图 x=-2:0.1:2;y=x;xx,yy=meshgrid(x,y);z=4*ones(size(xx);zz=xx.2+yy.2;ii=find(xx.2+yy.24);zz(ii)=nan;z(ii)=nan;hold onsubplot(1,2,1)surf(xx,yy,zz)mesh(xx,yy,z)axis equalview(0,0,1)subplot(1,2,2)surf(xx,yy,zz) mesh(xx,yy,z)axis equalview(60,0)从中可以看出,仅仅是视角发生了变化作业:在同一坐标系下绘制曲面被截得的部分曲面