|
5 | 5 |
|
6 | 6 | # MCIntegrator++
|
7 | 7 |
|
8 |
| -C++ Library for computing numerical integrals with the Monte Carlo method. |
9 |
| -Some basic tools for finding the average and standard deviation of an array of data are included. |
| 8 | +C++ Library for computing numerical integrals with the Monte Carlo method. Includes some convenient |
| 9 | +(optional) methods for automatic step calibration, decorrelation and error estimation. Provides a simple |
| 10 | +interface to execute the MC integration in parallel, via Message Passing Interface (MPI). |
10 | 11 |
|
11 |
| -In `doc/` there is a user manual in pdf. |
| 12 | +In `doc/` there is a user manual in pdf and a config for doxygen. |
12 | 13 |
|
13 |
| -In `examples/` there are examples. |
| 14 | +In `examples/` and `test/` there are examples and tests for the library. |
14 | 15 |
|
| 16 | +In `res/` we provide a true random seed file. |
| 17 | + |
| 18 | + |
| 19 | +Some subdirectories come with an own `README.md` file which provides further information. |
| 20 | + |
| 21 | + |
| 22 | +# Supported Systems |
| 23 | + |
| 24 | +Currently, we automatically test the library on Arch Linux (GCC 8) and MacOS (with clang as well as brewed GCC 8). |
| 25 | +However, in principle any system with C++11 supporting compiler should work. |
| 26 | + |
| 27 | + |
| 28 | +# Requirements |
| 29 | + |
| 30 | +- CMake, to use our build process |
| 31 | +- (optional) a MPI implementation, to use parallelized integration |
| 32 | +- (optional) valgrind, to run `./run.sh` in `test/` |
| 33 | +- (optional) pdflatex, to compile the tex file in `doc/` |
| 34 | +- (optional) doxygen, to generate doxygen documentation in `doc/doxygen` |
15 | 35 |
|
16 | 36 |
|
17 | 37 | # Build the library
|
18 | 38 |
|
19 |
| -We use the CMake build system, so you need to have it on your system to build the library out of the box. |
20 |
| -Then copy the file `config_template.sh` to `config.sh`, edit it to your liking and then simply execute the command |
| 39 | +Copy the file `config_template.sh` to `config.sh`, edit it to your liking and then simply execute the command |
21 | 40 |
|
22 | 41 | `./build.sh`
|
23 | 42 |
|
24 | 43 | Note that we build out-of-tree, so the compiled library and executable files can be found in the directories under `./build/`.
|
| 44 | + |
| 45 | + |
| 46 | +# First steps |
| 47 | + |
| 48 | +You may want to read `doc/user_manual.pdf` to get a quick overview of the libraries functionality. However, it is not guaranteed to be perfectly up-to-date and accurate. Therefore, the best way to get your own code started is by studying the examples in `examples/`. See `examples/README.md` for further guidance. |
0 commit comments