montepy.Nucleus#

class montepy.Nucleus(element: Element, A: int = 0, meta_state: int = 0)#

Bases: SingletonGroup

A class to represent a nuclide irrespective of the nuclear data being used.

This is meant to be an immutable representation of the nuclide, no matter what nuclear data library is used. U-235 is always U-235. Generally users don’t need to interact with this much as it is almost always wrapped by: montepy.data_inputs.nuclide.Nuclide.

Note

This class is immutable, and hashable, meaning it is suitable as a dictionary key.

Added in version 1.0.0.

Parameters:
  • element (Element) – the element this Nucleus is based on.

  • A (int) – The A-number (atomic mass) of the nuclide. If this is elemental this should be 0.

  • meta_state (int) – The metastable state if this nuclide is isomer.

Raises:
  • TypeError – if an parameter is the wrong type.

  • ValueError – if non-sensical values are given.

Attributes:

A

The A number for this isotope.

Z

The Z number for this isotope.

ZAID

The ZZZAAA identifier following MCNP convention.

element

The base element for this isotope.

is_metastable

Whether or not this is a metastable isomer.

meta_state

If this is a metastable isomer, which state is it?

property A: int#

The A number for this isotope.

Returns:

the isotope’s mass.

Return type:

int

property Z: int#

The Z number for this isotope.

Returns:

the atomic number.

Return type:

int

property ZAID: int#

The ZZZAAA identifier following MCNP convention.

If this is metastable the MCNP convention for ZAIDs for metastable isomers will be used.

Return type:

int

property element: Element#

The base element for this isotope.

Returns:

The element for this isotope.

Return type:

Element

property is_metastable: bool#

Whether or not this is a metastable isomer.

Returns:

boolean of if this is metastable.

Return type:

bool

property meta_state: int#

If this is a metastable isomer, which state is it?

Can return values in the range [0,4]. The exact state number is decided by who made the ACE file for this, and not quantum mechanics. Convention states that the isomers should be numbered from lowest to highest energy. The ground state will be 0.

Returns:

the metastable isomeric state of this “isotope” in the range [0,4].

Return type:

int