MATLAB程序设计_第1页
MATLAB程序设计_第2页
MATLAB程序设计_第3页
MATLAB程序设计_第4页
MATLAB程序设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、一 多 项 式 拟 合多项式拟合是多项式运算的一个重要组成部分,在工程及科研工作中都等到了广泛的应用。其实现一方面可以由矩阵的除法求解超定方程来进行;另一方面在matlab中还提供了专门的拟合函数polyfit,其常用调用格式如下:polyfit(x,y,n):其中x, y为拟合数据,n为拟合多项式的阶数。p,s=polyfit (x, y, n):其中p为拟合多项式系数常量,s为拟 合多项式系数常量的结构信息。1 .用5阶多项式对0, pi/2上的正弦函数进行最小二乘拟合。x=0:pi/20:pi/2;y=sin(x);a=polyfit(x,y,5);x1=0:pi/30:pi*2;y1=

2、sin(x1);y2=a(1)*x1a5+a(2)*x1a4+a(3)*x1a3+a(4)*x1a2+a(5)*x1+a(6);plot(x1,y1,b-,x1,y2,r*)legend(原曲线,拟合曲线)axis(0,7,-1.2,4)2 .设原始数据为x,在11个点上测得的y值如下:x=-2.0 -1.6 -1.2 -0.8 -0.4 0 0.4 0.8 1.2 1.6 2.0;y=2.8 2.96 2.54 3.44 3.56 5.4 6.0 8.4 9.5 13.3 15;采用2阶和10阶多项式拟合,弁画图比较x=-2.0 -1.6 -1.2 -0.8 -0.4 0 0.4 0.8 1

3、.2 1.6 2.0;y=2.8 2.96 2.54 3.44 3.56 5.4 6.0 8.4 9.5 13.3 15;a,polyfit(x,y,2);x1=-2:0.01:2;y2=a(1)*x1.a2+a(2)*x1+a(3); plot(x,y, b- ,x1,y2, r-)1614 -12 -/ 10、.8 .6 lr4 -2 d-2-1.5-1-0.500.511.52x=-2.0 -1.6 -1.2 -0.8 -0.4 0 0.4 0.8 1.2 1.6 2.0;y=2.8 2.96 2.54 3.44 3.56 5.4 6.0 8.4 9.5 13.3 15;a=polyfi

4、t(x,y,10);x1=-2:0.01:2;y2=a(1)*x1.a10+a(2)*x1.a9+a(3)*x1.a8+a(4)*x1.a7+a(5)*x1.a6+a(6)*x1.a5 +a*x1.a4+a(8)*x1.a3+a(9)*x1.a2+a(10)*x1+a(11);plot(x,y, b- ,x1,y2, r-)300252015105-2-1.5-1-0.500.511.52二图形的保持与子图1.在4个子图中绘制不同的三角函数图。(二维子图的绘制)x=0:0.1*pi:2*pi;subplot(2,2,1);plot(x,sin(x),-*);title( sin(x) );su

5、bplot(2,2,2);plot(x,cos(x), -o);title( cos(x) );subplot(2,2,3);plot(x,sin(x).*cos(x),-x);title( sin(x)*cos(x);subplot(2,2,4);plot(x,sin(x)+cos(x),-h);title( sin(x)+cos(x) )0.510.5 0-0.5-102468sin(x)cos(x)0-0.5 02468sin(x)*cos(x)sin(x)+cos(x)10-1-2 02对于函数z (x 1)2 (y 1)2, x的取值范围02, y的取值范围20,画出四个三维子图,其

6、中 1,1;2,1;1,2;0.8,0.5;要求每一个子图有标题。x,y=meshgrid(0:0.1:2,-2:0.1:0);subplot(2,2,1);z=(x-1)a2+(y+1)a2;mesh(z);title(子图 1);subplot(2,2,2);z=2*(x-1)a2+(y+1)a2; mesh(z);title(子图 2);subplot(2,2,3);z=(x-1)a2+2*(y+1)a2;mesh(z);title(子图 3);subplot(2,2,4);z=0.8*(x-1)a2+0.5*(y+1)a2;mesh(z);title(子图 4);子图1子图20 0子图

7、3子图4三.龙格-库塔方法1 .用经典的 r-k 方法求解 v =-2y+2x2+2x。其中(0=x=0.5 ) ,y(0)=1.编制函数文件(fun.m)fun.mfunction f=fun(x,y)f=-2*y+2*xa2+2*x在命令窗口输入x,y=ode23(fun,0,0.5,1); x0.04000.09000.14000.39000.4400 0.49000.50000.92470.84340.77540.61050.6084 0.61540.61790 0.2900 0.3400 y1.00000.6440 0.62220.19000.71990.24000.6764再输入:

8、plot(x,y,-o)可等到图形如下:10.950.90.850.80.750.70.6500.050.10.150.20.250.30.350.40.450.52 .解刚性方程解如下刚性方程:(见课本251页)编制f.m文件function f=f(x,y)f=-2 1;998 -999*y+2*sin(x);999*(cos(x)-sin(x)在程序窗口输入:tic;ode45(f,0 10,2,3);t1=toc t1 =3.4540tic;ode23(f,0 10,2,3);t1=toc t1 =2.9839tic;ode23s(f,0 10,2,3);t1=toc t1 =0.69

9、5732.521.510.50-0.5-1012345678910-1.523.用龙格库塔方法求解常微分方程,初始条件为jx 4,s|t0 dt2 dt x t o 1编制函数文件(f.m)function ydot=f(t,y)ydot=y(2); 4 ;在命令窗口输入:t,y=ode45(f,0:0.1:10,1,2);plot(t,y(:,1),t,y(:,2);25020015010050123456789104.设有一微分方程组x1x28s(t),已知t 0当时, x2(t) sin(2t)x2(0)0.5,求微分方程在t 0,50上的解,弁画出xi编制函数文件(liao.m)fun

10、ction f=liao(t,x)f=x(2)+cos(t);sin(2*t);在命令窗口输入:t,x=ode45(liao,0 50,0.5,-0.5);plot(x(:,1),x(:,2);xk0) 0.5,x2的轨迹。四,while/for 循环1.用for循环求1!+2!+3!+?。!的值sum=0;for i=1:20;prd=1;for k=1:i;prd=prd*k; endsum=sum+prd;endsumsum =2.5613e+018五.simulink电路仿真simulink是matlab软件的扩展,是实现动态系统建模和仿真的一个软件包。运行一个仿真完整的步骤:设置仿真参数(2).启动仿真(3)仿真结果分析1、电阻电路的计算,电路如图+ % -ra r4 rs i i-t+建立 simulink 模型,r1=2, r2=4, r3=12, r4=4, r5=12, r6=4,r7=2, us=10

温馨提示

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

最新文档

评论

0/150

提交评论