Class JointState¶
Defined in File joint_state.h
Class Documentation¶
-
class JointState¶
Concatenation of multiple
State/Dynamics/ParamStatetriples (e.g. one per agent or per orbit+clock sub-state) into a single combined state vector, dynamics function, and process-noise function for use by aFilter(EKF/UKF/batch least squares).Built up incrementally via
Add()(one call per sub-state), then queried viaGetStmState/GetDynamicsFunction/GetProcessNoiseFunctionto obtain the propagation function and initial state/STM the filter integrates each step. Per-parameterEstType(ESTIMATED / CONSIDERED / FIXED) and first-order Gauss-Markov time constants (tauq) control which parameters appear in the filter’s state-transition matrix and how their process noise evolves.Public Functions
-
inline int GetSize() const¶
-
inline int GetStateSize() const¶
-
inline int GetParamSize() const¶
-
inline int GetStmSize() const¶
-
inline int GetEstimatedParamSize() const¶
-
inline int GetConsideredParamSize() const¶
-
inline int GetFixedParamSize() const¶
-
ParamState GetParams() const¶
-
void Add(const State &state, Ptr<Dynamics> &&dynamics, Ptr<ProcessNoiseFunction> &&proc_noise = nullptr, const ParamState ¶m = ParamState(0), std::vector<EstType> est_types = {}, std::vector<std::pair<double, double>> tauq = {})¶
Add a new state to the joint state.
- Parameters:
state – The state to add
dynamics – The dynamics associated with the state
proc_noise – The process noise function associated with the state
param – The parameters associated with the state
est_types – The estimation types for the parameters
tauq – The time constants and sigmas for the parameters (first-order Gauss-Markov)
-
FilterDynamicsFunction GetDynamicsFunction()¶
-
ProcessNoiseFunction GetProcessNoiseFunction()¶
-
inline int GetSize() const¶