forked from Ttw0626/CalculiX-Examples
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpre.fbd
101 lines (86 loc) · 1.55 KB
/
pre.fbd
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
valu radius 50
valu height 60
valu width 120
# element type, e.g. qu8c, qu8cr
valu etyp qu8c
# quarter circle (hemisphere)
pnt p1 0 radius 0
pnt p2 0 0 0
pnt p3 radius radius 0
# undocumented line bias
line peri p2 p3 p1 80 1.05
line l1 p2 p1 80 1.05
line l2 p3 p1 40 1
surf s1 l2 peri l1
# rectangle (cylindric disk)
seto block
pnt p4 0 0 0
valu neg_height * -1 height
swep block block tra 0 neg_height 0 80
bia block 8
swep block block tra width 0 0 120
seta lb l L003 L004
bia lb 8
# shift everything up to obtain only positive y values
# this is required for path plot
move all tra 0 height 0
# meshing
flip all
elty all qu8c
# elty all qu8cr
mesh all
send all abq
rot -z
view elem
frame
seta ! all
hcpy png parts
# view of the contact zone
zoom 10
tra r 55
tra d 5
seta ! all
hcpy png parts-zoom
# line numbers
frame
plot la all
hcpy png
sys mv hcpy_3.png lines.png
# indenter contact surface
SETA speri l peri
comp speri do
comp speri do
send speri abq sur
send speri abq nam
# block contact surface
seta sblk l L003
comp sblk do
comp sblk do
send sblk abq sur
# center line constraint in x
seta x0 l L001 l1
comp x0 do
comp x0 do
send x0 abq nam
# bottom edge of plate constraint in y
seta y0 l L004
comp y0 do
comp y0 do
send y0 abq nam
# upper side of indenter
seta control l l2
comp control do
comp control do
send control abq sur
# path for pressure plot
seta path n speri
setr path n control
send path abq nam
#setr scyl n control
#send scyl abq nam
# sets
ulin x0 (red), y0 (mag.), control (b)
plot l x0 r 6
plus l y0 m 6
plus l control b 6
hcpy png sets