Skip to content

added: stochastic state defects as linear equality constraints for all CollocationMethods#335

Open
franckgaga wants to merge 19 commits intomainfrom
colloc_lin_defect
Open

added: stochastic state defects as linear equality constraints for all CollocationMethods#335
franckgaga wants to merge 19 commits intomainfrom
colloc_lin_defect

Conversation

@franckgaga
Copy link
Member

@franckgaga franckgaga commented Mar 9, 2026

The defect of the stochastic state are now treated as linear equality constraint for all CollocationMethods.

  1. It reduces the number of nonlinear equality constraints, so potential performance improvements.
  2. The methods for the nonlinear equality constraint function are now simpler. It also increases code re-use across the various methods.

Let's benchmark the differences. It it proves substantial, I can also implement the same thing for MultipleShooting and NonLinModel. Let's see.

@codecov-commenter
Copy link

codecov-commenter commented Mar 10, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.59%. Comparing base (5396fbc) to head (075f955).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #335   +/-   ##
=======================================
  Coverage   98.58%   98.59%           
=======================================
  Files          27       27           
  Lines        5176     5189   +13     
=======================================
+ Hits         5103     5116   +13     
  Misses         73       73           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions
Copy link

github-actions bot commented Mar 10, 2026

Benchmark Results (Julia v1)

