pycfast.MaterialProperties#

class pycfast.MaterialProperties(id, material, conductivity=None, density=None, specific_heat=None, thickness=None, emissivity=0.9)[source]#

Defines thermophysical properties of materials used for compartment surfaces or targets.

CFAST and CEdit do not include predefined thermal properties for compartment materials. Thus, the user needs to define materials for use within a specific simulation. These may be from other simulations or input directly from reference sources or test results. The thermophysical properties are specified at one condition of temperature, humidity, etc. Only a single layer per boundary is allowed (some previous versions allowed up to three).

Parameters:
  • id (str) – A one-word (no more than 8 characters) unique identifier for the material. This identifier should not contain any spaces and is used in other CFAST inputs to identify the particular material referenced.

  • material (str) – A descriptive name for the material.

  • conductivity (float, optional) – Thermal conductivity for the material. Default units: kW/(m·°C) or kW/(m·K).

  • specific_heat (float, optional) – Specific heat for the material. Default units: kJ/(kg·°C) or kJ/(kg·K).

  • density (float, optional) – Density for the material. Default units: kg/m³.

  • thickness (float, optional) – Thickness of the material. Note that if two materials with identical thermal properties but with different thicknesses are desired, two separate materials must be defined. Default units: m.

  • emissivity (float, optional) – Emissivity of the material surface. This is the fraction of radiation that is absorbed by the material. Default units: none, default value: 0.9.

Notes

The thermophysical properties are specified at one condition of temperature, humidity, etc. Values are assumed constant (no temperature dependence). Responsibility for data accuracy lies with the user.

Examples

Create a gypsum wallboard material:

>>> gypsum = MaterialProperties(
...     id="GYPSUM",
...     material="Gypsum Wallboard",
...     conductivity=0.17,
...     density=930,
...     specific_heat=1.09,
...     thickness=0.016,
...     emissivity=0.9,
... )
>>> print(gypsum.id)
GYPSUM
to_input_string()[source]#

Generate CFAST input file string for this material.

Returns:

Formatted string ready for inclusion in CFAST input file.

Return type:

str

Examples

>>> mat = MaterialProperties("GYPSUM", "Gypsum Board", 0.17, 930, 1.09, 0.016, 0.9)
>>> print(mat.to_input_string().strip())
&MATL ID = 'GYPSUM' MATERIAL = 'Gypsum Board' CONDUCTIVITY = 0.17 DENSITY = 930 SPECIFIC_HEAT = 1.09 THICKNESS = 0.016 EMISSIVITY = 0.9 /