FEM: concrete, rho calculation unit test
This commit is contained in:
@@ -128,6 +128,7 @@ gf()
|
||||
./bin/FreeCADCmd --run-test "femtest.testresult.TestResult.test_stress_von_mises"
|
||||
./bin/FreeCADCmd --run-test "femtest.testresult.TestResult.test_stress_principal_std"
|
||||
./bin/FreeCADCmd --run-test "femtest.testresult.TestResult.test_stress_principal_reinforced"
|
||||
./bin/FreeCADCmd --run-test "femtest.testresult.TestResult.test_rho"
|
||||
./bin/FreeCADCmd --run-test "femtest.testresult.TestResult.test_disp_abs"
|
||||
./bin/FreeCADCmd --run-test "femtest.testsolverframework.TestSolverFrameWork.test_solver_framework"
|
||||
|
||||
@@ -220,6 +221,9 @@ unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName("femtest.t
|
||||
import unittest
|
||||
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName("femtest.testresult.TestResult.test_stress_principal_reinforced"))
|
||||
|
||||
import unittest
|
||||
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName("femtest.testresult.TestResult.test_rho"))
|
||||
|
||||
import unittest
|
||||
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName("femtest.testresult.TestResult.test_disp_abs"))
|
||||
|
||||
|
||||
@@ -351,6 +351,83 @@ class TestResult(unittest.TestCase):
|
||||
"Calculated principal reinforced stresses are not the expected values."
|
||||
)
|
||||
|
||||
# ********************************************************************************************
|
||||
def test_rho(
|
||||
self
|
||||
):
|
||||
data = (
|
||||
(
|
||||
# Case1: Governing Eq.14
|
||||
(2.000, -2.000, 5.000, 6.000, -4.000, 2.000),
|
||||
(0.02400, 0.00400, 0.01400)
|
||||
),
|
||||
(
|
||||
# Case2: Governing Eq.10+
|
||||
(-3.000, -7.000, 0.000, 6.000, -4.000, 2.000),
|
||||
(0.00886, 0.00000, 0.00571),
|
||||
),
|
||||
(
|
||||
# Case3: Governing Eq.5
|
||||
(-1.000, -7.000, 10.000, 0.000, 0.000, 5.000),
|
||||
(0.00000, 0.00000, 0.02714)
|
||||
),
|
||||
(
|
||||
# Case4: Governing Eq.13
|
||||
(3.000, 0.000, 10.000, 0.000, 5.000, 0.000),
|
||||
(0.01600, 0.00000, 0.03000)
|
||||
),
|
||||
(
|
||||
# Case5: Governing Eq.11-
|
||||
(10.000, 7.000, -3.000, 3.000, 1.000, -2.000),
|
||||
(0.02533, 0.02133, 0.00000)
|
||||
),
|
||||
(
|
||||
# Case6: Governing Eq.14
|
||||
(4.000, -7.000, 3.000, 7.000, 0.000, -5.000),
|
||||
(0.02200, 0.01000, 0.01600)
|
||||
),
|
||||
(
|
||||
# Case7: Governing Eq.14
|
||||
(8.000, -14.000, 6.000, 14.000, 0.000, -10.000),
|
||||
(0.04400, 0.02000, 0.03200)
|
||||
),
|
||||
(
|
||||
# Case8: Governing Eq.17
|
||||
(1.000, 0.000, 3.000, 10.000, -8.000, 7.000),
|
||||
(0.02486, 0.01750, 0.01720)
|
||||
),
|
||||
(
|
||||
# Case9: Governing Eq.13
|
||||
(0.000, 0.000, 0.000, 10.000, 8.000, 7.000),
|
||||
(0.03600, 0.03400, 0.03000)
|
||||
),
|
||||
(
|
||||
# Case10: Governing Eq.13
|
||||
(15.000, 0.000, 0.000, 0.000, 0.000, 0.000),
|
||||
(0.03000, 0.00000, 0.00000)
|
||||
),
|
||||
(
|
||||
# Case11: Governing Eq.13
|
||||
(0.000, 0.000, 0.000, 5.000, 0.000, 0.000),
|
||||
(0.01000, 0.01000, 0.00000)
|
||||
)
|
||||
)
|
||||
|
||||
from femresult.resulttools import calculate_rho as calrho
|
||||
for i, case in enumerate(data):
|
||||
res = calrho(case[0], 500)
|
||||
rhores = (
|
||||
round(res[0], 5),
|
||||
round(res[1], 5),
|
||||
round(res[2], 5)
|
||||
)
|
||||
# fcc_print('Case{}: {}'.format(i + 1 , rhores))
|
||||
self.assertEqual(
|
||||
rhores, case[1],
|
||||
"Calculated rho are not the expected Case{}."
|
||||
.format(i + 1)
|
||||
)
|
||||
|
||||
# ********************************************************************************************
|
||||
def test_disp_abs(
|
||||
self
|
||||
|
||||
Reference in New Issue
Block a user