m_n_kappa.Steel#
- class m_n_kappa.Steel(f_y=None, f_u=None, failure_strain=None, E_a=210000.0)#
Bases:
Material
Steel material
New in version 0.1.0.
Provides a stress-strain material behaviour of structural steel material. It is assumed that steel has the same behaviour under tension and under compression.
Note
Assumes Newton (N) and Millimeter (mm) as basic units. In case other units are used appropriate value for modulus of elasticity E_a must be provided.
- Parameters:
f_y (float) – yield strength \(f_\mathrm{y}\) (Default: None)
f_u (float) – tensile strength \(f_\mathrm{u}\) (Default: None)
failure_strain (float) – tensile strain \(\varepsilon_\mathrm{u}\) (Default: None)
E_a (float) – modulus of elasticity \(E_\mathrm{a}\) (Default: 210000 N/mm 2)
See also
Concrete
material-behaviour of concrete
Reinforcement
material-behaviour of reinforcement
Notes
Examples
The stress-strain-relationships consists always of a number of
StressStrain
points. Three forms of the stress-strain relationship are possible:f_u = None
andepsilon_u = None
: Linear-elastic behaviour.
>>> from m_n_kappa import Steel >>> elastic_steel = Steel() >>> elastic_steel.stress_strain [StressStrain(stress=-210000.0, strain=-1.0), StressStrain(stress=-0.0, strain=-0.0), StressStrain(stress=210000.0, strain=1.0)]
f_u = None
: Bi-linear behaviour wheref_u = f_y
>>> bilinear_steel = Steel(f_y=355, failure_strain=0.15) >>> bilinear_steel.stress_strain [StressStrain(stress=-355.0, strain=-0.15), StressStrain(stress=-355.0, strain=-0.0016905), StressStrain(stress=-0.0, strain=-0.0), StressStrain(stress=355.0, strain=0.0016905), StressStrain(stress=355.0, strain=0.15)]
All values are not none: Bi-linear behaviour with following stress-strain points (\(f_\mathrm{y}\) | \(\varepsilon_\mathrm{y}\)), (\(f_\mathrm{u}\) | \(\varepsilon_\mathrm{u}\)). Where the strain at yield is computed like \(\varepsilon_\mathrm{y} = f_\mathrm{y} / E_\mathrm{a}\)
>>> steel = Steel(f_y=355, f_u=400, failure_strain=0.15) >>> steel.stress_strain [StressStrain(stress=-400.0, strain=-0.15), StressStrain(stress=-355.0, strain=-0.0016905), StressStrain(stress=-0.0, strain=-0.0), StressStrain(stress=355.0, strain=0.0016905), StressStrain(stress=400.0, strain=0.15)]
Methods
get_intermediate_strains
(strain_1[, ...])determine material points with strains between zero and given strain_value
get_material_stress
(strain)gives stress from the stress-strain_value-relationship corresponding with the given strain_value
sort_strains
([reverse])sorts stress-strain_value-relationship depending on strains
sorts stress-strain_value-relationship so strains are ascending
sorts stress-strain_value-relationship so strains are descending
standard stress-strain-relationship
Attributes
modulus of elasticity \(E_\mathrm{a}\)
stress-strain-relationship under compression (negative sign)
yield strength \(f_\mathrm{y}\)
f_u
yield strength \(f_\mathrm{y}\)
tensile strain \(\varepsilon_\mathrm{u}\)
maximum strain_value in the stress-strain_value-relationship
minimum strain_value in the stress-strain_value-relationship
section section_type
strains from the stress-strain_value-relationship
list of stress-strain_value points
stress_strain_type
stresses from the stress-strain_value-relationship
stress-strain-relationship under tension (positive sign)
- get_intermediate_strains(strain_1, strain_2=0.0, include_strains=False)#
determine material points with strains between zero and given strain_value
- Parameters:
strain_1 (float) – 1st strain-value
strain_2 (float) – 2nd strain-value (Default: 0.0)
include_strains (bool) – includes the boundary strain values (Default: False)
- Returns:
determine material points with strains between zero and given strain_value
- Return type:
list[float]
- get_material_stress(strain)#
gives stress from the stress-strain_value-relationship corresponding with the given strain_value
- Parameters:
strain (float) – strain_value a corresponding stress value should be given
- Returns:
stress corresponding to the given strain-value in the material-model
- Return type:
float
- Raises:
ValueError – when strain is outside the boundary values of the material-model
- sort_strains(reverse=False)#
sorts stress-strain_value-relationship depending on strains
- Parameters:
reverse (bool) –
True
: sorts strains descendingFalse
: sorts strains ascending (Default)
- Return type:
None
- sort_strains_ascending()#
sorts stress-strain_value-relationship so strains are ascending
- Return type:
None
- sort_strains_descending()#
sorts stress-strain_value-relationship so strains are descending
- Return type:
None
- stress_strain_standard()#
standard stress-strain-relationship
- Return type:
list
- property E_a: float#
modulus of elasticity \(E_\mathrm{a}\)
- property compression_stress_strain: list#
stress-strain-relationship under compression (negative sign)
- property epsilon_y: float#
yield strength \(f_\mathrm{y}\)
- property f_y: float#
yield strength \(f_\mathrm{y}\)
- property failure_strain: float#
tensile strain \(\varepsilon_\mathrm{u}\)
- property maximum_strain: float#
maximum strain_value in the stress-strain_value-relationship
- property minimum_strain: float#
minimum strain_value in the stress-strain_value-relationship
- property section_type: str#
section section_type
- property strains: list#
strains from the stress-strain_value-relationship
- property stress_strain: list[m_n_kappa.material.StressStrain]#
list of stress-strain_value points
- property stresses: list#
stresses from the stress-strain_value-relationship
- property tension_stress_strain: list#
stress-strain-relationship under tension (positive sign)