/bocop

Bocop 3

Primary LanguageC++

Bocop3 - optimal control toolbox (direct transcription approach)

Panel application

Try the code online with the provided demos or your own problem with the Bocop wep app (no installation required)

User install

Developper install

Before developing, you should try to install bocop as user, so that you have our usual tools to run bocop. Refer to the abovementioned installation guides. Regarding conda, the miniconda install is enough, although we recommend to use the much faster mamba instead, for instance with the mambaforge install.

In short, you should have:

  • on Windows: Microsoft Build Tools, conda/mamba, git (go to the Git Website to get you started)
  • on macOS: maybe XCode, conda/mamba, git (it should be installed with XCode anyway)
  • on Linux: conda/mamba, git

Alternatively you can install git on any OS using conda with conda install git (but in this case, remember it will be tied to the conda environment where you install it.)

You should then clone the environment, create the conda environment for development and check if the tests are running correctly:

git clone https://github.com/control-toolbox/bocop
cd bocop
mamba env create -f pkg/env/bocop-linux.yaml ## or bocop-windows.yaml or bocop-macos.yaml
mamba activate bocop-dev
python test_bocop.py 1 ## check that the tests are running

Then you can use:

  • jupyter jupyter notebook bocop/notebook_test.ipynb
  • jupyter lab
jupyter labextension install @jupyter-widgets/jupyterlab-manager
jupyter-lab bocop/notebook_test.ipynb

0DC1463B-9C56-4D01-85C5-198663A50047

Documentation

Into folder doc/, run Doxygen

doxygen

which will generate the doxygen files in html/ and xml/ (used for sphinx import). Then run Sphinx with Breathe extension to import the `xml/ files from doxygen

make html

which will put the sphinx-rtd files in _build/html.