|
copra
1.3.3
|
Copra (**Co**ntrol & **pr**eview **a**lgorithms) is a C++ library implementing linear model predictive control. It relies on quadratic programming (QP) solvers. Python bindings are available.
@Stephane Caron
This work was originally made by Vincent Samy.
Copra is licensed under the BSD-2-Clause. However, its default QP solver (eigen-quadprog) is licensed under the LGPL-2 and this cannot be changed. Please be aware of the related restrictions if you plan to work with copra. At a later date, we might switch copra default QP solver to one with a less restrictive license.
Copra should compiles and is tested on Linux, macOS and Windows.
The library is written in c++14. Compiler that can not support it won't be able to compile it.
A c++11 compatible is available on a specific branch. Although it exists, it may not be updated as often as the master branch. The branch is called c++11-compatible. To use it, before compilation and after cloning the repo, do:
Then follow the steps in the section just above.
C++ tests will be compiled in your build folder if you enabled the BUILD_TESTING option:
Once Python bindings are installed, you can check them with:
Doxygen documentation is available online
You can also check out unit tests, as well as the following two examples: