Skip to content

formula_8_52

codes.eurocode.fpr_en_1992_1_1_2023.chapter_8_ultimate_limit_states.formula_8_52

Formula 8.52 from FprEN 1992-1-1:2023: Chapter 8 - Ultimate Limit State.

Classes:

codes.eurocode.fpr_en_1992_1_1_2023.chapter_8_ultimate_limit_states.formula_8_52.Form8Dot52CompressiveChordForceDueToShear

Form8Dot52CompressiveChordForceDueToShear(m_ed: NMM, z: MM, n_vd: N, n_ed: N)

Bases: Formula

Class representing formula 8.52 for the calculation of the compressive chord force due to shear.

[\(F_{cd}\)] Calculation of the compressive chord force due to shear [\(N\)].

FprEN 1992-1-1:2023 art 8.2.3 (8) - Formula (8.52)

Parameters:

  • m_ed (NMM) –

    [\(M_{Ed}\)] Design moment at the section [\(Nmm\)].

  • z (MM) –

    [\(z\)] Lever arm [\(mm\)].

  • n_vd (N) –

    [\(N_{Vd}\)] Additional tensile axial force due to shear [\(N\)].

  • n_ed (N) –

    [\(N_{Ed}\)] Axial force in the section [\(N\)].

Source code in blueprints/codes/eurocode/fpr_en_1992_1_1_2023/chapter_8_ultimate_limit_states/formula_8_52.py
16
17
18
19
20
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,
    m_ed: NMM,
    z: MM,
    n_vd: N,
    n_ed: N,
) -> None:
    r"""[$F_{cd}$] Calculation of the compressive chord force due to shear [$N$].

    FprEN 1992-1-1:2023 art 8.2.3 (8) - Formula (8.52)

    Parameters
    ----------
    m_ed : NMM
        [$M_{Ed}$] Design moment at the section [$Nmm$].
    z : MM
        [$z$] Lever arm [$mm$].
    n_vd : N
        [$N_{Vd}$] Additional tensile axial force due to shear [$N$].
    n_ed : N
        [$N_{Ed}$] Axial force in the section [$N$].
    """
    super().__init__()
    self.m_ed = m_ed
    self.z = z
    self.n_vd = n_vd
    self.n_ed = n_ed

codes.eurocode.fpr_en_1992_1_1_2023.chapter_8_ultimate_limit_states.formula_8_52.Form8Dot52CompressiveChordForceDueToShear.latex

latex(n: int = 3) -> LatexFormula

Returns LatexFormula object for formula 8.52.

Source code in blueprints/codes/eurocode/fpr_en_1992_1_1_2023/chapter_8_ultimate_limit_states/formula_8_52.py
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
def latex(self, n: int = 3) -> LatexFormula:
    """Returns LatexFormula object for formula 8.52."""
    _equation: str = r"\frac{M_{Ed}}{z} - \frac{N_{Vd} + N_{Ed}}{2}"
    _numeric_equation: str = latex_replace_symbols(
        _equation,
        {
            r"M_{Ed}": f"{self.m_ed:.{n}f}",
            r"z": f"{self.z:.{n}f}",
            r"N_{Vd}": f"{self.n_vd:.{n}f}",
            r"N_{Ed}": f"{self.n_ed:.{n}f}",
        },
        False,
    )
    _numeric_equation_with_units: str = latex_replace_symbols(
        _equation,
        {
            r"M_{Ed}": rf"{self.m_ed:.{n}f} \ Nmm",
            r"z": rf"{self.z:.{n}f} \ mm",
            r"N_{Vd}": rf"{self.n_vd:.{n}f} \ N",
            r"N_{Ed}": rf"{self.n_ed:.{n}f} \ N",
        },
        True,
    )
    return LatexFormula(
        return_symbol=r"F_{cd}",
        result=f"{self:.{n}f}",
        equation=_equation,
        numeric_equation=_numeric_equation,
        numeric_equation_with_units=_numeric_equation_with_units,
        comparison_operator_label="=",
        unit="N",
    )