Class GPSAlmanac

  • All Implemented Interfaces:
    GPSOrbitalElements, TimeStamped

    public class GPSAlmanac
    extends Object
    implements GPSOrbitalElements
    This class holds a GPS almanac as read from SEM or YUMA files.

    Depending on the source (SEM or YUMA), some fields may be filled in or not. An almanac read from a YUMA file doesn't hold SVN number, average URA and satellite configuration.

    Since:
    8.0
    Author:
    Pascal Parraud
    • Constructor Summary

      Constructors 
      Constructor Description
      GPSAlmanac​(String source, int prn, int svn, int week, double toa, double sqa, double ecc, double inc, double om0, double dom, double aop, double anom, double af0, double af1, int health, int ura, int config)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      double getAf0()
      Gets the Zeroth Order Clock Correction.
      double getAf1()
      Gets the First Order Clock Correction.
      double getCic()
      Gets the Amplitude of the Cosine Harmonic Correction Term to the Angle of Inclination.
      double getCis()
      Gets the Amplitude of the Sine Harmonic Correction Term to the Angle of Inclination.
      double getCrc()
      Gets the Amplitude of the Cosine Harmonic Correction Term to the Orbit Radius.
      double getCrs()
      Gets the Amplitude of the Sine Harmonic Correction Term to the Orbit Radius.
      double getCuc()
      Gets the Amplitude of the Cosine Harmonic Correction Term to the Argument of Latitude.
      double getCus()
      Gets the Amplitude of the Sine Harmonic Correction Term to the Argument of Latitude.
      AbsoluteDate getDate()
      Get the date.
      double getE()
      Gets the Eccentricity.
      int getHealth()
      Gets the Health status.
      double getI0()
      Gets the Inclination Angle at Reference Time.
      double getIDot()
      Gets the Rate of Inclination Angle.
      double getM0()
      Gets the Mean Anomaly at Reference Time.
      double getMeanMotion()
      Gets the Mean Motion.
      double getOmega0()
      Gets the Longitude of Ascending Node of Orbit Plane at Weekly Epoch.
      double getOmegaDot()
      Gets the Rate of Right Ascension.
      double getPa()
      Gets the Argument of Perigee.
      int getPRN()
      Gets the PRN number of the GPS satellite.
      int getSatConfiguration()
      Gets the satellite configuration.
      double getSma()
      Gets the Semi-Major Axis.
      String getSource()
      Gets the source of this GPS almanac.
      int getSVN()
      Gets the satellite "SVN" reference number.
      double getTime()
      Gets the Reference Time of the GPS orbit as a duration from week start.
      int getURA()
      Gets the average URA number.
      int getWeek()
      Gets the Reference Week of the GPS orbit.
    • Constructor Detail

      • GPSAlmanac

        public GPSAlmanac​(String source,
                          int prn,
                          int svn,
                          int week,
                          double toa,
                          double sqa,
                          double ecc,
                          double inc,
                          double om0,
                          double dom,
                          double aop,
                          double anom,
                          double af0,
                          double af1,
                          int health,
                          int ura,
                          int config)
        Constructor.
        Parameters:
        source - the source of the almanac (SEM, YUMA, user defined)
        prn - the PRN number
        svn - the SVN number
        week - the GPS week
        toa - the Time of Applicability
        sqa - the Square Root of Semi-Major Axis (m^1/2)
        ecc - the eccentricity
        inc - the inclination (rad)
        om0 - the geographic longitude of the orbital plane at the weekly epoch (rad)
        dom - the Rate of Right Ascension (rad/s)
        aop - the Argument of Perigee (rad)
        anom - the Mean Anomaly (rad)
        af0 - the Zeroth Order Clock Correction (s)
        af1 - the First Order Clock Correction (s/s)
        health - the Health status
        ura - the average URA
        config - the satellite configuration
    • Method Detail

      • getSource

        public String getSource()
        Gets the source of this GPS almanac.

        Sources can be SEM or YUMA, when the almanac is read from a file.

        Returns:
        the source of this GPS almanac
      • getPRN

        public int getPRN()
        Description copied from interface: GPSOrbitalElements
        Gets the PRN number of the GPS satellite.
        Specified by:
        getPRN in interface GPSOrbitalElements
        Returns:
        the PRN number of the GPS satellite
      • getSVN

        public int getSVN()
        Gets the satellite "SVN" reference number.
        Returns:
        the satellite "SVN" reference number
      • getWeek

        public int getWeek()
        Description copied from interface: GPSOrbitalElements
        Gets the Reference Week of the GPS orbit.
        Specified by:
        getWeek in interface GPSOrbitalElements
        Returns:
        the Reference Week of the GPS orbit within [0, 1024[
      • getTime

        public double getTime()
        Description copied from interface: GPSOrbitalElements
        Gets the Reference Time of the GPS orbit as a duration from week start.
        Specified by:
        getTime in interface GPSOrbitalElements
        Returns:
        the Reference Time of the GPS orbit (s)
      • getI0

        public double getI0()
        Description copied from interface: GPSOrbitalElements
        Gets the Inclination Angle at Reference Time.
        Specified by:
        getI0 in interface GPSOrbitalElements
        Returns:
        the Inclination Angle at Reference Time (rad)
      • getIDot

        public double getIDot()
        Description copied from interface: GPSOrbitalElements
        Gets the Rate of Inclination Angle.
        Specified by:
        getIDot in interface GPSOrbitalElements
        Returns:
        the Rate of Inclination Angle (rad/s)
      • getOmega0

        public double getOmega0()
        Description copied from interface: GPSOrbitalElements
        Gets the Longitude of Ascending Node of Orbit Plane at Weekly Epoch.
        Specified by:
        getOmega0 in interface GPSOrbitalElements
        Returns:
        the Longitude of Ascending Node of Orbit Plane at Weekly Epoch (rad)
      • getOmegaDot

        public double getOmegaDot()
        Description copied from interface: GPSOrbitalElements
        Gets the Rate of Right Ascension.
        Specified by:
        getOmegaDot in interface GPSOrbitalElements
        Returns:
        the Rate of Right Ascension (rad/s)
      • getPa

        public double getPa()
        Description copied from interface: GPSOrbitalElements
        Gets the Argument of Perigee.
        Specified by:
        getPa in interface GPSOrbitalElements
        Returns:
        the Argument of Perigee (rad)
      • getM0

        public double getM0()
        Description copied from interface: GPSOrbitalElements
        Gets the Mean Anomaly at Reference Time.
        Specified by:
        getM0 in interface GPSOrbitalElements
        Returns:
        the Mean Anomaly at Reference Time (rad)
      • getCuc

        public double getCuc()
        Description copied from interface: GPSOrbitalElements
        Gets the Amplitude of the Cosine Harmonic Correction Term to the Argument of Latitude.
        Specified by:
        getCuc in interface GPSOrbitalElements
        Returns:
        the Amplitude of the Cosine Harmonic Correction Term to the Argument of Latitude (rad)
      • getCus

        public double getCus()
        Description copied from interface: GPSOrbitalElements
        Gets the Amplitude of the Sine Harmonic Correction Term to the Argument of Latitude.
        Specified by:
        getCus in interface GPSOrbitalElements
        Returns:
        the Amplitude of the Sine Harmonic Correction Term to the Argument of Latitude (rad)
      • getCrc

        public double getCrc()
        Description copied from interface: GPSOrbitalElements
        Gets the Amplitude of the Cosine Harmonic Correction Term to the Orbit Radius.
        Specified by:
        getCrc in interface GPSOrbitalElements
        Returns:
        the Amplitude of the Cosine Harmonic Correction Term to the Orbit Radius (m)
      • getCrs

        public double getCrs()
        Description copied from interface: GPSOrbitalElements
        Gets the Amplitude of the Sine Harmonic Correction Term to the Orbit Radius.
        Specified by:
        getCrs in interface GPSOrbitalElements
        Returns:
        the Amplitude of the Sine Harmonic Correction Term to the Orbit Radius (m)
      • getCic

        public double getCic()
        Description copied from interface: GPSOrbitalElements
        Gets the Amplitude of the Cosine Harmonic Correction Term to the Angle of Inclination.
        Specified by:
        getCic in interface GPSOrbitalElements
        Returns:
        the Amplitude of the Cosine Harmonic Correction Term to the Angle of Inclination (rad)
      • getCis

        public double getCis()
        Description copied from interface: GPSOrbitalElements
        Gets the Amplitude of the Sine Harmonic Correction Term to the Angle of Inclination.
        Specified by:
        getCis in interface GPSOrbitalElements
        Returns:
        the Amplitude of the Sine Harmonic Correction Term to the Angle of Inclination (rad)
      • getHealth

        public int getHealth()
        Gets the Health status.
        Returns:
        the Health status
      • getURA

        public int getURA()
        Gets the average URA number.
        Returns:
        the average URA number
      • getSatConfiguration

        public int getSatConfiguration()
        Gets the satellite configuration.
        Returns:
        the satellite configuration