armi.nuclearDataIO.cccc.labels module

Reads and writes region and composition label data from a LABELS interface file.

LABELS files are produced by DIF3D/VARIANT. They are very similar in structure and format to CCCC files but are not officially in the CCCC documents.

The file structure is listed here:

       RECORD TYPE                        PRESENT IF
       ===============================    ================
       FILE IDENTIFICATION                ALWAYS
       SPECIFICATIONS                     ALWAYS
       LABEL AND AREA DATA                ALWAYS
       FINITE-GEOMETRY TRANSVERSE         NHTS1.GT.0 OR
         DISTANCES                         NGTS2.GT.0
       NUCLIDE SET LABELS                 NSETS.GT.1
       ALIAS ZONE LABELS                  NALIAS.GT.0
       GENERAL CONTROL-ROD MODEL DATA     NBANKS.GT.0

***********(REPEAT FOR ALL BANKS)
*      CONTROL-ROD BANK DATA              NBANKS.GT.0
*
*  *******(REPEAT FOR ALL RODS IN BANK)
*  *   CONTROL-ROD CHANNEL DATA           (LLCHN+LLROD+MMESH).GT.0
**********
       BURNUP DEPENDENT CROSS SECTION     NVARY.GT.0
         SPECIFICATIONS
       BURNUP DEPENDENT GROUPS            MAXBRN.GT.0
       BURNUP DEPENDENT FITTING           MAXORD.GT.0
         COEFFICIENTS

Reference: [DIF3D].

Examples

>>> labelData = LabelStream.readBinary("LABELS")
class armi.nuclearDataIO.cccc.labels.LabelsData[source]

Bases: armi.nuclearDataIO.cccc.cccc.DataContainer

Data structure containing various region, zone, area, nuclide labels.

This is the data structure that is read from or written to a LABELS file.

class armi.nuclearDataIO.cccc.labels.LabelsStream(data: armi.nuclearDataIO.cccc.cccc.DataContainer, fileName: str, fileMode: str)[source]

Bases: armi.nuclearDataIO.cccc.cccc.StreamWithDataContainer

Class for reading and writing the LABELS interface file produced by DIF3D/VARIANT.

Notes

Contains region and composition labels, area data, half heights, nuclide set labels, alias zone labels, control-rod model data, and burnup dependent cross section data.

Create an instance of a Stream.

Parameters
  • fileName (str) – name of the file to be read

  • fileMode (str) – the file mode, i.e. ‘w’ for writing ASCII, ‘r’ for reading ASCII, ‘wb’ for writing binary, and ‘rb’ for reading binary.

static _getDataContainer() → armi.nuclearDataIO.cccc.labels.LabelsData[source]
readWrite()[source]

This method should be implemented on any sub-classes to specify the order of records.

_rwFileID()[source]
_rw1DRecord()[source]

Read/write the file specification data.

_rw2DRecord()[source]

Read/write the label and area data

_rw3DRecord()[source]

Read/write the finite-geometry transverse distances.

_rw4DRecord()[source]

Read/write the nuclide labels.

_rw5DRecord()[source]

Read/write the zone aliases.

_rw6DRecord()[source]

Read/write the general control-rod model data.

_rw7DRecord()[source]

Read/write the control-rod bank data.

_rw8DRecord()[source]

Read/write the control-rod channel data.

_rw9DRecord()[source]

Read/write the burnup-dependent cross section specifications.

_rw10DRecord()[source]

Read/write the burnup-dependent group data.

_rw11DRecord()[source]

Read/write the burnup-dependent fitting coefficient data.