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#include "implicit_f.inc"
110
111
112
113 INTEGER IOUT,NUVAR,NEL,IPROP,
114 . IX(4,NEL) ,
115 . GET_U_PNU,GET_U_PID,GET_U_MID,GET_U_MNU
117 . xl(nel) ,mass(nel) ,xiner(nel) ,stifm(nel) ,
118 . stifr(nel),viscm(nel) ,viscr(nel),uvar(nuvar,*),
119 . get_u_mat,get_u_geo
122
123
124
126 . amas,elastif
127 INTEGER I
128
129 amas = get_u_geo(1,iprop)
130 elastif = get_u_geo(2,iprop)
131
132
133
134
135
136
137 DO i=1,nel
138 IF(xl(i)==zero)THEN
139
140 WRITE(iout,*)' **ERROR ZERO LENGTH SPRING :',i
141 ENDIF
142 ENDDO
143
144
145
146 DO i=1,nel
147 mass(i) = amas
148 xiner(i) = zero
149 uvar(1,i) = zero
150 uvar(2,i) = one
151 uvar(3,i) = zero
152
153 stifm(i) = elastif / xl(i)
154 stifr(i) = zero
155 viscm(i) = zero
156 viscr(i) = zero
157 ENDDO
158
159 RETURN
integer function get_u_pid(ip)
integer function get_u_pnu(ivar, ip, k)
integer function get_u_mid(im)
integer function get_u_mnu(ivar, im, k)