|
1 | 1 | \section{Installation}
|
2 | 2 |
|
3 |
| -CombLayer is predominately written for the Linux platform using {\tt C++} |
4 |
| -compilers that support {\tt C++11} or greater. The code is available from \\ |
5 |
| -\href{https://github.com/SAnsell/CombLayer}{https://github.com/SAnsell/CombLayer}, \\ either as a download of a {\tt zip} file or |
6 |
| -by cloning/pulling the git repository. |
| 3 | +CombLayer is primarily designed for the Linux platform and requires a |
| 4 | +\CC compiler that supports {\CC}11 or later. The code is available at |
| 5 | +\href{https://github.com/SAnsell/CombLayer}{https://github.com/SAnsell/CombLayer}, |
| 6 | +either as a downloadable |
| 7 | +\href{https://github.com/SAnsell/CombLayer/archive/master.zip}{zip |
| 8 | + file} or by cloning/pulling the Git repository: |
| 9 | +\begin{bash} |
| 10 | + git clone https://github.com/SAnsell/CombLayer.git |
| 11 | +\end{bash} |
7 | 12 |
|
8 | 13 | \subsection{Requirments}
|
9 | 14 |
|
10 |
| -CombLayer needs to have the GNU Scietific Library [GSL] and the {\tt |
11 |
| - boost::regex} system along with the STL libraries from your {\tt |
12 |
| - C++} compiler. The GSL can be avoided with the {\tt -NS} flag in the |
13 |
| -{\tt getMk.pl} and the {\tt CMake.pl} script but some functionality will be |
14 |
| -lost, particularly in the choice of variance reduction methods. |
15 |
| - |
16 |
| -Additionally, the primary build system uses {\tt cmake}. There is another |
17 |
| -that just uses {\tt make} but is significantly more time-consuming. |
18 |
| - |
19 |
| -Functional documentation is supported using {\tt Doxygen} and the construction |
20 |
| -of new cmake text files can be done via PERL scripts. |
21 |
| - |
22 |
| -Currenly it is know that {\tt gcc} version 4.6 and above can compile |
23 |
| -CombLayer as can {\tt clang} (all tested versions). {\tt gcc} 4.4 which is often |
24 |
| -the default on RedHat systems (2015) does not work. |
| 15 | +CombLayer requires the GNU Scientific |
| 16 | +Library~(\href{https://www.gnu.org/software/gsl}{GSL}), |
| 17 | +\href{https://www.boost.org}{boost::regex}, as well as the |
| 18 | +\href{https://github.com/fmtlib/fmt}{\{fmt\}} and STL libraries |
| 19 | +provided by your \CC compiler. The build process is managed with |
| 20 | +\href{https://cmake.org}{CMake}, and the class reference documentation |
| 21 | +is generated using \href{https://www.doxygen.nl}{Doxygen}. |
| 22 | +Both {\tt gcc} and {\tt clang} compilers are supported. |
25 | 23 |
|
26 | 24 | \subsection{Basic build method}
|
27 | 25 |
|
28 |
| -If a clean directory is made and then the {\tt .zip} file is uncompressed, the |
29 |
| -following commands should build a version of CombLayer. |
| 26 | +CombLayer can be built either in the source code directory or in a separate build directory. If built in the source directory, the command is |
30 | 27 |
|
31 | 28 | \begin{bash}
|
32 |
| - ./CMake.pl |
33 | 29 | cmake ./
|
34 | 30 | make
|
35 | 31 | \end{bash}
|
36 | 32 |
|
37 |
| -This should make a number of executables, e.g. {\tt ess}, {\tt simple}, {\tt fullBuild} etc. These |
38 |
| -can be used to make a simple model with commands like |
| 33 | +or for a separate build directory |
| 34 | + |
39 | 35 | \begin{bash}
|
40 |
| - ./simple -r AA |
| 36 | + cmake -B/path/to/buildDirectory -S/path/to/srcDirectory |
| 37 | + make |
41 | 38 | \end{bash}
|
42 |
| -This will produce an output file {\tt AA1.x} which is a MCNP model. |
43 |
| - |
44 |
| - |
45 | 39 |
|
| 40 | +This should make a number of executables, e.g. {\tt ess}, {\tt maxiv}, |
| 41 | +{\tt reactor}, {\tt fullBuild} etc, which can be used to make a model |
| 42 | +with commands listed in the {\tt all.sh} script. For instance, the |
| 43 | +\begin{bash} |
| 44 | + singleItem --singleItem Octupole AA |
| 45 | +\end{bash} |
| 46 | +command generates an output file named {\tt AA1.x}, which is an MCNP |
| 47 | +model of an octupole magnet. To generate a FLUKA model, add the {\tt |
| 48 | + -fluka} argument, and for PHITS models, use the {\tt -phits} |
| 49 | +argument. |
0 commit comments