Class GlobalIonosphereMapModel

java.lang.Object
org.orekit.models.earth.ionosphere.AbstractIonosphericModel
org.orekit.models.earth.ionosphere.GlobalIonosphereMapModel
All Implemented Interfaces:
IonosphericModel, ParameterDriversProvider

public class GlobalIonosphereMapModel extends AbstractIonosphericModel
Global Ionosphere Map (GIM) model. The ionospheric delay is computed according to the formulas:
           40.3
    δ =  --------  *  STEC      with, STEC = VTEC * F(elevation)
            f²
 
With:
  • f: The frequency of the signal in Hz.
  • STEC: The Slant Total Electron Content in TECUnits.
  • VTEC: The Vertical Total Electron Content in TECUnits.
  • F(elevation): A mapping function which depends on satellite elevation.
The VTEC is read from a IONEX file. A file contains, for a given day, VTEC maps corresponding to snapshots at some sampling hours within the day. VTEC maps are TEC Values on regular latitude, longitude grids (typically global 2.5° x 5.0° grids).

A bilinear interpolation is performed the case of the user initialize the latitude and the longitude with values that are not contained in the stream.

A temporal interpolation is also performed to compute the VTEC at the desired date.

IONEX files are obtained from Crustal Dynamics Data Information System.

The files have to be extracted to UTF-8 text files before being read by this loader.

Example of file:

      1.0            IONOSPHERE MAPS     GPS                 IONEX VERSION / TYPE
 BIMINX V5.3         AIUB                16-JAN-19 07:26     PGM / RUN BY / DATE
 BROADCAST IONOSPHERE MODEL FOR DAY 015, 2019                COMMENT
   2019     1    15     0     0     0                        EPOCH OF FIRST MAP
   2019     1    16     0     0     0                        EPOCH OF LAST MAP
   3600                                                      INTERVAL
     25                                                      # OF MAPS IN FILE
   NONE                                                      MAPPING FUNCTION
      0.0                                                    ELEVATION CUTOFF
                                                             OBSERVABLES USED
   6371.0                                                    BASE RADIUS
      2                                                      MAP DIMENSION
    350.0 350.0   0.0                                        HGT1 / HGT2 / DHGT
     87.5 -87.5  -2.5                                        LAT1 / LAT2 / DLAT
   -180.0 180.0   5.0                                        LON1 / LON2 / DLON
     -1                                                      EXPONENT
 TEC/RMS values in 0.1 TECU; 9999, if no value available     COMMENT
                                                             END OF HEADER
      1                                                      START OF TEC MAP
   2019     1    15     0     0     0                        EPOCH OF CURRENT MAP
     87.5-180.0 180.0   5.0 350.0                            LAT/LON1/LON2/DLON/H
    92   92   92   92   92   92   92   92   92   92   92   92   92   92   92   92
    92   92   92   92   92   92   92   92   92   92   92   92   92   92   92   92
    92   92   92   92   92   92   92   92   92   92   92   92   92   92   92   92
    92   92   92   92   92   92   92   92   92   92   92   92   92   92   92   92
    92   92   92   92   92   92   92   92   92
    ...
 

Note that this model pathDelay methods requires the topocentric frame to lie on a OneAxisEllipsoid body shape, because the single layer on which pierce point is computed must be an ellipsoidal shape at some altitude.

Author:
Bryan Cazabonne
See Also:
  • "Schaer, S., W. Gurtner, and J. Feltens, 1998, IONEX: The IONosphere Map EXchange Format Version 1, February 25, 1998, Proceedings of the IGS AC Workshop Darmstadt, Germany, February 9–11, 1998"
  • Constructor Details

  • Method Details

    • getInterpolator

      Get the time interpolator used.
      Returns:
      time interpolator used
      Since:
      13.1.1
    • pathDelay

      public double pathDelay(Vector3D localP1, Vector3D localP2, TopocentricFrame baseFrame, AbsoluteDate receptionDate, double frequency, double[] parameters)
      Description copied from interface: IonosphericModel
      Calculates the ionospheric path delay for the signal path from a ground station to an observing object (ground station or satellite).

      This method is intended to be used for orbit determination issues. In that respect, if the elevation is below 0° the path delay will be equal to zero.

      For individual use of the ionospheric model (i.e. not for orbit determination), another method signature can be implemented to compute the path delay for any elevation angle.

      Parameters:
      localP1 - position of path start point in baseFrame
      localP2 - position of path end point in baseFrame
      baseFrame - topocentric frame of point with lowest altitude between p1 and p2
      receptionDate - date at signal reception
      frequency - frequency of the signal in Hz
      parameters - ionospheric model parameters at state date
      Returns:
      the path delay due to the ionosphere in m
    • pathDelay

      public <T extends CalculusFieldElement<T>> T pathDelay(FieldVector3D<T> localP1, FieldVector3D<T> localP2, TopocentricFrame baseFrame, FieldAbsoluteDate<T> receptionDate, double frequency, T[] parameters)
      Description copied from interface: IonosphericModel
      Calculates the ionospheric path delay for the signal path from a ground station to an observing object (ground station or satellite).

      This method is intended to be used for orbit determination issues. In that respect, if the elevation is below 0° the path delay will be equal to zero.

      For individual use of the ionospheric model (i.e. not for orbit determination), another method signature can be implemented to compute the path delay for any elevation angle.

      Type Parameters:
      T - type of the elements
      Parameters:
      localP1 - position of path start point in baseFrame
      localP2 - position of path end point in baseFrame
      baseFrame - topocentric frame of point with lowest altitude between p1 and p2
      receptionDate - date at signal reception
      frequency - frequency of the signal in Hz
      parameters - ionospheric model parameters at state date
      Returns:
      the path delay due to the ionosphere in m
    • getParametersDrivers

      public List<ParameterDriver> getParametersDrivers()
      Description copied from interface: ParameterDriversProvider
      Get the drivers for parameters.
      Returns:
      drivers for parameters