| 查看: 669 | 回复: 1 | |||
[交流]
微分方程组拟合问题 已有1人参与
|
|
本人MATLAB新手,编一个关于微分方程组拟合的问题,怎么就是运行不了,能帮忙看看怎么办吗? 具体的微分方程是 然后求得 拟合的数据对象是t与L 其中t和L的数据是 502272 5.65432E+42 762325 1.30331E+43 1114354 9.00958E+42 1364122 5.3601E+42 1706100 3.56514E+42 1964980 2.5611E+42 2140916 2.27497E+42 2313059 1.94825E+42 2489034 1.50971E+42 2742752 1.22059E+42 3001044 1.04568E+42 写的程序比较乱,也运行不了,哪位大神能看看吗? 我的渣渣程序是 function H clear all clc T=xlsread('数据.xlsx','sheet1','A1:A11'); L=xlsread('数据.xlsx','sheet1','B1:B11'); x0=[1 1]; t=0.1:1:402800; M=lsqcurvefit(@g,x0,T,L) end function LL=g(M,t,Eint) c=3*10^10; k=0.5; [t,Eint]=ode45(@f,t,[1,1]); size(Eint(:,1)); size(Eint(:,2)); LL=Eint(:,2).*t./(3.*k.*M(:,1)).*(4.*pi.*c.*Eint(:,1)); end function dEint=f(t,Eint,M); %目标函数,M(1)=M,M(2)=tsd,M(3)=L c=3*10^10; k=0.5; dEint(1)=Eint(2)./(M(1).*Eint(1).*t); dEint(2)=(M(3)./((1+t./M(2)).^2)-4.*pi.*c.*Eint(2).*t.*Eint(1)./(3.*k.*M(1))-Eint(2)./t); dEint=dEint( : ); end 想拟合出曲线,并且知道微分方程M tsd L的值 |
» 猜你喜欢
参与限项
已经有3人回复
假如你的研究生提出不合理要求
已经有7人回复
实验室接单子
已经有4人回复
全日制(定向)博士
已经有4人回复
对氯苯硼酸纯化
已经有3人回复
求助:我三月中下旬出站,青基依托单位怎么办?
已经有12人回复
不自信的我
已经有12人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
北核录用
已经有3人回复
dingd
铁杆木虫 (职业作家)
- 应助: 1641 (讲师)
- 金币: 15037.3
- 散金: 101
- 红花: 234
- 帖子: 3410
- 在线: 1223.7小时
- 虫号: 291104
- 注册: 2006-10-28
2楼2016-03-06 21:45:54












回复此楼