GNSS constellation

Hi all,

I’m currently trying to use the new functionalities of Orekit 10. I have a GNSS simulator but it’s on Orekit 7 and had to implement each constellation individually which wasn’t the most elegant way of doing so. I would like now to use the new interfaces definitions to try and make my life easier with handling the GNSS constellations.

But I’m not too familiar with the use of interfaces and how I should use them or specify the required inputs.

Would any of you be able to help me out?

Thank you very much.


Hi @benoist,

Is it possible to have more information on what you want to do in link with GNSS constellations and which interfaces you want to use ?

In link with GNSS constellations, Orekit is able to:

  • Perform orbit propagation using almanac and ephemeris data
  • Model attitude and antenna.
  • Read SEM, YUMA and RINEX files
  • Model GNSS range and phase (ambiguity resolution, wind-up effect, …) measurements.

Thank you,

Kind regards


Hi Bryan,

Thank you very much for your answer.

I’m doing a link budget assessment, assessing what C/N0 my GNSS receiver would get. I would like to first do the exact same but taking advantage of the new functionalities of Orekit and then extend it to range and phase measurements.

What would be your suggestion to setup all GNSS constellations? Is there YUMA files available for all of them?

Thank you very much for your help!

Kind regards,


Sorry for my late answer.

I don’t think official YUMA files are available for all constellations.YUMA files are available for GPS satellites on celestrak website. QZSS almanacs are also available using YUMA files (here). However, for the other constellations, other format are used. For instance, the European GNSS Agency (GSA) provides Galileo almanacs using .xml files (here).

The common format used to setup all GNSS constellations is the RINEX navigation files. There is an open issue (#523) on Orekit to add support for this format.

Kind regards,