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_type
is a valid type, representing a particle state.T::control_type
is a valid type, representing a control action to condition the motion model.
Given:
A possibly const instance
cp
ofT
.A possibly const instance
u
ofT::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
fn
ofF
.A possible const instance
s
ofS
.An instance
e
satisfying URNG requirements.
Then:
fn(s, e)
returns another sampled statess
ofS
.