Class ErrorStateMeasurement

Inheritance Relationships

Derived Types

Class Documentation

class ErrorStateMeasurement

Abstract base class for an error-state (INS) measurement model.

Concrete subclasses own their measurement-model math and configuration (settings + error-state index mapping) and carry the measured observable(s) they compare against. Unlike Measurement, the Jacobian is taken with respect to the nav error state and depends on the nominal attitude, so the model consumes a NavErrorContext instead of a State, and there is no FilterMeasurementFunction/Filter integration (the hosting application drives the Joseph-form error-state update directly).

Subclassed by lupnt::LanderAltimeterMeasurement, lupnt::LanderCraterMeasurement, lupnt::SurfaceLansMeasurement

Public Functions

virtual ~ErrorStateMeasurement() = default
virtual MeasData Compute(const NavErrorContext &nominal, MatXd *H = nullptr) const = 0

Predict the measurement z = h(nominal), its noise covariance R, and (if H != nullptr) the Jacobian H = dh/d(error state) sized n_z x nominal.error_state_size.

Parameters:
  • nominal – Nominal nav state to linearize about.

  • H[out] If non-null, filled with the error-state measurement Jacobian.

Returns:

MeasData with value = z_pred and covariance = R.