Basic materials¶
Elastic material¶
- class structuralcodes.materials.basic.ElasticMaterial(E: float, density: float, initial_strain: float | None = None, initial_stress: float | None = None, strain_compatibility: float | None = None, name: str | None = None)[source]¶
A material class with elastic properties.
- __init__(E: float, density: float, initial_strain: float | None = None, initial_stress: float | None = None, strain_compatibility: float | None = None, name: str | None = None)[source]¶
Initialize a material with an elastic plastic constitutive law.
- Parameters:
E (float) – The Young’s modulus.
density (float) – The density.
initial_strain (Optional[float]) – Initial strain of the material.
initial_stress (Optional[float]) – Initial stress of the material.
strain_compatibility (Optional[bool]) – Only relevant if initial_strain or initial_stress are different from zero. If True, the material deforms with the geometry. If False, the stress in the material upon loading is kept constant corresponding to the initial strain.
name (str, optional) – The name of the material, default value None.
- property E: float¶
Returns the Young’s modulus.
- property constitutive_law: ConstitutiveLaw¶
Returns the ConstitutiveLaw of the object.
- property name¶
Returns the name of the material.
- property density¶
Returns the density of the material in kg/m3.
Elastic-plastic material¶
- class structuralcodes.materials.basic.ElasticPlasticMaterial(E: float, fy: float, density: float, Eh: float = 0, eps_su: float | None = None, initial_strain: float | None = None, initial_stress: float | None = None, strain_compatibility: float | None = None, name: str | None = None)[source]¶
A material class with elastic plastic properties.
- __init__(E: float, fy: float, density: float, Eh: float = 0, eps_su: float | None = None, initial_strain: float | None = None, initial_stress: float | None = None, strain_compatibility: float | None = None, name: str | None = None)[source]¶
Initialize a material with an elastic plastic constitutive law.
- Parameters:
E (float) – The Young’s modulus.
fy (float) – The yield stress.
density (float) – The density.
Eh (float, optional) – The hardening modulus, default value 0.
eps_su (float, optional) – The ultimate strain, default value None.
initial_strain (Optional[float]) – Initial strain of the material.
initial_stress (Optional[float]) – Initial stress of the material.
strain_compatibility (Optional[bool]) – Only relevant if initial_strain or initial_stress are different from zero. If True, the material deforms with the geometry. If False, the stress in the material upon loading is kept constant corresponding to the initial strain.
name (str, optional) – The name of the material, default value None.
- property E: float¶
Returns the Young’s modulus.
- property fy: float¶
Returns the yield stress.
- property Eh: float¶
Returns the hardening modulus.
- property eps_su: float¶
Returns the ultimate strain.
- property constitutive_law: ConstitutiveLaw¶
Returns the ConstitutiveLaw of the object.
- property name¶
Returns the name of the material.
- property density¶
Returns the density of the material in kg/m3.
Generic material¶
- class structuralcodes.materials.basic.GenericMaterial(density: float, constitutive_law: ConstitutiveLaw, initial_strain: float | None = None, initial_stress: float | None = None, strain_compatibility: bool | None = None, name: str | None = None)[source]¶
A material class that accepts any constitutive law.
- __init__(density: float, constitutive_law: ConstitutiveLaw, initial_strain: float | None = None, initial_stress: float | None = None, strain_compatibility: bool | None = None, name: str | None = None)[source]¶
Initialize a material with a constitutive law.
- Parameters:
density (float) – The density.
constitutive_law (ConstitutiveLaw) – The constitutive law of the material.
initial_strain (Optional[float]) – Initial strain of the material.
initial_stress (Optional[float]) – Initial stress of the material.
strain_compatibility (Optional[bool]) – Only relevant if initial_strain or initial_stress are different from zero. If True, the material deforms with the geometry. If False, the stress in the material upon loading is kept constant corresponding to the initial strain.
name (str, optional) – The name of the material, default value None.
- property constitutive_law: ConstitutiveLaw¶
Returns the ConstitutiveLaw of the object.
- property name¶
Returns the name of the material.
- property density¶
Returns the density of the material in kg/m3.