Skip to content

A workshop covering a range of fusion relevant analysis and simulations with OpenMC, DAGMC, Paramak and other open source fusion neutronics tools

License

Notifications You must be signed in to change notification settings

rlbarker/neutronics-workshop

 
 

Repository files navigation

docker-publish-release

Fusion Neutronics workshop

A selection of resources for learning fusion neutronics simulations with a particular focus on OpenMC, DAGMC and Paramak

There is a slide deck that introduces the workshop and each task.

There is also a Gather Town space which is great for working through the workshop with colleagues.

These examples require specific versions of software packages and nuclear data to run correctly. Therefore I highly recommend making use of the containerised environment to run these example notebooks.

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. Pull requests are very welcome.

The video below gives a brief explainer of what to expect in the workshop and some motivation for learning neutronics.

Tasks Keywords Video(s) CI test status
Task 1 - Cross sections Nuclear data, cross-sections, MT numbers, Doppler link1 link2 link3 link4 Task 1
Task 2 - Materials Materials, Neutronics Material Maker, Mixed materials link Task 2
Task 3 - CSG geometry CSG geometry, Geometry visualisation link Task 3
Task 4 - Sources Neutron point sources, Gamma sources, Plasma sources, Neutron track visualisation link Task 4
Task 5 - TBR Tritium Breeding Ratio, Cell tallies, Simulations link Task 5
Task 6 - DPA Displacements Per Atom, Cell tallies, Simulations, Volume calculations link Task 6
Task 7 - Neutron and photon spectra Neutron Spectra, Photon Spectra, Cell tallies, Energy group structures, Flux, Current link Task 7
Task 8 - Mesh tallies Mesh tallies, Structured meshes link Task 8
Task 9 - Instantaneous Dose Instantaneous Dose, Cell tallies, Dose coefficients Task 9
Task 10 - Activation transmutation depletion Isotope build up and tally variation as a function of time Task 10
Task 11 - CSG shut down Dose Shut down Dose, Cell tallies, Dose coefficients Task 11
Task 12 - Detector examples Time filter detector response time of flight Task 12
Task 13 - stochastic volume calculation stochastic volume material atoms in cell Task 13
Task 14 - Variance_reduction Variance reduction, weight windows Task 14
Task 15 - Making CAD geometry Parametric CAD geometry, Paramak, Geometry visualisation link Task 15
Task 16 - CAD Cell tallies CAD-based neutronics, Cell tallies, DAGMC, Heating Task 16
Task 17 - CAD Mesh tallies CAD-based neutronics, Mesh tallies, Paramak, DAGMC, Fast flux Task 17

Local Installation

There are video tutorials for this section which accompany the step by step instructions below.

  • Ubuntu installation video 👉

  • Windows installation video 👉

  • Mac installation video 👉

  1. Install Docker CE for Ubuntu, Mac OS, or Windows, including the part where you enable docker use as a non-root user.

  2. 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.
         
  3. 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.
         
  4. 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)

To check the tasks run try opening the first task in the half day workshop folder and running the Jupyter Lab code (either click on the triangular run button or click on the first code cell and press shift and enter to execute that cell).

Optional Packages for Local Installation

This is not required for the half day workshop but some of the more advanced tasks do require Paraview and or FreeCAD.

  1. 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
         
  2. 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
             

Run in the cloud

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 codespaces 👉 codespaces

  • 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.

About

A workshop covering a range of fusion relevant analysis and simulations with OpenMC, DAGMC, Paramak and other open source fusion neutronics tools

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 80.4%
  • Python 16.0%
  • Dockerfile 2.6%
  • Shell 1.0%