forked from bguest/ansys-macros
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSqBeam44.mac
74 lines (64 loc) · 1.79 KB
/
SqBeam44.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
!&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
!SqBeam44.mac
!B.Guest - [email protected]
!DESCRIPITON: This macro creates a square beam quickly
! with as little code as possible, customizaiton over
! configuration.
!PRECONDITIONS:
! ARG1: Resulting element property number
! ARG2: Width (TKY, Y dimension) for stiffness calc
! ARG3: Height (TKZ, Z dimension) for stiffness calc
! ARG4: Wall thickness [optional]
! ARG5: Material (See _MAT.mac)
! ARG6: Width (TKY, Y dimension) for stress recovery and displayed size
! ARG7: Height (TKZ, Z dimension) for stress recovery and displayed size
!======================================================
MatNum = ARG1
*if,ARG2,gt,0,then !Set TKY
TKY = ARG2
*else
TKY = 1
*endif
*if,ARG3,gt,0,then !Set TKZ
TKZ = ARG3
*else
TKY = 1
*endif
*if,ARG4,gt,0,then
TKY_I = TKY-ARG4
TKZ_I = TKZ-ARG4
shearz=12/5 ! hollow thin-walled square
sheary=12/5 ! hollow thin-walled square
A_torsion=(TKY-ARG4)*(TKZ-ARG4)
S_torsion=2*(TKY-ARG4)+2*(TKZ-ARG4)
IXX=4*A_torsion**2*ARG4/S_torsion ! hollow rectangle
*else
TKY_I = 0
TKZ_I = 0
SHEARZ=6/5 ! rectangle
SHEARY=6/5 ! rectangle
a=max(TKY,TKZ)/2
b=min(TKY,TKZ)/2
IXX = a*b**3*(16/3-3.36*b/a*(1-b**4/a**4/12))
*endif
AA = TKZ*TKY-TKZ_I*TKY_I !AREA
IYY = (TKY*TKZ**3-TKY_I*TKZ_I**3)/12
IZZ = (TKZ*TKY**3-TKZ_I*TKY_I**3)/12
*if,ARG6,gt,0,then
TKY= ARG6
*endif
*if,ARG7,gt,0,then
TKZ= ARG7
*endif
!------------------------------------------------------
ET,MatNum,BEAM44
R,MatNum, AA, IZZ, IYY, TKZ/2, TKY/2, IXX,
RMORE, AA, IZZ, IYY, TKZ/2, TKY/2, IXX,
RMORE, , , , , , ,
RMORE, SHEARZ, SHEARY, TKZ/2, TKY/2, TKZ/2, TKY/2,
!Set material
*if,arg5,gt,0,then
_MAT2,arg5,MatNum
*endif
!======THE--END========THE--END========THE--END========
!ITS THE END OF THE FILE AS WE KNOW IT, AND I FEEL FINE