EurocodeNonLinear#
- class concreteproperties.stress_strain_profile.EurocodeNonLinear(elastic_modulus: float, ultimate_strain: float, compressive_strength: float, compressive_strain: float, tensile_strength: float, tension_softening_stiffness: float, n_points_1: int = 10, n_points_2: int = 3)[source]#
Bases:
ConcreteServiceProfile
Class for a non-linear stress-strain relationship to EC2.
Tension is modelled with a symmetric
elastic_modulus
until failure attensile_strength
, after which the tensile stress reduces according to thetension_softening_stiffness
.- Parameters:
elastic_modulus (float) – Concrete elastic modulus (\(E_{cm}\))
ultimate_strain (float) – Concrete strain at failure (\(\epsilon_{cu1}\))
compressive_strength (float) – Concrete compressive strength (\(f_{cm}\))
compressive_strain (float) – Strain at which the concrete stress equals the compressive strength (\(\epsilon_{c1}\))
tensile_strength (float) – Concrete tensile strength
tension_softening_stiffness (float) – Slope of the linear tension softening branch
n_points_1 (int) – Number of points to discretise the curve prior to the peak stress
n_points_2 (int) – Number of points to discretise the curve after the peak stress
Methods
Returns the most positive stress.
Returns the elastic modulus of the stress-strain profile.
Returns a stress given a strain.
Returns the most negative stress.
Returns the largest strain.
Returns the largest tensile strain.
Returns an ordered list of unique strains.
Returns the yield strength of the stress-strain profile.
Plots the stress-strain profile.
Prints the stress-strain profile properties to the terminal.
Attributes
n_points_1
n_points_2
strains
stresses
elastic_modulus
ultimate_strain
compressive_strength
compressive_strain
tensile_strength
tension_softening_stiffness
- get_compressive_strength() float | None #
Returns the most positive stress.
- Returns:
Compressive strength
- Return type:
float | None
- get_elastic_modulus() float #
Returns the elastic modulus of the stress-strain profile.
- Returns:
Elastic modulus
- Return type:
- get_tensile_strength() float | None #
Returns the most negative stress.
- Returns:
Tensile strength
- Return type:
float | None
- get_ultimate_compressive_strain() float #
Returns the largest strain.
- Returns:
Ultimate strain
- Return type:
- get_ultimate_tensile_strain() float #
Returns the largest tensile strain.
- Returns:
Ultimate strain
- Return type:
- get_yield_strength() float #
Returns the yield strength of the stress-strain profile.
- Raises:
NotImplementedError – If this method has not been implemented by the child class
- Return type:
- plot_stress_strain(title: str = 'Stress-Strain Profile', fmt: str = 'o-', **kwargs) matplotlib.axes.Axes #
Plots the stress-strain profile.
- Parameters:
title (str) – Plot title
fmt (str) – Plot format string
kwargs – Passed to
plotting_context()
- Returns:
Matplotlib axes object
- Return type: