Beluga named requirements: MotionModel
Requirements for a motion model to be used in a Beluga ParticleFilter.
Requirements
A type T satisfies the MotionModel requirements if the following is satisfied:
T::state_typeis a valid type, representing a particle state.T::control_typeis a valid type, representing a control action to condition the motion model.
Given:
A possibly const instance
cpofT.A possibly const instance
uofT::control_type(or convertible typeU).
Then:
cp(u)returns a callable satisfying Beluga named requirements: StateSamplingFunction forT::state_type.
Beluga named requirements: StateSamplingFunction
Requirements for a callable to sample a motion distribution when propagating particle states in a Beluga ParticleFilter.
Requirements
A type F satisfies the StateSamplingFunction requirements for some state type S if:
Given:
A possibly const instance
fnofF.A possible const instance
sofS.An instance
esatisfying URNG requirements.
Then:
fn(s, e)returns another sampled statessofS.