File control/src/Observer/LuenbergerObserver.hpp#
Go to the source code of this file
Classical discrete-time Luenberger Observer
-
class LuenbergerObserver : public Observer
Public Functions
-
inline LuenbergerObserver(SP::ControlSensor sensor, const SiconosVector &xHat0)
Constructor with a TimeDiscretisation, a ControlSensor and an initial estimate of the state.
- Parameters:
sensor – the SP::ControlSensor that feed us with measurements
xHat0 – the initial guess for the state
-
inline LuenbergerObserver(SP::ControlSensor sensor, const SiconosVector &xHat0, SP::SiconosMatrix C, SP::SiconosMatrix L)
Constructor with all the data.
- Parameters:
sensor – the ControlSensor that feeds the Observer
xHat0 – the initial guess for the state
C – the observation matrix
L – the gain matrix
-
virtual void process()
Compute the new control law at each event.
-
virtual void initialize(const NonSmoothDynamicalSystem &nsds, const Simulation &s)
Initialization.
- Parameters:
nsds – current nonsmooth dynamical system
s – current simulation setup
-
inline void setLPtr(SP::SiconosMatrix L)
Set the L matrix.
- Parameters:
L – the new L matrix
-
inline void setCPtr(SP::SiconosMatrix C)
Set the C matrix.
- Parameters:
C – the new C matrix
Private Functions
-
ACCEPT_SERIALIZATION(LuenbergerObserver)#
-
inline LuenbergerObserver()#
default constructor
-
inline LuenbergerObserver(SP::ControlSensor sensor, const SiconosVector &xHat0)