Estimate what you can't measure. A Luenberger observer rebuilds the full state of a system from its output alone — watch the estimate chase down the truth from a wrong initial guess.
State ObserverLive
Luenberger observer · state estimation
Controls
Presets
A Luenberger observer reconstructs the full state of a mass-spring-damper from the measured position alone. It starts from a wrong guess (solid = true, dashed = estimate) and the error e = x − x̂ decays as (A − LC). Push the observer speed up to converge faster — then add noise to see why you can't just crank it.
Reading this result: Observer poles at s = −4.0 give a balanced error e-folding time of 0.25 s: the estimate converges within a few seconds while keeping the gains L = [7.6, 7.0] modest enough to tolerate noise.
Runs locally in your browser — free forever. Scale to the cloud when reality gets heavy.
★ Sign in to save this setupSave your tuned setup, or drop this simulation into your own site, docs, or course page.
How it works
A Luenberger observer runs a copy of the plant dynamics ẋ̂ = Ax̂ + Bu and corrects it with the measurement error L(y − Cx̂). Here a mass-spring-damper is driven from an initial displacement, but only its position is measured — the observer reconstructs the hidden velocity too. Because the estimation error obeys ė = (A − LC)e, choosing the gain L to place the eigenvalues of A − LC far into the left half-plane makes the estimate converge fast. The catch: those same high gains amplify measurement noise, so the 'observer speed' slider is really a speed-versus-noise tradeoff. The gain L is computed by exact 2×2 pole placement (scipy.signal.place_poles in the exported code).
✦
Ask the AI about this model
The math, the assumptions, real-world uses, or a code translation — explained for this exact simulation.
Is this Luenberger observer state estimation tool really free?▾
Yes. State Observer runs entirely in your browser using your device's own compute, so local use is free forever. You only pay Compute Tokens if you scale a job to the cloud.
Do I need to install anything?▾
No. Everything runs client-side in a modern browser — no downloads, no license, no account required to start.
Can I save or share my simulation?▾
Create a free account to save projects, and use a shareable embed or minted DOI to publish a live, interactive version anywhere.
How accurate are the results?▾
The solver uses established numerical methods, but results are for research and educational purposes and should be validated against experiment or professional review before you rely on them.