|
27 | 27 | [0.01, 2.78436565, 9.53031691e-2, 3.03596030e3, 6.29488297e2, 3.96167673e4] |
28 | 28 | ] |
29 | 29 |
|
| 30 | +# Table 4 |
30 | 31 | neuber = [ |
31 | 32 | [0.10, 1, 1.23677966e4, 1.57591655e3, 3.37620344e3, 3.81971644e3], |
32 | 33 | [0.05, 1, 7.04796191e3, 2.82805259e2, 2.12270476e3, 7.18179690e2], |
33 | 34 | # [0.01, 1, 1.56287589e3, 3.84789924e0, 5.07306512e2, 1.40319061e1], |
34 | | - |
| 35 | +# Table 5 |
35 | 36 | [0.10, 2, 1.50314876e4, 2.92100250e4, 5.23517907e3, 7.42990212e5], |
36 | 37 | [0.05, 2, 8.96257119e3, 2.62850975e4, 3.78409548e3, 8.81626379e5], |
37 | 38 | # [0.01, 2, 2.06474176e3, 8.03505311e3, 9.94116910e2, 3.12143230e5] |
@@ -170,6 +171,30 @@ def test_neuber_T6_triangle(): |
170 | 171 | assert Jvc == pytest.approx(Jv, rel=1e-2) |
171 | 172 | assert Jac == pytest.approx(Ja, rel=2e-1) |
172 | 173 |
|
| 174 | +def test_neuber_T6_material(): |
| 175 | + material = Material(E=4, G=2) |
| 176 | + for tr, rwf, J, Jw, Jv, Ja in neuber: |
| 177 | + tw = 20*tr |
| 178 | + tf = rwf*tw |
| 179 | + s = HollowRectangle( |
| 180 | + d=20, |
| 181 | + b=20, |
| 182 | + tw=tw, |
| 183 | + tf=tf, |
| 184 | + material=material, |
| 185 | + mesh_scale=1/4, |
| 186 | + mesh_type="T6", |
| 187 | + mesher="gmsh" |
| 188 | + ) |
| 189 | + sv = SaintVenantSectionAnalysis(s) |
| 190 | + Jsc = sv.twist_rigidity()/material["G"] |
| 191 | + # Jwc = s.cww()[0,0] |
| 192 | + # Jvc = s.cvv()[0,0] |
| 193 | + # Jac = s.css() |
| 194 | + assert Jsc == pytest.approx(J, rel=1e-2) |
| 195 | + # assert Jwc == pytest.approx(Jw, rel=1e-1) |
| 196 | + # assert Jvc == pytest.approx(Jv, rel=1e-2) |
| 197 | + # assert Jac == pytest.approx(Ja, rel=2e-1) |
173 | 198 |
|
174 | 199 | if __name__ == "__main__": |
175 | 200 |
|
|
0 commit comments