From d5e3ab9bd520b1f682ad30412d7b8930746ae67f Mon Sep 17 00:00:00 2001 From: franckgaga Date: Sat, 13 Jun 2026 12:53:40 -0400 Subject: [PATCH] bench: MHE with `covestim=SteadyKalmanFilter` --- benchmark/2_bench_state_estim.jl | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/benchmark/2_bench_state_estim.jl b/benchmark/2_bench_state_estim.jl index 982aeeaa2..3b372d192 100644 --- a/benchmark/2_bench_state_estim.jl +++ b/benchmark/2_bench_state_estim.jl @@ -146,6 +146,7 @@ UNIT_ESTIM["ExtendedKalmanFilter"]["evaloutput"]["NonLinModel"] = mhe_lin_curr = MovingHorizonEstimator(linmodel, He=10, direct=true) mhe_lin_pred = MovingHorizonEstimator(linmodel, He=10, direct=false) +mhe_lin_skf = MovingHorizonEstimator(linmodel, He=10, covestim=SteadyKalmanFilter(linmodel)) mhe_nonlin_curr = MovingHorizonEstimator(nonlinmodel, He=10, direct=true) mhe_nonlin_pred = MovingHorizonEstimator(nonlinmodel, He=10, direct=false) @@ -161,6 +162,17 @@ UNIT_ESTIM["MovingHorizonEstimator"]["updatestate!"]["LinModel"]["Current form"] setup=preparestate!($mhe_lin_curr, $y, $d), samples=samples, evals=evals, seconds=seconds, ) +UNIT_ESTIM["MovingHorizonEstimator"]["preparestate!"]["LinModel"]["Constant arr. cov."] = + @benchmarkable( + preparestate!($mhe_lin_skf, $y, $d), + samples=samples, evals=evals, seconds=seconds, + ) +UNIT_ESTIM["MovingHorizonEstimator"]["updatestate!"]["LinModel"]["Constant arr. cov."] = + @benchmarkable( + updatestate!($mhe_lin_skf, $u, $y, $d), + setup=preparestate!($mhe_lin_skf, $y, $d), + samples=samples, evals=evals, seconds=seconds, + ) UNIT_ESTIM["MovingHorizonEstimator"]["preparestate!"]["LinModel"]["Prediction form"] = @benchmarkable( preparestate!($mhe_lin_pred, $y, $d),