magnetic_fusion_openmc_dagmc_paramak_example
https://github.com/fusion-energy/magnetic_fusion_openmc_dagmc_paramak_example
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.3%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: fusion-energy
- License: mit
- Language: Python
- Default Branch: main
- Size: 12.3 MB
Statistics
- Stars: 14
- Watchers: 1
- Forks: 8
- Open Issues: 3
- Releases: 2
Metadata Files
README.md
This example simulates a simplified model of an inertial confinement fusion reactor.
This example simulates a 90 degree sector model of a fusion reactor with reflecting surfaces.
- A CAD model is made and automatically converted to a DAGMC geometry that is then used in OpenMC for a neutronics simulation.
- The neutronics simulation obtains the tritium breeding ratio and a 3D map of tritium production.
- The simulation outputs are post processed to display the results and produce a VTK file for visualization.
:pointright: :videocamera: Link to video tutorial for this repository :video_camera:
Prerequisites
This minimal example makes use of Conda to manage and install the packages.
You will need one of these conda distributions to be installed or work within a Docker image
First clone the repository
bash
git clone https://github.com/shimwell/magnetic_fusion_openmc_dagmc_paramak_example.git
cd magnetic_fusion_openmc_dagmc_paramak_example
Making the DAGMC model
Make an environment for the model preparation from your base environment
conda activate base
conda env create -f environment_cad.yml
conda activate env_cad
Then run the script for making the DAGMC model.
bash
python 1_creation_of_dagmc_geometry.py
Then open the dagmc.html file in an internet browser to view the CAD created

Optionally you can inspect the DAGMC file at this stage by converting the h5m file to a vtk file and opening this with Paraview
mbconvert dagmc.h5m dagmc.vtk
paraview dagmc.vtk

Simulating the model in OpenMC
First make an environment for simulation from your base environment.
conda activate base
conda env create -f environment_neutronics.yml
conda activate env_neutronics
Then run the simulation which will produce a statepoint.10.h5 file that contains the simulation outputs
bash
python 2_run_openmc_dagmc_simulation.py
Then run the post processing script that should output the heating and Tritium Breeding Ratio to the terminal and make a VTK showing the heating and the neutron interactions resulting in tritium production
bash
python 3_extract_results.py
Open up the VTK file with Paraview and slice the data to see the heating
bash
paraview tritium_production_map.vtk

The VTK file showing the Tritium Breeding Ratio is similarly opened:
bash
paraview heating_map.vtk
Owner
- Name: Fusion Energy
- Login: fusion-energy
- Kind: organization
- Repositories: 29
- Profile: https://github.com/fusion-energy
A collection of software projects related to fusion energy
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Shimwell" given-names: "Jonathan" orcid: "https://orcid.org/0000-0001-6909-0946" - family-names: "Allen" given-names: "Ross" title: "Magnetic fusion openmc dagmc paramak example" version: 0.2.1 date-released: 2022-12-7 url: "https://github.com/fusion-energy/magnetic_fusion_openmc_dagmc_paramak_example"
GitHub Events
Total
- Issues event: 1
- Watch event: 3
- Fork event: 3
Last Year
- Issues event: 1
- Watch event: 3
- Fork event: 3