class

CrySpace::LuenbergerObserver

Inherits Reference < Object

Constructors

new(sys : StateSpace, l : Float64Tensor, x0_hat : Float64Tensor | Nil = nil)
Source

Instance methods

l=(l : Float64Tensor)
Source
sys=(sys : StateSpace)
Source
update_continuous(y : Float64Tensor, u : Float64Tensor, dt : Float64) : Float64Tensor

Continuous-time update using a single RK4 step of size dt: dx_hat/dt = A * x_hat + B * u + L * (y - C * x_hat - D * u)

Source
update_discrete(y : Float64Tensor, u : Float64Tensor) : Float64Tensor

Discrete-time update: x_hat_{k+1} = A * x_hat_k + B * u_k + L * (y_k - C * x_hat_k - D * u_k)

Source
x_hat
Source
x_hat=(x_hat : Float64Tensor)
Source