Ginan
Loading...
Searching...
No Matches
spp.cpp File Reference

Data Structures

struct  smoothControl
 

Functions

Architecture SPP__ ()
 
bool smoothedPsudo (Trace &trace, GObs &obs, double &meaP, double meaL, double &varP, double varL, bool update, bool LLI)
 Carrier-smoothing of code pseudoranges Ref: https://gssc.esa.int/navipedia/index.php/Carrier-smoothing_of_code_pseudoranges (eq (2))
 
bool prange (Trace &trace, GObs &obs, E_IonoMode &ionoMode, E_FType &ft_A, E_FType &ft_B, double &range, double &measVar, double &bias, double &biasVar, KFState *kfState_ptr, bool smooth=false)
 Calculate pseudorange and code bias correction.
 
bool validateDOP (ObsList &obsList, double elevationMaskDeg, Dops *dops_ptr=nullptr)
 Validate Dilution of Precision of solution.
 
void printFailures (const string &id, ObsList &obsList)
 
void removeUnmeasuredStates (KFState &kfState, KFMeasEntryList &kfMeasEntryList)
 
E_Solution estpos (Trace &trace, ObsList &obsList, Solution &sol, string id, KFState *kfState_ptr=nullptr, string description="SPP", bool inRaim=false)
 Estimate receiver position and clock biases using pseudorange measurements.
 
bool raim (Trace &trace, ObsList &obsList, Solution &sol, string id, KFState *kfState_ptr=nullptr)
 Receiver autonomous integrity monitoring (RAIM) failure detection and exclution Note: This is a simplified version of RAIM algorithm that tries to exclude multiple outliers iteratively instead of checking all possible subsets when more than one outliers present.
 
void spp (Trace &trace, Receiver &rec, KFState *kfState_ptr, KFState *remote_ptr)
 Compute receiver position, clock biases by single-point positioning with pseudorange measurements.
 

Function Documentation

◆ estpos()

E_Solution estpos ( Trace & trace,
ObsList & obsList,
Solution & sol,
string id,
KFState * kfState_ptr = nullptr,
string description = "SPP",
bool inRaim = false )

Estimate receiver position and clock biases using pseudorange measurements.

Parameters
traceTrace file to output to
obsListList of observations for this epoch
solSolution object containing initial conditions and results
idId of receiver
kfState_ptrOptional kfstate pointer to retrieve ppp values from
descriptionDescription to prepend to clarify outputs
inRaimIs in RAIM
Here is the call graph for this function:
Here is the caller graph for this function:

◆ prange()

bool prange ( Trace & trace,
GObs & obs,
E_IonoMode & ionoMode,
E_FType & ft_A,
E_FType & ft_B,
double & range,
double & measVar,
double & bias,
double & biasVar,
KFState * kfState_ptr,
bool smooth = false )

Calculate pseudorange and code bias correction.

Parameters
traceTrace file to output to
obsObservation to calculate pseudorange for
ionoModeIonospheric correction mode
ft_APrimary frequency used for calculating pseudorange
ft_BSecondary frequency used for calculating pseudorange
rangePseudorange value output
measVarPseudorange variance output
biasBias value output
biasVarBias variance output
kfState_ptrOptional kfstate to retrieve biases from
smoothUpdate smoothing filter
Here is the call graph for this function:
Here is the caller graph for this function:

◆ printFailures()

void printFailures ( const string & id,
ObsList & obsList )
Parameters
idId of receiver
obsListList of observations for this epoch
Here is the caller graph for this function:

◆ raim()

bool raim ( Trace & trace,
ObsList & obsList,
Solution & sol,
string id,
KFState * kfState_ptr = nullptr )

Receiver autonomous integrity monitoring (RAIM) failure detection and exclution Note: This is a simplified version of RAIM algorithm that tries to exclude multiple outliers iteratively instead of checking all possible subsets when more than one outliers present.

Parameters
traceTrace file to output to
obsListList of observations for this epoch
solSolution object containing initial conditions and results
idId of receiver
Here is the call graph for this function:
Here is the caller graph for this function:

◆ removeUnmeasuredStates()

void removeUnmeasuredStates ( KFState & kfState,
KFMeasEntryList & kfMeasEntryList )
Parameters
kfStateFilter to remove states from
kfMeasEntryListList of measurements for this filter iteration
Here is the call graph for this function:
Here is the caller graph for this function:

◆ smoothedPsudo()

bool smoothedPsudo ( Trace & trace,
GObs & obs,
double & meaP,
double meaL,
double & varP,
double varL,
bool update,
bool LLI )

Carrier-smoothing of code pseudoranges Ref: https://gssc.esa.int/navipedia/index.php/Carrier-smoothing_of_code_pseudoranges (eq (2))

Parameters
obsObservation to calculate pseudorange for
Here is the call graph for this function:
Here is the caller graph for this function:

◆ spp()

void spp ( Trace & trace,
Receiver & rec,
KFState * kfState_ptr,
KFState * remote_ptr )

Compute receiver position, clock biases by single-point positioning with pseudorange measurements.

Parameters
traceTrace file to output to
recReceiver to perform SPP for
kfState_ptrOptional pointer to filter to take ephemerides from
remote_ptrOptional pointer to filter to take ephemerides from
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SPP__()

Architecture SPP__ ( )
Here is the caller graph for this function:

◆ validateDOP()

bool validateDOP ( ObsList & obsList,
double elevationMaskDeg,
Dops * dops_ptr = nullptr )

Validate Dilution of Precision of solution.

Parameters
obsListList of observations for this epoch
elevationMaskDegElevation mask
dops_ptrOptional pointer to output for DOP
Here is the call graph for this function:
Here is the caller graph for this function: