concreteproperties.stress_strain_profile.EurocodeNonLinear#
- class EurocodeNonLinear(elastic_modulus, ultimate_strain, compressive_strength, compressive_strain, tensile_strength, tension_softening_stiffness, n_points_1=10, n_points_2=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 strengthtension_softening_stiffness (
float
) – Slope of the linear tension softening branchn_points_1 (
int
, default:10
) – Number of points to discretise the curve prior to the peak stressn_points_2 (
int
, default:3
) – 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()#
Returns the most positive stress.
- Returns
Optional
[float
] – Compressive strength
- get_elastic_modulus()#
Returns the elastic modulus of the stress-strain profile.
- Returns
float
– Elastic modulus
- get_stress(strain)#
Returns a stress given a strain.
- Parameters
strain (
float
) – Strain at which to return a stress.- Returns
float
– Stress
- get_tensile_strength()#
Returns the most negative stress.
- Returns
Optional
[float
] – Tensile strength
- get_ultimate_compressive_strain()#
Returns the largest strain.
- Returns
float
– Ultimate strain
- get_ultimate_tensile_strain()#
Returns the largest tensile strain.
- Returns
float
– Ultimate strain
- get_unique_strains()#
Returns an ordered list of unique strains.
- Returns
List
[float
] – Ordered list of unique strains
- get_yield_strength()#
Returns the yield strength of the stress-strain profile.
- Returns
float
– Yield strength
- plot_stress_strain(title='Stress-Strain Profile', fmt='o-', **kwargs)#
Plots the stress-strain profile.
- Parameters
title (
str
, default:'Stress-Strain Profile'
) – Plot titlefmt (
str
, default:'o-'
) – Plot format stringkwargs – Passed to
plotting_context()
- Returns
Axes
– Matplotlib axes object
- print_properties(fmt='8.6e')#
Prints the stress-strain profile properties to the terminal.
- Parameters
fmt (
str
, default:'8.6e'
) – Number format