The following section describes building the AMICI C++ library:
Note
The AMICI C++ interface only supports simulation of models imported using the :ref:`Python interface <python_interface>` and :ref:`Matlab interface <matlab_interface>`. It cannot be used for model import itself.
Prerequisites:
- CBLAS compatible BLAS library
- a C++17 compatible compiler
- a C compiler
- Optional:
- HDF5 libraries
- boost for serialization
To use AMICI from C++, run the
./scripts/buildSuiteSparse.sh
./scripts/buildSundials.sh
./scripts/buildAmici.sh
script to build the AMICI library.
Note
On some systems, the CMake executable may be named something
other than cmake
. In this case, set the CMAKE
environment variable
to the correct name (e.g. export CMAKE=cmake3
, in case you have CMake
available as cmake3
).
The static library can then be linked from
./build/libamici.a
In CMake-based packages, amici can be linked via
find_package(Amici)
For further usage, consult the AMICI :ref:`C++ interface documentation <cpp_interface>`.
The C++ interfaces require a system installation of a CBLAS-compatible Basic Linear Algebra Subprograms (BLAS) library. AMICI has been tested with various implementations such as Accelerate, Intel MKL, cblas, openblas and atlas.
To build AMICI with SuperLU_MT support, run
./scripts/buildSuperLUMT.sh
./scripts/buildSundials.sh
cd build/
cmake -DSUNDIALS_SUPERLUMT_ENABLE=ON ..
make