Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Support
    • Submit feedback
    • Contribute to GitLab
  • Sign in
O
openmc
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 70
    • Issues 70
    • List
    • Boards
    • Labels
    • Milestones
  • Merge Requests 9
    • Merge Requests 9
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Shikhar Kumar
  • openmc
  • Merge Requests
  • !870

Merged
Opened Apr 28, 2017 by Shikhar Kumar@shikhark
  • Report abuse
Report abuse

Creating nuclear data using NJOY

  • Overview 10
  • Commits 9
  • Changes 6

Created by: paulromano

This pull request introduces a new capbility to generate an IncidentNeutron or ThermalScattering object using NJOY (which is now open source) by adding from_njoy classmethods. These functionally work as though they were from_endf because they accept the name of an ENDF file, but under the hood, NJOY is run to produce ACE files (at multiple temperatures if desired) and then from_ace is used to instantiate the corresponding incident neutron or thermal scattering data. The new methods are also "smart" in that they will automatically add fission energy release data from the ENDF file as well as 0 K elastic scattering data (using the pointwise ENDF file generated during the NJOY run).

Implementation: there is a new openmc.data.njoy interface which provides make_pendf, make_ace and make_ace_thermal functions. All of these use a central run function. The run function has optional arguments njoy_exec (to specify the location of the NJOY executable -- assumed to just be 'njoy' by default) and stdout (if you want to see the progress of the NJOY run). Keyword arguments are passed through the series of calls from IncidentNeutron.from_njoy to make_ace to run, so, e.g., you can call

u235 = openmc.data.IncidentNeutron.from_njoy('U235.endf', stdout=True)

Right now, reconstruction/broadening error tolerances are not configurable, but we can change that if need be.

With this functionality, it is now much easier for a user to generate an HDF5 library for use in OpenMC given a set of ENDF files.

Assignee
Assign to
v0.9
Milestone
v0.9
Assign milestone
Time tracking
2
Labels
Data Python API
Assign labels
  • View project labels
Reference: shikhark/openmc!870