用matlab解决插值问题..ppt
《用matlab解决插值问题..ppt》由会员分享,可在线阅读,更多相关《用matlab解决插值问题..ppt(87页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数学实验与数学实验与Matlab MATLAB是一种交互式的以矩阵为基础的系统计算平台,它用于科学和工程的计算与可视化。Matlab的含义是矩阵实验室(Matrix Laboratory),是美国Math Work公司于1982年推出的一套高性能的数值计算和可视化软件,它集数值分析、矩阵计算、信号处数值分析、矩阵计算、信号处理和图形显示理和图形显示于一体,已发展成为国际上最优秀的科技应用软件之一。Matlab软件简介软件简介 矩阵矩阵是是MATLAB的核心的核心.目目 录录实验一:矩阵运算与实验一:矩阵运算与Matlab命令命令;实验二:函数可视化与实验二:函数可视化与Matlab作图作图;实
2、验三:插值和拟和实验三:插值和拟和;实验四:微分、积分和常微分方程实验四:微分、积分和常微分方程;实验五:最优化方法实验五:最优化方法;如何撰写数学建模论文如何撰写数学建模论文.实实 验验 一一 矩阵运算与矩阵运算与Matlab命令命令Matlab基本指令基本指令向量的创建和运算向量的创建和运算1.直接输入向量直接输入向量x1=1 2 4,x2=1,2,1,x3=x12.冒号创建向量冒号创建向量 x1=3.4:6.7,x2=3.4:2:6.7,x3=2.6:-0.8:0 3.生成线性等分向量生成线性等分向量指令指令x=linspace(a,b,n)在在a,b区间产区间产生生 n 个等分点个等分
3、点(包括端点包括端点)例如:例如:x=linspace(0,1,5)结果结果 x=0 0.2500 0.5000 0.7500 1.0000工作空间工作空间在在Matlab窗口创建向量后并运行后,窗口创建向量后并运行后,向量就存在于工作空间向量就存在于工作空间(Workspace),可以被调用。),可以被调用。向量的运算向量的运算 设设三三维维向向量量x=x1 x2 x3;y=y1 y2 y3;,a,b为标量。为标量。向量的向量的数乘数乘:a*x=a*x1 a*x2 a*x3向量的向量的平移平移:x+b=x1+b x2+b x3+b向量向量和和:x+y=x1+y1 x2+y2 x3+y3向量向
4、量差差:x-y=x1-y1 x2-y2 x3-y3 向量对应元素的运算向量对应元素的运算x.*y=x1*y1 x2*y2 x3*y3 (乘积乘积)x./y=x1/y1 x2/y2 x3/y3 (右右除除,右右边的边的y做分母做分母)x.y=y1/x1 y2/x2 y3/x3 (左左除除,左左边的边的x做分母做分母)x.5=x15 x25 x35 (乘幂乘幂)2.x=2x1 2x2 2x3x.y=x1y1 x2y2 x3y3函数计算函数计算Matlab有有许许多多内内部部函函数数,可可直直接接作作用用于于向量产生一个同维的函数向量。向量产生一个同维的函数向量。如如:x=linspace(0,4*
5、pi,100);(产产生生100维向量维向量x)y=sin(x);(y也自动为也自动为100维向量维向量)y1=sin(x).2;y2=exp(-x).*sin(x);观察结果观察结果创建矩阵(数值矩阵的创建)创建矩阵(数值矩阵的创建)直接输入法创建简单矩阵。直接输入法创建简单矩阵。A=1 2 3 4;5 6 7 8;9 10 11 12 B=-1.3,sqrt(3);(1+2)*4/5,sin(5);exp(2),6 观察运行结果观察运行结果 A=1 2 3 4 5 6 7 8 9 10 11 12 B=-1.3000 1.7321 2.4000 -0.9589 7.3891 6.0000矩
6、阵的运算矩阵的运算(矩阵的加减、数乘、乘积等矩阵的加减、数乘、乘积等)A,A_trans=AH=1 2 3;2 1 0;1 2 3,K=1 2 3;2 1 0;2 3 1h_det=det(H),k_det=det(K),H_inv=inv(H),K_inv=K-1矩阵的运算矩阵的运算(左除和右除左除和右除)左除左除“”:求矩阵方程求矩阵方程AX=B的解;(的解;(A、B的行要保持一致)的行要保持一致)解为解为 X=AB;当当A为方阵且可逆时有为方阵且可逆时有X=AB=inv(A)*B;右除右除“/”:求矩阵方程求矩阵方程XA=B的解的解 (A、B的列要保持一致)的列要保持一致)解为解为 X=
7、B/A,当当A为方阵且可逆时有为方阵且可逆时有X=B/A=B*inv(A)矩阵的运算矩阵的运算(左除和右除左除和右除)例例1:求矩阵方程:求矩阵方程:设设A、B满足关系式:满足关系式:AB2B+A,求求B。其中其中A=3 0 1;1 1 0;0 1 4。解解:有:有(A-2I)BA 程序程序:A=3 0 1;1 1 0;0 1 4;B=inv(A-2*eye(3)*A,B=(A-2*eye(3)A 观察结果:观察结果:分块矩阵分块矩阵(矩阵的标识矩阵的标识)例例2 取取出出A的的1、3行行和和1、3列列的的交交叉叉处处元元素构成新矩阵素构成新矩阵A1。解:程序解:程序A=1 0 1 1 2;0
8、 1-1 2 3;3 0 5 1 0;2 3 1 2 1,vr=1,3;vc=1,3;A1=A(vr,vc)观察结果观察结果分块矩阵分块矩阵(矩阵的标识矩阵的标识)例例3 将将A分分为为四四块块,并并把把它它们们赋赋值值到到矩矩阵阵B中,观察运行后的结果。中,观察运行后的结果。解:程序解:程序nA11=A(1:2,1:2),A12=A(1:2,3:5),nA21=A(3:4,1:2),A22=A(3:4,3:5)nB=A11 A12;n A21 A22 运行结果运行结果分块矩阵分块矩阵(矩阵的修改和提取)(矩阵的修改和提取)例例4(1)修改矩阵)修改矩阵A,将它的第将它的第1行变为行变为0。解
9、:程序:解:程序:A=1 0 1 1 2;0 1-1 2 3;3 0 5 1 0;2 3 1 2 1 A(1,:)=0 0 0 0 0;A (2)删除上面矩阵)删除上面矩阵A的第的第1、3行。行。程序:程序:n A(1,3,:)=生成特殊矩阵生成特殊矩阵 全全1阵阵 n ones(n),ones(m,n),ones(size(A)全零阵:全零阵:n zeros(n),zeros(m,n),zeros(size(A)n常常用于对某个矩阵或向量赋常常用于对某个矩阵或向量赋0初值初值单位阵:单位阵:neye(n),eye(m,n)随机阵:随机阵:nrand(m,n),rand(n)=rand(n,n
10、)用用于于随随机机模模拟,常和拟,常和rand(seed,k)配合使用配合使用。常用矩阵函数常用矩阵函数det(A):方阵的行列式;方阵的行列式;rank(A):矩阵的秩;矩阵的秩;eig(A):方阵的特征值和特征向量;方阵的特征值和特征向量;trace(A):矩阵的迹;矩阵的迹;rref(A):初等变换阶梯化矩阵初等变换阶梯化矩阵Asvd(A):矩阵奇异值分解。矩阵奇异值分解。分块矩阵分块矩阵(矩阵的标识矩阵的标识)1.矩阵元素的标识矩阵元素的标识:A(i,j)表示矩阵表示矩阵A 的第的第 i 行行 j 列的元素;列的元素;2.向量标识方式向量标识方式 A(vr,vc):vr=i1,i2,i
11、k、vc=j1,j2,ju分分别别是含有矩阵是含有矩阵A的行号和列号的单调向量。的行号和列号的单调向量。A(vr,vc)是是取取出出矩矩阵阵A的的第第i1,i2,ik行行与与j1,j2,ju列交叉处的元素所构成新矩阵。列交叉处的元素所构成新矩阵。数据的简单分析数据的简单分析1.当当数数据据为为行行向向量量或或列列向向量量时时,函函数数对对整整个向量个向量进行计算进行计算.2.当当数数据据为为矩矩阵阵时时,命命令令对对列列进进行行计计算算,即即把把每每一一列列数数据据当当成成同同一一变变量量的的不不同同观观察察值。值。常用的命令:常用的命令:max(求求最最大大)、min(求求最最小小)、mea
12、n(求求平平均均值值)、sum(求求 和和)、std(求求 标标 准准 差差)、cumsum(求求累累积积和和)、median(求求中中值值)、diff(差差分分)、sort(升升序序排排列列)、sortrows(行行升序排列升序排列)等等等等。数据的简单分析数据的简单分析例例5 观观察察:生生成成一一个个36的的随随机机数数矩矩阵阵,并并将将其其各各列列排排序序、求求各各列列的的最最大大值值与与各各列列元元素之和。素之和。解:程序解:程序sort(使每一列从小到大排序使每一列从小到大排序)nA=rand(3,6),nAsort=sort(A),nAmax=max(A),nAsum=sum(A
13、)观察结果观察结果实实 验验 二二函数可视化与函数可视化与Matlab作图作图绘制平面曲线绘制平面曲线(plot指令指令)plot(x,y):n以以x为为横横坐坐标标、y为为纵纵坐标绘制二维图形坐标绘制二维图形nx,y是同维数的向量;是同维数的向量;plot(y):n相相当当于于x=1,2,length(y)时情形。时情形。函数的可视化函数的可视化问:问:f(x),g(x)是周期函数吗?观察它们的图象。是周期函数吗?观察它们的图象。解:程序解:程序clf,x=linspace(0,8*pi,100);y1=sin(x+cos(x+sin(x);y2=0.2*x+sin(x+cos(x+sin(
14、x);plot(x,y1,k:,x,y2,k-)legend(sin(x+cos(x+sin(x),0.2x+sin(x+cos(x+sin(x),2)例例1 令令绘制平面曲线绘制平面曲线(绘制多个图形(绘制多个图形)1.plot(x,y1;y2;),n x是是横横坐坐标标向向量量,y1;y2;是是由由若若干干函函数数的纵坐标拼成的矩阵;的纵坐标拼成的矩阵;2.plot(x1,y1),hold on,plot(x2,y2),hold off3.plot(x1,y1,x2,y2,)4.plotyyn两个坐标系,用于绘制不同尺度的函数。两个坐标系,用于绘制不同尺度的函数。绘制平面曲线绘制平面曲线(
15、线型、点形和颜色的控制)(线型、点形和颜色的控制)(线型、点形和颜色的控制)(线型、点形和颜色的控制)plot(x,y,颜色线型点形颜色线型点形)plot(x,y,颜颜色色线线型型点点形形,x,y,颜色线型点形颜色线型点形,)句句柄柄图图形形和和set命命令令改改变变属属性性值值,可可套套用:用:nh=plot(x,y),set(h,属属性性,属属性性值值,属属性性,属属性性值值,)n或或plot(x,y,属属性性,属属性性值值)设设置置图图形形对对象的属性。象的属性。绘制平面曲线绘制平面曲线(属性变量和属性值)(属性变量和属性值)(属性变量和属性值)(属性变量和属性值)n线宽:线宽:Line
16、Widthn点的大小:点的大小:MarkerSizen线型:线型:LineStylen颜色:颜色:Color绘制平面曲线绘制平面曲线(例)(例)(例)(例)程序程序nh=plot(0:0.1:2*pi,sin(0:0.1:2*pi);nset(h,LineWidth,5,color,red);ngrid on观察结果观察结果绘制平面曲线绘制平面曲线(坐标轴的控制)(坐标轴的控制)(坐标轴的控制)(坐标轴的控制)grid on 指令为图形窗口加上网格线指令为图形窗口加上网格线axis指令指令 axis(xmin xmax ymin ymax):设定二维图形的设定二维图形的x和和y坐标的范围;坐标
17、的范围;axis(xmin xmax ymin ymax zmin zmax):设定三维图形的坐标范围设定三维图形的坐标范围;其其中中xminxxmax,yminyymax,zminzzmax。绘制平面曲线绘制平面曲线(文字标注)(文字标注)(文字标注)(文字标注)title(图形标题图形标题);xlabel(x轴轴名名称称);ylabel(y轴轴名名称称););zlabel(z轴名称轴名称););text(说明文字说明文字):创建说明文字;:创建说明文字;gtext(说说明明文文字字):用用鼠鼠标标在在特特定定位位置置输输入入文文字。字。文字标注常用符号:文字标注常用符号:pi(););al
18、pha(););beta(););leftarrow(左箭头)(左箭头)rightarrow(右箭头);(右箭头);bullet(点号)点号)图形窗口的创建和分割图形窗口的创建和分割 subplot(m,n,k)命令命令 在在图图形形区区域域中中显显示示多多个个图图形形窗窗口口,m为为上上下下分分割数,割数,n为左右分割数,为左右分割数,k为第为第k子图编号。子图编号。例例:将将一一个个图图形形分分为为4个个子子图图,在在第第k个个子子图图画画sin(kx)的图象的图象.程序:程序:clf,b=2*pi;x=linspace(0,b,50);for k=1:4 y=sin(k*x);subpl
19、ot(2,2,k),plot(x,y),axis(0,2*pi,-1,1)end若干有用的指令若干有用的指令clf:清除图形窗口已有的内容清除图形窗口已有的内容.shg:显示图形窗口。显示图形窗口。clear、clear x:清清除除工工作作空空间间的的已已有变量。有变量。figure(n):打开第打开第n个图形窗口个图形窗口 help:续行号续行号绘制二元函数绘制二元函数z=f(x,y)基本步骤:基本步骤:1.生成二维网格点生成二维网格点 2.计算函数在网格点上的值计算函数在网格点上的值 3.绘制函数图形绘制函数图形1.meshgrid指令:生成网格点指令:生成网格点观察观察meshgrid
20、指令的效果。指令的效果。程序:程序:a=-3;b=3;c=-3;d=3;n=10;x=linspace(a,b,n);y=linspace(c,d,n);X,Y=meshgrid(x,y);plot(X,Y,+)观察结果观察结果2.计算函数值计算函数值 如,如,z=peaks(X,Y);3.绘图指令绘图指令mesh(X,Y,z):n在三维空间中绘出由在三维空间中绘出由(X,Y,z)表示的曲面表示的曲面;meshz(X,Y,z):n除了具有除了具有mesh的功能外,还画出上下高度线,的功能外,还画出上下高度线,meshc(X,Y,z):n除除了了具具有有mesh的的功功能能外外,还还在在曲曲面面
21、的的下下方方画画出出函函数数z=f(x,y)的等值线图,的等值线图,surf(X,Y,z):n也也是是三三维维绘绘图图指指令令,与与mesh的的区区别别在在于于mesh绘绘出出彩彩色的线,色的线,surf绘出彩色的面,绘出彩色的面,三维绘图三维绘图(等值线指令(等值线指令)contour(X,Y,z,n):nn条等高线,条等高线,n可缺省;可缺省;contourf(X,Y,z,n):n等值线间用不同的颜色填满,有更好的视觉效果;等值线间用不同的颜色填满,有更好的视觉效果;contour3(X,Y,z,n):n在三维空间画出等值线图;在三维空间画出等值线图;n画单个等高线时 contour(cx
22、,cy,cz,I I);colorbar:n将颜色与函数值对应起来显示在图中将颜色与函数值对应起来显示在图中。空间曲线和运动方向的表现空间曲线和运动方向的表现一条空间曲线可以用矢量函数表示为一条空间曲线可以用矢量函数表示为n它的速度矢量表现为曲线的切矢量:绘制空间曲线(指令)绘制空间曲线(指令)plot3(x,y,z):n绘制三维空间曲线,用法和绘制三维空间曲线,用法和plot类似。类似。quiver(X,Y,u,v):绘制二维矢量,绘制二维矢量,n在坐标矩阵点在坐标矩阵点X,Y处绘制矢量处绘制矢量u,v,其中其中u为矢量的为矢量的x坐标,坐标,v为矢量的为矢量的y 坐标,其维数不坐标,其维数
23、不小于小于2。quiver3(X,Y,Z,u,v,w):):n绘制三维矢量,用法与绘制三维矢量,用法与quiver类似。类似。gradient:n Fx,Fy,Fz=gradient(F)为函数为函数F数值梯度数值梯度空间曲线和运动方向的表现空间曲线和运动方向的表现n很显然飞行曲线方程为:程序:程序:t=linspace(0,1.5,20);x=t.2;y=(2/3)*t.3;z=(6/4)*t.4-(1/3)*t.3;plot3(x,y,z,r.-,linewidth,1,markersize,10),hold on Vx=gradient(x);Vy=gradient(y);Vz=grad
24、ient(z);h=quiver3(x,y,z,Vx,Vy,Vz);set(h,linewidth,1),grid on axis(0 1.5 0 1.5 0 40)xlabel(x),ylabel(y),zlabel(z),box on,hold off 插值和拟和插值和拟和 实实 验验 三三机床加工问题机床加工问题用程控铣床加工机翼断面的下轮廓线时用程控铣床加工机翼断面的下轮廓线时每一刀只能沿每一刀只能沿x方向和方向和y方向走非常小的一步。方向走非常小的一步。表表3-1给出了下轮廓线上的部分数据给出了下轮廓线上的部分数据但工艺要求铣床沿但工艺要求铣床沿x方向每次只能移动方向每次只能移动0.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 解决 问题
限制150内