Creep and shrinkage

The following functions are related to calculation of creep and shrinkage.

Creep

structuralcodes.codes.ec2_2023.phi_50y_t0(t0: float, atm_conditions: Literal['dry', 'humid'], hn: float, strength_dev_class: Literal['CS', 'CN', 'CR', 'slow', 'normal', 'rapid']) float[source]

Computes the creep coefficient of plain concrete at 50 years of loading. Interpolation is linear between values.

EN 1992-1-1:2023, Table 5.2.

Parameters:
  • t0 (float) – Age at loading [days].

  • atm_conditions (str) – ‘dry’ or ‘humid’.

  • hn (float) – The notional size in mm.

  • strength_dev_class (str) – Strength development class ‘CS’, ‘CN’, ‘CR’, ‘slow’, ‘normal’ or ‘rapid’.

Returns:

The creep coefficient.

Return type:

float

Raises:
  • ValueError – If t0 is less than 1.

  • ValueError – If atm_conditions is not ‘dry’ or ‘humid’.

  • ValueError – If hn is less than 100 or larger than 1000.

  • ValueError – If strength_dev_class is not ‘CS’, ‘CN’, ‘CR’, ‘slow’, ‘normal’ or ‘rapid’.

  • ValueError – If combination of t0 and hn is out of scope.

structuralcodes.codes.ec2_2023.phi_correction_factor(fck: float, A_exponent: float) float[source]

Computes the correction factor for the computation of the phi_50y_t0.

EN 1992-1-1:2023, Table 5.2.

Parameters:
  • fck (float) – Characteristic strength of concrete in MPa.

  • A_exponent (float) – The A correction exponent value.

Returns:

The correction factor value.

Return type:

float

Raises:
  • ValueError – If fck is not between 12 and 100 MPa.

  • ValueError – If A_exponent is not between 0.64 and 0.82.

structuralcodes.codes.ec2_2023.A_phi_correction_exp(hn: float, atm_conditions: Literal['dry', 'humid']) float[source]

Computes the correction exponent for the modification for the phi_50y_t0 with respect the fck value.

EN 1992-1-1:2023, Table 5.2.

Parameters:
  • hn (float) – The notional size in mm.

  • atm_conditions (str) – ‘dry’ or ‘humid’.

Returns:

The correction exponent value.

Return type:

float

Raises:
  • ValueError – If hn is less than 100 or greater than 1000.

  • ValueError – If atm_conditions is not ‘dry’ or ‘humid’.

structuralcodes.codes.ec2_2023.hn(Ac: float, u: float) float[source]

Computes the notional size of a given concrete cross-section.

EN 1992-1-1:2023, Table 5.2.

Parameters:
  • Ac (float) – The concrete cross-sectional area in (mm2).

  • u (float) – The perimeter exposed to drying (mm).

Returns:

The notional size (mm).

Return type:

float

Raises:
  • ValueError – If Ac is less than 0.

  • ValueError – If u is less than 0.

Shrinkage

structuralcodes.codes.ec2_2023.eps_cs_50y(fck_28: float, atm_conditions: Literal['dry', 'humid'], hn: float, strength_dev_class: Literal['CS', 'CN', 'CR', 'slow', 'normal', 'rapid']) float[source]

Computes the nominal total shrinkage in ‰ for concrete after a duration of drying of 50 years.

EN 1992-1-1:2023, Table 5.3.

Parameters:
  • fck_28 (float) – Characteristic strength at 28 days in MPa

  • atm_conditions (str) – ‘dry’ or ‘humid’.

  • hn (float) – The notional size in mm.

  • strength_dev_class (str) – Strength development class ‘CS’, ‘CN’, ‘CR’, ‘slow’, ‘normal’ or ‘rapid’.

Returns:

The nominal shrinkage value in percent.

Return type:

float

Raises:
  • ValueError – If fck_28 is less than 20 MPa or larger than 80 MPa.

  • ValueError – If atm_conditions is not ‘dry’ or ‘humid’.

  • ValueError – If hn is less than 100 or larger than 1000.

  • ValueError – If strength_dev_class is not CS’, ‘CN’, ‘CR’, ‘slow’, ‘normal’ or ‘rapid’.

  • ValueError – If combination of fck_28 and hn is out of scope.