Neutron and Photon interaction cross sections
Material creation
Particle sources
Constructive Solid Geometry (CSG)
Tallies (heat, tritium breeding ratio, damage, flux)
Neutron activation
Install Docker
Download the docker image
Run the docker image
Navigate to the URL in the terminal
Detailed instructions are on GitHub
Install single package (Docker) and avoid installing a few hundred packages.
image source xkcd.com
Collection of Jupyter notebooks
Separate task folder for each topic
Learning outcomes for each task
Simulation outputs include:
Run the docker image docker run -p 8888:8888 ghcr.io/fusion-energy/neutronics-workshop
docker run -p 8888:8888 ghcr.io/fusion-energy/neutronics-workshop
Double click on the half-day-workshop folder circled in red.
half-day-workshop
Probability of interaction is characterised by the microscopic cross-section (σ). It is the effective size of the nucleus.
Cross section data is key to the neutronics workflow and provide us with the likelihood of a particular interaction.
Cross sections can be measured experimentally with monoenergetic neutrons.
Availability of experimental data varies for different reactions and different isotopes.
Typically the experimental data is then interpreted to create evaluation libraries, such as ENDF, JEFF, JENDL, CENDL.
Source IAEA nuclear data services
Cross section evaluations exist for:
A list of reactions available in OpenMC is here
For example:
Neutronics codes require the isotopes and the number density.
This can be provided with different combinations of density units, isotope/element concentration and weight or atom fractions.
Simple material construction from nuclides.
mat2 = openmc.Material() mat2.add_nuclide('Li6', 0.0759*2) mat2.add_nuclide('Li7', 0.9241*2) mat2.add_nuclide('O16', 0.9976206) mat2.add_nuclide('O17', 0.000379) mat2.add_nuclide('O18', 0.0020004) mat2.set_density('g/cm3', 2.01)
Simpler material construction from elements.
import openmc mat1 = openmc.Material() mat1.add_element('H', 2) mat1.add_element('O', 1) mat1.set_density('g/cm3', 2.01)
Simple enriched material construction from elements.
import openmc mat1 = openmc.Material() mat1.add_element('Li', 4, enrichment_target='Li6', enrichment=60) mat1.add_element('Si', 1) mat1.add_element('O', 4) mat1.set_density('g/cm3', 2.01)
The simplest geometry is a single surface and a cell defined as below (-) that surface.
import openmc surface_sphere = openmc.Sphere(r=10.0) region_inside_sphere = -surface_sphere cell_sphere = openmc.Cell(region=region_inside_sphere) cell_sphere.fill = steel
Cells can also be constrained by multiple surfaces. This example is above (+) one surface and (&) below (-) another
import openmc surf_sphere1 = openmc.Sphere(r=10.0) surf_sphere2 = openmc.Sphere(r=20.0) between_spheres = +surf_sphere1 & -surf_sphere2 cell_between = openmc.Cell(region= between_spheres) cell_sphere.fill = steel
The outer most surface of the model should have a boundary_type set to "vacuum" to indicate that neutrons should not be tracked beyond this surface.
boundary_type
"vacuum"
import openmc surf_sphere = openmc.Sphere(r=10.0, boundary_type="vacuum") between_spheres = -surf_sphere cell_between = openmc.Cell(region= between_spheres)
Constructive Solid Geometry (CSG) implementation in OpenMC has the following surface types.
Image source Paramak
OpenMC also supports:
For more complex 3D geometry DAGMC can be used which makes use of a meshed geometry to transport particles.
Neutron and photon sources have distributions for:
Visualization of the source term helps check the simulation is correct
The spatial distribution of MCF plasma covers a larger area compared to ICF'
.
The energy distribution of MCF has less neutron scattering compared to ICF. Neutrons are:
image source slb.com
Image source tend.web.psi.ch
The average logarithmic energy decrement (or loss) per collision () is related to the atomic mass () of the nucleus
The average number of collisions required to reduce the energy of the neutron from to .
If is 14MeV and is 0.025eV
We should account for the likelihood of scattering.
The number density of the nucleus (ND) and the microscopic cross section (σ) combine to produce the macroscopic scattering cross section (Σ)
A grid of voxels / mesh elements can be overlaid on a geometry and the neutron response can be tallied in each voxel.
The mesh is typically 3D and defined with a top right and lower left coordinate.
Replace the "your code here" sections to make the best reactor.
your code here
Chose the best options from a selection of materials.
Refine the design to:
![bottom-right](logo)
[![bg right:60% 80%](https://api.star-history.com/svg?repos=openmc-dev/openmc&type=Date)](https://star-history.com/#openmc-dev/openmc&Date)