matlab 微分方程数值解
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/08 14:21:42
matlab 微分方程数值解
小弟用ode45函数求解α=1的情况失败,以下是函数
function dt=eq1(r,t)
dt(2)=-2/r*t(2)+8.5e-28*t(1)-1e14*cos(pi*r/2); %因为不会写导数,我自己手动展开了一下
dt(1)=t(2);
dt=dt';
r0=0;
rf=1;
[r,t]=ode145(@eq1,[r0,rf],[0;0]);
错误原因:t算出来都是NaN.
小弟用ode45函数求解α=1的情况失败,以下是函数
function dt=eq1(r,t)
dt(2)=-2/r*t(2)+8.5e-28*t(1)-1e14*cos(pi*r/2); %因为不会写导数,我自己手动展开了一下
dt(1)=t(2);
dt=dt';
r0=0;
rf=1;
[r,t]=ode145(@eq1,[r0,rf],[0;0]);
错误原因:t算出来都是NaN.
改一下初值
再问: 求问该该怎么改?初值可以随便写吗?
我现在用解析法到是发现函数在r=0的时候有计算问题
再问: 求问该该怎么改?初值可以随便写吗?
我现在用解析法到是发现函数在r=0的时候有计算问题