如何使用MATLAB求解微分方程(组)
1个回答
展开全部
这是阿波罗卫星轨迹例子
第二个方程应为y' = -2*x' + y ...,以为符号
代码如下
function solveode
function fun = OdeFunc(t,y)
mu = 1/82.45;
mu_star = 1 - mu;
r2 = sqrt((y(1) - mu_star)^2+y(3)^2);
r1 = sqrt((y(1) + mu)^2+y(3)^2);
fun = [y(2);
2*y(4)+y(1)-mu_star*(y(1)+mu)/r1^3-mu*(y(1)-mu_star)/r2^3;
y(4);
-2*y(2)+y(3)-mu_star*y(3)/r1^3-mu*y(3)/r2^3
];
end
tspan = [0,30];
x0=[1.2;0;0;-1.049355751];
options = odeset('RelTol',1e-6);
[tt,yy] = ode45(@OdeFunc,tspan,x0,options);
plot(yy(:,1),yy(:,3))
end
保存并运行可得
江苏华简晟01
2024-10-14 广告
2024-10-14 广告
色谱检测服务热线18721007633, 江苏华简晟检测科技是研究性测试服务机构,基于多年的分析表征专业技术积累和辐射全国的服务网络,每年出具数万分技术报告,累计服务客户数千万家。...
点击进入详情页
本回答由江苏华简晟01提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询