當前位置:編程學習大全網 - 編程軟體 - matlab Apollo衛星的運動軌跡

matlab Apollo衛星的運動軌跡

function dx=appollo(t,x)

mu=1/82.45;

mustar=1-mu;

r1=sqrt((x(1)+mu)^2+x(3)^2);

r2=sqrt((x(1)-mustar)^2+x(3)^2);

dx=[x(2)

2*x(4)+x(1)-mustar*(x(1)+mu)/r1^3-mu*(x(1)-mustar)/r2^3

x(4)

-2*x(2)+x(3)-mustar*x(3)/r1^3-mu*x(3)/r2^3];

--------------------------------------------------------------------------------------

x0=[1.2;0;0;-1.04935751];%x0(i)對應與xi的初值

options=odeset('reltol',1e-8);%該命令的另壹種寫法是options=odeset;options.reltol=1e-8;

tic

[t,y]=ode45(@appollo,[0,20],x0,options);%t是時間點,y的第i列對應xi的值,t和y的行數相同

toc

plot(y(:,1),y(:,3))%繪制x1和x3,也就是x和y的圖形

title('Appollo衛星運動軌跡')

xlabel('X')

ylabel('Y')

Elapsed time is 0.597879 seconds.

  • 上一篇:RPG遊戲需要哪些編程方面的知識
  • 下一篇:如何購買鹹魚的電子信息?
  • copyright 2024編程學習大全網