Курсовая работа: Программы освоения Луны
Pos3 : TVect3 ; { station position in receive moment }
utc3 : TMoment ; { receive moment scale UTC }
ref1 : Extended ; { the first correction for refraction in meter }
ref2 : Extended ; { the second correction for refraction in meter }
CelT : TMatr33 ; { celestial terrestrial matrix }
Begin
BarCStatPos(obs,par,obs.obst,Eph1,Pos1,CelT); { UnStCoor fire moment }
BarCReflPos(obs,par,Eph1,Pos1,Eph2,Pos2); { UnRefLun reflector }
ref1:=ToGetRefraCor(obs,Pos1,Pos2,CelT); { unit UnRefCor }
StatReceive(obs,par,Eph2,Pos2,Eph3,Pos3,CelT,utc3); { UnStCoor }
ref2:=ToGetRefraCor(obs,Pos3,Pos2,CelT); { unit UnRefCor }
ToGetLunaR:=86400*VelOfLight*(utc3.part-obs.obst.part) { two-way delay }
+1.0e-3*(ref1+ref2); { plus refraction two-way correction }
End;
Procedure ToWriteCurDif ( num : Integer ;
obs : TLaserObs ;
dif : Extended ) ;
Begin
WriteLn(num:6,obs.nsar:5,obs.nsto:6,
VelOfLight*obs.dobs:16:6,
dif:16:6,1.0e3*(dif-VelOfLight*obs.dobs):16:3);
WriteLn(PrtFile,num:6,obs.nsar:5,obs.nsto:6,
VelOfLight*obs.dobs:16:6,
dif:16:6,1.0e3*(dif-VelOfLight*obs.dobs):16:3);
End;
{ to read record by record from binary file with observations }
Procedure TryMoonLaserObs ;
Var
obs : TLaserObs ; { type from UnQLBinF }