I'm trying to calculate Galileo stallite's position from ephemerides data.
I'm reading from https://gssc.esa.int/navipedia/GNSS_Book/ESA_GNSS-Book_TM-23_Vol_I.pdf at 3.3.1.
The first step is:
Compute the time Tk from the ephemerides reference epoch toe (t and Toe are expressed in seconds in the GPS week): Tk = t - Toe
I have the value of Toe as it's retrieved from ephemeris data, but I'm not sure where the value of t comes from.
I have a hunch that t is retrieved fom the clock parameters, but those arn't in the ephemerid parameters. So if I retrieve the clock parameters separate from the ephemeris parameters then they will have the be retrieved at different times and create calculation errors errors.
I've also read https://www.navcen.uscg.gov/pubs/gps/sigspec/gpssps1.pdf at 2.5.7 which explains t a little bit:
But I don't understand what it means by the "effective satellite PRN code phase time at the message transmission time" and "PRN code phase time offset".
I haven't found a direct solution but I've found a different path to take so I'm gonna post it here in case someone else finds this useful. There is a Volume 2 of the first PDF I posted that contains more practical examples of the math. The second volume contains a CD that has a program called gLab Tool Suit with all the examples and other nice programs. One of the examples is "sub_orbit.f" which is a function that takes in the Ephemeris parameters and Epoch and returns the satellites position. I've created a pastebin for the example code here: https://pastebin.com/9b38LB1R (It's in Fortran) but you can download both the PDF and CD for yourself here: https://gssc.esa.int/navipedia/index.php/GNSS:Tools