FEM: calculix unit tests, add ccx cantilever with seg2, seg3, tria3 and tria6 mesh elements

This commit is contained in:
Bernd Hahnebach
2021-07-28 17:15:09 +02:00
parent 0974f8f250
commit ac7caebb59
7 changed files with 2521 additions and 14 deletions

View File

@@ -300,6 +300,10 @@ SET(FemTestsCcx_SRCS
femtest/data/calculix/ccx_buckling_flexuralbuckling.inp
femtest/data/calculix/ccx_cantilever_faceload.inp
femtest/data/calculix/ccx_cantilever_ele_hexa20.inp
femtest/data/calculix/ccx_cantilever_ele_seg2.inp
femtest/data/calculix/ccx_cantilever_ele_seg3.inp
femtest/data/calculix/ccx_cantilever_ele_tria3.inp
femtest/data/calculix/ccx_cantilever_ele_tria6.inp
femtest/data/calculix/ccx_cantilever_nodeload.inp
femtest/data/calculix/ccx_cantilever_prescribeddisplacement.inp
femtest/data/calculix/constraint_centrif.inp

View File

@@ -119,6 +119,38 @@ class TestSolverCalculix(unittest.TestCase):
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_ccx_cantilever_ele_seg2(
self
):
from femexamples.ccx_cantilever_ele_seg2 import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_ccx_cantilever_ele_seg3(
self
):
from femexamples.ccx_cantilever_ele_seg3 import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_ccx_cantilever_ele_tria3(
self
):
from femexamples.ccx_cantilever_ele_tria3 import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_ccx_cantilever_ele_tria6(
self
):
from femexamples.ccx_cantilever_ele_tria6 import setup
setup(self.document, "calculix")
self.input_file_writing_test(get_namefromdef("test_"))
# ********************************************************************************************
def test_ccx_cantilever_nodeload(
self

View File

@@ -0,0 +1,277 @@
** written by FreeCAD inp file writer for CalculiX,Abaqus meshes
** highest dimension mesh elements only.
** Nodes
*Node, NSET=Nall
1, 0, 500, 500
2, 8000, 500, 500
3, 148.1481481481, 500, 500
4, 296.2962962963, 500, 500
5, 444.4444444444, 500, 500
6, 592.5925925926, 500, 500
7, 740.7407407407, 500, 500
8, 888.8888888889, 500, 500
9, 1037.037037037, 500, 500
10, 1185.185185185, 500, 500
11, 1333.333333333, 500, 500
12, 1481.481481481, 500, 500
13, 1629.62962963, 500, 500
14, 1777.777777778, 500, 500
15, 1925.925925926, 500, 500
16, 2074.074074074, 500, 500
17, 2222.222222222, 500, 500
18, 2370.37037037, 500, 500
19, 2518.518518519, 500, 500
20, 2666.666666667, 500, 500
21, 2814.814814815, 500, 500
22, 2962.962962963, 500, 500
23, 3111.111111111, 500, 500
24, 3259.259259259, 500, 500
25, 3407.407407407, 500, 500
26, 3555.555555556, 500, 500
27, 3703.703703704, 500, 500
28, 3851.851851852, 500, 500
29, 4000, 500, 500
30, 4148.148148148, 500, 500
31, 4296.296296296, 500, 500
32, 4444.444444444, 500, 500
33, 4592.592592593, 500, 500
34, 4740.740740741, 500, 500
35, 4888.888888889, 500, 500
36, 5037.037037037, 500, 500
37, 5185.185185185, 500, 500
38, 5333.333333333, 500, 500
39, 5481.481481481, 500, 500
40, 5629.62962963, 500, 500
41, 5777.777777778, 500, 500
42, 5925.925925926, 500, 500
43, 6074.074074074, 500, 500
44, 6222.222222222, 500, 500
45, 6370.37037037, 500, 500
46, 6518.518518519, 500, 500
47, 6666.666666667, 500, 500
48, 6814.814814815, 500, 500
49, 6962.962962963, 500, 500
50, 7111.111111111, 500, 500
51, 7259.259259259, 500, 500
52, 7407.407407407, 500, 500
53, 7555.555555556, 500, 500
54, 7703.703703704, 500, 500
55, 7851.851851852, 500, 500
** Edge elements
*Element, TYPE=B31, ELSET=Eedges
1, 1, 3
2, 3, 4
3, 4, 5
4, 5, 6
5, 6, 7
6, 7, 8
7, 8, 9
8, 9, 10
9, 10, 11
10, 11, 12
11, 12, 13
12, 13, 14
13, 14, 15
14, 15, 16
15, 16, 17
16, 17, 18
17, 18, 19
18, 19, 20
19, 20, 21
20, 21, 22
21, 22, 23
22, 23, 24
23, 24, 25
24, 25, 26
25, 26, 27
26, 27, 28
27, 28, 29
28, 29, 30
29, 30, 31
30, 31, 32
31, 32, 33
32, 33, 34
33, 34, 35
34, 35, 36
35, 36, 37
36, 37, 38
37, 38, 39
38, 39, 40
39, 40, 41
40, 41, 42
41, 42, 43
42, 43, 44
43, 44, 45
44, 45, 46
45, 46, 47
46, 47, 48
47, 48, 49
48, 49, 50
49, 50, 51
50, 51, 52
51, 52, 53
52, 53, 54
53, 54, 55
54, 55, 2
** Define element set Eall
*ELSET, ELSET=Eall
Eedges
***********************************************************
** Element sets for materials and FEM element type (solid, shell, beam, fluid)
*ELSET,ELSET=M0B0RstdD0
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
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,
43,
44,
45,
46,
47,
48,
49,
50,
51,
52,
53,
54,
***********************************************************
** constraints fixed node sets
** ConstraintFixed
*NSET,NSET=ConstraintFixed
1,
***********************************************************
** Materials
** see information about units at file end
** FreeCAD material name: Calculix-Steel
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
*ELASTIC
210000,0.3
***********************************************************
** Sections
*BEAM SECTION, ELSET=M0B0RstdD0, MATERIAL=MechanicalMaterial, SECTION=RECT
1000,1000
-0, 1, 0
***********************************************************
** At least one step is needed to run an CalculiX analysis of FreeCAD
*STEP
*STATIC
***********************************************************
** Fixed Constraints
** ConstraintFixed
*BOUNDARY
ConstraintFixed,1
ConstraintFixed,2
ConstraintFixed,3
ConstraintFixed,4
ConstraintFixed,5
ConstraintFixed,6
***********************************************************
** constraints force node loads
*CLOAD
** ConstraintForce
** node load on shape: CantileverLine:Vertex2
2,3,-9.0000000000000E+06
***********************************************************
** Outputs --> frd file
*NODE FILE, OUTPUT=2d
U
*EL FILE
S, E
** outputs --> dat file
** reaction forces for Constraint fixed
*NODE PRINT, NSET=ConstraintFixed, TOTALS=ONLY
RF
***********************************************************
*END STEP
***********************************************************
** CalculiX Input file
** written by --> FreeCAD 0.20.25335 (Git)
** written on --> Wed Jul 28 17:01:46 2021
** file name --> test.FCStd
** analysis name --> Analysis
**
**
***********************************************************
** About units:
** See ccx manual, ccx does not know about any unit.
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
** Length: mm (this includes the mesh geometry)
** Mass: t
** TimeSpan: s
** Temperature: K
**
** This leads to:
** Force: N
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -0,0 +1,135 @@
** written by FreeCAD inp file writer for CalculiX,Abaqus meshes
** highest dimension mesh elements only.
** Nodes
*Node, NSET=Nall
1, 0, 500, 500
2, 8000, 500, 500
3, 1600, 500, 500
4, 3200, 500, 500
5, 4800, 500, 500
6, 6400, 500, 500
7, 800, 500, 500
8, 2400, 500, 500
9, 4000, 500, 500
10, 5600, 500, 500
11, 7200, 500, 500
** Edge elements
*Element, TYPE=B32, ELSET=Eedges
1, 1, 7, 3
2, 3, 8, 4
3, 4, 9, 5
4, 5, 10, 6
5, 6, 11, 2
** Define element set Eall
*ELSET, ELSET=Eall
Eedges
***********************************************************
** Element sets for materials and FEM element type (solid, shell, beam, fluid)
*ELSET,ELSET=M0B0RstdD0
1,
2,
3,
4,
5,
***********************************************************
** constraints fixed node sets
** ConstraintFixed
*NSET,NSET=ConstraintFixed
1,
***********************************************************
** Materials
** see information about units at file end
** FreeCAD material name: Calculix-Steel
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
*ELASTIC
210000,0.3
***********************************************************
** Sections
*BEAM SECTION, ELSET=M0B0RstdD0, MATERIAL=MechanicalMaterial, SECTION=RECT
1000,1000
-0, 1, 0
***********************************************************
** At least one step is needed to run an CalculiX analysis of FreeCAD
*STEP
*STATIC
***********************************************************
** Fixed Constraints
** ConstraintFixed
*BOUNDARY
ConstraintFixed,1
ConstraintFixed,2
ConstraintFixed,3
ConstraintFixed,4
ConstraintFixed,5
ConstraintFixed,6
***********************************************************
** constraints force node loads
*CLOAD
** ConstraintForce
** node load on shape: CantileverLine:Vertex2
2,3,-9.0000000000000E+06
***********************************************************
** Outputs --> frd file
*NODE FILE, OUTPUT=2d
U
*EL FILE
S, E
** outputs --> dat file
** reaction forces for Constraint fixed
*NODE PRINT, NSET=ConstraintFixed, TOTALS=ONLY
RF
***********************************************************
*END STEP
***********************************************************
** CalculiX Input file
** written by --> FreeCAD 0.20.25335 (Git)
** written on --> Wed Jul 28 16:59:39 2021
** file name --> test.FCStd
** analysis name --> Analysis
**
**
***********************************************************
** About units:
** See ccx manual, ccx does not know about any unit.
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
** Length: mm (this includes the mesh geometry)
** Mass: t
** TimeSpan: s
** Temperature: K
**
** This leads to:
** Force: N
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,374 @@
** written by FreeCAD inp file writer for CalculiX,Abaqus meshes
** highest dimension mesh elements only.
** Nodes
*Node, NSET=Nall
1, 0, 500, 0
2, 0, 500, 1000
3, 8000, 500, 0
4, 8000, 500, 1000
5, 0, 500, 500
6, 0, 500, 250
7, 0, 500, 750
8, 500, 500, 0
9, 1000, 500, 0
10, 1500, 500, 0
11, 2000, 500, 0
12, 2500, 500, 0
13, 3000, 500, 0
14, 3500, 500, 0
15, 4000, 500, 0
16, 4500, 500, 0
17, 5000, 500, 0
18, 5500, 500, 0
19, 6000, 500, 0
20, 6500, 500, 0
21, 7000, 500, 0
22, 7500, 500, 0
23, 250, 500, 0
24, 750, 500, 0
25, 1250, 500, 0
26, 1750, 500, 0
27, 2250, 500, 0
28, 2750, 500, 0
29, 3250, 500, 0
30, 3750, 500, 0
31, 4250, 500, 0
32, 4750, 500, 0
33, 5250, 500, 0
34, 5750, 500, 0
35, 6250, 500, 0
36, 6750, 500, 0
37, 7250, 500, 0
38, 7750, 500, 0
39, 8000, 500, 500
40, 8000, 500, 250
41, 8000, 500, 750
42, 500, 500, 1000
43, 1000, 500, 1000
44, 1500, 500, 1000
45, 2000, 500, 1000
46, 2500, 500, 1000
47, 3000, 500, 1000
48, 3500, 500, 1000
49, 4000, 500, 1000
50, 4500, 500, 1000
51, 5000, 500, 1000
52, 5500, 500, 1000
53, 6000, 500, 1000
54, 6500, 500, 1000
55, 7000, 500, 1000
56, 7500, 500, 1000
57, 250, 500, 1000
58, 750, 500, 1000
59, 1250, 500, 1000
60, 1750, 500, 1000
61, 2250, 500, 1000
62, 2750, 500, 1000
63, 3250, 500, 1000
64, 3750, 500, 1000
65, 4250, 500, 1000
66, 4750, 500, 1000
67, 5250, 500, 1000
68, 5750, 500, 1000
69, 6250, 500, 1000
70, 6750, 500, 1000
71, 7250, 500, 1000
72, 7750, 500, 1000
73, 714.9234693878, 500, 484.056122449
74, 1750, 500, 500
75, 2750, 500, 500
76, 3750, 500, 500
77, 4750, 500, 500
78, 5750, 500, 500
79, 6756.944444444, 500, 489.5833333333
80, 7301.463293651, 500, 489.7073412698
81, 1244.153911565, 500, 497.3426870748
82, 2250, 500, 500
83, 3250, 500, 500
84, 4250, 500, 500
85, 5250, 500, 500
86, 6251.157407407, 500, 498.2638888889
87, 355.2776691685, 500, 632.3045669746
88, 7660.39819718, 500, 648.5965255879
89, 7699.764777976, 500, 310.4561768902
90, 314.0402277112, 500, 323.2721378847
91, 1122.076955782, 500, 748.6713435374
92, 1372.076955782, 500, 748.6713435374
93, 2125, 500, 750
94, 2375, 500, 750
95, 3125, 500, 750
96, 3375, 500, 750
97, 4125, 500, 750
98, 4375, 500, 750
99, 5125, 500, 750
100, 5375, 500, 750
101, 6125.578703704, 500, 749.1319444444
102, 6375.578703704, 500, 749.1319444444
103, 857.4617346939, 500, 742.0280612245
104, 979.5386904762, 500, 490.6994047619
105, 1497.076955782, 500, 498.6713435374
106, 1625, 500, 750
107, 1875, 500, 750
108, 2000, 500, 500
109, 2500, 500, 500
110, 2625, 500, 750
111, 2875, 500, 750
112, 3000, 500, 500
113, 3500, 500, 500
114, 3625, 500, 750
115, 3875, 500, 750
116, 4000, 500, 500
117, 4500, 500, 500
118, 4625, 500, 750
119, 4875, 500, 750
120, 5000, 500, 500
121, 5500, 500, 500
122, 5625, 500, 750
123, 5875, 500, 750
124, 6000.578703704, 500, 499.1319444444
125, 6504.050925926, 500, 493.9236111111
126, 6628.472222222, 500, 744.7916666667
127, 7150.731646825, 500, 244.8536706349
128, 7029.203869048, 500, 489.6453373016
129, 6878.472222222, 500, 244.7916666667
130, 6878.472222222, 500, 744.7916666667
131, 7150.731646825, 500, 744.8536706349
132, 7400.731646825, 500, 244.8536706349
133, 7400.731646825, 500, 744.8536706349
134, 857.4617346939, 500, 242.0280612245
135, 607.4617346939, 500, 242.0280612245
136, 1875, 500, 250
137, 1625, 500, 250
138, 2875, 500, 250
139, 2625, 500, 250
140, 3875, 500, 250
141, 3625, 500, 250
142, 4875, 500, 250
143, 4625, 500, 250
144, 5875, 500, 250
145, 5625, 500, 250
146, 6628.472222222, 500, 244.7916666667
147, 607.4617346939, 500, 742.0280612245
148, 1122.076955782, 500, 248.6713435374
149, 1372.076955782, 500, 248.6713435374
150, 2125, 500, 250
151, 2375, 500, 250
152, 3125, 500, 250
153, 3375, 500, 250
154, 4125, 500, 250
155, 4375, 500, 250
156, 5125, 500, 250
157, 5375, 500, 250
158, 6125.578703704, 500, 249.1319444444
159, 6375.578703704, 500, 249.1319444444
160, 514.4818485495, 500, 403.6641301669
161, 407.0201138556, 500, 161.6360689424
162, 177.6388345842, 500, 566.1522834873
163, 177.6388345842, 500, 816.1522834873
164, 427.6388345842, 500, 816.1522834873
165, 535.1005692781, 500, 558.1803447118
166, 7599.882388988, 500, 155.2280884451
167, 7500.614035813, 500, 400.08175908
168, 7830.19909859, 500, 824.2982627939
169, 7830.19909859, 500, 574.2982627939
170, 7580.19909859, 500, 824.2982627939
171, 7480.930745415, 500, 569.1519334289
172, 334.6589484399, 500, 477.7883524297
173, 7849.882388988, 500, 405.2280884451
174, 7849.882388988, 500, 155.2280884451
175, 157.0201138556, 500, 161.6360689424
176, 157.0201138556, 500, 411.6360689424
177, 7680.081487578, 500, 479.5263512391
** Face elements
*Element, TYPE=S6, ELSET=Efaces
37, 43, 81, 44, 91, 92, 59
38, 45, 82, 46, 93, 94, 61
39, 47, 83, 48, 95, 96, 63
40, 49, 84, 50, 97, 98, 65
41, 51, 85, 52, 99, 100, 67
42, 53, 86, 54, 101, 102, 69
43, 43, 73, 81, 103, 104, 91
44, 44, 81, 74, 92, 105, 106
45, 45, 74, 82, 107, 108, 93
46, 46, 82, 75, 94, 109, 110
47, 47, 75, 83, 111, 112, 95
48, 48, 83, 76, 96, 113, 114
49, 49, 76, 84, 115, 116, 97
50, 50, 84, 77, 98, 117, 118
51, 51, 77, 85, 119, 120, 99
52, 52, 85, 78, 100, 121, 122
53, 53, 78, 86, 123, 124, 101
54, 54, 86, 79, 102, 125, 126
55, 21, 80, 79, 127, 128, 129
56, 55, 79, 80, 130, 128, 131
57, 21, 22, 80, 37, 132, 127
58, 55, 80, 56, 131, 133, 71
59, 8, 9, 73, 24, 134, 135
60, 10, 11, 74, 26, 136, 137
61, 12, 13, 75, 28, 138, 139
62, 14, 15, 76, 30, 140, 141
63, 16, 17, 77, 32, 142, 143
64, 18, 19, 78, 34, 144, 145
65, 20, 21, 79, 36, 129, 146
66, 42, 73, 43, 147, 103, 58
67, 44, 74, 45, 106, 107, 60
68, 46, 75, 47, 110, 111, 62
69, 48, 76, 49, 114, 115, 64
70, 50, 77, 51, 118, 119, 66
71, 52, 78, 53, 122, 123, 68
72, 54, 79, 55, 126, 130, 70
73, 9, 81, 73, 148, 104, 134
74, 10, 74, 81, 137, 105, 149
75, 11, 82, 74, 150, 108, 136
76, 12, 75, 82, 139, 109, 151
77, 13, 83, 75, 152, 112, 138
78, 14, 76, 83, 141, 113, 153
79, 15, 84, 76, 154, 116, 140
80, 16, 77, 84, 143, 117, 155
81, 17, 85, 77, 156, 120, 142
82, 18, 78, 85, 145, 121, 157
83, 19, 86, 78, 158, 124, 144
84, 20, 79, 86, 146, 125, 159
85, 9, 10, 81, 25, 149, 148
86, 11, 12, 82, 27, 151, 150
87, 13, 14, 83, 29, 153, 152
88, 15, 16, 84, 31, 155, 154
89, 17, 18, 85, 33, 157, 156
90, 19, 20, 86, 35, 159, 158
91, 8, 73, 90, 135, 160, 161
92, 2, 5, 87, 7, 162, 163
93, 2, 87, 42, 163, 164, 57
94, 42, 87, 73, 164, 165, 147
95, 22, 89, 80, 166, 167, 132
96, 4, 88, 39, 168, 169, 41
97, 4, 56, 88, 72, 170, 168
98, 56, 80, 88, 133, 171, 170
99, 73, 87, 90, 165, 172, 160
100, 3, 39, 89, 40, 173, 174
101, 3, 89, 22, 174, 166, 38
102, 1, 90, 5, 175, 176, 6
103, 1, 8, 90, 23, 161, 175
104, 80, 89, 88, 167, 177, 171
105, 5, 90, 87, 176, 172, 162
106, 39, 88, 89, 169, 177, 173
** Define element set Eall
*ELSET, ELSET=Eall
Efaces
***********************************************************
** Element sets for materials and FEM element type (solid, shell, beam, fluid)
*ELSET,ELSET=MechanicalMaterialThickness
Efaces
***********************************************************
** constraints fixed node sets
** ConstraintFixed
*NSET,NSET=ConstraintFixed
1,
2,
5,
6,
7,
***********************************************************
** Materials
** see information about units at file end
** FreeCAD material name: Calculix-Steel
** MechanicalMaterial
*MATERIAL, NAME=MechanicalMaterial
*ELASTIC
210000,0.3
***********************************************************
** Sections
*SHELL SECTION, ELSET=MechanicalMaterialThickness, MATERIAL=MechanicalMaterial
1000
***********************************************************
** At least one step is needed to run an CalculiX analysis of FreeCAD
*STEP
*STATIC
***********************************************************
** Fixed Constraints
** ConstraintFixed
*BOUNDARY
ConstraintFixed,1
ConstraintFixed,2
ConstraintFixed,3
ConstraintFixed,4
ConstraintFixed,5
ConstraintFixed,6
***********************************************************
** constraints force node loads
*CLOAD
** ConstraintForce
** node loads on shape: CanileverPlate:Edge3
3,2,-1.6653345369377E-10
3,3,-7.5000000000000E+05
4,2,-1.6653345369377E-10
4,3,-7.5000000000000E+05
39,2,-3.3306690738755E-10
39,3,-1.5000000000000E+06
40,2,-6.6613381477509E-10
40,3,-3.0000000000000E+06
41,2,-6.6613381477509E-10
41,3,-3.0000000000000E+06
***********************************************************
** Outputs --> frd file
*NODE FILE, OUTPUT=2d
U
*EL FILE
S, E
** outputs --> dat file
** reaction forces for Constraint fixed
*NODE PRINT, NSET=ConstraintFixed, TOTALS=ONLY
RF
***********************************************************
*END STEP
***********************************************************
** CalculiX Input file
** written by --> FreeCAD 0.20.25335 (Git)
** written on --> Wed Jul 28 17:09:34 2021
** file name --> test.FCStd
** analysis name --> Analysis
**
**
***********************************************************
** About units:
** See ccx manual, ccx does not know about any unit.
** Golden rule: The user must make sure that the numbers he provides have consistent units.
** The user is the FreeCAD calculix writer module ;-)
**
** The unit system which is used at Guido Dhondt's company: mm, N, s, K
** Since Length and Mass are connected by Force, if Length is mm the Mass is in t to get N
** The following units are used to write to inp file:
**
** Length: mm (this includes the mesh geometry)
** Mass: t
** TimeSpan: s
** Temperature: K
**
** This leads to:
** Force: N
** Pressure: N/mm^2 == MPa (Young's Modulus has unit Pressure)
** Density: t/mm^3
** Gravity: mm/s^2
** Thermal conductivity: t*mm/K/s^3 == as W/m/K == kW/mm/K
** Specific Heat: mm^2/s^2/K = J/kg/K == kJ/t/K
**

View File

@@ -78,10 +78,15 @@ make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_result.TestResult.test_disp_ab
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_box_frequency
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_box_static
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_buckling_flexuralbuckling
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccxcantilever_faceload
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccxcantilever_hexa20
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccxcantilever_nodeload
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccxcantilever_prescribeddisplacement
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_faceload
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_hexa20
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_seg2
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_seg3
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_tria3
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_tria6
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_hexa20
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_nodeload
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_prescribeddisplacement
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_constraint_centrif
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_constraint_contact_shell_shell
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_calculix.TestSolverCalculix.test_constraint_contact_solid_solid
@@ -105,9 +110,9 @@ make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.t
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.test_ccxcantilever_faceload_1_si
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.test_ccxcantilever_nodeload_0_mm
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_elmer.TestSolverElmer.test_ccxcantilever_prescribeddisplacement_0_mm
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_faceload
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_hexa20
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_nodeload
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccx_cantilever_faceload
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccx_cantilever_ele_hexa20
make -j 4 && ./bin/FreeCADCmd -t femtest.app.test_solver_z88.TestSolverZ88.test_ccx_cantilever_nodeload
# methods in FreeCAD
@@ -309,22 +314,47 @@ unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccxcantilever_faceload'
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_faceload'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccxcantilever_hexa20'
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_hexa20'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccxcantilever_nodeload'
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_seg2'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccxcantilever_prescribeddisplacement'
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_seg3'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_tria3'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_tria6'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_ele_hexa20'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_nodeload'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_calculix.TestSolverCalculix.test_ccx_cantilever_prescribeddisplacement'
))
import unittest
@@ -444,15 +474,20 @@ unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_faceload'
'femtest.app.test_solver_oofem.TestSolverOofem.test_ccxcantilever_prescribeddisplacement'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_hexa20'
'femtest.app.test_solver_z88.TestSolverZ88.test_ccx_cantilever_faceload'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_z88.TestSolverZ88.test_ccxcantilever_nodeload'
'femtest.app.test_solver_z88.TestSolverZ88.test_ccx_cantilever_ele_hexa20'
))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName(
'femtest.app.test_solver_z88.TestSolverZ88.test_ccx_cantilever_nodeload'
))