-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path3PointFlexural_TWRSM.mac
334 lines (291 loc) · 5.9 KB
/
3PointFlexural_TWRSM.mac
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
! Script tensile test according ASTM D-143 - Longitudinal Direction
/CLEAR,
FINISH,
!/INPUT,parametros,inp
E_L = 6430
E_T = 230
E_R = 700
G_LR = 1230
G_LT = 888
G_RT = 114
NU_LR = 0.048
NU_LT = 0.446
NU_RT = 0.430
F1t = 62.999 ! Tensile strength - Longitudinal
F2t = 6.1499 ! Tensile strength - Tangencial
F3t = 2.4199 ! Tensile strength - Radial
!!
! Compressive strengths
F1c = -33.604 ! Compressive strength - Longitudinal
F2c = -5.0357 ! Compressive strength - Tangencial
F3c = -3.5717 ! Compressive strength - Radial
!!
!Shear strength
F4s = 13.858 ! Shear strength radial - YZ
F5s = 11.993 ! Shear strength longitudinal - XZ
F6s = 14.419 ! Shear strength tangencial - XY
!!
!!
!# Parameters
Length = 140
Width = 8
Height = 8
LSpan = 120
tol = 1e-5
!Displacement = 7
/PREP7
! Element type
ET, 1, 186
! Material props / Material model
! Young’s moduli
MP, EX, 1,E_L
MP, PRXY, 1, 0.430
TB,BISO,1,1,2 ! Bilinear constitutive model
TBDATA,,-F1c, 900! Yield Stress & Tangent Modulus
!# Geometry
/PREP7
BLOCK, 0, Width, 0, Height, 0, Length
WPOFFS,,,50
VSBW,ALL
WPOFFS,,,40
VSBW,ALL
WPSTYL,DEFA
NUMCMP,ALL
CM,WoodBeam,VOLU
ASEL,S,AREA,,15
ASEL,A,AREA,,3
ASEL,A,AREA,,10
CM,WoodBeamContact,AREA
ALLSEL,ALL
!# Meshing
LSEL,S,LOC,X,0.0
LSEL,U,LOC,Z,0.0+tol,Length-tol
LESIZE,ALL,,,20
ALLSEL,ALL
VATT,1,,1
MSHKEY,1
MSHAPE,0,3D
ESIZE,1.5
VSEL,U,LOC,Z,50,90
VMESH,ALL
ALLSEL,ALL
VSEL,S,LOC,Z,50,90
ESIZE,0.3
VMESH,ALL
ALLSEL,ALL
*GET,nNodes,NODE,0,COUNT
!# Contact definitions
ET,100,170
ET,110,174
R,110,5
! Target Element
TYPE,100
REAL,110
TSHAP,CYLINDER
! Left Rigid Target
N,nNodes+1,0.0,-5,20
N,nNodes+2,Width,-5,20
! Left Rigid Target
N,nNodes+3,0.0,-5,120
N,nNodes+4,Width,-5,120
!
E,nNodes+1,nNodes+2
E,nNodes+3,nNodes+4
! Right rigid target
! Contact Element
TYPE,110
ASEL,S,AREA,,WoodBeamContact
NSLA,S,1
ESLN,S
ESURF
ALLSEL,ALL
!# Contact definitions
ET,200,170
ET,210,174
R,210,5
! Target Element
TYPE,200
REAL,210
TSHAP,CYLINDER
! Left Rigid Target
N,nNodes+5,0.0,height+5,70
N,nNodes+6,Width,height+5,70
E,nNodes+5,nNodes+6
! Right rigid target
! Contact Element
TYPE,210
ASEL,S,AREA,,WoodBeamContact
NSLA,S,1
ESLN,S
ESURF
ALLSEL,ALL
!# Constrain definition
!## Bottom Supports
NSEL,S,LOC,Y,-5
D,ALL,ALL,0.0
ALLSEL,ALL
!## Top Supports
NSEL,S,LOC,Y,Height+5
CP,4,UX,ALL
CP,5,UY,ALL
CP,6,UZ,ALL
*GET,NodeLoad,NODE,0,NUM,MIN
ALLSEL,ALL
ESEL,S,TYPE,,1
NSLE
NSEL,R,LOC,Z,70
D,ALL,UZ,0.0
D,ALL,UX,0.0
ALLSEL,ALL
Displacement = 6.04
*DIM,Disp,TABLE,1,3,,,TIME
*taxis,Disp(1),2, 0, 0.5, 1.0
Disp(1,1) = -Displacement*0.0
Disp(1,2) = -Displacement*0.9
Disp(1,3) = -Displacement*1
D,NodeLoad,UX,0.0
D,NodeLoad,UY,%Disp%
D,NodeLoad,UZ,0.0
FINISH,
dTime = 0.1
Paso = 1
nIter = 1/dTime
/SOLU
ANTYPE,STATIC
NLGEOM,ON
OUTRES,ALL,ALL
NSUBST,Paso,Paso,Paso
TIME,dTime
RESCONTROL,DEFINE,LAST,LAST,1,,1
SOLVE,
FINISH,
/POST1
RSYS,SOLU ! Activate the ESYS
!Stress in tensile
FC,1,S,XTEN,F2t
FC,1,S,YTEN,F3t
FC,1,S,ZTEN,F1t
!Stress in Compresion
FC,1,S,XCMP,F2c
FC,1,S,YCMP,F3c
FC,1,S,ZCMP,F1c
!Stress in shear
FC,1,S,XY,F6s
FC,1,S,YZ,F6s
FC,1,S,XZ,F4s
FC,1,S,XYCP,-1 ! Coefficient. Defaults to -1.0
FC,1,S,YZCP,-1 ! Coefficient. Defaults to -1.0
FC,1,S,XZCP,-1 ! Coefficient. Defaults to -1.0
FCTYP,ADD,HFIB,HMAT,PFIB,PMAT
ESEL,S,TYPE,,1
PRNSOL,S,FAIL ! Print table with FAIL index, where:
PRESOL,FAIL
PLESOL,FAIL,TWSR ! Print table with FAIL index, where:
PLESOL,FCMX,FC,TWSR ! Print table with FAIL index, where:
/POST1
SET,LAST
ESEL,S,TYPE,,1
ETABLE,check,FAIL,TWSR
ESEL,S,ETAB,check,1
CM,Kill_Loop,ELEM
*GET,Ekill_C,ELEM,0,COUNT
*IF,Ekill_C,GT,0,THEN
CMWRITE,Kill_Loop,cm
*ENDIF
ALLSEL,ALL
FINISH,
*DO,k,2,nIter,
/SOLU
PARSAV,ALL,prepar
ANTYPE,,RESTART
PARRES,,prepar
NSUBST,PASO,PASO,PASO
TIME,k*dTime
*IF,Ekill_C,GT,0,THEN
/INPUT,Kill_Loop,cm
CMSEL,S,Kill_Loop,ELEM
EKILL,ALL
*ENDIF
ALLSEL,ALL
SOLVE,
FINISH,
/POST1
RSYS,SOLU ! Activate the ESYS
!Stress in tensile
FC,1,S,XTEN,F2t
FC,1,S,YTEN,F3t
FC,1,S,ZTEN,F1t
!Stress in Compresion
FC,1,S,XCMP,F2c
FC,1,S,YCMP,F3c
FC,1,S,ZCMP,F1c
!Stress in shear
FC,1,S,XY,F6s
FC,1,S,YZ,F6s
FC,1,S,XZ,F4s
FC,1,S,XYCP,-1 ! Coefficient. Defaults to -1.0
FC,1,S,YZCP,-1 ! Coefficient. Defaults to -1.0
FC,1,S,XZCP,-1 ! Coefficient. Defaults to -1.0
FCTYP,ADD,HFIB,HMAT,PFIB,PMAT
ALLSEL,ALL
ESEL,S,TYPE,,1
PRNSOL,S,FAIL ! Print table with FAIL index, where:
PRESOL,FAIL
PLESOL,FAIL,TWSR ! Print table with FAIL index, where:
PLESOL,FCMX,FC,TWSR ! Print table with FAIL index, where:
SET,LAST
ETABLE,check,FAIL,TWSR
ESEL,S,ETAB,check,0.8
*IF,Ekill_C,GT,0,THEN
CMSEL,A,Kill_Loop,ELEM
*ENDIF
CM,Kill_Loop,ELEM
*GET,Ekill_C,ELEM,0,COUNT
*IF,Ekill_C,GT,0,THEN
CMWRITE,Kill_Loop,cm
*ENDIF
ALLSEL,ALL
FINISH,
*ENDDO
FINISH,
! Force-Displacement data
/POST1
*GET,nSubstep,ACTIVE,0,SET,NSET
*IF,nSubstep,EQ,999999,THEN
SET,PREVIOUS
*GET,nSubstep,ACTIVE,0,SET,NSET
*ENDIF
FINISH,
/POST26
NSOL,2,NodeLoad,U,Y
RFORCE,3,NodeLoad,F,Y
LINE,1000
*DIM,Results,TABLE,nSubstep,2
VGET,Results(1,1),2
VGET,Results(1,2),3
FINISH,
/OUTPUT,TWRSM,dat
*VWRITE,Results(1,1),Results(1,2)
(F14.8,F20.6)
/OUTPUT
/POST26
FILLDATA,191,,,,1,1
REALVAR,191,191
FORCE,TOTAL
!*
!*
ESOL,4,16435,39311 ,S,EQV,SEQV_4
STORE,MERGE
FILLDATA,191,,,,1,1
REALVAR,191,191
FORCE,TOTAL
FILLDATA,191,,,,1,1
REALVAR,191,191
FORCE,TOTAL
!*
!*
ESOL,5,16435,39311 ,EPEL,EQV,EPELEQV_5
STORE,MERGE
PRVAR,4,5,
)/GOP ! Resume printing after UNDO process
)! We suggest a save at this point