24小时热门版块排行榜    

查看: 275  |  回复: 4
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

chenyouzhi

银虫 (小有名气)

[交流] 【求助】有人能帮忙求解这个微分方程吗组?

dx/dt = -3*sin(y)-0.5*sqrt(1+0.01*x)*(cos(y))^2;
dy/dt = -3*cos(y)+0.5*sqrt(1+0.01*x)*(sin(y))^2;



其中:t = 0:10:800
          x(800)=191
          y(8000)=0.029

龙哥库塔法处理的是t=0的初值,这里却是终点处的值,不知该如何处理才好……
回复此楼

» 猜你喜欢

我信我能,只要我用心去做!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chenyouzhi

银虫 (小有名气)

引用回帖:
Originally posted by zjliu1265 at 2009-9-11 18:28:
我有个问题,你求解的步长是不是太大了?
相关程序如下:
clc;close all;clear;
df=inline(['[-3*sin(x(2))-0.5*sqrt(1+0.01*x(1))*cos(x(2))^2;',...
    '-3*cos(x(2))+0.5*sqrt(1+0.01*x(1))*sin(x(2))^2] ...

你好,不好意思,这些具体数据只是临时凑上的,只适用了原方程组的形式!
龙哥库塔法不是只能求解初值在t=0的微分方程吗?既然能算就应该有道理的,可否帮我详细解释一下,谢谢了!
我信我能,只要我用心去做!
3楼2009-09-11 18:42:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

zjliu1265

至尊木虫 (正式写手)

★ ★ ★
chenyouzhi(金币+2,VIP+0):先送两个,能在解释一下原理吗,很希望向你学习!不管解释与否,明天奉送另外两个…… 9-11 18:45
kuhailangyu(金币+1,VIP+0):欢迎参与 9-11 20:09
我有个问题,你求解的步长是不是太大了?
相关程序如下:
clc;close all;clear;
df=inline(['[-3*sin(x(2))-0.5*sqrt(1+0.01*x(1))*cos(x(2))^2;',...
    '-3*cos(x(2))+0.5*sqrt(1+0.01*x(1))*sin(x(2))^2]'],'t','x');
tspan=800:-10:0;
x0=[191,0.029];
[t,x]=ode45(df,tspan,x0);
whos
plot(tspan,x(:,1),'k');hold on
plot(tspan,x(:,2),'r');
legend('x','y')
下面是输出图形:
2楼2009-09-11 18:28:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zjliu1265

至尊木虫 (正式写手)

★ ★ ★ ★
kuhailangyu(金币+2,VIP+0):3Q! 9-11 20:10
chenyouzhi(金币+2,VIP+0):昨晚有事,现在补上,谢谢! 9-13 07:38
利用ode45可以求解这类方程。通常情况下,参数t的步长是正数,而初始条件给定。如果把时间步长选为负值,那么初始条件也就相应变为“终止时刻的函数值了”。
其他的应该好理解了,无它...
相信你可以理解了
4楼2009-09-11 18:51:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chenyouzhi

银虫 (小有名气)

引用回帖:
Originally posted by zjliu1265 at 2009-9-11 18:51:
利用ode45可以求解这类方程。通常情况下,参数t的步长是正数,而初始条件给定。如果把时间步长选为负值,那么初始条件也就相应变为“终止时刻的函数值了”。
其他的应该好理解了,无它...
相信你可以理解了

呵呵,只是以前在所有接触到的MATLAB书籍里所有的龙哥库塔法应用都是以初始时刻的函数值为已知初值的,久而久之给了我一种误导!
多谢了这位朋友!
我信我能,只要我用心去做!
5楼2009-09-11 18:55:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见