openmc-plasma-source

Creates a plasma source as an openmc.source object from input parameters that describe the plasma

https://github.com/fusion-energy/openmc-plasma-source

Science Score: 57.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
    Found 2 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.3%) to scientific vocabulary

Keywords

fusion neutron openmc plasma source tokamak

Keywords from Contributors

neutronics photons
Last synced: 6 months ago · JSON representation ·

Repository

Creates a plasma source as an openmc.source object from input parameters that describe the plasma

Basic Info
  • Host: GitHub
  • Owner: fusion-energy
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 418 KB
Statistics
  • Stars: 36
  • Watchers: 3
  • Forks: 15
  • Open Issues: 17
  • Releases: 14
Topics
fusion neutron openmc plasma source tokamak
Created over 4 years ago · Last pushed 8 months ago
Metadata Files
Readme License Citation

README.md

CI testing codecov PyPI version

OpenMC-plasma-source

This python-based package offers a collection of pre-built OpenMC neutron sources for fusion applications.

Installation

OpenMC is required to use this package.

To install openmcplasmasource, simply run: pip install openmc_plasma_source

Usage

Tokamak Source

Create a source with a spatial and temperature distribution of a tokamak plasma. The OpenMC sources are ring sources which reduces the computational cost and the settings.xml file size. Each source has its own strength (or probability that a neutron spawns in this location).

The equations implemented here are taken from this paper.

```python from openmcplasmasource import tokamak_source

mysources = tokamaksource( elongation=1.557, iondensitycentre=1.09e20, iondensitypedestal=1.09e20, iondensitypeakingfactor=1, iondensityseparatrix=3e19, iontemperaturecentre=45.9e3, iontemperaturepedestal=6.09e3, iontemperatureseparatrix=0.1e3, iontemperaturepeakingfactor=8.06, iontemperaturebeta=6, majorradius=906, minorradius=292.258, pedestalradius=0.8 * 292.258, mode="H", shafranovfactor=0.44789, triangularity=0.270, fuel={"D": 0.5, "T": 0.5}, ) ```

For a more complete example check out the example script.

out out

Ring Source

Create a ring source with temperature distribution of a 2000 eV plasma.

```python from openmcplasmasource import fusionringsource

mysource = fusionring_source( radius=700, angles=(0.0, 2 * math.pi), # 360deg source temperature=20000.0, fuel={"D": 0.5, "T": 0.5}, ) ```

Point Source

Create a point source with temperature distribution of a 2000 eV plasma.

```python from openmcplasmasource import fusionpointsource

mysource = fusionpoint_source( coordinate=(0, 0, 0), temperature=20000.0, fuel={"D": 0.09, "T": 0.91}, # note this is mainly tritium fuel so that TT reactions are more likely ) ```

Testing

To run the tests, simply run

pytest tests

Owner

  • Name: Fusion Energy
  • Login: fusion-energy
  • Kind: organization

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: "Delaporte-Mathurin"
  given-names: "Rémi"
  orcid: "https://orcid.org/0000-0003-1064-8882"
- family-names: "Shimwell"
  given-names: "Jonathan"
  orcid: "https://orcid.org/0000-0001-6909-0946"
- family-names: "Pattinson"
  given-names: "Liam"
- family-names: "Pranto"
  given-names: "Ariful Islam"
- family-names: "Faisal"
  given-names: "Mohammed"
title: "OpenMC Plasma Source"
version: 0.3.0
date-released: 2023-01-12
url: "https://github.com/fusion-energy/openmc-plasma-source"

GitHub Events

Total
  • Issues event: 3
  • Watch event: 7
  • Delete event: 2
  • Issue comment event: 9
  • Push event: 25
  • Pull request review event: 4
  • Pull request event: 6
  • Fork event: 4
  • Create event: 5
Last Year
  • Issues event: 3
  • Watch event: 7
  • Delete event: 2
  • Issue comment event: 9
  • Push event: 25
  • Pull request review event: 4
  • Pull request event: 6
  • Fork event: 4
  • Create event: 5

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 131
  • Total Committers: 6
  • Avg Commits per committer: 21.833
  • Development Distribution Score (DDS): 0.527
Top Committers
Name Email Commits
remdelaportemathurin r****n@g****m 62
Liam Pattinson l****n@g****m 37
Jonathan Shimwell m****l@j****m 21
AI-Pranto p****3@g****m 6
Mohammed Faisal m****0@g****m 4
Adambar24 1****4 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 37
  • Total pull requests: 76
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 5 days
  • Total issue authors: 9
  • Total pull request authors: 6
  • Average comments per issue: 2.95
  • Average comments per pull request: 2.0
  • Merged pull requests: 67
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 8
  • Pull requests: 12
  • Average time to close issues: 5 days
  • Average time to close pull requests: 10 days
  • Issue authors: 5
  • Pull request authors: 2
  • Average comments per issue: 0.75
  • Average comments per pull request: 0.75
  • Merged pull requests: 11
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • shimwell (17)
  • RemDelaporteMathurin (12)
  • emaartensson (2)
  • jon-proximafusion (1)
  • rworrall-ukaea (1)
  • JuLuca99 (1)
  • Oliverator (1)
  • Adambar24 (1)
  • LiamPattinson (1)
Pull Request Authors
  • shimwell (41)
  • RemDelaporteMathurin (29)
  • LiamPattinson (9)
  • mdfaisal98 (4)
  • Adambar24 (1)
  • AI-Pranto (1)
Top Labels
Issue Labels
good first issue (6) enhancement (5) bug (4) documentation (1)
Pull Request Labels
bug (1) documentation (1) enhancement (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 132 last-month
  • Total dependent packages: 1
  • Total dependent repositories: 2
  • Total versions: 14
  • Total maintainers: 2
pypi.org: openmc-plasma-source

Creates tokamak and fusion point sources for OpenMC

  • Versions: 14
  • Dependent Packages: 1
  • Dependent Repositories: 2
  • Downloads: 132 Last month
Rankings
Dependent packages count: 4.8%
Average: 11.3%
Forks count: 11.4%
Dependent repos count: 11.6%
Stargazers count: 13.9%
Downloads: 14.8%
Maintainers (2)
Last synced: 6 months ago

Dependencies

.github/workflows/anaconda-publish.yml actions
  • actions/checkout v2 composite
.github/workflows/black.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • stefanzweifel/git-auto-commit-action v4 composite
.github/workflows/ci.yml actions
  • actions/checkout v2 composite
.github/workflows/python-publish.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • pypa/gh-action-pypi-publish release/v1 composite
pyproject.toml pypi