A Python package for extracting and plotting the locations, directions, energy distributions of OpenMC source particles.
Project description
A Python package for plotting the positions, directions or energy distributions of OpenMC sources.
Installation
You will need to have OpenMC version 0.14.0 or newer installed first.
pip install openmc_source_plotter
Features
The package provides three plotting functions that can plot source data from openmc objects.
plot_source_energy
plot_source_position
plot_source_direction
plot_gamma_emission
Additionally the package provides a convienient method of sampling particles
sample_initial_particles
Example plots
Below are some basic examples, for more examples see the examples folder for example usage scripts.
Plot of energy distribution of the source
:link:Link to example script.
Plot of energy distribution of two sources
:link:Link to example script.
Plot direction of particles
:link:Link to example script.
Plot position of particles
:link:Link to example script.
Plot labeled gamma lines from material
:link:Link to example script.
Extract particle objects
A list of openmc.Particle
objects can be obtained using model.sample_initial_particles()
or openmc.SourceBase.sample_initial_particles()
import openmc
from openmc_source_plotter import sample_initial_particles
settings = openmc.Settings()
settings.particles = 1
settings.batches = 1
my_source = openmc.IndependentSource()
my_source.energy = openmc.stats.muir(e0=14080000.0, m_rat=5.0, kt=20000.0)
settings.source = my_source
materials = openmc.Materials()
sph = openmc.Sphere(r=100, boundary_type="vacuum")
cell = openmc.Cell(region=-sph)
geometry = openmc.Geometry([cell])
model = openmc.Model(geometry, materials, settings)
particles = sample_initial_particles(this=model, n_samples=10)
print(particles)
>>>[<SourceParticle: neutron at E=1.440285e+07 eV>, <SourceParticle: neutron at E=1.397691e+07 eV>, <SourceParticle: neutron at E=1.393681e+07 eV>, <SourceParticle: neutron at E=1.470896e+07 eV>, <SourceParticle: neutron at E=1.460563e+07 eV>, <SourceParticle: neutron at E=1.420684e+07 eV>, <SourceParticle: neutron at E=1.413932e+07 eV>, <SourceParticle: neutron at E=1.412428e+07 eV>, <SourceParticle: neutron at E=1.464779e+07 eV>, <SourceParticle: neutron at E=1.391648e+07 eV>]
print(particles[0].E)
>>>1.440285e+07
Related packages
Tokamak sources can also be plotted using the openmc-plasma-source package
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for openmc_source_plotter-0.7.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3328e447943f0b5353bf732df43ce72fddbe1dd62cc77f26c5c9024ed69c8a4d |
|
MD5 | 8ea8a7b8384343caf2f2dabb4b05595c |
|
BLAKE2b-256 | 44a31ddd44ea7720a14fbeb6b467885dee890ef5cf6e7061b8f51f46067b3f47 |
Hashes for openmc_source_plotter-0.7.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcdb5b3b1bb0f8d18797a0ee7a15f91e302e46a15f7c327f6fcea9a741ce98b9 |
|
MD5 | 9b2b7f3852a0120b9ee97142c104e76a |
|
BLAKE2b-256 | 034fa98767c90e9307b69a584685ce507860ede7ec181fd8656fea478d5b02c7 |