收藏 分享(赏)

用Matlab作最小二乘及微分方程.doc

上传人:scg750829 文档编号:7814280 上传时间:2019-05-26 格式:DOC 页数:3 大小:76KB
下载 相关 举报
用Matlab作最小二乘及微分方程.doc_第1页
第1页 / 共3页
用Matlab作最小二乘及微分方程.doc_第2页
第2页 / 共3页
用Matlab作最小二乘及微分方程.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、用 Matlab 作最小二乘曲线拟合已知 ,要用一个函数 来近似代表 ,此函数中含有myyxx.10: )(xfy几个待定参数 ,现在的任务是:确定参数的值,使得在节点处的总na,2误差 达到最小。miiiyxf0)(用 Matlab 计算:先按照 建立一个函数文件,文件第一句格式为:)(xffunction f=文件名(参数组, 节点数组)再用下面命令格式:参数组=lsqcurvefit (函数文件名,参数组初值,节点数组,函数值数组)例:对函数 C=C(t)测量得下面一组数据:t : 1 2 3 4 5 6 7 8 9C:4.54, 4.99, 5.35, 5.65, 5.90, 6.10

2、, 6.26, 6.39, 6.50用函数 作拟合,并画图显示拟合效果,给出节点处总误差。xaey321先建立并保存函数文件:文件名 syp78hswj 内容为:function f=syp78hswj(a,x0)f=a(1)+a(2)*exp(-a(3)*x0);再下面主程序:clearhold onx0=1:9;y0=4.54,4.99,5.35,5.65,5.90,6.10,6.26,6.39,6.50;for i=1:9plot(x0(i),y0(i),+)endcscz=1,1,1;a=lsqcurvefit(syp78hswj,cscz,x0,y0)x=0:0.2:10;f=syp

3、78hswj(a,x);plot(x,f)f=syp78hswj(a,x0);wc=sqrt(sum(f-y0).2)hold off执行得: 节点处总误差 wc=0.0076)2031.,9.,805.6(),(321a题 1: 求 a=? b=? bnat2t 0 20 40 60 80 100 120 140 160 183.5n 0 1153 2045 2800 3466 4068 4621 5135 5619 6152答案: ,105.26.104.2题 2: 求 a=? b=? c=? 节点处总误差=?ctbeaCt : 1 2 3 4 5 6 7 8 9 10C:4.54,4.9

4、9,5.35,5.65,5.90,6.10,6.26,6.39,6.50,6.59 .答案:a=6.9811, b= -2.9918, c=0.2031 节点处总误差=0.0077微分方程数值解现以步长 h=0.1 求数值解:.1)0(,1,2yxdx先建立“函数 M文件”:function f=eqs1(x,y)f=y-2*x/y;将此函数文件,以文件名 eqs2 保存.再命令: 格式为: 自变量,因变量=ode45(函数文件名 ,节点数组,初始值)命令为: x,y=ode45(eqs1,0:0.1:1,1)只须向量化,即可用前面方法: .30)(,2.)0(,sin,1co1212yyxx

5、function f=eqs2(x,y)f=cos(x)+2*y(1)-y(2);sin(x)-y(1)+2*y(2);将此函数文件以文件名 eqs2 保存后,再下命令:x,y=ode45(eqs2,0:0.1:1,0.2;0.3)(注:输出的 y 是矩阵,第 i 列为函数 的数值解)iy要画图,就命令 plot(x,y(:,1), 及命令 plot(x,y(:,2)22)10(9)0(16)( XYtX22)()()(tY22)()()( tyYtxXtwtx 22)()()( ttttyX(0)=30 , Y(0)=20 . x(0)=0 , y(0)=0 . 当 w=20 时,funct

6、ion f=eqseqs20(t,y)w=20;aa=-16*(y(2)-20);bb=9*(y(1)-10);fm=sqrt(aa2+bb2);cc=y(1)-y(3);dd=y(2)-y(4);fm2= sqrt(cc2+dd2);f=aa/fm;bb/fm;w*cc/fm2;w*dd/fm2;将此函数文件,以文件名 eqseqs20 保存后,再下命令:t,y=ode45(eqseqs20,0:0.1:1,30;20;0;0)(注:输出 y 是矩阵,第 1、2、3、4 列分别为函数 X(t)、Y(t)、x(t)、y(t) 的数值解) 要画图,继续命令:hold on,plot(y(:,1)

7、,y(:,2),grid,plot(y(:,3),y(:,4),hold off结果: 当 人速=1 狗速=20 时 t=1.9 秒追击到。当 人速=1 狗速=5 时 t=7.9 秒追击到。(注:原题所给人速、狗速似有不妥,故下面改数据)当 人速=3 狗速=15 时 t=2.7 秒追击到。当 人速=3 狗速=10 时 t=4.2 秒追击到。当 人速=3 狗速=5 时 t=9.0 秒追击到题 1:池水含盐量问题某水池有 2000 水,其中含盐 2kg,现以速率 6 向水池注入含盐率为3mmin/3的盐水,同时又以速率 从水池中流出搅拌均匀的盐水。为了3/5.0kgin/43m计算任意 t 时刻水池含盐量,试建立微分方程模型。题 2:导弹飞行问题t=0 时刻,在导弹基地正北 120km 处,敌舰向东行驶速度 90km/h,同时导弹发出,速度 450 km/h。飞行中,任意时刻导弹的方向总是指向目标。(1)若敌舰不变速、不变向,何时何地击中?(2)从 0 时刻起,敌舰发现导弹,任意时刻速度大小为 135,方向总与导弹垂直,何时何地击中?

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

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


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

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

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