Skip to content

steel

materials.steel

Module for steel material properties.

Classes:

  • DiagramType

    Enumeration of diagram types of stress-strain relations.

  • SteelMaterial

    Representation of the strength and deformation characteristics for steel material.

materials.steel.DiagramType

Bases: Enum

Enumeration of diagram types of stress-strain relations.

materials.steel.SteelMaterial dataclass

SteelMaterial(
    steel_class: SteelStrengthClass = S355,
    density: KG_M3 = 7850.0,
    diagram_type: DiagramType = BI_LINEAR,
    quality_class: str | None = None,
    custom_name: str | None = None,
    custom_e_modulus: MPA | None = None,
    custom_poisson_ratio: DIMENSIONLESS | None = None,
    custom_thermal_coefficient: PER_DEGREE | None = None,
    custom_yield_strength: MPA | None = None,
    custom_ultimate_strength: MPA | None = None,
)

Representation of the strength and deformation characteristics for steel material.

Parameters:

  • steel_class (SteelStrengthClass, default: S355 ) –

    Enumeration of steel strength classes (default: S355)

  • density (KG_M3, default: 7850.0 ) –

    Unit mass of steel [\(kg/m^3\)] (default= 7850.0)

  • diagram_type (DiagramType, default: BI_LINEAR ) –

    Type of stress-strain diagram (default= Bi-Linear)

  • quality_class (str | None, default: None ) –

    Quality class of the steel material (default= None)

  • custom_name (str | None, default: None ) –

    Use a custom name for the steel material (default= steel class name)

  • custom_e_modulus (MPA | None, default: None ) –

    Use a custom modulus of elasticity of steel [\(MPa\)] If no custom value is given, the value [\(E\)] from standard tables is used.

  • custom_poisson_ratio (DIMENSIONLESS | None, default: None ) –

    Use a custom Poisson's ratio for the steel material (default= 0.3)

  • custom_thermal_coefficient (PER_DEGREE | None, default: None ) –

    Use a custom thermal coefficient for the steel material (default= 1.2e-5)

  • custom_yield_strength (MPA | None, default: None ) –

    Use a custom yield strength for the steel material (default= None)

  • custom_ultimate_strength (MPA | None, default: None ) –

    Use a custom ultimate strength for the steel material (default= None)

materials.steel.SteelMaterial.e_modulus property

e_modulus: MPA

Modulus of elasticity of the steel material.

Returns:

  • MPA

    Modulus of elasticity of steel [\(MPa\)]

materials.steel.SteelMaterial.name property

name: str

Name of the steel material.

Returns:

  • str

    Example: "S355"

materials.steel.SteelMaterial.poisson_ratio property

poisson_ratio: DIMENSIONLESS

Poisson's ratio of the steel material.

Returns:

  • DIMENSIONLESS

    Poisson's ratio of the material

materials.steel.SteelMaterial.shear_modulus property

shear_modulus: MPA

Shear modulus of the steel material.

Returns:

  • MPA

    Shear modulus of the material

materials.steel.SteelMaterial.thermal_coefficient property

thermal_coefficient: PER_DEGREE

Thermal coefficient of the steel material [1/°C].

Returns:

  • PER_DEGREE

    Thermal coefficient of the material

materials.steel.SteelMaterial.ultimate_strength

ultimate_strength(thickness: MM) -> MPA | None

Ultimate strength of the steel material for steel [\(f_u\)].

Parameters:

  • thickness (MM) –

    Nominal thickness of the steel element [\(mm\)]

Returns:

  • MPA | None

    Ultimate strength of the material at the given temperature

Source code in blueprints/materials/steel.py
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
def ultimate_strength(self, thickness: MM) -> MPA | None:
    """Ultimate strength of the steel material for steel [$f_u$].

    Parameters
    ----------
    thickness: MM
        Nominal thickness of the steel element [$mm$]

    Returns
    -------
    MPA | None
        Ultimate strength of the material at the given temperature
    """
    if self.custom_ultimate_strength:
        return self.custom_ultimate_strength
    return Table3Dot1NominalValuesHotRolledStructuralSteel(steel_class=self.steel_class, thickness=thickness).fu

materials.steel.SteelMaterial.yield_strength

yield_strength(thickness: MM) -> MPA | None

Yield strength of the steel material for steel [\(f_y\)].

Parameters:

  • thickness (MM) –

    Nominal thickness of the steel element [\(mm\)]

Returns:

  • MPA | None

    Yield strength of the material at the given temperature

Source code in blueprints/materials/steel.py
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
def yield_strength(self, thickness: MM) -> MPA | None:
    """Yield strength of the steel material for steel [$f_y$].

    Parameters
    ----------
    thickness: MM
        Nominal thickness of the steel element [$mm$]

    Returns
    -------
    MPA | None
        Yield strength of the material at the given temperature
    """
    if self.custom_yield_strength:
        return self.custom_yield_strength
    return Table3Dot1NominalValuesHotRolledStructuralSteel(steel_class=self.steel_class, thickness=thickness).fy