pymcnp.types Subpackage

pymcnp.types contains parsers for basic types, such as integers, zaids, and surface geometry formulas. PyMCNP implements classes for types to integrate them into the object-oriented recursive decent parsers.

AST Classes

PyMCNP represents types with AST classes. These AST class have methods for translating between PyMCNP and MCNP:

  • from_mcnp. Parses MCNP source, checking for syntax and semantic errors.

  • to_mcnp. Generates MCNP source from PyMCNP objects, reformatting.

Designator Classes

class pymcnp.types.Designator(particles: str)

Represents MCNP particle designators.

particles

Particle formula.

static from_mcnp(source: str)

Generates Designator from MCNP.

Parameters:

source – MCNP for Designator.

Returns:

Designator.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp() str

Generates MCNP from Designator.

Returns:

MCNP designator.

Distribution Classes

class pymcnp.types.Distribution(n: Integer)

Represents MCNP distribution numbers.

n

Distribution identifier.

static from_mcnp(source: str)

Generates Distribution from MCNP.

Parameters:

source – MCNP for Distribution.

Returns:

Distribution.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp()

Generates MCNP from Distribution.

Returns:

MCNP for Distribution.

Generator Classes

class pymcnp.types.Generator(element: Type)

Curries generators and inner type.

Parametres:

element: Inner type.

Returns:

_Generator with inner type.

Geometry Classes

class pymcnp.types.Geometry(ast: _Nonterminal)

Represents MCNP geometries.

ast

Geometry abstract syntax tree.

static from_mcnp(source: str)

Generates Geometry from INP.

Parameters:

Geometry. (INP for)

Returns:

Geometry.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp()

Generates INP from Geometry.

Returns:

INP for Geometry.

Horizontal Classes

class pymcnp.types.Horizontal

Represents MCNP horizontal input sytnax.

Index Classes

class pymcnp.types.Index(lower: Integer, upper: Integer)

Represents INP lattice index entries.

lower

Lower index.

upper

Upper index.

static from_mcnp(source: str)

Generates Index from INP.

Parameters:

Index. (INP for)

Returns:

Index.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp()

Generates INP from Index.

Returns:

INP for Index.

Integer Classes

class pymcnp.types.Integer(value: int | Horizontal)

Represents MCNP values or jump.

value

Integer value or jump.

static from_mcnp(source: str)

Generates Integer from MCNP.

Parameters:

source – MCNP value or jump.

Returns:

Integer.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp()

Generates MCNP from Integer.

Returns:

MCNP value.

Lattice Classes

class pymcnp.types.Lattice(ast: _Nonterminal)

Represents MCNP lattices.

ast

Lattice abstract syntax tree.

static from_mcnp(source: str)

Generates Lattice from INP.

Parameters:

Lattice. (INP for)

Returns:

Lattice.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp()

Generates INP from Lattice.

Returns:

INP for Lattice.

Real Classes

class pymcnp.types.Real(value: int | Horizontal)

Represents MCNP values or jump.

value

Real value or jump.

static from_mcnp(source: str)

Generates Real from MCNP.

Parameters:

source – MCNP real or jump.

Returns:

Real.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp()

Generates MCNP from Real.

Returns:

MCNP real.

String Classes

class pymcnp.types.String(value: str)

Represents MCNP strings.

value

String value.

static from_mcnp(source: str)

Generates String from MCNP.

Praameters:

source: MCNP string.

Returns:

String.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp()

Generates MCNP from String.

Returns:

MCNP string.

Substance Classes

class pymcnp.types.Substance(zaid: Zaid, weight_ratio: Real)

Represents MCNP substances.

zaid

Zaid alias for nuclide.

weight_ratio

Atomic weight ratios.

static from_mcnp(source: str)

Generates Substance from MCNP.

Parameters:

Substance. (MCNP for)

Returns:

Substance.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp()

Generates INP from Substance.

Returns:

INP for Substance.

Transformation Classes

pymcnp.types.Transformation

alias of <module ‘pymcnp.types.Transformation’ from ‘/home/docs/checkouts/readthedocs.org/user_builds/pymcnp/envs/stable/lib/python3.12/site-packages/pymcnp/types/Transformation.py’>

Tuple Classes

class pymcnp.types.Tuple(element: Type)

Curries tuples and inner type.

Parametres:

element: Inner type.

Returns:

_Tuple with inner type.

Zaid Classes

class pymcnp.types.Zaid(z: int, a: int, abx: str = None)

Represents MCNP nuclide information numbers.

z

Atomic number.

a

Mass number.

abx

Cross-section evaluation & class information.

static from_mcnp(source: str)

Generates Zaid from MCNP.

Parameters:

source – MCNP for Zaid.

Returns:

Zaid object.

Raises:

TypesError – SYNTAX_TYPE.

to_mcnp() str

Generates MCNP from Zaid.

Returns:

MCNP Zaid.