FEM: calculix unit tests, move test from ccxtools to calculix solver

This commit is contained in:
Bernd Hahnebach
2020-07-06 23:29:22 +02:00
parent e10fae803f
commit a1bf9d63fa
2 changed files with 96 additions and 71 deletions

View File

@@ -26,7 +26,6 @@ __title__ = "Ccxtools FEM unit tests"
__author__ = "Bernd Hahnebach"
__url__ = "http://www.freecadweb.org"
import sys
import unittest
from os.path import join
@@ -136,76 +135,6 @@ class TestCcxTools(unittest.TestCase):
res_obj_name=res_obj_name,
)
# ********************************************************************************************
def test_ccxcantilever_hexa20(
self
):
from femexamples.ccx_cantilever_hexa20faceload import setup
setup(self.document, "ccxtools")
self.input_file_writing_test(None, get_namefromdef("test_"))
# ********************************************************************************************
def test_constraint_contact_shell_shell(
self
):
from femexamples.constraint_contact_shell_shell import setup
setup(self.document, "ccxtools")
self.input_file_writing_test(None, get_namefromdef("test_"))
# ********************************************************************************************
def test_constraint_contact_solid_solid(
self
):
# does not pass on travis, but on my local system it does, Bernd
return
# TODO does not pass on Python 2
if sys.version_info.major < 3:
return
from femexamples.constraint_contact_solid_solid import setup
setup(self.document, "ccxtools")
self.input_file_writing_test(None, get_namefromdef("test_"))
# ********************************************************************************************
def test_constraint_sectionprint(
self
):
from femexamples.constraint_section_print import setup
setup(self.document, "ccxtools")
self.input_file_writing_test(None, get_namefromdef("test_"))
# ********************************************************************************************
def test_constraint_tie(
self
):
from femexamples.constraint_tie import setup
setup(self.document, "ccxtools")
self.input_file_writing_test(None, get_namefromdef("test_"))
# ********************************************************************************************
def test_material_multiple(
self
):
from femexamples.material_multiple_twoboxes import setup
setup(self.document, "ccxtools")
self.input_file_writing_test(None, get_namefromdef("test_"))
# ********************************************************************************************
def test_material_nonlinear(
self
):
from femexamples.material_nl_platewithhole import setup
setup(self.document, "ccxtools")
self.input_file_writing_test(None, get_namefromdef("test_"))
# ********************************************************************************************
def test_thermomech_bimetall(
self
):
from femexamples.thermomech_bimetall import setup
setup(self.document, "ccxtools")
self.input_file_writing_test(None, get_namefromdef("test_"))
# ********************************************************************************************
def test_thermomech_flow1D(
self

View File

@@ -25,6 +25,7 @@ __title__ = "Solver calculix FEM unit tests"
__author__ = "Bernd Hahnebach"
__url__ = "http://www.freecadweb.org"
import sys
import unittest
from os.path import join
@@ -77,6 +78,15 @@ class TestSolverCalculix(unittest.TestCase):
55 * "*"
))
# ********************************************************************************************
def test_box_frequency(
self
):
fcc_print("")
from femexamples.boxanalysis_frequency import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_box_static(
self
@@ -86,6 +96,92 @@ class TestSolverCalculix(unittest.TestCase):
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_ccxcantilever_hexa20(
self
):
from femexamples.ccx_cantilever_hexa20faceload import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_constraint_contact_shell_shell(
self
):
from femexamples.constraint_contact_shell_shell import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_constraint_contact_solid_solid(
self
):
# does not pass on travis, but on my local system it does, Bernd
return
# TODO does not pass on Python 2
if sys.version_info.major < 3:
return
from femexamples.constraint_contact_solid_solid import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_constraint_sectionprint(
self
):
from femexamples.constraint_section_print import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_constraint_tie(
self
):
from femexamples.constraint_tie import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_material_multiple(
self
):
from femexamples.material_multiple_twoboxes import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_material_nonlinear(
self
):
from femexamples.material_nl_platewithhole import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_thermomech_bimetall(
self
):
from femexamples.thermomech_bimetall import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_thermomech_flow1D(
self
):
from femexamples.thermomech_flow1d import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_thermomech_spine(
self
):
from femexamples.thermomech_spine import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def input_file_writing_test(
self,