Time benchmarks
main f26d184... main / f26d184...
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/DAQP/SingleShooting 5.45 ± 0.5 ms 5.44 ± 0.54 ms 1 ± 0.14
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/Ipopt/MultipleShooting 0.311 ± 0.0095 s 0.308 ± 0.0086 s 1.01 ± 0.042
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/Ipopt/SingleShooting 0.216 ± 0.017 s 0.216 ± 0.016 s 0.999 ± 0.11
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/OSQP/MultipleShooting 9.2 ± 0.6 ms 9.32 ± 0.57 ms 0.987 ± 0.088
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/OSQP/SingleShooting 1.78 ± 0.081 ms 1.82 ± 0.08 ms 0.977 ± 0.061
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/DAQP/SingleShooting 5.39 ± 0.47 ms 5.38 ± 0.52 ms 1 ± 0.13
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/Ipopt/MultipleShooting 0.273 ± 0.0045 s 0.268 ± 0.0035 s 1.02 ± 0.021
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/Ipopt/SingleShooting 0.229 ± 0.0054 s 0.227 ± 0.002 s 1.01 ± 0.025
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/OSQP/MultipleShooting 6.39 ± 0.44 ms 6.49 ± 0.47 ms 0.985 ± 0.098
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/OSQP/SingleShooting 1.89 ± 0.077 ms 1.93 ± 0.07 ms 0.977 ± 0.053
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/DAQP/SingleShooting 10.2 ± 1.7 ms 10.2 ± 1.7 ms 0.999 ± 0.23
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/Ipopt/MultipleShooting 0.321 ± 0.089 s 0.324 ± 0.093 s 0.991 ± 0.39
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/Ipopt/SingleShooting 0.158 ± 0.0011 s 0.154 ± 0.00063 s 1.02 ± 0.0085
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/OSQP/MultipleShooting 0.118 ± 0.025 s 0.111 ± 0.021 s 1.06 ± 0.31
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/OSQP/SingleShooting 13.7 ± 1.8 ms 13.5 ± 1.8 ms 1.02 ± 0.19
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/MultipleShooting 0.728 ± 0.0016 s 0.714 ± 0.0061 s 1.02 ± 0.009
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/MultipleShooting (Hessian) 0.649 ± 0.0051 s 0.641 ± 0.0037 s 1.01 ± 0.0099
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/SingleShooting 1.86 ± 0.0057 s 1.8 ± 0.0091 s 1.04 ± 0.0061
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/TrapezoidalCollocation 0.49 ± 0.0029 s 0.47 ± 0.0015 s 1.04 ± 0.0071
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/TrapezoidalCollocation (Hessian) 0.493 ± 0.0045 s 0.47 ± 0.0043 s 1.05 ± 0.014
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/MultipleShooting 0.368 ± 0.0014 s 0.38 ± 0.0016 s 0.968 ± 0.0055
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/MultipleShooting (Hessian) 0.439 ± 0.00082 s 0.431 ± 0.0024 s 1.02 ± 0.0059
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/OrthogonalCollocation 0.561 ± 0.0016 s 0.583 ± 0.0012 s 0.964 ± 0.0035
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/OrthogonalCollocation (Hessian) 0.559 ± 0.001 s 0.586 ± 0.0025 s 0.954 ± 0.0044
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/SingleShooting 0.531 ± 0.0039 s 0.567 ± 0.0035 s 0.936 ± 0.009
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/SingleShooting (Hessian) 0.177 ± 0.00049 s 0.186 ± 0.0012 s 0.955 ± 0.0065
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/TrapezoidalCollocation 0.352 ± 0.0034 s 0.32 ± 0.0026 s 1.1 ± 0.014
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/TrapezoidalCollocation (Hessian) 0.395 ± 0.0026 s 0.311 ± 0.002 s 1.27 ± 0.012
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/MadNLP/SingleShooting (Hessian) 0.0811 ± 0.0017 s 0.0855 ± 0.00033 s 0.948 ± 0.02
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Uno/MultipleShooting (Hessian) 0.154 ± 0.0018 s 0.152 ± 0.001 s 1.01 ± 0.014
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/MultipleShooting 0.355 ± 0.0018 s 0.345 ± 0.0039 s 1.03 ± 0.013
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/MultipleShooting (Hessian) 0.391 ± 0.0037 s 0.385 ± 0.0035 s 1.02 ± 0.013
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/MultipleShooting (threaded) 0.376 ± 0.0041 s 0.364 ± 0.0032 s 1.03 ± 0.014
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/OrthogonalCollocation 0.634 ± 0.0053 s 0.598 ± 0.0052 s 1.06 ± 0.013
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/OrthogonalCollocation (Hessian) 1.77 ± 0.035 s 1.83 ± 0.02 s 0.971 ± 0.022
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/SingleShooting 0.546 ± 0.0023 s 0.509 ± 0.0039 s 1.07 ± 0.0093
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/SingleShooting (Hessian) 0.171 ± 0.00088 s 0.169 ± 0.00083 s 1.01 ± 0.0072
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/TrapezoidalCollocation 0.339 ± 0.0012 s 0.319 ± 0.0017 s 1.06 ± 0.0067
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/TrapezoidalCollocation (Hessian) 0.305 ± 0.0048 s 0.351 ± 0.0029 s 0.868 ± 0.015
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/TrapezoidalCollocation (threaded) 0.364 ± 0.0032 s 0.342 ± 0.0021 s 1.06 ± 0.011
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/MadNLP/MultipleShooting (Hessian) 0.257 ± 0.0023 s 0.253 ± 0.0021 s 1.02 ± 0.012
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/MadNLP/SingleShooting (Hessian) 0.0774 ± 0.00061 s 0.0763 ± 0.00049 s 1.01 ± 0.01
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Uno/MultipleShooting (Hessian) 0.138 ± 0.0021 s 0.136 ± 0.0011 s 1.02 ± 0.018
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Uno/OrthogonalCollocation (Hessian) 0.716 ± 0.02 s 0.625 ± 0.017 s 1.15 ± 0.045
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/DAQP/Current form 0.0389 ± 0.0013 s 0.0387 ± 0.0022 s 1.01 ± 0.066
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/DAQP/Prediction form 0.0322 ± 0.0099 s 31.5 ± 7.3 ms 1.02 ± 0.4
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/Ipopt/Current form 0.178 ± 0.039 s 0.173 ± 0.04 s 1.03 ± 0.33
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/Ipopt/Prediction form 0.155 ± 0.032 s 0.159 ± 0.031 s 0.977 ± 0.28
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/OSQP/Current form 0.0357 ± 0.0051 s 0.032 ± 0.0042 s 1.12 ± 0.22
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/OSQP/Prediction form 27.7 ± 5.8 ms 25.4 ± 2.9 ms 1.09 ± 0.26
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/Ipopt/Current form 0.0883 ± 0.00038 s 0.09 ± 0.00041 s 0.981 ± 0.0062
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/Ipopt/Current form (Hessian) 0.0878 ± 0.00034 s 0.0889 ± 0.00032 s 0.987 ± 0.0052
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/Ipopt/Prediction form 0.0658 ± 0.00027 s 0.0672 ± 0.00041 s 0.979 ± 0.0072
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/Ipopt/Prediction form (Hessian) 0.0857 ± 0.00038 s 0.0873 ± 0.00028 s 0.981 ± 0.0054
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/MadNLP/Current form (Hessian) 0.0489 ± 0.00081 s 0.0493 ± 0.00046 s 0.993 ± 0.019
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/MadNLP/Prediction form (Hessian) 0.0453 ± 0.00061 s 0.0457 ± 0.00022 s 0.991 ± 0.014
UNIT TESTS/PredictiveController/ExplicitMPC/moveinput! 4.16 ± 0.04 μs 3.61 ± 0.16 μs 1.15 ± 0.053
UNIT TESTS/PredictiveController/LinMPC/getinfo! 0.11 ± 0.0025 ms 0.11 ± 0.0022 ms 1 ± 0.031
UNIT TESTS/PredictiveController/LinMPC/moveinput!/MultipleShooting 0.107 ± 0.00096 ms 0.105 ± 0.001 ms 1.02 ± 0.013
UNIT TESTS/PredictiveController/LinMPC/moveinput!/SingleShooting 16.8 ± 0.29 μs 16.5 ± 0.33 μs 1.02 ± 0.027
UNIT TESTS/PredictiveController/NonLinMPC/getinfo!/LinModel 0.197 ± 0.0094 ms 0.196 ± 0.0087 ms 1.01 ± 0.066
UNIT TESTS/PredictiveController/NonLinMPC/getinfo!/NonLinModel 0.228 ± 0.013 ms 0.226 ± 0.012 ms 1.01 ± 0.077
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/LinModel/MultipleShooting 1.83 ± 0.27 ms 1.85 ± 0.26 ms 0.992 ± 0.2
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/LinModel/SingleShooting 1.24 ± 0.025 ms 1.26 ± 0.023 ms 0.984 ± 0.027
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/MultipleShooting 2.42 ± 0.75 ms 2.43 ± 0.76 ms 0.996 ± 0.44
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/MultipleShootingHessian 2.26 ± 0.074 ms 2.27 ± 0.1 ms 0.994 ± 0.055
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/OrthogonalCollocation 2.11 ± 0.21 ms 2.08 ± 0.21 ms 1.02 ± 0.14
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/OrthogonalCollocationHessian 3.07 ± 0.13 ms 3 ± 0.13 ms 1.02 ± 0.064
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/SingleShooting 1.25 ± 0.025 ms 1.28 ± 0.022 ms 0.979 ± 0.025
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/SingleShootingHessian 1.25 ± 0.025 ms 1.28 ± 0.023 ms 0.979 ± 0.026
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/TrapezoidalCollocation 1.61 ± 0.15 ms 1.59 ± 0.15 ms 1.02 ± 0.14
UNIT TESTS/SimModel/LinModel/evaloutput 0.17 ± 0.009 μs 0.14 ± 0.001 μs 1.21 ± 0.065
UNIT TESTS/SimModel/LinModel/updatestate! 0.23 ± 0.001 μs 0.201 ± 0.011 μs 1.14 ± 0.063
UNIT TESTS/SimModel/NonLinModel/evaloutput 0.421 ± 0.001 μs 0.421 ± 0.009 μs 1 ± 0.022
UNIT TESTS/SimModel/NonLinModel/linearize! 2.05 ± 0.021 μs 2.03 ± 0.02 μs 1.01 ± 0.014
UNIT TESTS/SimModel/NonLinModel/updatestate! 0.481 ± 0 μs 0.491 ± 0.01 μs 0.98 ± 0.02
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/evaloutput/LinModel 0.581 ± 0.01 μs 0.561 ± 0 μs 1.04 ± 0.018
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/evaloutput/NonLinModel 1.85 ± 0.011 μs 1.8 ± 0.02 μs 1.03 ± 0.013
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/preparestate!/LinModel 0.27 ± 0.001 μs 0.261 ± 0.01 μs 1.03 ± 0.04
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/preparestate!/NonLinModel 1.41 ± 0.01 μs 1.42 ± 0.011 μs 0.992 ± 0.01
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/updatestate!/LinModel 3.94 ± 0.07 μs 4.07 ± 0.089 μs 0.968 ± 0.027
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/updatestate!/NonLinModel 8.95 ± 0.08 μs 8.79 ± 0.1 μs 1.02 ± 0.015
UNIT TESTS/StateEstimator/InternalModel/evaloutput/LinModel 0.24 ± 0.01 μs 0.231 ± 0.01 μs 1.04 ± 0.062
UNIT TESTS/StateEstimator/InternalModel/evaloutput/NonLinModel 0.571 ± 0.01 μs 0.591 ± 0.01 μs 0.966 ± 0.024
UNIT TESTS/StateEstimator/InternalModel/preparestate!/LinModel 0.311 ± 0.001 μs 0.311 ± 0.001 μs 1 ± 0.0045
UNIT TESTS/StateEstimator/InternalModel/preparestate!/NonLinModel 0.732 ± 0.01 μs 0.741 ± 0.01 μs 0.988 ± 0.019
UNIT TESTS/StateEstimator/InternalModel/updatestate!/LinModel 0.441 ± 0.001 μs 0.441 ± 0.01 μs 1 ± 0.023
UNIT TESTS/StateEstimator/InternalModel/updatestate!/NonLinModel 1.21 ± 0.01 μs 1.21 ± 0.01 μs 1 ± 0.012
UNIT TESTS/StateEstimator/KalmanFilter/evaloutput 0.27 ± 0.01 μs 0.26 ± 0.001 μs 1.04 ± 0.039
UNIT TESTS/StateEstimator/KalmanFilter/preparestate! 0.14 ± 0.001 μs 0.131 ± 0.01 μs 1.07 ± 0.082
UNIT TESTS/StateEstimator/KalmanFilter/updatestate! 2.58 ± 0.039 μs 2.5 ± 0.029 μs 1.03 ± 0.02
UNIT TESTS/StateEstimator/Luenberger/evaloutput 0.231 ± 0.01 μs 0.24 ± 0.01 μs 0.963 ± 0.058
UNIT TESTS/StateEstimator/Luenberger/preparestate! 0.26 ± 0.001 μs 0.261 ± 0.01 μs 0.996 ± 0.038
UNIT TESTS/StateEstimator/Luenberger/updatestate! 0.361 ± 0.01 μs 0.341 ± 0.001 μs 1.06 ± 0.029
UNIT TESTS/StateEstimator/MovingHorizonEstimator/getinfo!/LinModel 0.177 ± 0.015 ms 0.173 ± 0.014 ms 1.02 ± 0.12
UNIT TESTS/StateEstimator/MovingHorizonEstimator/getinfo!/NonLinModel 0.342 ± 0.018 ms 0.336 ± 0.018 ms 1.02 ± 0.075
UNIT TESTS/StateEstimator/MovingHorizonEstimator/preparestate!/LinModel/Current form 3.37 ± 0.13 ms 3.36 ± 0.13 ms 1 ± 0.054
UNIT TESTS/StateEstimator/MovingHorizonEstimator/preparestate!/LinModel/Prediction form 0.481 ± 0 μs 0.481 ± 0 μs 1 ± 0
UNIT TESTS/StateEstimator/MovingHorizonEstimator/preparestate!/NonLinModel/Current form 0.307 ± 0.017 ms 0.306 ± 0.017 ms 1.01 ± 0.079
UNIT TESTS/StateEstimator/MovingHorizonEstimator/preparestate!/NonLinModel/Prediction form 1.32 ± 0.011 μs 1.33 ± 0.011 μs 0.992 ± 0.012
UNIT TESTS/StateEstimator/MovingHorizonEstimator/updatestate!/LinModel/Current form 6.75 ± 1.6 μs 6.06 ± 1.3 μs 1.11 ± 0.35
UNIT TESTS/StateEstimator/MovingHorizonEstimator/updatestate!/LinModel/Prediction form 3 ± 0.13 ms 2.91 ± 0.089 ms 1.03 ± 0.054
UNIT TESTS/StateEstimator/MovingHorizonEstimator/updatestate!/NonLinModel/Current form 16.3 ± 0.35 μs 16.3 ± 0.44 μs 1 ± 0.035
UNIT TESTS/StateEstimator/MovingHorizonEstimator/updatestate!/NonLinModel/Prediction form 0.325 ± 0.018 ms 0.328 ± 0.018 ms 0.99 ± 0.076
UNIT TESTS/StateEstimator/SteadyKalmanFilter/evaloutput 0.261 ± 0.01 μs 0.26 ± 0.001 μs 1 ± 0.039
UNIT TESTS/StateEstimator/SteadyKalmanFilter/preparestate! 0.3 ± 0.01 μs 0.29 ± 0.01 μs 1.03 ± 0.05
UNIT TESTS/StateEstimator/SteadyKalmanFilter/updatestate! 0.371 ± 0.01 μs 0.371 ± 0.001 μs 1 ± 0.027
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/evaloutput/LinModel 0.31 ± 0.001 μs 0.301 ± 0.001 μs 1.03 ± 0.0048
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/evaloutput/NonLinModel 0.922 ± 0.01 μs 0.922 ± 0.01 μs 1 ± 0.015
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/preparestate!/LinModel 3.64 ± 0.05 μs 3.63 ± 0.03 μs 1 ± 0.016
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/preparestate!/NonLinModel 4.89 ± 0.04 μs 4.87 ± 0.031 μs 1 ± 0.01
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/updatestate!/LinModel 3.51 ± 0.03 μs 3.58 ± 0.04 μs 0.98 ± 0.014
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/updatestate!/NonLinModel 6.21 ± 0.041 μs 6.56 ± 0.071 μs 0.946 ± 0.012
time_to_load 6.16 ± 0.079 s 5.72 ± 0.024 s 1.08 ± 0.015
Memory benchmarks
main f26d184... main / f26d184...
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/DAQP/SingleShooting 0.0424 M allocs: 1.71 MB 0.0424 M allocs: 1.71 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/Ipopt/MultipleShooting 0.162 M allocs: 8.9 MB 0.162 M allocs: 8.9 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/Ipopt/SingleShooting 0.0536 M allocs: 2.38 MB 0.0536 M allocs: 2.38 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/OSQP/MultipleShooting 0.0758 M allocs: 1.95 MB 0.0758 M allocs: 1.95 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/With feedforward/OSQP/SingleShooting 7.85 k allocs: 0.249 MB 7.85 k allocs: 0.249 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/DAQP/SingleShooting 0.0423 M allocs: 1.7 MB 0.0423 M allocs: 1.7 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/Ipopt/MultipleShooting 0.127 M allocs: 7.07 MB 0.127 M allocs: 7.07 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/Ipopt/SingleShooting 0.0553 M allocs: 2.42 MB 0.0553 M allocs: 2.42 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/OSQP/MultipleShooting 0.0532 M allocs: 1.39 MB 0.0532 M allocs: 1.39 MB 1
CASE STUDIES/PredictiveController/CSTR/LinMPC/Without feedforward/OSQP/SingleShooting 7.7 k allocs: 0.243 MB 7.7 k allocs: 0.243 MB 1
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/DAQP/SingleShooting 0.115 M allocs: 6.25 MB 0.114 M allocs: 6.25 MB 1
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/Ipopt/MultipleShooting 4.65 M allocs: 0.251 GB 4.65 M allocs: 0.251 GB 1
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/Ipopt/SingleShooting 0.115 M allocs: 6.67 MB 0.115 M allocs: 6.67 MB 1
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/OSQP/MultipleShooting 4.69 M allocs: 0.255 GB 4.69 M allocs: 0.255 GB 1
CASE STUDIES/PredictiveController/Pendulum/LinMPC/Successive linearization/OSQP/SingleShooting 0.126 M allocs: 7.8 MB 0.126 M allocs: 7.8 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/MultipleShooting 0.351 M allocs: 19.7 MB 0.351 M allocs: 19.7 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/MultipleShooting (Hessian) 0.862 M allocs: 0.0791 GB 0.862 M allocs: 0.0791 GB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/SingleShooting 0.353 M allocs: 16.7 MB 0.353 M allocs: 16.7 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/TrapezoidalCollocation 1.18 M allocs: 0.079 GB 1.19 M allocs: 0.0798 GB 0.99
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Custom constraints/Ipopt/TrapezoidalCollocation (Hessian) 1.18 M allocs: 0.079 GB 1.19 M allocs: 0.0798 GB 0.99
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/MultipleShooting 0.267 M allocs: 14.7 MB 0.267 M allocs: 14.7 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/MultipleShooting (Hessian) 0.633 M allocs: 0.0603 GB 0.633 M allocs: 0.0603 GB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/OrthogonalCollocation 1.49 M allocs: 0.125 GB 1.49 M allocs: 0.125 GB 0.994
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/OrthogonalCollocation (Hessian) 1.49 M allocs: 0.125 GB 1.49 M allocs: 0.125 GB 0.994
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/SingleShooting 0.0951 M allocs: 3.9 MB 0.0951 M allocs: 3.9 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/SingleShooting (Hessian) 0.0772 M allocs: 4.85 MB 0.0772 M allocs: 4.85 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/TrapezoidalCollocation 0.376 M allocs: 19.7 MB 0.358 M allocs: 18.7 MB 1.05
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Ipopt/TrapezoidalCollocation (Hessian) 1.07 M allocs: 0.0794 GB 0.835 M allocs: 0.0584 GB 1.36
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/MadNLP/SingleShooting (Hessian) 0.114 M allocs: 11 MB 0.114 M allocs: 11 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Economic/Uno/MultipleShooting (Hessian) 0.265 M allocs: 23.7 MB 0.265 M allocs: 23.7 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/MultipleShooting 0.226 M allocs: 12.2 MB 0.226 M allocs: 12.2 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/MultipleShooting (Hessian) 0.647 M allocs: 0.0542 GB 0.647 M allocs: 0.0542 GB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/MultipleShooting (threaded) 0.244 M allocs: 21 MB 0.244 M allocs: 20.9 MB 1.01
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/OrthogonalCollocation 1.53 M allocs: 0.129 GB 1.51 M allocs: 0.127 GB 1.02
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/OrthogonalCollocation (Hessian) 5.4 M allocs: 0.567 GB 6.02 M allocs: 0.661 GB 0.859
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/SingleShooting 0.0741 M allocs: 3 MB 0.0741 M allocs: 3 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/SingleShooting (Hessian) 0.0768 M allocs: 4.81 MB 0.0768 M allocs: 4.81 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/TrapezoidalCollocation 0.317 M allocs: 16.4 MB 0.321 M allocs: 16.6 MB 0.985
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/TrapezoidalCollocation (Hessian) 0.879 M allocs: 0.0547 GB 1.15 M allocs: 0.0745 GB 0.734
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Ipopt/TrapezoidalCollocation (threaded) 0.335 M allocs: 25.1 MB 0.339 M allocs: 25.5 MB 0.985
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/MadNLP/MultipleShooting (Hessian) 0.527 M allocs: 0.0563 GB 0.527 M allocs: 0.0563 GB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/MadNLP/SingleShooting (Hessian) 0.114 M allocs: 11 MB 0.114 M allocs: 11 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Uno/MultipleShooting (Hessian) 0.261 M allocs: 20.7 MB 0.261 M allocs: 20.7 MB 1
CASE STUDIES/PredictiveController/Pendulum/NonLinMPC/Noneconomic/Uno/OrthogonalCollocation (Hessian) 2.23 M allocs: 0.23 GB 2.23 M allocs: 0.23 GB 1
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/DAQP/Current form 0.763 M allocs: 0.0812 GB 0.762 M allocs: 0.0802 GB 1.01
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/DAQP/Prediction form 0.682 M allocs: 0.0585 GB 0.682 M allocs: 0.0585 GB 1
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/Ipopt/Current form 0.647 M allocs: 0.0801 GB 0.646 M allocs: 0.0785 GB 1.02
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/Ipopt/Prediction form 0.601 M allocs: 0.0562 GB 0.601 M allocs: 0.0562 GB 1
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/OSQP/Current form 0.63 M allocs: 0.0764 GB 0.63 M allocs: 0.0764 GB 1
CASE STUDIES/StateEstimator/CSTR/MovingHorizonEstimator/OSQP/Prediction form 0.585 M allocs: 0.0553 GB 0.585 M allocs: 0.0553 GB 1
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/Ipopt/Current form 0.0649 M allocs: 11.5 MB 0.0649 M allocs: 11.5 MB 1
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/Ipopt/Current form (Hessian) 0.0639 M allocs: 11.3 MB 0.0639 M allocs: 11.3 MB 1
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/Ipopt/Prediction form 0.0485 M allocs: 8.05 MB 0.0485 M allocs: 8.05 MB 1
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/Ipopt/Prediction form (Hessian) 0.0642 M allocs: 11.3 MB 0.0642 M allocs: 11.3 MB 1
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/MadNLP/Current form (Hessian) 0.0986 M allocs: 15.5 MB 0.0986 M allocs: 15.5 MB 1
CASE STUDIES/StateEstimator/Pendulum/MovingHorizonEstimator/MadNLP/Prediction form (Hessian) 0.0929 M allocs: 14.5 MB 0.0929 M allocs: 14.5 MB 1
UNIT TESTS/PredictiveController/ExplicitMPC/moveinput! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/PredictiveController/LinMPC/getinfo! 0.323 k allocs: 15.6 kB 0.323 k allocs: 15.6 kB 1
UNIT TESTS/PredictiveController/LinMPC/moveinput!/MultipleShooting 0.994 k allocs: 25.5 kB 0.994 k allocs: 25.5 kB 1
UNIT TESTS/PredictiveController/LinMPC/moveinput!/SingleShooting 0.088 k allocs: 2.23 kB 0.088 k allocs: 2.23 kB 1
UNIT TESTS/PredictiveController/NonLinMPC/getinfo!/LinModel 0.563 k allocs: 0.0587 MB 0.563 k allocs: 0.0587 MB 1
UNIT TESTS/PredictiveController/NonLinMPC/getinfo!/NonLinModel 0.606 k allocs: 0.076 MB 0.606 k allocs: 0.0759 MB 1
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/LinModel/MultipleShooting 1.95 k allocs: 0.0809 MB 1.95 k allocs: 0.0809 MB 1
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/LinModel/SingleShooting 0.298 k allocs: 10.1 kB 0.298 k allocs: 10.1 kB 1
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/MultipleShooting 2.09 k allocs: 0.0932 MB 2.09 k allocs: 0.0932 MB 1
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/MultipleShootingHessian 2.6 k allocs: 0.125 MB 2.6 k allocs: 0.125 MB 1
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/OrthogonalCollocation 3.87 k allocs: 0.196 MB 3.87 k allocs: 0.196 MB 0.999
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/OrthogonalCollocationHessian 7.79 k allocs: 0.54 MB 7.79 k allocs: 0.54 MB 1
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/SingleShooting 0.321 k allocs: 11.2 kB 0.321 k allocs: 11.2 kB 1
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/SingleShootingHessian 0.321 k allocs: 11.2 kB 0.321 k allocs: 11.2 kB 1
UNIT TESTS/PredictiveController/NonLinMPC/moveinput!/NonLinModel/TrapezoidalCollocation 1.48 k allocs: 0.0609 MB 1.48 k allocs: 0.0614 MB 0.993
UNIT TESTS/SimModel/LinModel/evaloutput 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/SimModel/LinModel/updatestate! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/SimModel/NonLinModel/evaloutput 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/SimModel/NonLinModel/linearize! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/SimModel/NonLinModel/updatestate! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/evaloutput/LinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/evaloutput/NonLinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/preparestate!/LinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/preparestate!/NonLinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/updatestate!/LinModel 4 allocs: 0.0938 kB 4 allocs: 0.0938 kB 1
UNIT TESTS/StateEstimator/ExtendedKalmanFilter/updatestate!/NonLinModel 4 allocs: 0.0938 kB 4 allocs: 0.0938 kB 1
UNIT TESTS/StateEstimator/InternalModel/evaloutput/LinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/InternalModel/evaloutput/NonLinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/InternalModel/preparestate!/LinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/InternalModel/preparestate!/NonLinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/InternalModel/updatestate!/LinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/InternalModel/updatestate!/NonLinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/KalmanFilter/evaloutput 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/KalmanFilter/preparestate! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/KalmanFilter/updatestate! 4 allocs: 0.0938 kB 4 allocs: 0.0938 kB 1
UNIT TESTS/StateEstimator/Luenberger/evaloutput 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/Luenberger/preparestate! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/Luenberger/updatestate! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/MovingHorizonEstimator/getinfo!/LinModel 1.03 k allocs: 0.0393 MB 1.03 k allocs: 0.0393 MB 1
UNIT TESTS/StateEstimator/MovingHorizonEstimator/getinfo!/NonLinModel 1.24 k allocs: 0.203 MB 1.24 k allocs: 0.203 MB 1
UNIT TESTS/StateEstimator/MovingHorizonEstimator/preparestate!/LinModel/Current form 0.0754 M allocs: 14.6 MB 0.0754 M allocs: 14.6 MB 1
UNIT TESTS/StateEstimator/MovingHorizonEstimator/preparestate!/LinModel/Prediction form 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/MovingHorizonEstimator/preparestate!/NonLinModel/Current form 0.972 k allocs: 25.4 kB 0.972 k allocs: 25.4 kB 1
UNIT TESTS/StateEstimator/MovingHorizonEstimator/preparestate!/NonLinModel/Prediction form 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/MovingHorizonEstimator/updatestate!/LinModel/Current form 2 allocs: 0.0469 kB 2 allocs: 0.0469 kB 1
UNIT TESTS/StateEstimator/MovingHorizonEstimator/updatestate!/LinModel/Prediction form 7.05 k allocs: 0.443 MB 7.05 k allocs: 0.443 MB 1
UNIT TESTS/StateEstimator/MovingHorizonEstimator/updatestate!/NonLinModel/Current form 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/MovingHorizonEstimator/updatestate!/NonLinModel/Prediction form 0.972 k allocs: 25.4 kB 0.972 k allocs: 25.4 kB 1
UNIT TESTS/StateEstimator/SteadyKalmanFilter/evaloutput 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/SteadyKalmanFilter/preparestate! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/SteadyKalmanFilter/updatestate! 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/evaloutput/LinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/evaloutput/NonLinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/preparestate!/LinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/preparestate!/NonLinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/updatestate!/LinModel 0 allocs: 0 B 0 allocs: 0 B
UNIT TESTS/StateEstimator/UnscentedKalmanFilter/updatestate!/NonLinModel 0 allocs: 0 B 0 allocs: 0 B
time_to_load 0.149 k allocs: 11.2 kB 0.149 k allocs: 11.2 kB 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants