FEM: ccx canti quad4 example and unit test, improve mesh
This commit is contained in:
@@ -5,27 +5,47 @@ def create_nodes(femmesh):
|
||||
femmesh.addNode(8000.0, 500.0, 0.0, 3)
|
||||
femmesh.addNode(8000.0, 500.0000000000002, 1000.0, 4)
|
||||
femmesh.addNode(0.0, 500.0000000000001, 500.0, 5)
|
||||
femmesh.addNode(4000.0, 500.0, 0.0, 6)
|
||||
femmesh.addNode(2000.0, 500.0, 0.0, 7)
|
||||
femmesh.addNode(2000.0, 500.0, 0.0, 6)
|
||||
femmesh.addNode(4000.0, 500.0, 0.0, 7)
|
||||
femmesh.addNode(6000.0, 500.0, 0.0, 8)
|
||||
femmesh.addNode(8000.0, 500.0000000000001, 500.0, 9)
|
||||
femmesh.addNode(4000.0, 500.0000000000002, 1000.0, 10)
|
||||
femmesh.addNode(2000.0, 500.0000000000002, 1000.0, 11)
|
||||
femmesh.addNode(6000.0, 500.0000000000002, 1000.0, 12)
|
||||
femmesh.addNode(4000.0, 500.0000000000001, 500.0, 13)
|
||||
femmesh.addNode(2000.0, 500.0000000000001, 500.0, 14)
|
||||
femmesh.addNode(6000.0, 500.0000000000001, 500.0, 15)
|
||||
femmesh.addNode(1000.0, 500.0, 0.0, 9)
|
||||
femmesh.addNode(7000.0, 500.0, 0.0, 10)
|
||||
femmesh.addNode(3000.0, 500.0, 0.0, 11)
|
||||
femmesh.addNode(5000.0, 500.0, 0.0, 12)
|
||||
femmesh.addNode(8000.0, 500.0000000000001, 500.0, 13)
|
||||
femmesh.addNode(2000.0, 500.0000000000002, 1000.0, 14)
|
||||
femmesh.addNode(4000.0, 500.0000000000002, 1000.0, 15)
|
||||
femmesh.addNode(6000.0, 500.0000000000002, 1000.0, 16)
|
||||
femmesh.addNode(1000.0, 500.0000000000002, 1000.0, 17)
|
||||
femmesh.addNode(7000.0, 500.0000000000002, 1000.0, 18)
|
||||
femmesh.addNode(3000.0, 500.0000000000002, 1000.0, 19)
|
||||
femmesh.addNode(5000.0, 500.0000000000002, 1000.0, 20)
|
||||
femmesh.addNode(2000.0, 500.0000000000001, 500.0, 21)
|
||||
femmesh.addNode(1000.0, 500.0000000000001, 500.0, 22)
|
||||
femmesh.addNode(6000.0, 500.0000000000001, 500.0, 23)
|
||||
femmesh.addNode(7000.0, 500.0000000000001, 500.0, 24)
|
||||
femmesh.addNode(4000.0, 500.0000000000001, 500.0, 25)
|
||||
femmesh.addNode(3000.0, 500.0000000000001, 500.0, 26)
|
||||
femmesh.addNode(5000.0, 500.0000000000001, 500.0, 27)
|
||||
return True
|
||||
|
||||
|
||||
def create_elements(femmesh):
|
||||
# elements
|
||||
femmesh.addFace([1, 7, 14, 5], 13)
|
||||
femmesh.addFace([2, 5, 14, 11], 14)
|
||||
femmesh.addFace([10, 11, 14, 13], 15)
|
||||
femmesh.addFace([6, 13, 14, 7], 16)
|
||||
femmesh.addFace([3, 9, 15, 8], 17)
|
||||
femmesh.addFace([6, 8, 15, 13], 18)
|
||||
femmesh.addFace([10, 13, 15, 12], 19)
|
||||
femmesh.addFace([4, 12, 15, 9], 20)
|
||||
femmesh.addFace([14, 17, 22, 21], 21)
|
||||
femmesh.addFace([6, 21, 22, 9], 22)
|
||||
femmesh.addFace([1, 9, 22, 5], 23)
|
||||
femmesh.addFace([2, 5, 22, 17], 24)
|
||||
femmesh.addFace([4, 18, 24, 13], 25)
|
||||
femmesh.addFace([3, 13, 24, 10], 26)
|
||||
femmesh.addFace([8, 10, 24, 23], 27)
|
||||
femmesh.addFace([16, 23, 24, 18], 28)
|
||||
femmesh.addFace([7, 25, 26, 11], 29)
|
||||
femmesh.addFace([6, 11, 26, 21], 30)
|
||||
femmesh.addFace([14, 21, 26, 19], 31)
|
||||
femmesh.addFace([15, 19, 26, 25], 32)
|
||||
femmesh.addFace([16, 20, 27, 23], 33)
|
||||
femmesh.addFace([8, 23, 27, 12], 34)
|
||||
femmesh.addFace([7, 12, 27, 25], 35)
|
||||
femmesh.addFace([15, 25, 27, 20], 36)
|
||||
return True
|
||||
|
||||
@@ -8,28 +8,48 @@
|
||||
3, 8000, 500, 0
|
||||
4, 8000, 500, 1000
|
||||
5, 0, 500, 500
|
||||
6, 4000, 500, 0
|
||||
7, 2000, 500, 0
|
||||
6, 2000, 500, 0
|
||||
7, 4000, 500, 0
|
||||
8, 6000, 500, 0
|
||||
9, 8000, 500, 500
|
||||
10, 4000, 500, 1000
|
||||
11, 2000, 500, 1000
|
||||
12, 6000, 500, 1000
|
||||
13, 4000, 500, 500
|
||||
14, 2000, 500, 500
|
||||
15, 6000, 500, 500
|
||||
9, 1000, 500, 0
|
||||
10, 7000, 500, 0
|
||||
11, 3000, 500, 0
|
||||
12, 5000, 500, 0
|
||||
13, 8000, 500, 500
|
||||
14, 2000, 500, 1000
|
||||
15, 4000, 500, 1000
|
||||
16, 6000, 500, 1000
|
||||
17, 1000, 500, 1000
|
||||
18, 7000, 500, 1000
|
||||
19, 3000, 500, 1000
|
||||
20, 5000, 500, 1000
|
||||
21, 2000, 500, 500
|
||||
22, 1000, 500, 500
|
||||
23, 6000, 500, 500
|
||||
24, 7000, 500, 500
|
||||
25, 4000, 500, 500
|
||||
26, 3000, 500, 500
|
||||
27, 5000, 500, 500
|
||||
|
||||
|
||||
** Face elements
|
||||
*Element, TYPE=S4, ELSET=Efaces
|
||||
13, 1, 7, 14, 5
|
||||
14, 2, 5, 14, 11
|
||||
15, 10, 11, 14, 13
|
||||
16, 6, 13, 14, 7
|
||||
17, 3, 9, 15, 8
|
||||
18, 6, 8, 15, 13
|
||||
19, 10, 13, 15, 12
|
||||
20, 4, 12, 15, 9
|
||||
21, 14, 17, 22, 21
|
||||
22, 6, 21, 22, 9
|
||||
23, 1, 9, 22, 5
|
||||
24, 2, 5, 22, 17
|
||||
25, 4, 18, 24, 13
|
||||
26, 3, 13, 24, 10
|
||||
27, 8, 10, 24, 23
|
||||
28, 16, 23, 24, 18
|
||||
29, 7, 25, 26, 11
|
||||
30, 6, 11, 26, 21
|
||||
31, 14, 21, 26, 19
|
||||
32, 15, 19, 26, 25
|
||||
33, 16, 20, 27, 23
|
||||
34, 8, 23, 27, 12
|
||||
35, 7, 12, 27, 25
|
||||
36, 15, 25, 27, 20
|
||||
|
||||
** Define element set Eall
|
||||
*ELSET, ELSET=Eall
|
||||
@@ -91,8 +111,8 @@ ConstraintFixed,6
|
||||
3,3,-2.2500000000000E+06
|
||||
4,2,-4.9960036108132E-10
|
||||
4,3,-2.2500000000000E+06
|
||||
9,2,-9.9920072216264E-10
|
||||
9,3,-4.5000000000000E+06
|
||||
13,2,-9.9920072216264E-10
|
||||
13,3,-4.5000000000000E+06
|
||||
|
||||
|
||||
|
||||
@@ -113,8 +133,8 @@ RF
|
||||
|
||||
***********************************************************
|
||||
** CalculiX Input file
|
||||
** written by --> FreeCAD 0.20.25341 (Git)
|
||||
** written on --> Thu Jul 29 07:45:55 2021
|
||||
** written by --> FreeCAD 0.20.25347 (Git)
|
||||
** written on --> Thu Jul 29 22:17:23 2021
|
||||
** file name --> test.FCStd
|
||||
** analysis name --> Analysis
|
||||
**
|
||||
|
||||
Reference in New Issue
Block a user