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.