A selection of resources for learning fusion neutronics simulations with a particular focus on OpenMC with DAGMC and the Paramak
There are a few slides that introduce the workshop, cover some theory and show the expected outputs of each task.
The use of OpenMC, DAGMC and Paramak for neutronics analysis requires several software packages and nuclear data. These have all been installed inside a Docker container. The video below gives a brief explainer of what to expect in the workshop and some motivation for learning neutronics.
The neutronics workshop was created by and is maintained by Jonathan Shimwell. The repository has benefited greatly from contributions from John Billingsley and others
The resource has proven most useful as it is one of the few open source and accessible fusion neutronics training resources.
The repository has benefited greatly from user feedback. Please feel free to raise Github issues or reach out in the discussions section if you spot anything that needs fixing or think of an improvement. Contributions are also very welcome as pull requests to the develop branch.
One advantage of the containerization of the entire software stack is that it can be deployed in the cloud and launched in your browser on demand.
To demonstrate this I've deployed the workshop on a minimal cloud computer which can be spun up by anyone going to the following URL. This is mainly intended for demonstration purposes and the CPU count is low to keep my costs down. For the the best performance there are other options for deployment which take more effort than clicking a link but provide more computing power. :point_right: Try the workshop in your browser
The repository is also ready for deployment on Github Codespaces which allows users to launch the containerized environment on more powerful cloud computers without installing anything locally.
-
To get started sign up to the free 👉 codespaces Beta.
-
Then follow 👉 this link to config a compute instance 👉
-
VS Code will then launch in the browser, once loaded you must select the conda python interpreter to enable the correct Python environment.
There are video tutorials for this section which accompany the step by step instructions below.
-
Install Docker CE for Ubuntu, Mac OS, or Windows, including the part where you enable docker use as a non-root user.
-
Pull the docker image from the store by typing the following command in a terminal window, or Windows users might prefer PowerShell.
docker pull ghcr.io/fusion-energy/neutronics-workshop
Expand - Having permission denied errors?
If you are running the command from Linux or Ubuntu terminal and getting permission denied messages back. Try running the same command with with elevated user permissions by adding sudo at the front. sudo docker pull ghcr.io/fusion-energy/neutronics-workshop Then enter your password when prompted.
-
Now that you have the docker image you can enable graphics linking between your os and docker, and then run the docker container by typing the following commands in a terminal window.
docker run -p 8888:8888 ghcr.io/fusion-energy/neutronics-workshop
Expand - Having permission denied errors?
If you are running the command from Linux or Ubuntu terminal and getting permission denied messages back. Try running the same command with with elevated user permissions by adding sudo at the front. sudo docker run -p 8888:8888 ghcr.io/fusion-energy/neutronics-workshop Then enter your password when prompted.
-
A URL should be displayed in the terminal and can now be opened in the internet browser of your choice. Select and open the URL at the end of the terminal print out (highlighted below)
-
Some tasks require the use of Paraview to view the 3D meshes produced. Parview can be download from here.
Expand - Ubuntu terminal commands for Paraview install
sudo apt update && sudo apt-get install paraview
-
Some tasks require the use of CAD software to view the 3D geometry produced. FreeCAD is one option for this and can be downloaded here.
Expand - Ubuntu terminal commands for FreeCAD install
sudo apt update && sudo apt-get install freecad
The task videos are all available on a Gather Town space which is great for working through the workshop with colleagues.
Tasks | Keywords | Video(s) |
---|---|---|
Task 1 - Cross sections | Nuclear data, cross-sections, MT numbers, Doppler | link1 link2 link3 link4 |
Task 2 - Materials | Materials, Neutronics Material Maker, Mixed materials | link |
Task 3 - CSG geometry | CSG geometry, Geometry visualisation | link |
Task 4 - Sources | Neutron point sources, Gamma sources, Plasma sources, Neutron track visualisation | link |
Task 5 - TBR | Tritium Breeding Ratio, Cell tallies, Simulations | link |
Task 6 - DPA | Displacements Per Atom, Cell tallies, Simulations, Volume calculations | link |
Task 7 - Neutron and photon spectra | Neutron Spectra, Photon Spectra, Cell tallies, Energy group structures, Flux, Current | link |
Task 8 - Mesh tallies | Mesh tallies, Structured meshes | link |
Task 9 - Dose | Dose, Cell tallies, Dose coefficients | |
Task 10 - Making CAD geometry | Parametric CAD geometry, Paramak, Geometry visualisation | link |
Task 11 - CAD Cell tallies | CAD-based neutronics, Cell tallies, DAGMC, Heating | |
Task 12 - CAD Mesh tallies | CAD-based neutronics, Mesh tallies, Paramak, DAGMC, Fast flux | |
Task 13 - Variance_reduction | Variance reduction, weight windows | |
Task 14 - Activation transmutation depletion | Isotope build up and tally variation as a function of time | |
Task 15 - Techniques for sampling parameter space | Sampling, Interpolation, Multi-dimensional parameter studies | |
Task 16 - Parameter study optimisation | Data science machine learning approaches |