Skip to content

formula_8_45

codes.eurocode.fpr_en_1992_1_1_2023.chapter_8_ultimate_limit_states.formula_8_45

Formula 8.45 from FprEN-1992-1-1:2023: Chapter 8: Ultimate limit states (ULS).

Classes:

codes.eurocode.fpr_en_1992_1_1_2023.chapter_8_ultimate_limit_states.formula_8_45.Form8Dot45StrengthReductionFactor

Form8Dot45StrengthReductionFactor(epsilon_x: DIMENSIONLESS, theta: DEG)

Bases: Formula

Class representing formula 8.45 for the strength reduction factor nu based on the state of strains.

Strength reduction factor nu based on the state of strains of the member according to: [\(\nu = \frac{1}{1.0 + 110 \cdot (\epsilon_x + (\epsilon_x + 0.001) \cdot \cot^2 \theta)} \leq 1.0\)]

Strength reduction factor nu based on the state of strains of the member. The factor may be calculated according to formula (8.45) when the inclination of the compression field is lower than theta_min given in 8.2.3 (4) and the ductility class of the reinforcement is B or C.

FprEN 1992-1-1:2023 art. 8.2.3 (7) - Formula (8.45)

Parameters:

  • epsilon_x (DIMENSIONLESS) –

    [\(\epsilon_x\)] Average strain of the bottom and top chords (dimensionless). The average strain may be calculated according to formula (8.46).

  • theta (DEG) –

    [\(\theta\)] Angle of the compression field inclination to the member axis [\(degrees\)].

Source code in blueprints/codes/eurocode/fpr_en_1992_1_1_2023/chapter_8_ultimate_limit_states/formula_8_45.py
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
def __init__(
    self,
    epsilon_x: DIMENSIONLESS,
    theta: DEG,
) -> None:
    r"""Strength reduction factor nu based on the state of strains of the member.
    The factor may be calculated according to formula (8.45) when the inclination of the compression field is
    lower than theta_min given in 8.2.3 (4) and the ductility class of the reinforcement is B or C.

    FprEN 1992-1-1:2023 art. 8.2.3 (7) - Formula (8.45)

    Parameters
    ----------
    epsilon_x : DIMENSIONLESS
        [$\epsilon_x$] Average strain of the bottom and top chords (dimensionless). The average strain may
        be calculated according to formula (8.46).
    theta : DEG
        [$\theta$] Angle of the compression field inclination to the member axis [$degrees$].
    """
    super().__init__()
    self.epsilon_x = epsilon_x
    self.theta = theta

codes.eurocode.fpr_en_1992_1_1_2023.chapter_8_ultimate_limit_states.formula_8_45.Form8Dot45StrengthReductionFactor.latex

latex(n: int = 3) -> LatexFormula

Returns LatexFormula object for formula 8.45.

Source code in blueprints/codes/eurocode/fpr_en_1992_1_1_2023/chapter_8_ultimate_limit_states/formula_8_45.py
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
def latex(self, n: int = 3) -> LatexFormula:
    """Returns LatexFormula object for formula 8.45."""
    _equation: str = (
        r"\frac{1}{1.0 + 110 \cdot \left( \epsilon_x + \left( \epsilon_x + 0.001 \right) \cdot \cot^2 \left( \theta \right) \right)} \leq 1.0"
    )
    _numeric_equation: str = latex_replace_symbols(
        _equation,
        {
            r"\epsilon_x": f"{self.epsilon_x:.{n}f}",
            r"\theta": f"{self.theta:.{n}f}",
        },
        False,
    )
    _numeric_equation_with_units: str = latex_replace_symbols(
        _equation,
        {
            r"\epsilon_x": f"{self.epsilon_x:.{n}f}",
            r"\theta": rf"{self.theta:.{n}f} ^\circ",
        },
        False,
    )
    intermediate_result = rf"{self._evaluate_pt1(epsilon_x=self.epsilon_x, theta=self.theta):.{n}f} \leq 1.0"

    return LatexFormula(
        return_symbol=r"\nu",
        result=f"{self:.{n}f}",
        intermediate_result=intermediate_result,
        equation=_equation,
        numeric_equation=_numeric_equation,
        numeric_equation_with_units=_numeric_equation_with_units,
        comparison_operator_label=r"=",
        unit="",
    )