Material() class

Produces a material from input arguments that can be output in formats suitable for several different neutronics codes.

param name

This is a string that is assigned to the material as an identifier. This is used by neutronics codes to label the material with a unique identifier.

param packing_fraction

This value is mutliplied by the density which allows packing_fraction to be taken into account for materials involving an amount of void. Recall that packing_fraction = 1 - void fraction

param enrichment

This is the percentage of isotope enrichment required for the material. This works for materials that have an enrichment_target and enrichment_type also specified.

param enrichment_target

The isotope to enrich e.g. Li6

param temperature

The temperature of the material in degrees Kelvin. Temperature impacts the density of some materials in the collection. Materials in the collection that are impacted by temperature have density equations that depend on temperature. These tend to be liquids and gases used for coolants and even liquids such as lithium-lead and FLiBe that are used as breeder materials. Added to the OpenMC material object and the serpent material card.

param temperature_to_neutronics_code

The temperature args are often used to find the material density via density equations. However it can be desirable to not make use of this temperature in the neutronics codes. Typically this is due to missing cross section data. Defaults to True which makes use of any material temperature in the neutronics material. Can be set to False which doesn’t propagate temperature data to the neutronics material. This only impacts OpenMC and serpent materials. As shift materials require the use of temperature and fispact/mcnp materials don’t make use of temperature on the material card.

param pressure

The pressure of the material in Pascals. Pressure impacts the density of some materials in the collection. Materials in the collection that are impacted by pressure have density equations that depend on pressure. These tend to be liquids and gases used for coolants such as H2O and CO2.

param zaid_suffix

The nuclear library to apply to the zaid, for example “.31c”, this is used in MCNP and Serpent material cards.

param material_id

the id number or mat number used in the MCNP material card

param decimal_places

The number of decimal places to use in MCNP and Seprent material cards when they are printed out (default of 8).

param volume_in_cm3

The volume of the material in cm3, used when creating fispact material cards

param elements

A dictionary of keys and values with the element symbol (str) as the key and the amount of that element as the value (float) e.g. {‘C’: 0.3333, ‘O’: 0.666}

param chemical_equation

A chemical equation that identifies elements and numbers of elements to add to the material e.g. ‘CO2’ or ‘H2O’

param isotopes

A dictionary of keys and values with the isotope symbol (str) as the key and the amount of that isotope (float) as the value e.g. {‘Li6’: 0.9, ‘Li7’: 0.1} alternatively zaid representation can also be used instead of the symbol e.g. {‘3006’: 0.9, ‘4007’: 0.1}

param percent_type

Atom “ao” or weight fraction “wo”

param density

value to be used as the density. Can be a number or a string. if a string then it will be evaluated as an equation to find the density and can contain temperature and pressure variables. variables as part of the equation.

param density_unit

the units of density “g/cm3”, “g/cc”, “kg/m3”, “atom/b-cm”, “atom/cm3”

param atoms_per_unit_cell

The number of atoms in a unit cell of the crystal structure

param volume_of_unit_cell_cm3

The volume of the unit cell in cm3

param comment

An entry used to store information on the source of the material data

param additional_end_lines

Additional lines of test that are added to the end of the material card. Compatable with MCNP, Serpent, Fispact outputs which are string based. Argument should be a dictionary specifying the code and a list of lines to be added, be sure to include any white required spaces in the string. This example will add a single S(a,b) card to an MCNP card {‘mcnp’: [’ mt24 lwtr.01’]}.

returns

a neutronics_material_maker.Material instance

rtype

Material