Skip to content

formula_e_2

codes.eurocode.en_1995_1_1_2023.appendix_e.formula_e_2

Formula E.2 from EN 1995-1-1:2023.

Classes:

codes.eurocode.en_1995_1_1_2023.appendix_e.formula_e_2.FormEDot2MechanicalConnectEfficiencyFactor

FormEDot2MechanicalConnectEfficiencyFactor(
    i: DIMENSIONLESS, e_i: MPA, a_i: MM2, s_i: MM, k_i: N_MM, length: MM
)

Bases: Formula

Class representing formula E.2 for the factors for the efficiency of the mechanical \ connections of the respective i-numbered parts of the cross-section.

[\(\gamma_i\)] Factor for the efficiency of the mechanical connections of the respective i-numbered parts of the cross-section.

EN 1995-1-1:2023 art E.4(1) - Formula (E.2)

Parameters:

  • i (DIMENSIONLESS) –

    [\(i\)] Number of layer [\(-\)].

  • e_i (MPA) –

    [\(E_i\)] Modulus of elasticity of the i-numbered part of the cross-section [\(MPA\)].

  • a_i (MM2) –

    [\(A_i\)] Area of the i-numbered part of the cross-section [\(mm^2\)].

  • s_i (MM) –

    [\(s_i\)] Spacing between the connections, for i=1 and i=3 [\(mm\)]. For this formula implementation s_2 for i=2 needs to be given too, but it won't be used.

  • k_i (N_MM) –

    [\(K_i\)] Stiffness of connectors, according to the limit state under consideration [\(N/mm\)].

  • length (MM) –

    [\(l\)] Span of the member [\(mm\)].

Returns:

  • None
Source code in blueprints/codes/eurocode/en_1995_1_1_2023/appendix_e/formula_e_2.py
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
def __init__(self, i: DIMENSIONLESS, e_i: MPA, a_i: MM2, s_i: MM, k_i: N_MM, length: MM) -> None:
    r"""[$\gamma_i$] Factor for the efficiency of the mechanical connections of the respective i-numbered parts of the cross-section.

    EN 1995-1-1:2023 art E.4(1) - Formula (E.2)

    Parameters
    ----------
    i : DIMENSIONLESS
        [$i$] Number of layer [$-$].
    e_i : MPA
        [$E_i$] Modulus of elasticity of the i-numbered part of the cross-section [$MPA$].
    a_i : MM2
        [$A_i$] Area of the i-numbered part of the cross-section [$mm^2$].
    s_i : MM
        [$s_i$] Spacing between the connections, for i=1 and i=3 [$mm$].
                For this formula implementation s_2 for i=2 needs to be given too, but it won't be used.
    k_i : N_MM
        [$K_i$] Stiffness of connectors, according to the limit state under consideration [$N/mm$].
    length : MM
        [$l$] Span of the member [$mm$].

    Returns
    -------
    None
    """
    super().__init__()
    self.i = i
    self.e_i = e_i
    self.a_i = a_i
    self.s_i = s_i
    self.k_i = k_i
    self.length = length

codes.eurocode.en_1995_1_1_2023.appendix_e.formula_e_2.FormEDot2MechanicalConnectEfficiencyFactor.latex

latex(n: int = 2) -> LatexFormula

Returns LatexFormula object for formula E.2.

Source code in blueprints/codes/eurocode/en_1995_1_1_2023/appendix_e/formula_e_2.py
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
def latex(self, n: int = 2) -> LatexFormula:
    """Returns LatexFormula object for formula E.2."""
    l_2 = 2
    if self.i == l_2:
        eq_i = f"{self:.{n}f}"
        numeric_eq = f"{self:.{n}f}"
    else:
        eq_i = f"\\frac{{1}}{{1+\\frac{{\\pi^2 E_{self.i} A_{self.i} s_{self.i}}}{{K_{self.i} l^2}}}}"

        e_istr = {f"E_{self.i}": rf"{self.e_i:.{n}f} \cdot"}
        a_istr = {f"A_{self.i}": rf"{self.a_i:.{n}f} \cdot"}
        s_istr = {f"s_{self.i}": rf"{self.s_i:.{n}f}"}
        k_istr = {f"K_{self.i}": rf"{self.k_i:.{n}f} \cdot"}
        l_str = {"l": f"{self.length:.{n}f}"}
        repl_symb = e_istr | a_istr | s_istr | k_istr | l_str
        numeric_eq = latex_replace_symbols(eq_i, repl_symb)
    return LatexFormula(
        return_symbol=f"\\gamma_{self.i}",
        result=f"{self:.{n}f}",
        equation=eq_i,
        numeric_equation=numeric_eq,
        comparison_operator_label="=",
    )