0.2.0
Loading...
Searching...
No Matches
Klobuchar.hpp File Reference

Klobuchar Ionospheric correction model. More...

Go to the source code of this file.

Functions

double NAV::calcIonosphericTimeDelay_Klobuchar (double tow, Frequency freq, int8_t freqNum, double latitude, double longitude, double elevation, double azimuth, const std::array< double, 4 > &alpha, const std::array< double, 4 > &beta)
 Calculates the ionospheric time delay with the Klobuchar model.
 

Detailed Description

Klobuchar Ionospheric correction model.

Author
T. Topp (topp@.nosp@m.ins..nosp@m.uni-s.nosp@m.tutt.nosp@m.gart..nosp@m.de)
Date
2022-05-26

Function Documentation

◆ calcIonosphericTimeDelay_Klobuchar()

double NAV::calcIonosphericTimeDelay_Klobuchar ( double tow,
Frequency freq,
int8_t freqNum,
double latitude,
double longitude,
double elevation,
double azimuth,
const std::array< double, 4 > & alpha,
const std::array< double, 4 > & beta )

Calculates the ionospheric time delay with the Klobuchar model.

Parameters
[in]towGPS time of week in [s]
[in]freqFrequency of the signal
[in]freqNumFrequency number. Only used for GLONASS G1 and G2
[in]latitude𝜙 Geodetic latitude in [rad]
[in]longitudeλ Geodetic longitude in [rad]
[in]elevationAngle between the user and satellite [rad]
[in]azimuthAngle between the user and satellite, measured clockwise positive from the true North [rad]
[in]alphaThe coefficients of a cubic equation representing the amplitude of the vertical delay
[in]betaThe coefficients of a cubic equation representing the period of the model
Returns
Ionospheric time delay in [s]
Note
See [25] Klobuchar p. 329
See [20] IS-GPS-200 ch. 20.3.3.5.2.5 Figure 20-4 p.131-134

Algorithm description

Given the approximate position \( \phi, \lambda \), the elevation angle \( \varepsilon \), the azimuth \( \alpha \) as well as the 8 Klobuchar coefficients \( \alpha_i, \beta_i, i = 0,...,3 \) one can compute the following:

  • earth-centred angle (elevation in semicircles)

    \begin{equation} \label{eq:eq-klobuchar-earthCentredAngle} \psi = \frac{0.0137}{\varepsilon + 0.11} - 0.022 \end{equation}

  • latitude of the Ionospheric Pierce Point IPP (semicircles)

    \begin{equation} \label{eq:eq-klobuchar-latIPP} \phi_\mathrm{IPP} = \phi + \psi \cos(\alpha) \end{equation}

    If \( \phi_\mathrm{IPP} > 0.416 \), then \( \phi_\mathrm{IPP} = 0.416 \) and if \( \phi_\mathrm{IPP} < -0.416 \), then \( \phi_\mathrm{IPP} = -0.416 \) .
  • longitude of the Ionospheric Pierce Point IPP (semicircles)

    \begin{equation} \label{eq:eq-klobuchar-longIPP} \lambda_\mathrm{IPP} = \lambda + \frac{\psi \sin(\alpha)}{\cos(\phi_\mathrm{IPP})} \end{equation}

  • geomagnetic latitude of IPP

    \begin{equation} \label{eq:eq-klobuchar-latIPP-geomag} \phi_\mathrm{mag} = \phi_\mathrm{IPP} + 0.064 \cos(\lambda_\mathrm{IPP}-1.617) \end{equation}

  • local time at IPP in [s]

    \begin{equation} \label{eq:eq-klobuchar-localTimeIPP} t = 43200 \lambda_\mathrm{IPP} + t_\mathrm{GPS} \end{equation}

    where the local time at IPP is \( 0 \leq t < 86400 \), so if \( t \geq 86400 \), \( t = t - 86400 \) and if \( t < 0 \), \( t = t + 86400 \).
  • slant factor (elevation in semicircles)

    \begin{equation} \label{eq:eq-klobuchar-slantFactor} F = 1.0 + 16.0 (0.53-\varepsilon)^{3} \end{equation}

  • amplitude of ionospheric delay in [s]

    \begin{equation} \label{eq:eq-klobuchar-amp} A_\mathrm{I}=\sum_{n=0}^{3} \alpha_{n} \phi_{mag}^{n} \end{equation}

  • period of ionospheric delay in [s]

    \begin{equation} \label{eq:eq-klobuchar-period} P_\mathrm{I}=\sum_{n=0}^{3} \beta_{n} \phi_{mag}^{n} \end{equation}

    If \( P_\mathrm{I} < 72000 \), set it to \( P_\mathrm{I} = 72000 \).
  • phase of ionospheric delay in [rad]

    \begin{equation} \label{eq:eq-klobuchar-phase} X_\mathrm{I} = \frac{2\pi (t-50400)}{P_\mathrm{I}} \end{equation}

  • ionospheric time delay in [s]

    \begin{equation} \label{eq:eq-klobuchar-ionoTimeDelay} I_{L1_{GPS}}= \begin{cases}{ \left[5 \cdot 10^{-9}+ A_\mathrm{I} \cdot\left(1-\frac{X_{I}^{2}}{2}+\frac{X_{I}^{4}}{24}\right)\right] \cdot F} & , \text{if} \left|X_{I}\right| < 1.57 \\ 5 \cdot 10^{-9} \cdot F & , \text{if} \left|X_{I}\right| \geq 1.57 \end{cases} \end{equation}

  • The ionospheric time delay \( I_{L1_{GPS}} \) refers to the GPS L1 frequency and gets adapted to the given frequency automatically.