ACE Cross Sections – pyne.ace

This module is for reading ACE-format cross sections. ACE stands for “A Compact ENDF” format and originated from work on MCNP. It is used in a number of other Monte Carlo particle transport codes.

ACE-format cross sections are typically generated from ENDF files through a cross section processing program like NJOY. The ENDF data consists of tabulated thermal data, ENDF/B resonance parameters, distribution parameters in the unresolved resonance region, and tabulated data in the fast region. After the ENDF data has been reconstructed and Doppler-broadened, the ACER module generates ACE-format cross sections.

All functionality may be found in the ace package:

from pyne import ace

The information below represents the complete specification of the classes in the ace module. For examples of usage, please refer to the User’s Guide entry for ACE Cross Sections.

Library Class

class pyne.ace.Library

A Library objects represents an ACE-formatted file which may contain multiple tables with data.

Parameters:

filename : str

Path of the ACE library file to load.

Attributes

binary (bool) Identifies Whether the library is in binary format or not
tables (dict) Dictionary whose keys are the names of the ACE tables and whose values are the instances of subclasses of AceTable (e.g. NeutronTable)
verbose (bool) Determines whether output is printed to the stdout when reading a Library
find_table(name)

Returns a cross-section table with a given name.

Parameters:

name : str

Name of the cross-section table, e.g. 92235.70c

read(table_names=None)

Read through and parse the ACE-format library.

Parameters:

table_names : None, str, or iterable, optional

Tables from the file to read in. If None, reads in all of the tables. If str, reads in only the single table of a matching name.

class pyne.ace.AceTable

Abstract superclass of all other classes for cross section tables.

class pyne.ace.NeutronTable

A NeutronTable object contains continuous-energy neutron interaction data read from an ACE-formatted Type I table. These objects are not normally instantiated by the user but rather created when reading data using a Library object and stored within the tables attribute of a Library object.

Parameters:

name : str

ZAID identifier of the table, e.g. ‘92235.70c’.

awr : float

Atomic mass ratio of the target nuclide.

temp : float

Temperature of the target nuclide in eV.

Attributes

awr (float) Atomic mass ratio of the target nuclide.
energy (list of floats) The energy values (MeV) at which reaction cross-sections are tabulated.
name (str) ZAID identifier of the table, e.g. 92235.70c.
nu_p_energy (list of floats) Energies in MeV at which the number of prompt neutrons emitted per fission is tabulated.
nu_p_type (str) Indicates how number of prompt neutrons emitted per fission is stored. Can be either “polynomial” or “tabular”.
nu_p_value (list of floats) The number of prompt neutrons emitted per fission, if data is stored in “tabular” form, or the polynomial coefficients for the “polynomial” form.
nu_t_energy (list of floats) Energies in MeV at which the total number of neutrons emitted per fission is tabulated.
nu_t_type (str) Indicates how total number of neutrons emitted per fission is stored. Can be either “polynomial” or “tabular”.
nu_t_value (list of floats) The total number of neutrons emitted per fission, if data is stored in “tabular” form, or the polynomial coefficients for the “polynomial” form.
reactions (list of Reactions) A list of Reaction instances containing the cross sections, secondary angle and energy distributions, and other associated data for each reaction for this nuclide.
sigma_a (list of floats) The microscopic absorption cross section for each value on the energy grid.
sigma_t (list of floats) The microscopic total cross section for each value on the energy grid.
temp (float) Temperature of the target nuclide in eV.
class pyne.ace.SabTable

A SabTable object contains thermal scattering data as represented by an S(alpha, beta) table.

Parameters:

name : str

ZAID identifier of the table, e.g. lwtr.10t.

awr : float

Atomic mass ratio of the target nuclide.

temp : float

Temperature of the target nuclide in eV.

Attributes

awr (float) Atomic mass ratio of the target nuclide.
elastic_e_in (list of floats) Incoming energies in MeV for which the elastic cross section is tabulated.
elastic_P (list of floats) Elastic scattering cross section for data derived in the incoherent approximation, or Bragg edge parameters for data derived in the coherent approximation.
elastic_type (str) Describes the behavior of the elastic cross section, i.e. whether it was derived in the incoherent or coherent approximation.
inelastic_e_in (list of floats) Incoming energies in MeV for which the inelastic cross section is tabulated.
inelastic_sigma (list of floats) Inelastic scattering cross section in barns at each energy.
name (str) ZAID identifier of the table, e.g. 92235.70c.
temp (float) Temperature of the target nuclide in eV.
class pyne.ace.Reaction(MT, table=None)

A Reaction object represents a single reaction channel for a nuclide with an associated cross section and, if present, a secondary angle and energy distribution. These objects are stored within the reactions attribute on subclasses of AceTable, e.g. NeutronTable.

Parameters:

MT : int

The ENDF MT number for this reaction. On occasion, MCNP uses MT numbers that don’t correspond exactly to the ENDF specification.

table : AceTable

The ACE table which contains this reaction. This is useful if data on the parent nuclide is needed (for instance, the energy grid at which cross sections are tabulated)

Attributes

ang_energy_in (list of floats) Incoming energies in MeV at which angular distributions are tabulated.
ang_energy_cos (list of floats) Scattering cosines corresponding to each point of the angular distribution functions.
ang_energy_pdf (list of floats) Probability distribution function for angular distribution.
ang_energy_cdf (list of floats) Cumulative distribution function for angular distribution.
e_dist_energy (list of floats) Incoming energies in MeV at which energy distributions are tabulated.
e_dist_law (int) ACE law used for secondary energy distribution.
IE (int) The index on the energy grid corresponding to the threshold of this reaction.
MT (int) The ENDF MT number for this reaction. On occasion, MCNP uses MT numbers that don’t correspond exactly to the ENDF specification.
Q (float) The Q-value of this reaction in MeV.
sigma (list of floats) Microscopic cross section for this reaction at each point on the energy grid above the threshold value.
TY (int) An integer whose absolute value is the number of neutrons emitted in this reaction. If negative, it indicates that scattering should be performed in the center-of-mass system. If positive, scattering should be preformed in the laboratory system.
threshold()

Return energy threshold for this reaction.