Class GnssMeasurement¶
Defined in File gnss_measurement.h
Class Documentation¶
-
class GnssMeasurement¶
Public Functions
-
GnssMeasurement(const std::vector<GnssTransmission> transmissions)¶
-
GnssMeasurement ExtractSignal(std::string freq_label)¶
-
inline int GetTrackedSatelliteNum() const¶
-
inline std::vector<int> GetTxIds() const¶
-
VecX ComputeGnssPseudorange(VecX r_rx, Real dt_rx, bool with_noise = false, int seed = 0)¶
Compute the pseudorange measurement.
-
VecX ComputeGnssPseudorangerate(VecX r_rx, VecX v_rx, Real dt_rx_dot, bool with_noise = false, int seed = 0)¶
-
VecX ComputeGnssCarrierPhase(VecX r_rx, Real dt_rx, VecX N_rx, bool with_noise = false, int seed = 0)¶
-
VecX GetGnssMeasurement(std::vector<GnssMeasurementType> meas_type, bool with_noise = false, int seed = 0)¶
Get the Gnss Measurement for the observed signal.
- Parameters:
meas_type – vector of measurement types
with_noise – use noise
seed – random seed
- Returns:
VecX
-
VecX GetPseudorange(bool with_noise = false, int seed = 0)¶
Get the Pseudorange for the observed signal.
- Parameters:
with_noise – use noise
seed – random seed
- Returns:
VecX
-
VecX GetPseudorangerate(bool with_noise = false, int seed = 0)¶
Get the Pseudorange rate for the observed signal.
- Parameters:
with_noise – use noise
seed – random seed
- Returns:
VecX
-
VecX GetCarrierPhase(bool with_noise = false, int seed = 0)¶
Get the Carrier Phase for the observed signal.
- Parameters:
with_noise – use noise
seed – random seed
- Returns:
VecX
-
VecX GetPredictedGnssMeasurement(double epoch, Vec6 rv_pred, Vec2 clk_pred, VecX N_pred, MatXd &H_gnss, std::vector<GnssMeasurementType> meas_type, Frame frame_in = Frame::MOON_CI)¶
Get the Gnss Measurement for the predicted state This method is used for the measurement update step in the filter.
- Parameters:
epoch – epoch time
rv_pred – predicted position and velocity
clk_pred – predicted clock offset and drift
frame_in – coordinate system of the input state
-
VecX GetPredictedPseudorange(double epoch, Vec6 rv_pred, Vec2 clk_pred, MatXd &H_pr, Frame frame_in = Frame::MOON_CI)¶
Get the Pseudorange for the predicted state.
- Parameters:
epoch – epoch time
rv_pred – predicted position and velocity
clk_pred – predicted clock offset and drift
H_pr – Jacobian of the measurement function
frame_in – coordinate system of the input state
- Returns:
VecX
-
VecX GetPredictedPseudorangeAnalyticalJacobian(double epoch, Vec6 rv_pred, Vec2 clk_pred, MatXd &H_pr, Frame frame_in = Frame::MOON_CI)¶
Get the Pseudorange Analytical Jacobian object.
- Parameters:
epoch – epoch time
rv_pred – predicted position and velocity
clk_pred – predicted clock offset and drift
H_pr – Jacobian of the measurement function
frame_in – coordinate system of the input state
- Returns:
* VecX
-
VecX GetPredictedPseudorangerate(double epoch, Vec6 rv_pred, Vec2 clk_pred, MatXd &H_prr, Frame frame_in = Frame::MOON_CI)¶
Get the Pseudorange Rate object.
- Parameters:
epoch – epoch time
rv_pred – predicted position and velocity
clk_pred – predicted clock offset and drift
H_prr – Jacobian of the measurement function
frame_in – coordinate system of the input state
- Returns:
VecX
-
VecX GetPredictedCarrierPhase(double epoch, Vec6 rv_pred, Vec2 clk_pred, VecX N_pred, MatXd &H_cp, Frame frame_in = Frame::MOON_CI)¶
Get the Carrier Phase object.
- Parameters:
epoch – epoch time
rv_pred – predicted position and velocity
clk_pred – predicted clock offset and drift
H_cp – Jacobian of the measurement function
frame_in – coordinate system of the input state
- Returns:
VecX
-
VecXd GetGnssNoiseStdVec(std::vector<GnssMeasurementType> meas_type)¶
-
inline void SetGnssReceiverParam(GnssReceiverParam gnssr_param_input)¶
-
double ComputeGnssPseudorangeNoise(double CN0)¶
Compute the pseudorange noise using thermal noise in DLL Reference: Reference: “Understanding GPS”, p195.
- Parameters:
CN0 – Carrier‐to‐noise density [dB‐Hz]
- Returns:
double Pseudorange noise [km]
-
double ComputeGnssPseudorangerateNoise(double CN0, double lambda)¶
Compute the pseudorange rate noise using thermal noise in FLL Reference: “Understanding GPS”, p192.
- Parameters:
CN0 – Carrier‐to‐noise density [dB‐Hz]
- Returns:
double Pseudorange rate noise [km/s]
-
double ComputeGnssCarrierPhaseNoise(double CN0, double lambda)¶
Compute the carrier phase noise using thermal noise in PLL Reference: “Understanding GPS”, p185.
- Parameters:
CN0 – Carrier‐to‐noise density [dB‐Hz]
- Returns:
double Carrier phase noise [cycles]
-
GnssMeasurement(const std::vector<GnssTransmission> transmissions)¶