Fizika 2006
-
#847
Az elso pelda gyanus, mert nincs benne Lorentz transzformacio. Akkor leellenorzom ezzel is.
origo:0.000 0.000 => 0.000 0.000
tukor:1500000000.000 5.000 => 500000000.000 1.667
ido a tukorig:1.667
visszaerkezaes:1333333333.333 5.556 => -0.000 3.333
ido vissza:1.667
teljes ido:3.333
Az eredmeny ugyan az, es az idopontok is egyeznek.
double dt,s,b,x1,t1,t2a,t2b,x2,t2,c=3e8,v;
v=0.8*c;
s=c;
x1=0.0;
t1=0.0;
b=1.0/sqrt(1.0-v*v/(c*c));
x2=(x1-(v*t1))*b;
t2=(t1-((v*x1)/(c*c)))*b;
printf("origo:%.3f %.3f => ",x1,t1);
printf("%.3f %.3f\n\n",x2,t2);
t2a=t2;
dt=s/(c-v);
x1=c*dt;
t1+=dt;
b=1.0/sqrt(1.0-v*v/(c*c));
x2=(x1-(v*t1))*b;
t2=(t1-((v*x1)/(c*c)))*b;
printf("tukor:%.3f %.3f => ",x1,t1);
printf("%.3f %.3f\n\n",x2,t2);
printf("ido a tukorig:%.3f \n\n",(t2-t2a));
t2b=t2;
dt=s/(c+v);
x1=x1-c*dt;
t1+=dt;
b=1.0/sqrt(1.0-v*v/(c*c));
x2=(x1-(v*t1))*b;
t2=(t1-((v*x1)/(c*c)))*b;
printf("visszaerkezaes:%.3f %.3f => ",x1,t1);
printf("%.3f %.3f\n\n",x2,t2);
printf("ido vissza:%.3f \n\n",(t2-t2b));
printf("teljes ido:%.3f \n\n",(t2-t2a));