@@ -156,6 +156,7 @@ def decode_nav(self, navfile, nav, append=False):
156156 if not append :
157157 nav .eph = []
158158 nav .geph = []
159+ nav .seph = []
159160
160161 with open (navfile , 'rt' ) as fnav :
161162 for line in fnav :
@@ -314,7 +315,7 @@ def decode_nav(self, navfile, nav, append=False):
314315 nav .ion_prm [sys ][im ].prm [0 :3 ] = \
315316 [c_A , c_F10_7 , c_Ap ]
316317
317- else : # Klobucher (LNAV, D1D2, CNVX)
318+ else : # Klobuchar (LNAV, D1D2, CNVX)
318319 nav .ion_prm [sys ][im ].prm = np .zeros (9 )
319320
320321 for k in range (3 ):
@@ -365,6 +366,10 @@ def decode_nav(self, navfile, nav, append=False):
365366 sat = prn2sat (sys , prn )
366367 geph = Geph (sat )
367368
369+ pos = np .zeros (3 )
370+ vel = np .zeros (3 )
371+ acc = np .zeros (3 )
372+
368373 geph .mode = self .mode_nav
369374 toc = self .decode_time (line , 4 )
370375 week , tocs = time2gpst (toc )
@@ -380,15 +385,15 @@ def decode_nav(self, navfile, nav, append=False):
380385 bet_ = self .flt (line , 3 ) # clock drift rate
381386
382387 line = fnav .readline () # line #1
383- geph . pos [0 ] = self .flt (line , 0 )* 1e3
384- geph . vel [0 ] = self .flt (line , 1 )* 1e3
385- geph . acc [0 ] = self .flt (line , 2 )* 1e3
388+ pos [0 ] = self .flt (line , 0 )* 1e3
389+ vel [0 ] = self .flt (line , 1 )* 1e3
390+ acc [0 ] = self .flt (line , 2 )* 1e3
386391 geph .svh = int (self .flt (line , 3 ))
387392
388393 line = fnav .readline () # line #2
389- geph . pos [1 ] = self .flt (line , 0 )* 1e3
390- geph . vel [1 ] = self .flt (line , 1 )* 1e3
391- geph . acc [1 ] = self .flt (line , 2 )* 1e3
394+ pos [1 ] = self .flt (line , 0 )* 1e3
395+ vel [1 ] = self .flt (line , 1 )* 1e3
396+ acc [1 ] = self .flt (line , 2 )* 1e3
392397
393398 if self .mode_nav == 0 : # FDMA
394399 geph .frq = int (self .flt (line , 3 ))
@@ -399,9 +404,13 @@ def decode_nav(self, navfile, nav, append=False):
399404 dvalid = int (self .flt (line , 3 ))
400405
401406 line = fnav .readline () # line #3
402- geph .pos [2 ] = self .flt (line , 0 )* 1e3
403- geph .vel [2 ] = self .flt (line , 1 )* 1e3
404- geph .acc [2 ] = self .flt (line , 2 )* 1e3
407+ pos [2 ] = self .flt (line , 0 )* 1e3
408+ vel [2 ] = self .flt (line , 1 )* 1e3
409+ acc [2 ] = self .flt (line , 2 )* 1e3
410+
411+ geph .pos = pos
412+ geph .vel = vel
413+ geph .acc = acc
405414
406415 if self .mode_nav == 0 : # FDMA
407416 geph .age = int (self .flt (line , 3 ))
@@ -470,29 +479,37 @@ def decode_nav(self, navfile, nav, append=False):
470479 sat = prn2sat (sys , prn )
471480 seph = Seph (sat )
472481
482+ pos = np .zeros (3 )
483+ vel = np .zeros (3 )
484+ acc = np .zeros (3 )
485+
473486 seph .toc = self .decode_time (line , 4 )
474487 seph .af0 = self .flt (line , 1 )
475488 seph .af1 = self .flt (line , 2 )
476489 seph .tot = self .flt (line , 3 )
477490
478491 line = fnav .readline () # line #1
479- seph . pos [0 ] = self .flt (line , 0 )* 1e3
480- seph . vel [0 ] = self .flt (line , 1 )* 1e3
481- seph . pos [0 ] = self .flt (line , 2 )* 1e3
492+ pos [0 ] = self .flt (line , 0 )* 1e3
493+ vel [0 ] = self .flt (line , 1 )* 1e3
494+ acc [0 ] = self .flt (line , 2 )* 1e3
482495 seph .svh = int (self .flt (line , 3 ))
483496
484497 line = fnav .readline () # line #2
485- seph . pos [1 ] = self .flt (line , 0 )* 1e3
486- seph . vel [1 ] = self .flt (line , 1 )* 1e3
487- seph . pos [1 ] = self .flt (line , 2 )* 1e3
498+ pos [1 ] = self .flt (line , 0 )* 1e3
499+ vel [1 ] = self .flt (line , 1 )* 1e3
500+ acc [1 ] = self .flt (line , 2 )* 1e3
488501 seph .sva = self .flt (line , 3 )
489502
490503 line = fnav .readline () # line #3
491- seph . pos [2 ] = self .flt (line , 0 )* 1e3
492- seph . vel [2 ] = self .flt (line , 1 )* 1e3
493- seph . pos [2 ] = self .flt (line , 2 )* 1e3
504+ pos [2 ] = self .flt (line , 0 )* 1e3
505+ vel [2 ] = self .flt (line , 1 )* 1e3
506+ acc [2 ] = self .flt (line , 2 )* 1e3
494507 seph .iodn = int (self .flt (line , 3 ))
495508
509+ seph .pos = pos
510+ seph .vel = vel
511+ seph .acc = acc
512+
496513 nav .seph .append (seph )
497514 continue
498515
0 commit comments