CMP++
A C++ library for Bayesian calibration of computer codes, with practical workflows for full, sequential, and modular inference.
CMP++ is a C++ library used to perform the Bayesian calibration of deterministic computer models in the presence of measurement and model-form errors. It implements complete, sequential, and modular workflows so users can balance statistical rigor and computational cost depending on the application.
Approaches implemented include:
- Full Bayes
- Modular, sequential
- Modular, adaptive
Documentation
For a deep dive into the mathematical framework, implementation details, and the API, please refer to the following resources:
- Live Doxygen API Documentation: Live API Site
Below is a technical report that provides a comprehensive overview of the library’s capabilities and usage:
Getting Started
These instructions will help you compile and link the CMP++ library to your project.
Dependencies
The library depends on:
Installing
CMP++ can be compiled into a static library using the provided makefile. Make sure to modify the paths for the dependencies in your local environment.
cd cmp
make
Running the Test Case
To compile and run the included tests, execute the following commands:
cd tests
make testname
./out_testname
Note: In order to be able to view the generated plots and results, you must link against the matplotlibcpp library.
License
This project is licensed under the MIT License. See the LICENSE.md file in the repository for details.
Acknowledgments
This project has received funding from the European Union’s Horizon Europe research and innovation programme under the Marie Skłodowska-Curie grant agreement No 101072551 (TRACES).
Please refer to the TRACES project website for additional details.