32 1 NLOC_DMG,VAR_REG, NEL, OFF,
37 6 PZ2, PZ3, PZ4, IMAT,
38 7 ITASK, DT2T, VOL0, NFT,
49#include "implicit_f.inc"
60 INTEGER,
INTENT(IN) ::
62 INTEGER,
INTENT(IN),
DIMENSION(NEL) ::
63 . NC1,NC2,NC3,NC4,NC5,NC6
66 my_real,
DIMENSION(9,9),
INTENT(IN) ::
68 my_real,
DIMENSION(NEL,NLAY),
INTENT(INOUT) ::
70 my_real,
DIMENSION(NEL),
INTENT(IN) ::
71 . vol,off,vol0,px1,px2,px3,px4,
area,
72 . py1,py2,py3,py4,pz1,pz2,pz3,pz4
73 TYPE(
nlocal_str_),
INTENT(INOUT),
TARGET :: NLOC_DMG
74 TYPE(BUF_NLOCTS_),
INTENT(INOUT),
TARGET :: BUFNLTS
78 INTEGER I,II,J,K,NNOD,N1,N2,N3,N4,N5,N6,
81 . l2,ntn,ntn_unl,ntn_vnl,xi,ntvar,a,dtnl,le_max,
82 . b1,b2,b3,b4,b5,b6,zeta,sspnl,maxstif,
83 . bth1,bth2,nth1,nth2,dt2p,dtnod,k1,k2,k12,
85 my_real,
DIMENSION(NEL,NLAY) ::
87 my_real,
DIMENSION(NEL) ::
88 . lc,thk,lthk,pxx1,pxx2,pxx3,
89 . pxx4,pxx5,pxx6,pyy1,pyy2,pyy3,
90 . pyy4,pyy5,pyy6,pzz1,pzz2,pzz3,
92 my_real,
DIMENSION(:) ,
ALLOCATABLE ::
93 . btb11,btb12,btb13,btb14,btb15,btb16,
94 . btb22,btb23,btb24,btb25,btb26,btb33,
95 . btb34,btb35,btb36,btb44,btb45,btb46,
97 my_real,
DIMENSION(:,:) ,
ALLOCATABLE ::
98 . sti1,sti2,sti3,sti4,sti5,sti6
99 INTEGER,
DIMENSION(:),
ALLOCATABLE ::
100 . ,POS2,POS3,POS4,POS5,POS6
101 my_real,
POINTER,
DIMENSION(:) ::
102 . vnl,fnl,unl,stifnl,mass,mass0,vnl0
103 my_real,
POINTER,
DIMENSION(:,:) ::
104 . massth,unlth,vnlth,fnlth
105 my_real,
DIMENSION(:,:),
ALLOCATABLE ::
107 my_real,
target :: nothing(1)
110 my_real,
PARAMETER :: csta = 40.0d0
112 my_real,
PARAMETER :: cdamp = 0.7d0
125 3 -1. ,-.549193338482966,0.549193338482966,
129 4 -1. ,-.600558677589454,0. ,
130 4 0.600558677589454,1. ,0. ,
133 5 -1. ,-.812359691877328,-.264578928334038,
134 5 0.264578928334038,0.812359691877328,1. ,
137 6 -1. ,-.796839450334708,-.449914286274731,
138 6 0. ,0.449914286274731,0.796839450334708,
141 7 -1. ,-.898215824685518,-.584846546513270,
142 7 -.226843756241524,0.226843756241524,0.584846546513270,
143 7 0.898215824685518,1. ,0. ,
145 8 -1. ,-.878478166955581,-.661099443664978,
146 8 -.354483526205989,0. ,0.354483526205989,
147 8 0.661099443664978,0.878478166955581,1. ,
149 9 -1. ,-.936320479015252,-.735741735638020,
150 9 -.491001129763160,-.157505717044458,0.157505717044458,
151 9 0.491001129763160,0.735741735638020,0.936320479015252,
155 l2 = nloc_dmg%LEN(imat)**2
156 xi = nloc_dmg%DAMP(imat)
158 l_nloc = nloc_dmg%L_NLOC
159 zeta = nloc_dmg%DENS(imat)
160 sspnl = nloc_dmg%SSPNL(imat)
161 le_max = nloc_dmg%LE_MAX(imat)
164 ALLOCATE(btb11(nel),btb12(nel),btb13(nel),btb14(nel),btb15(nel),
165 . btb16(nel),btb22(nel),btb23(nel),btb24(nel),btb25(nel),
166 . btb26(nel),btb33(nel),btb34(nel),btb35(nel),btb36(nel),
167 . btb44(nel),btb45(nel),btb46(nel),btb55(nel),btb56(nel),
168 . btb66(nel),pos1(nel) ,pos2(nel) ,pos3(nel) ,pos4(nel) ,
169 . pos5(nel) ,pos6(nel) )
173 ALLOCATE(sti1(nel,nlay),sti2(nel,nlay),sti3(nel,nlay),
174 . sti4(nel,nlay),sti5(nel,nlay),sti6(nel,nlay))
176 mass => nloc_dmg%MASS(1:l_nloc)
178 mass0 => nloc_dmg%MASS0(1:l_nloc)
182 ALLOCATE(sti1(1,1),sti2(1,1),sti3(1,1),
183 . sti4(1,1),sti5(1,1),sti6(1,1))
185 vnl => nloc_dmg%VNL(1:l_nloc)
186 vnl0 => nloc_dmg%VNL_OLD(1:l_nloc)
187 unl => nloc_dmg%UNL(1:l_nloc)
193# include "vectorize.inc"
197 n1 = nloc_dmg%IDXI(nc1(i))
198 n2 = nloc_dmg%IDXI(nc2(i))
199 n3 = nloc_dmg%IDXI(nc3(i))
200 n4 = nloc_dmg%IDXI(nc4(i))
201 n5 = nloc_dmg%IDXI(nc5(i))
202 n6 = nloc_dmg%IDXI(nc6(i))
205 pos1(i) = nloc_dmg%POSI(n1)
206 pos2(i) = nloc_dmg%POSI(n2)
207 pos3(i) = nloc_dmg%POSI(n3)
208 pos4(i) = nloc_dmg%POSI(n4)
209 pos5(i) = nloc_dmg%POSI(n5)
210 pos6(i) = nloc_dmg%POSI(n6)
213 pxx1(i) = px1(i)-px4(i)
214 pyy1(i) = py1(i)-py4(i)
215 pzz1(i) = pz1(i)-pz4(i)
217 pxx2(i) = px2(i)-px4(i)
218 pyy2(i) = py2(i)-py4(i)
219 pzz2(i) = pz2(i)-pz4(i)
221 pxx3(i) = px3(i)-px4(i)
222 pyy3(i) = py3(i)-py4(i)
223 pzz3(i) = pz3(i)-pz4(i)
225 pxx4(i) = px1(i)+px4(i)
226 pyy4(i) = py1(i)+py4(i)
227 pzz4(i) = pz1(i)+pz4(i)
229 pxx5(i) = px2(i)+px4(i)
230 pyy5(i) = py2(i)+py4(i)
231 pzz5(i) = pz2(i)+pz4(i)
233 pxx6(i) = px3(i)+px4(i)
234 pyy6(i) = py3(i)+py4(i)
235 pzz6(i) = pz3(i)+pz4(i)
238 btb11(i) = pxx1(i)**2 + pyy1(i)**2 + pzz1(i)**2
239 btb12(i) = pxx1(i)*pxx2(i) + pyy1(i)*pyy2(i) + pzz1(i)*pzz2(i)
240 btb13(i) = pxx1(i)*pxx3(i) + pyy1(i)*pyy3(i) + pzz1(i)*pzz3(i)
241 btb14(i) = pxx1(i)*pxx4(i) + pyy1(i)*pyy4(i) + pzz1(i)*pzz4(i)
242 btb15(i) = pxx1(i)*pxx5(i) + pyy1(i)*pyy5(i) + pzz1(i)*pzz5(i)
243 btb16(i) = pxx1(i)*pxx6(i) + pyy1(i)*pyy6(i) + pzz1(i)*pzz6(i)
245 btb22(i) = pxx2(i)**2 + pyy2(i)**2 + pzz2(i)**2
246 btb23(i) = pxx2(i)*pxx3(i) + pyy2(i)*pyy3(i) + pzz2(i)*pzz3(i)
247 btb24(i) = pxx2(i)*pxx4(i) + pyy2(i)*pyy4(i) + pzz2(i)*pzz4(i)
248 btb25(i) = pxx2(i)*pxx5(i) + pyy2(i)*pyy5(i) + pzz2(i)*pzz5(i)
249 btb26(i) = pxx2(i)*pxx6(i) + pyy2(i)*pyy6(i) + pzz2(i)*pzz6(i)
251 btb33(i) = pxx3(i)**2 + pyy3(i)**2 + pzz3(i)**2
252 btb34(i) = pxx3(i)*pxx4(i) + pyy3(i)*pyy4(i) + pzz3(i)*pzz4(i)
253 btb35(i) = pxx3(i)*pxx5(i) + pyy3(i)*pyy5(i) + pzz3(i)*pzz5(i)
254 btb36(i) = pxx3(i)*pxx6(i) + pyy3(i)*pyy6(i) + pzz3(i)*pzz6(i)
256 btb44(i) = pxx4(i)**2 + pyy4(i)**2 + pzz4(i)**2
257 btb45(i) = pxx4(i)*pxx5(i) + pyy4(i)*pyy5(i) + pzz4(i)*pzz5(i)
258 btb46(i) = pxx4(i)*pxx6(i) + pyy4(i)*pyy6(i) + pzz4(i)*pzz6(i)
260 btb55(i) = pxx5(i)**2 + pyy5(i)**2 + pzz5(i)**2
261 btb56(i) = pxx5(i)*pxx6(i) + pyy5(i)*pyy6(i) + pzz5(i)*pzz6(i)
263 btb66(i) = pxx6(i)**2 + pyy6(i)**2 + pzz6(i)**2
270 IF ((l2>zero).AND.(nlay > 1))
THEN
274 thk(i) = vol(i)/
area(i)
275 lthk(i) = (zs(nlay+1,nlay)-zs(nlay,nlay))*thk(i)*half
281 ALLOCATE(stifnlth(nel,nddl+1))
282 ALLOCATE(dtn(nel,nddl+1))
285 ALLOCATE(stifnlth(1,1))
292 massth => bufnlts%MASSTH(1:nel,1:ndnod)
293 unlth => bufnlts%UNLTH(1:nel ,1:ndnod)
294 vnlth => bufnlts%VNLTH(1:nel ,1:ndnod)
295 fnlth => bufnlts%FNLTH(1:nel ,1:ndnod)
312 nth1 = (as(k,nddl) - zs(k+1,nddl)) /
313 . (zs(k,nddl) - zs(k+1,nddl))
314 nth2 = (as(k,nddl) - zs(k,nddl)) /
315 . (zs(k+1,nddl) - zs(k,nddl))
321 bth1 = (one/(zs(k,nddl) - zs(k+1,nddl)))*(two/thk(i))
322 bth2 = (one/(zs(k+1,nddl) - zs(k,nddl)))*(two/thk(i))
325 k1 = l2*(bth1**2) + nth1**2
326 k12 = l2*(bth1*bth2)+ (nth1*nth2)
327 k2 = l2*(bth2**2) + nth2**2
330 fnlth(i,k) = fnlth(i,k) + (k1*unlth(i,k) + k12*unlth(i,k+1)
331 . + xi*((nth1**2)*vnlth(i,k)
332 . + (nth1*nth2)*vnlth(i,k+1))
333 . - (nth1*var_reg(i,k)))*half*ws(k,nddl)*vol(i)
334 fnlth(i,k+1) = fnlth(i,k+1) + (k12*unlth(i,k) + k2*unlth(i,k+1)
335 . + xi*(nth1*nth2*vnlth(i,k)
336 . + (nth2**2)*vnlth(i,k+1))
337 . - nth2*var_reg(i,k))*half*ws(k,nddl)*vol(i)
341 stifnlth(i,k) = stifnlth(i,k) +
max(abs(k1)+abs(k12),abs(k12)+abs(k2))*half*ws(k,nddl)*vol(i)
342 stifnlth(i,k+1) = stifnlth(i,k+1) +
max(abs(k1)+abs(k12),abs(k12)+abs(k2))*half*ws(k,nddl)*vol(i)
355 dtn(i,k) = dtfac1(11)*cdamp*sqrt(two*massth(i,k)/
max(stifnlth(i,k),em20))
356 dtnod =
min(dtn(i,k),dtnod)
361 IF ((idtmin(11)==3).OR.(idtmin(11)==4).OR.(idtmin(11)==8))
THEN
363 IF (dtnod < dtmin1(11)*(sqrt(csta)))
THEN
366 IF (dtn(i,k) < dtmin1(11))
THEN
367 dt2p = dtmin1(11)/(dtfac1(11)*cdamp)
368 massth(i,k) =
max(massth(i,k),csta*half*stifnlth(i,k)*dt2p*dt2p*onep00001)
373 dtnod = dtmin1(11)*(sqrt(csta))
377 IF (dtnod < dt2t)
THEN
378 dt2t =
min(dt2t,dtnod)
385 vnlth(i,k) = vnlth(i,k) - (fnlth(i,k)/massth(i,k))*dt12
391 ! computing
the non-local in-thickness cumulated values
392 unlth(i,k) = unlth(i,k) + vnlth(i,k)*dt1
399 nth1 = (as(k,nddl) - zs(k+1,nddl))/
400 . (zs(k,nddl) - zs(k+1,nddl))
401 nth2 = (as(k,nddl) - zs(k,nddl))/
402 . (zs(k+1,nddl) - zs(k,nddl))
406 var_reg(i,k) = nth1*unlth(i,k) + nth2*unlth(i,k+1)
418# include "vectorize.inc"
422 IF (off(i) /= zero)
THEN
425 ntn_unl = (unl(pos1(i)+k-1) + unl(pos2(i)+k-1) + unl(pos3(i)+k-1) + unl(pos4(i)+k-1)
426 . + unl(pos5(i)+k-1) + unl(pos6(i)+k-1)) / ntn
429 ntn_vnl = (vnl(pos1(i)+k-1) + vnl(pos2(i)+k-1) + vnl(pos3(i)+k-1) + vnl(pos4(i)+k-1)
430 . + vnl(pos5(i)+k-1) + vnl(pos6(i)+k-1)) / ntn
432 ntn_vnl =
min(sqrt(mass(pos1(i)+k-1)/mass0(pos1(i)+k-1)),
433 . sqrt(mass(pos2(i)+k-1)/mass0(pos2(i)+k-1)),
434 . sqrt(mass(pos3(i)+k-1)/mass0(pos3(i)+k-1)),
435 . sqrt(mass(pos4(i)+k-1)/mass0(pos4(i)+k-1)),
436 . sqrt(mass(pos5(i)+k-1)/mass0(pos5(i)+k-1)),
437 . sqrt(mass(pos6(i)+k-1)/mass0(pos6(i)+k-1)))*ntn_vnl
441 b1 = l2 * vol(i) * ws(k,nlay) *half * ( btb11(i)*unl(pos1(i)+k-1) + btb12(i)*unl(pos2(i)+k-1)
442 . + btb13(i)*unl(pos3(i)+k-1) + btb14(i)*unl(pos4(i)+k-1) + btb15(i)*unl(pos5(i)+k-1)
443 . + btb16(i)*unl(pos6(i)+k-1) )
445 b2 = l2 * vol(i) * ws(k,nlay) *half * ( btb12(i)*unl(pos1(i)+k-1) + btb22(i)*unl(pos2(i)+k-1)
446 . + btb23(i)*unl(pos3(i)+k-1) + btb24(i)*unl(pos4(i)+k-1) + btb25(i)*unl(pos5(i)+k-1)
447 . + btb26(i)*unl(pos6(i)+k-1) )
449 b3 = l2 * vol(i) * ws(k,nlay) *half * ( btb13(i)*unl(pos1(i)+k-1) + btb23(i)*unl(pos2(i)+k-1)
450 . + btb33(i)*unl(pos3(i)+k-1) + btb34(i)*unl(pos4(i)+k-1) + btb35(i)*unl(pos5(i)+k-1)
451 . + btb36(i)*unl(pos6(i)+k-1) )
453 b4 = l2 * vol(i) * ws(k,nlay) *half * ( btb14(i)*unl(pos1(i)+k-1) + btb24(i)*unl(pos2(i)+k-1)
454 . + btb34(i)*unl(pos3(i)+k-1) + btb44(i)*unl(pos4(i)+k-1) + btb45(i)*unl(pos5(i)+k-1)
455 . + btb46(i)*unl(pos6(i)+k-1) )
457 b5 = l2 * vol(i) * ws(k,nlay) *half * ( btb15(i)*unl(pos1(i)+k-1) + btb25(i)*unl(pos2(i)+k-1)
458 . + btb35(i)*unl(pos3(i)+k-1) + btb45(i)*unl(pos4(i)+k-1) + btb55(i)*unl(pos5(i)+k-1)
459 . + btb56(i)*unl(pos6(i)+k-1) )
461 b6 = l2 * vol(i) * ws(k,nlay) *half * ( btb16(i)*unl(pos1(i)+k
462 . + btb36(i)*unl(pos3(i)+k-1) + btb46(i)*unl(pos4(i)+k-1) + btb56(i)*unl(pos5(i)+k-1)
463 . + btb66(i)*unl(pos6(i)+k-1) )
466 ntn_unl = ntn_unl * vol(i) * ws(k,nlay) * half
467 ntn_vnl = ntn_vnl * xi * vol(i) * ws(k,nlay) * half
470 ntvar = var_reg(i,k)*one_over_6* vol(i) * ws(k,nlay) * half
473 a = ntn_unl + ntn_vnl - ntvar
483 sti1(i,k) = (abs(l2*btb11(i) + one/ntn) + abs(l2*btb12(i) + one/ntn) + abs(l2*btb13(i) + one/ntn) +
484 . abs(l2*btb14(i) + one/ntn) + abs(l2*btb15(i) + one/ntn) + abs(l2*btb16(i) + one/ntn))
485 . *vol(i)*ws(k,nlay)*half
486 sti2(i,k) = (abs(l2*btb12(i) + one/ntn) + abs(l2*btb22(i) + one/ntn) + abs(l2*btb23(i) + one/ntn) +
487 . abs(l2*btb24(i) + one/ntn) + abs(l2*btb25(i) + one/ntn) + abs(l2*btb26(i) + one/ntn))
488 . *vol(i)*ws(k,nlay)*half
489 sti3(i,k) = (abs(l2*btb13(i) + one/ntn) + abs(l2*btb23(i) + one/ntn) + abs(l2*btb33(i) + one
490 . abs(l2*btb34(i) + one/ntn) + abs(l2*btb35(i) + one/ntn) + abs(l2*btb36(i) + one/ntn))
491 . *vol(i)*ws(k,nlay)*half
492 sti4(i,k) = (abs(l2*btb14(i) + one/ntn) + abs(l2*btb24(i) + one/ntn) + abs(l2*btb34(i) + one/ntn) +
493 . abs(l2*btb44(i) + one/ntn) + abs(l2*btb45(i) + one/ntn) + abs(l2*btb46(i) + one/ntn))
494 . *vol(i)*ws(k,nlay)*half
495 sti5(i,k) = (abs(l2*btb15(i) + one/ntn) + abs(l2*btb25(i) + one/ntn) + abs(l2*btb35(i) + one/ntn) +
496 . abs(l2*btb45(i) + one/ntn) + abs(l2*btb55(i) + one/ntn) + abs(l2*btb56(i) + one/ntn))
497 . *vol(i)*ws(k,nlay)*half
498 sti6(i,k) = (abs(l2*btb16(i) + one/ntn) + abs
499 . abs(l2*btb46(i) + one/ntn) + abs(l2*btb56(i) + one/ntn) + abs(l2*btb66(i) + one
500 . *vol(i)*ws(k,nlay)*half
507 lc(i) = (vol0(i)*ws(k,nlay)*half)**third
512 f1(i,k) = sqrt(mass(pos1(i)+k-1)/mass0(pos1(i)+k-1))*zeta*sspnl*half*
513 . (vnl(pos1(i)+k-1)+vnl0(pos1(i)+k-1))*(two*third)*(lc(i)**2)
514 f2(i,k) = sqrt(mass(pos2(i)+k-1)/mass0(pos2(i)+k-1))*zeta*sspnl*half*
515 . (vnl(pos2(i)+k-1)+vnl0(pos2(i)+k-1))*(two*third)*(lc(i)**2)
516 f3(i,k) = sqrt(mass(pos3(i)+k-1)/mass0(pos3(i)+k-1))*zeta*sspnl*half*
517 . (vnl(pos3(i)+k-1)+vnl0(pos3(i)+k-1))*(two*third)*(lc(i)**2)
518 f4(i,k) = sqrt(mass(pos4(i)+k-1)/mass0(pos4(i)+k-1))*zeta*sspnl*half*
519 . (vnl(pos4(i)+k-1)+vnl0(pos4(i)+k-1))*(two*third)*(lc(i)**2)
520 f5(i,k) = sqrt(mass(pos5(i)+k-1)/mass0(pos5(i)+k-1))*zeta*sspnl*half*
521 . (vnl(pos5(i)+k-1)+vnl0(pos5(i)+k-1))*(two*third)*(lc(i)**2)
523 . (vnl(pos6(i)+k-1)+vnl0(pos6(i)+k-1))*(two*third)*(lc(i)**2)
533 f1(i,k) = zeta*sspnl*half*(vnl(pos1(i)+k
534 f2(i,k) = zeta*sspnl*half*(vnl(pos2(i)+k-1)+vnl0(pos2(i)+k-1))*(two*third)*(lc(i)**2)
535 f3(i,k) = zeta*sspnl*half*(vnl(pos3(i)+k-1)+vnl0(pos3(i)+k-1))*(two*third)*(lc(i)**2)
536 f4(i,k) = zeta*sspnl*half*(vnl(pos4(i)+k-1)+vnl0(pos4(i)+k-1))*(two*third)*(lc(i)**2)
537 f5(i,k) = zeta*sspnl*half*(vnl(pos5(i)+k-1)+vnl0(pos5(i)+k-1))*(two*third)*(lc
538 f6(i,k) = zeta*sspnl*half*(vnl(pos6(i)+k-1)+vnl0(pos6(i)+k-1))*(two*third)*(lc(i)**2)
549 IF (iparit == 0)
THEN
551 fnl => nloc_dmg%FNL(1:l_nloc,itask+1)
552 IF (nodadt > 0) stifnl => nloc_dmg%STIFNL(1:l_nloc,itask
556# include "vectorize.inc"
559 fnl(pos1(i)+k-1) = fnl(pos1(i)+k
560 fnl(pos2(i)+k-1) = fnl(pos2(i)+k-1) - f2(i,k)
561 fnl(pos3(i)+k-1) = fnl(pos3(i)+k-1) - f3(i,k)
562 fnl(pos4(i)+k-1) = fnl(pos4(i)+k-1) - f4(i,k)
563 fnl(pos5(i)+k-1) = fnl(pos5(i)+k-1) - f5(i,k)
564 fnl(pos6(i)+k-1) = fnl(pos6(i)+k-1) -
567 maxstif =
max(sti1(i,k),sti2(i,k),sti3(i,k),
568 . sti4(i,k),sti5(i,k),sti6(i,k))
570 stifnl(pos1(i)+k-1) = stifnl(pos1(i)+k-1) + maxstif
571 stifnl(pos2(i)+k-1) = stifnl(pos2(i)+k-1) + maxstif
572 stifnl(pos3(i)+k-1) = stifnl(pos3(i)+k-1) + maxstif
573 stifnl(pos4(i)+k-1) = stifnl(pos4(i)+k-1) + maxstif
574 stifnl(pos5(i)+k-1) = stifnl(pos5(i)+k-1) + maxstif
575 stifnl(pos6(i)+k-1) = stifnl(pos6(i)+k-1) + maxstif
591 maxstif =
max(sti1(i,j),sti2(i,j),sti3(i,j),sti4(i,j),
592 . sti5(i,j),sti6(i,j))
595 k = nloc_dmg%IADS(1,ii)
596 nloc_dmg%FSKY(k,j) = -f1(i,j)
597 IF (nodadt > 0) nloc_dmg%STSKY(k,j) = maxstif
599 k = nloc_dmg%IADS(2,ii)
600 nloc_dmg%FSKY(k,j) = -f2(i,j)
601 IF (nodadt > 0) nloc_dmg%STSKY(k,j) = maxstif
603 k = nloc_dmg%IADS(3,ii)
604 nloc_dmg%FSKY(k,j) = -f3(i,j)
605 IF (nodadt > 0) nloc_dmg%STSKY(k,j) = maxstif
607 k = nloc_dmg%IADS(5,ii)
608 nloc_dmg%FSKY(k,j) = -f4(i,j)
609 IF (nodadt > 0) nloc_dmg%STSKY(k,j) = maxstif
611 k = nloc_dmg%IADS(6,ii)
612 nloc_dmg%FSKY(k,j) = -f5(i,j)
613 IF (nodadt > 0) nloc_dmg%STSKY(k,j) = maxstif
615 k = nloc_dmg%IADS(7,ii)
616 nloc_dmg%FSKY(k,j) = -f6(i,j)
617 IF (nodadt > 0) nloc_dmg%STSKY(k,j) = maxstif
626 IF (nodadt == 0)
THEN
629 IF (off(i)/=zero)
THEN
631 dtnl = (two*(
min((vol(i))**third,le_max))*sqrt(three*zeta))/
632 . sqrt(twelve*l2 + (
min((vol(i))**third,le_max))**2)
635 dtnl_th = (two*(
min(lthk(i),le_max))*sqrt(three*zeta))/
636 . sqrt(twelve*l2 + (
min(lthk(i),le_max))**2)
641 dt2t =
min(dt2t,dtfac1(1)*cdamp*dtnl_th,dtfac1(1)*cdamp*dtnl)
647 IF (
ALLOCATED(btb11))
DEALLOCATE(btb11)
648 IF (
ALLOCATED(btb12))
DEALLOCATE(btb12)
649 IF (
ALLOCATED(btb13))
DEALLOCATE(btb13)
650 IF (
ALLOCATED(btb14))
DEALLOCATE(btb14)
651 IF (
ALLOCATED(btb15))
DEALLOCATE(btb15)
652 IF (
ALLOCATED(btb16))
DEALLOCATE(btb16)
653 IF (
ALLOCATED(btb22))
DEALLOCATE(btb22)
654 IF (
ALLOCATED(btb23))
DEALLOCATE(btb23)
655 IF (
ALLOCATED(btb24))
DEALLOCATE(btb24)
656 IF (
ALLOCATED(btb25))
DEALLOCATE(btb25)
657 IF (
ALLOCATED(btb26))
DEALLOCATE(btb26)
658 IF (
ALLOCATED(btb33))
DEALLOCATE(btb33)
659 IF (
ALLOCATED(btb34))
DEALLOCATE(btb34)
660 IF (
ALLOCATED(btb35))
DEALLOCATE(btb35)
661 IF (
ALLOCATED(btb36))
DEALLOCATE(btb36)
662 IF (
ALLOCATED(btb44))
DEALLOCATE(btb44)
663 IF (
ALLOCATED(btb45))
DEALLOCATE(btb45)
664 IF (
ALLOCATED(btb46))
DEALLOCATE(btb46)
665 IF (
ALLOCATED(btb55))
DEALLOCATE(btb55)
666 IF (
ALLOCATED(btb56))
DEALLOCATE(btb56)
667 IF (
ALLOCATED(btb66))
DEALLOCATE(btb66)
668 IF (
ALLOCATED(pos1))
DEALLOCATE(pos1)
669 IF (
ALLOCATED(pos2))
DEALLOCATE(pos2)
670 IF (
ALLOCATED(pos3))
DEALLOCATE(pos3)
671 IF (
ALLOCATED(pos4))
DEALLOCATE(pos4)
672 IF (
ALLOCATED(pos5))
DEALLOCATE(pos5)
673 IF (
ALLOCATED(pos6))
DEALLOCATE(pos6)
674 IF (
ALLOCATED(sti1))
DEALLOCATE(sti1)
675 IF (
ALLOCATED(sti2))
DEALLOCATE(sti2)
676 IF (
ALLOCATED(sti3))
DEALLOCATE(sti3)
677 IF (
ALLOCATED(sti4))
DEALLOCATE(sti4)
678 IF (
ALLOCATED(sti5))
DEALLOCATE(sti5)
679 IF (
ALLOCATED(sti6))
DEALLOCATE(sti6)
680 IF (
ALLOCATED(stifnlth))
DEALLOCATE(stifnlth)