Welcome to the Collision Probability Method (CPM) repository! This project features an integral neutron transport solver for circular geometry using the CPM technique. The method implemented in this solver is based on the COLPROB code, as detailed in the book by Prof. Stammler and Prof. Abbate.
In this repo, the implementation is extended to multi-group and to solve the eigenvalue problem.
To get started with the CPM solver, clone the repository and follow the installation instructions:
git clone https://github.com/imronuke/CPM.git
cd CPM
make
Here's a quick example of how to use the CPM solver:
# Example command to run the solver
./cpm example/test_1.xml
You just need g++ or other c++ compilers.
Here is the result for a simple fuel-moderator problem with white boundary condition.
My code gives k_inf = 1.30288
Multi-group Monte Carlo using OpenMC gives k_inf = 1.30323 ± 0.00025.
This project is licensed under the MIT License.
This CPM code was converted from the Fortran version that I submitted for homework. Functions get_pij_annular
(to calculate the PIJ matrix) and KI3
(to calculate the 3rd order Bickley-Naylor function) were provided in FORTRAN-77 as homework supplements. Pugixml to read the XML input file is from this repository.
Feel free to explore, use, and contribute to the Collision Probability Method (CPM) project. Happy coding!