0.5.0
Loading...
Searching...
No Matches
NAV::AmbiguityResolutionParameters Struct Reference

Ambiguity resolution algorithms and parameters. More...

Public Types

enum class  DecorrelationAlgorithm : uint8_t {
  None ,
  Z_Transformation ,
  COUNT
}
 Decorrelation algorithms. More...
enum class  SearchAlgorithm : uint8_t {
  None ,
  IntegerRounding ,
  IntegerBootstrapping ,
  IntegerLeastSquaresSearch ,
  IntegerLeastSquaresSearchAndShrink ,
  COUNT
}
 Search algorithms. More...
enum class  ValidationAlgorithm : uint8_t {
  None ,
  DifferenceTest ,
  RatioTestCriticalValue ,
  RatioTestFailureRate ,
  ProjectorTest ,
  COUNT
}
 Validation algorithms. More...

Data Fields

DecorrelationAlgorithm decorrelationAlgorithm
 Decorrelation algorithm.
bool partialFixing
 Attempt partial fixing of ambiguities.
SearchAlgorithm searchAlgorithm
 Search algorithm.
ValidationAlgorithm validationAlgorithm
 Validation algorithm.
bool validationBootstrappedSuccessRate
 Validation with Bootstrapped success rate (Bootstrapped failure rate is an upper bound for the ILS failure rate)
double validationRatioTestFailureRate
 Failure rate for the ratio test (used to calculate µ)
double validationTestCriticalValueC
 Critical value c for the the difference test.
double validationTestCriticalValueMu
 Critical value µ for the the ratio and projector test (0, 1].

Static Public Attributes

static constexpr std::array< double, 2 > allowedFailureRateValues
 Possible failure rates for the look-up tables.

Detailed Description

Ambiguity resolution algorithms and parameters.

Definition at line 48 of file AmbiguityResolution.hpp.

Member Enumeration Documentation

◆ DecorrelationAlgorithm

Decorrelation algorithms.

Enumerator
None 

Do not decorrelate.

Z_Transformation 

Z-Transformation.

COUNT 

Amount of items in the enum.

Definition at line 51 of file AmbiguityResolution.hpp.

◆ SearchAlgorithm

Search algorithms.

Enumerator
None 

Disable the search.

IntegerRounding 

Integer Rounding (IR)

IntegerBootstrapping 

Integer Bootstrapping (IB)

IntegerLeastSquaresSearch 

Integer least-squares (ILS) Search (LAMBDA)

IntegerLeastSquaresSearchAndShrink 

Integer least-squares (ILS) Search-and-Shrink (MLAMBDA)

COUNT 

Amount of items in the enum.

Definition at line 59 of file AmbiguityResolution.hpp.

◆ ValidationAlgorithm

Validation algorithms.

Define the best fitting integer solution $ \mathbf{\check{a}} $ and second best integer solution as $ \mathbf{\check{a}}' $ ([48] Springer Handbook GNSS, ch. 23.6.4, eq. 23.79)

\begin{equation} \label{eq:eq-ambRes-val}
\begin{aligned}
  \mathbf{\check{a}}  &= \text{arg} \min_{z \in \mathbb{Z}^n} ||\mathbf{\hat{a}} - \mathbf{z}||^2_{\mathbf{Q_{\mathbf{\hat{a}}\mathbf{\hat{a}}}}} \\
  \mathbf{\check{a}}' &= \text{arg} \min_{z \in \mathbb{Z}^n, z \neq \mathbf{\check{a}}} ||\mathbf{\hat{a}} - \mathbf{z}||^2_{\mathbf{Q_{\mathbf{\hat{a}}\mathbf{\hat{a}}}}}
\end{aligned}
\end{equation}

Enumerator
None 

Do not validate the solution (always accept the integer solution, if one is found)

DifferenceTest 

Accept if (see [52] Verhagen 2006, eq. 31, see NAV::Ambiguity::differenceTest)

\begin{equation} \label{eq:eq-ambRes-diff}
  ||\mathbf{\hat{a}} - \mathbf{\check{a}}'||^2_{\mathbf{Q_{\mathbf{\hat{a}}\mathbf{\hat{a}}}}}
- ||\mathbf{\hat{a}} - \mathbf{\check{a}} ||^2_{\mathbf{Q_{\mathbf{\hat{a}}\mathbf{\hat{a}}}}} \ge c
\end{equation}

