39 . FOR_T1, FOR_T2, FOR_T3,
43 . FOR_T4, FOR_T5, FOR_T6,
44 . FORC_N1,FORC_N2,FORC_N3,
45 . FORC_N, STIF, STIF0,
47 . PENMIN, PENREF, MARGE,
58 . IFC1, NEL ,E_DISTOR,
63#include "implicit_f.inc"
71 INTEGER,
INTENT (IN) :: NEL
72 INTEGER,
INTENT (OUT) :: IFCTL
73 INTEGER,
DIMENSION(MVSIZ),
INTENT (IN) :: IFC1
74 DOUBLE PRECISION,
DIMENSION(MVSIZ),
INTENT (IN) ::
81 my_real,
DIMENSION(MVSIZ),
INTENT (IN) :: STIF0,LL,
86 my_real,
DIMENSION(MVSIZ),
INTENT (IN)
97DIMENSION(MVSIZ),
INTENT (IN) :: PENMIN,PENREF,MARGE
98 my_real,
DIMENSION(MVSIZ),
INTENT (INOUT) :: STIF
99 my_real,
DIMENSION(MVSIZ,3),
INTENT (INOUT) :: forc_n,
100 . forc_n1,forc_n2,forc_n3,
101 . for_t1, for_t2, for_t3,
102 . for_t4, for_t5, for_t6
103 my_real,
INTENT (IN) :: fqmax,dt1
104 my_real,
DIMENSION(NEL),
INTENT (INOUT) :: e_distor
112 INTEGER I,J,IFCTL1,IEDGE,IFC2(MVSIZ),NIMPA
115 . fkt(nel),dx,dy,dz,dcj_0,dcj
116 my_real,
DIMENSION(NEL) ::
125 ifc2(1:nel) = ifc1(1:nel)
130 . marge, stif0, ifc2,
135 IF (ifc2(i)==0) cycle
140 xs1(1:nel) = x1(1:nel)
141 xs2(1:nel) = x2(1:nel)
142 xs3(1:nel) = x3(1:nel)
143 xs4(1:nel) = x4(1:nel)
144 xs5(1:nel) = x5(1:nel)
145 xs6(1:nel) = x6(1:nel)
146 ys1(1:nel) = y1(1:nel)
147 ys2(1:nel) = y2(1:nel)
148 ys3(1:nel) = y3(1:nel)
149 ys4(1:nel) = y4(1:nel)
150 ys5(1:nel) = y5(1:nel)
151 ys6(1:nel) = y6(1:nel)
152 zs1(1:nel) = z1(1:nel)
153 zs2(1:nel) = z2(1:nel)
154 zs3(1:nel) = z3(1:nel)
155 zs4(1:nel) = z4(1:nel)
156 zs5(1:nel) = z5(1:nel)
157 zs6(1:nel) = z6(1:nel)
162 . xs1, ys1, zs1, for_t1,
163 . xs4, ys4, zs4, for_t4,
164 . xs6, ys6, zs6, for_t6,
165 . stif0, ifc2, ifctl, penmin,
166 . penref, fkt, ll, fqmax ,
167 . vx1, vx4, vx6, vxc1 ,
168 . vy1, vy4, vy6, vyc1 ,
169 . vz1, vz4, vz6, vzc1 ,
171 nimpa = nimpa + ifctl
174 . xs2, ys2, zs2, for_t2,
175 . xs5, ys5, zs5, for_t5,
176 . xs4, ys4, zs4, for_t4,
177 . stif0, ifc2, ifctl, penmin,
178 . penref, fkt, ll, fqmax ,
179 . vx2, vx5, vx4, vxc2 ,
180 . vy2, vy5, vy4, vyc2 ,
181 . vz2, vz5, vz4, vzc2 ,
183 nimpa = nimpa + ifctl
186 . xs3, ys3, zs3, for_t3,
187 . xs6, ys6, zs6, for_t6,
188 . xs5, ys5, zs5, for_t5,
189 . stif0, ifc2, ifctl, penmin,
190 . penref, fkt, ll, fqmax ,
191 . vx3, vx6, vx5, vxc3 ,
192 . vy3, vy6, vy5, vyc3 ,
193 . vz3, vz6, vz5, vzc3 ,
195 nimpa = nimpa + ifctl
198 . xs4, ys4, zs4, for_t4,
199 . xs5, ys5, zs5, for_t5,
200 . xs6, ys6, zs6, for_t6,
201 . stif0, ifc2, ifctl, penmin,
202 . penref, fkt, ll, fqmax ,
203 . vx4, vx5, vx6, vcx ,
204 . vy4, vy5, vy6, vcy ,
205 . vz4, vz5, vz6, vcz ,
207 nimpa = nimpa + ifctl
210 IF ( fkt(i) > one)
THEN
211 stif(i) =
max(stif(i),fkt(i)*stif0(i))
subroutine sfor_n2s3(xi, yi, zi, forc_n, x1, y1, z1, for_t1, x2, y2, z2, for_t2, x3, y3, z3, for_t3, stif, ifc1, ifctl, penmin, penref, fktmax, ll, fqmax, vx1, vx2, vx3, vxi, vy1, vy2, vy3, vyi, vz1, vz2, vz3, vzi, nel, e_distor, dt1)
subroutine sfor_n2stria2(xc, yc, zc, xc1, yc1, zc1, xc2, yc2, zc2, xc3, yc3, zc3, x1, x2, x3, y1, y2, y3, z1, z2, z3, for_t1, for_t2, for_t3, x4, x5, x6, y4, y5, y6, z4, z5, z6, for_t4, for_t5, for_t6, forc_n1, forc_n2, forc_n3, forc_n, stif, stif0, fqmax, ifctl, ll, penmin, penref, marge, vcx, vcy, vcz, vxc1, vyc1, vzc1, vxc2, vyc2, vzc2, vxc3, vyc3, vzc3, vx1, vx2, vx3, vy1, vy2, vy3, vz1, vz2, vz3, vx4, vx5, vx6, vy4, vy5, vy6, vz4, vz5, vz6, ifc1, nel, e_distor, dt1)
subroutine ssort_n3(xi, yi, zi, x1, x2, x3, y1, y2, y3, z1, z2, z3, marge, stif, ifc1, nel)