sky mat
2012-02-25, 11:16
clear;clc;
hold on
f1=inline('z2','z1','z2','z3','z4');
f2=inline('-1200*z1/(z1^2+z3^2)^1.5','z1','z2','z3','z4');
f3=inline('z4','z1','z2','z3','z4');
f4=inline('-1200*z3/(z1^2+z3^2)^1.5','z1','z2','z3','z4');
z10=30;z20=0;z30=0;z40=7.5;Ek=0;Ep=0;W=0;L=0;
fprintf('x=%.5f y=%.5f Vx=%.5f Vy=%.5f\n',z10,z30,z20,z40);
h=0.05;
plot(z10,z30,'k.','markersize',6);
for t=0:0.1:720
k11=h*f1(z10,z20,z30,z40);
k12=h*f2(z10,z20,z30,z40);
k13=h*f3(z10,z20,z30,z40);
k14=h*f4(z10,z20,z30,z40);
k21=h*f1(z10+k11*0.5,z20+k12*0.5,z30+k13*0.5,z40+k14*0.5);
k22=h*f2(z10+k11*0.5,z20+k12*0.5,z30+k13*0.5,z40+k14*0.5);
k23=h*f3(z10+k11*0.5,z20+k12*0.5,z30+k13*0.5,z40+k14*0.5);
k24=h*f4(z10+k11*0.5,z20+k12*0.5,z30+k13*0.5,z40+k14*0.5);
k31=h*f1(z10+k21*0.5,z20+k22*0.5,z30+k23*0.5,z40+k24*0.5);
k32=h*f2(z10+k21*0.5,z20+k22*0.5,z30+k23*0.5,z40+k24*0.5);
k33=h*f3(z10+k21*0.5,z20+k22*0.5,z30+k23*0.5,z40+k24*0.5);
k34=h*f4(z10+k21*0.5,z20+k22*0.5,z30+k23*0.5,z40+k24*0.5);
k41=h*f1(z10+k31*0.5,z20+k32*0.5,z30+k33*0.5,z40+k34*0.5);
k42=h*f2(z10+k31*0.5,z20+k32*0.5,z30+k33*0.5,z40+k34*0.5);
k43=h*f3(z10+k31*0.5,z20+k32*0.5,z30+k33*0.5,z40+k34*0.5);
k44=h*f4(z10+k31*0.5,z20+k32*0.5,z30+k33*0.5,z40+k34*0.5);
z10=z10+(k11+2*k21+2*k31+k41)/6;
z20=z20+(k12+2*k22+2*k32+k42)/6;
z30=z30+(k13+2*k23+2*k33+k43)/6;
z40=z40+(k14+2*k24+2*k34+k44)/6;
Ek=0.5*(z20^2+z40^2);
Ep=- 1200/(z10^2+z30^2)^0.5;
W=Ek+Ep;
L=z10*z40-z20*z30;
fprintf('x=%.5f y=%.5f Vx=%.5f Vy=%.5f Ek=%.5f Ep=%.5f W=%.5f L=%.5f\n',z10,z30,z20,z40,Ek,Ep,W,L);
plot(z10,z30,'k.','markersize',6);
end
请大家忙忙忙,以t为横坐标,绘出Ek,Ep,W,L的图像,谢谢:)
hold on
f1=inline('z2','z1','z2','z3','z4');
f2=inline('-1200*z1/(z1^2+z3^2)^1.5','z1','z2','z3','z4');
f3=inline('z4','z1','z2','z3','z4');
f4=inline('-1200*z3/(z1^2+z3^2)^1.5','z1','z2','z3','z4');
z10=30;z20=0;z30=0;z40=7.5;Ek=0;Ep=0;W=0;L=0;
fprintf('x=%.5f y=%.5f Vx=%.5f Vy=%.5f\n',z10,z30,z20,z40);
h=0.05;
plot(z10,z30,'k.','markersize',6);
for t=0:0.1:720
k11=h*f1(z10,z20,z30,z40);
k12=h*f2(z10,z20,z30,z40);
k13=h*f3(z10,z20,z30,z40);
k14=h*f4(z10,z20,z30,z40);
k21=h*f1(z10+k11*0.5,z20+k12*0.5,z30+k13*0.5,z40+k14*0.5);
k22=h*f2(z10+k11*0.5,z20+k12*0.5,z30+k13*0.5,z40+k14*0.5);
k23=h*f3(z10+k11*0.5,z20+k12*0.5,z30+k13*0.5,z40+k14*0.5);
k24=h*f4(z10+k11*0.5,z20+k12*0.5,z30+k13*0.5,z40+k14*0.5);
k31=h*f1(z10+k21*0.5,z20+k22*0.5,z30+k23*0.5,z40+k24*0.5);
k32=h*f2(z10+k21*0.5,z20+k22*0.5,z30+k23*0.5,z40+k24*0.5);
k33=h*f3(z10+k21*0.5,z20+k22*0.5,z30+k23*0.5,z40+k24*0.5);
k34=h*f4(z10+k21*0.5,z20+k22*0.5,z30+k23*0.5,z40+k24*0.5);
k41=h*f1(z10+k31*0.5,z20+k32*0.5,z30+k33*0.5,z40+k34*0.5);
k42=h*f2(z10+k31*0.5,z20+k32*0.5,z30+k33*0.5,z40+k34*0.5);
k43=h*f3(z10+k31*0.5,z20+k32*0.5,z30+k33*0.5,z40+k34*0.5);
k44=h*f4(z10+k31*0.5,z20+k32*0.5,z30+k33*0.5,z40+k34*0.5);
z10=z10+(k11+2*k21+2*k31+k41)/6;
z20=z20+(k12+2*k22+2*k32+k42)/6;
z30=z30+(k13+2*k23+2*k33+k43)/6;
z40=z40+(k14+2*k24+2*k34+k44)/6;
Ek=0.5*(z20^2+z40^2);
Ep=- 1200/(z10^2+z30^2)^0.5;
W=Ek+Ep;
L=z10*z40-z20*z30;
fprintf('x=%.5f y=%.5f Vx=%.5f Vy=%.5f Ek=%.5f Ep=%.5f W=%.5f L=%.5f\n',z10,z30,z20,z40,Ek,Ep,W,L);
plot(z10,z30,'k.','markersize',6);
end
请大家忙忙忙,以t为横坐标,绘出Ek,Ep,W,L的图像,谢谢:)