gps卫星位置的计算.pdf
#includestdlib.h
#includestdio.h
#includectype.h
#includestring.h
#includemath.h
#includetime.h
#definebPI3.1415926535898
#definebGM843.986005e14
#definebOMEGAE847.2921151467e-5
/*SampleBroadcastMessageinunitofradians,seconds,meters.
2001723200.0-.857324339449D-04-.272848410532D-11.000000000000D+00
.200000000000D+02.886875000000D+02.465376527657D-08.105827953357D+01
.457651913166D-05.223578442819D-02.177137553692D-05.515379589081D+04
.936000000000D+05.651925802231D-07.164046615454D+01-.856816768646D-07
.961685061380D+00.344968750000D+03.206374037770D+01-.856928551657D-08
.342514267094D-09.000000000000D+00.112400000000D+04.000000000000D+00
.200000000000D+01.000000000000D+00-.651925802231D-08.276000000000D+03
.865800000000D+05.000000000000D+00.000000000000D+00.000000000000D+0
0
*/
//Programwrittenforinstructionalpurposesonly.Inpracticethiswouldbeageneralized
function.
//Thisapproachwasadoptedforclarityandfornon-programmers.BenjaminW.Remondi,
February2004
//Dr.BenjaminW.RemondiisthePresidentCEOofTheXYZsofGPS,Inc.
//ItisessentialthatthereaderhavetheICD-200available.
voidmain(void)
{
longdoubleroota=5153
longdoubletoe=93600.0;
longdoublem0=1.05827953357;
longdoublee=0.00223578442819;
longdoubledelta_n=0.465376527657e-08;
longdoublesmallomega=2.06374037770;
longdoublecus=0.177137553692e-05;
longdoublecuc=0.457651913166e-05;
longdoublecrs=88.6875000000;
longdoublecrc=344.968750000;
longdoublecis=-0.8568