RatioTestCriticalValue 

Accept if (see [48] Springer Handbook GNSS, ch. 23.6.4, eq. 23.78 or [52] Verhagen 2006, eq. 28, 29, see NAV::Ambiguity::ratioTest)

\begin{equation} \label{eq:eq-ambRes-ratio}
\frac{||\mathbf{\hat{a}} - \mathbf{\check{a}} ||^2_{\mathbf{Q_{\mathbf{\hat{a}}\mathbf{\hat{a}}}}}}
     {||\mathbf{\hat{a}} - \mathbf{\check{a}}'||^2_{\mathbf{Q_{\mathbf{\hat{a}}\mathbf{\hat{a}}}}}} \le \mu
,\quad 0 < \mu \le 1, \text{given by the user}
\end{equation}

RatioTestFailureRate 

Accept if \eqref{eq:eq-ambRes-ratio} , but with $ \mu $ calculated from given failure rate $ P_F $ (see [53] Verhagen 2013, see NAV::Ambiguity::fixedFailureRateRatioTest)

ProjectorTest 

Accept if (see [52] Verhagen 2006, eq. 35, see NAV::Ambiguity::projectorTest)

\begin{equation} \label{eq:eq-ambRes-proj}
\left| \dfrac{(\mathbf{\check{a}}' - \mathbf{\check{a}})^T \mathbf{Q}_{\mathbf{\hat{a}}}^{-1} (\mathbf{\hat{a}} - \mathbf{\check{a}}) }
             {|| \mathbf{\check{a}}' - \mathbf{\check{a}} ||_{\mathbf{Q}_{\mathbf{\hat{a}}}}} \right| \le \mu
\end{equation}

It projects $ \mathbf{\hat{a}} - \mathbf{\check{a}} $ orthogonally on the direction of $ \mathbf{\check{a}}' - \mathbf{\check{a}} $, in the metric of $ \mathbf{Q}_{\mathbf{\hat{a}}} $

COUNT 

Amount of items in the enum.

Definition at line 78 of file AmbiguityResolution.hpp.

Field Documentation

◆ allowedFailureRateValues

std::array<double, 2> NAV::AmbiguityResolutionParameters::allowedFailureRateValues
staticconstexpr

Possible failure rates for the look-up tables.

Definition at line 127 of file AmbiguityResolution.hpp.

◆ decorrelationAlgorithm

DecorrelationAlgorithm NAV::AmbiguityResolutionParameters::decorrelationAlgorithm

Decorrelation algorithm.

Definition at line 109 of file AmbiguityResolution.hpp.

◆ partialFixing

bool NAV::AmbiguityResolutionParameters::partialFixing

Attempt partial fixing of ambiguities.

Definition at line 124 of file AmbiguityResolution.hpp.

◆ searchAlgorithm

SearchAlgorithm NAV::AmbiguityResolutionParameters::searchAlgorithm

Search algorithm.

Definition at line 111 of file AmbiguityResolution.hpp.

◆ validationAlgorithm

ValidationAlgorithm NAV::AmbiguityResolutionParameters::validationAlgorithm

Validation algorithm.

Definition at line 115 of file AmbiguityResolution.hpp.

◆ validationBootstrappedSuccessRate

bool NAV::AmbiguityResolutionParameters::validationBootstrappedSuccessRate

Validation with Bootstrapped success rate (Bootstrapped failure rate is an upper bound for the ILS failure rate)

Definition at line 113 of file AmbiguityResolution.hpp.

◆ validationRatioTestFailureRate

double NAV::AmbiguityResolutionParameters::validationRatioTestFailureRate

Failure rate for the ratio test (used to calculate µ)

Definition at line 122 of file AmbiguityResolution.hpp.

◆ validationTestCriticalValueC

double NAV::AmbiguityResolutionParameters::validationTestCriticalValueC

Critical value c for the the difference test.

Definition at line 118 of file AmbiguityResolution.hpp.

◆ validationTestCriticalValueMu

double NAV::AmbiguityResolutionParameters::validationTestCriticalValueMu

Critical value µ for the the ratio and projector test (0, 1].

Definition at line 120 of file AmbiguityResolution.hpp.


The documentation for this struct was generated from the following file: