35 1 NEL ,NUPARAM,NUVAR ,NFUNC ,IFUNC ,
36 2 NPF ,TF ,TIME ,TIMESTEP,UPARAM ,ISMSTR ,
37 3 EPSPXX ,EPSPYY ,EPSPZZ ,EPSPXY ,EPSPYZ ,EPSPZX ,
38 4 EPSXX ,EPSYY ,EPSZZ ,EPSXY ,EPSYZ ,EPSZX ,
39 5 SIGNXX ,SIGNYY ,SIGNZZ ,SIGNXY ,SIGNYZ ,SIGNZX ,
40 6 UVAR ,OFF ,IPT ,NGL ,DFMAX ,TDEL ,
41 7 UELR ,NPT ,DELTAX ,LF_DAMMX)
47#include "implicit_f.inc"
84 INTEGER :: NEL,NUPARAM,NUVAR,IPT,NPT,ISMSTR,LF_DAMMX
85 INTEGER ,
DIMENSION(NEL) :: NGL
87 my_real ,
DIMENSION(NUPARAM) :: UPARAM
88 my_real ,
DIMENSION(NEL)INTENT(IN) :: EPSXX,EPSYY,EPSZZ,
89 . EPSXY,EPSYZ,EPSZX,EPSPXX,EPSPYY,EPSPZZ,,EPSPYZ,EPSPZX
90 my_real ,
DIMENSION(NEL) :: ,DELTAX,
91 . signxx,signyy,signzz,signxy,signyz,signzx
95 my_real uvar(nel,nuvar),off(nel),tdel(nel)
96 my_real,
DIMENSION(NEL,LF_DAMMX),
INTENT(INOUT) :: dfmax
100 INTEGER NPF(*), NFUNC, IFUNC(NFUNC)
101 my_real FINTER ,TF(*)
114 INTEGER I,J,,FAILI,MODE,XX,XY,YY,ZZ,YZ,ZX,IFUNC_SIZ,STRDEF,STRFLAG,
115 . M11T, M11C,M22T,M22C,,M33C,M12T,,M23T,M23C,M31T,M31C
116 INTEGER ,
DIMENSION(NEL) :: INDX,,IADP,ILENP
117 INTEGER ,
DIMENSION(NEL,12) :: FMODE
118 my_real ODAM(NEL,12),EPSP(NEL,6),SIGO(NEL,6),FSIZE(NEL),
119 . ESCAL(NEL),DYDX(NEL)
120 my_real ,
DIMENSION(NEL) :: EPS11,EPS22,,EPS12,EPS23,EPS31,
121 . epsp11,epsp22,epsp33,epsp12,epsp23
122 . epsm1,epsm2,epsm3,epsm4,epsm5,epsm6,
123 . epsm7,epsm8,epsm9,epsm10,epsm11,epsm12
124 my_real frate,epspref,epdot,
alpha,depsm,deps,fact,p,i1,i2,i3,q,r,r_inter,
125 . phi,et1,et2,et12,ec1,ec2,ec12,et3,ec3,ec23,et23,ec31,et31,
126 . et1m,et2m,et12m,ec1m,ec2m,ec12m,et3m,ec3m,ec23m,et23m,ec31m,et31m,
127 . di,damxx,damyy,damxy,damzz,damyz,damzx,
128 . odamxx,odamyy,odamxy,odamzz,odamyz,odamzx,fscale_siz,ref_siz
129 my_real epstens(3,3),epstens2(3,3),eps_pr(3),vect_pr(3,3),
130 . epsptens(3,3),epsptens2(3,3),epsp_pr(3)
133 ALPHA =
min(two*pi*uparam(16)*
max(timestep,em20
135 fscale_siz = uparam(26)
137 strdef = nint(uparam(28))
138 ifunc_siz = ifunc(13)
143 IF (strdef == 2)
THEN
144 IF (ismstr /=1 .AND. ismstr /=3 .AND. ismstr /= 11)
THEN
147 ELSE IF (strdef == 3)
THEN
148 IF (ismstr == 1 .OR. ismstr == 3 .OR. ismstr == 11)
THEN
153 SELECT CASE (strflag)
157 IF (off(i) == one )
THEN
159 epstens(1,1) = epsxx(i)
160 epstens(2,2) = epsyy(i)
161 epstens(3,3) = epszz(i)
162 epstens(1,2) = half*epsxy(i)
163 epstens(2,3) = half*epsyz(i)
164 epstens(1,3) = half*epszx(i)
165 epstens(2,1) = epstens(1,2)
166 epstens(3,1) = epstens(1,3)
167 epstens(3,2) = epstens(2,3)
169 CALL jacobiew(epstens,3,eps_pr,vect_pr,nrot)
171 eps_pr(1) = exp(eps_pr(1)) - one
172 eps_pr(2) = exp(eps_pr(2)) - one
173 eps_pr(3) = exp(eps_pr(3)) - one
175 epstens(1:3,1:3) = zero
176 epstens(1,1) = eps_pr(1)
177 epstens(2,2) = eps_pr(2)
178 epstens(3,3) = eps_pr(3)
184 epstens2(k,l) = epstens2(k,l) + epstens(k,m)*vect_pr(l,m)
192 epstens(k,l) = epstens(k,l) + vect_pr(k,m)*epstens2(m,l)
197 eps11(i) = epstens(1,1)
198 eps22(i) = epstens(2,2)
199 eps33(i) = epstens(3,3)
200 eps12(i) = epstens(1,2)
201 eps23(i) = epstens(2,3)
202 eps31(i) = epstens(3,1)
204 epsptens(1,1) = epspxx(i)
205 epsptens(2,2) = epspyy(i)
206 epsptens(3,3) = epspzz(i)
207 epsptens(1,2) = half*epspxy(i)
208 epsptens(2,3) = half*epspyz(i)
209 epsptens(1,3) = half*epspzx(i)
210 epsptens(2,1) = epsptens(1,2)
211 epsptens(3,1) = epsptens(1,3)
212 epsptens(3,2) = epsptens(2,3)
214 CALL jacobiew(epsptens,3,epsp_pr,vect_pr,nrot)
216 epsp_pr(1) = (eps_pr(1)+one)*epsp_pr(1)
217 epsp_pr(2) = (eps_pr(2)+one)*epsp_pr(2)
218 epsp_pr(3) = (eps_pr(3)+one)*epsp_pr(3)
220 epsptens(1:3,1:3) = zero
221 epsptens(1,1) = epsp_pr(1)
222 epsptens(2,2) = epsp_pr(2)
223 epsptens(3,3) = epsp_pr(3)
227 epsptens2(k,l) = zero
229 epsptens2(k,l) = epsptens2(k,l) + epsptens(k,m)*vect_pr(l,m)
237 epsptens(k,l) = epsptens(k,l) + vect_pr(k,m)*epsptens2(m,l)
242 epsp11(i) = epsptens(1,1)
243 epsp22(i) = epsptens(2,2)
244 epsp33(i) = epsptens(3,3)
245 epsp12(i) = epsptens(1,2)
246 epsp23(i) = epsptens(2,3)
247 epsp31(i) = epsptens(3,1)
253 IF (off(i) == one )
THEN
255 epstens(1,1) = epsxx(i)
256 epstens(2,2) = epsyy(i)
257 epstens(3,3) = epszz(i)
258 epstens(1,2) = half*epsxy(i)
259 epstens(2,3) = half*epsyz(i)
260 epstens(1,3) = half*epszx(i)
261 epstens(2,1) = epstens(1,2)
262 epstens(3,1) = epstens(1,3)
263 epstens(3,2) = epstens(2,3)
265 CALL jacobiew(epstens,3,eps_pr,vect_pr,nrot)
267 eps_pr(1) = log(
max(one + eps_pr(1),em20))
268 eps_pr(2) = log(
max(one + eps_pr(2),em20))
269 eps_pr(3) = log(
max(one + eps_pr(3),em20))
271 epstens(1:3,1:3) = zero
272 epstens(1,1) = eps_pr(1)
273 epstens(2,2) = eps_pr(2)
274 epstens(3,3) = eps_pr(3)
280 epstens2(k,l) = epstens2(k,l) + epstens(k,m)*vect_pr(l,m)
288 epstens(k,l) = epstens(k,l) + vect_pr(k,m)*epstens2(m,l)
293 eps11(i) = epstens(1,1)
294 eps22(i) = epstens(2,2)
295 eps33(i) = epstens(3,3)
296 eps12(i) = epstens(1,2)
297 eps23(i) = epstens(2,3)
298 eps31(i) = epstens(3,1)
300 epsptens(1,1) = epspxx(i)
301 epsptens(2,2) = epspyy(i)
302 epsptens(3,3) = epspzz(i)
303 epsptens(1,2) = half*epspxy(i)
304 epsptens(2,3) = half*epspyz(i)
305 epsptens(1,3) = half*epspzx(i)
306 epsptens(2,1) = epsptens(1,2)
307 epsptens(3,1) = epsptens(1,3)
308 epsptens(3,2) = epsptens(2,3)
310 CALL jacobiew(epsptens,3,epsp_pr,vect_pr,nrot)
312 epsp_pr(1) = (one/(exp(eps_pr(1))))*epsp_pr(1)
313 epsp_pr(2) = (one/(exp(eps_pr(2))))*epsp_pr(2)
314 epsp_pr(3) = (one/(exp(eps_pr(3))))*epsp_pr(3)
316 epsptens(1:3,1:3) = zero
317 epsptens(1,1) = epsp_pr(1)
318 epsptens(2,2) = epsp_pr(2)
319 epsptens(3,3) = epsp_pr(3)
323 epsptens2(k,l) = zero
325 epsptens2(k,l) = epsptens2(k,l) + epsptens(k,m)*vect_pr(l,m)
333 epsptens(k,l) = epsptens(k,l) + vect_pr(k,m)*epsptens2(m,l)
338 epsp11(i) = epsptens(1,1)
339 epsp22(i) = epsptens(2,2)
340 epsp33(i) = epsptens(3,3)
341 epsp12(i) = epsptens(1,2)
342 epsp23(i) = epsptens(2,3)
343 epsp31(i) = epsptens(3,1)
349 eps11(1:nel) = epsxx(1:nel)
350 eps22(1:nel) = epsyy(1:nel)
351 eps33(1:nel) = epszz(1:nel)
352 eps12(1:nel) = half*epsxy(1:nel)
353 eps23(1:nel) = half*epsyz(1:nel)
354 eps31(1:nel) = half*epszx(1:nel)
355 epsp11(1:nel) = epspxx(1:nel)
356 epsp22(1:nel) = epspyy(1:nel)
357 epsp33(1:nel) = epspzz(1:nel)
358 epsp12(1:nel) = half*epspxy(1:nel)
359 epsp23(1:nel) = half*epspyz(1:nel)
360 epsp31(1:nel) = half*epspzx(1:nel)
364 IF (ifunc_siz > 0)
THEN
365 IF (uvar(1,13)==zero)
THEN
366 escal(1:nel) = deltax(1:nel) / ref_siz
368 iadp(1:nel) = npf(ifunc_siz) / 2 + 1
369 ilenp(1:nel) = npf(ifunc_siz + 1) / 2 - iadp(1:nel) - iposp(1:nel)
370 CALL vinter2(tf,iadp,iposp,ilenp,nel,escal,dydx,fsize)
371 fsize(1:nel) = fscale_siz * fsize(1:nel)
372 uvar(1:nel,13) = fsize(1:nel)
374 fsize(1:nel) = uvar(1:nel,13)
401 IF (off(i) == one)
THEN
403 odam(i,j) =
min(dfmax(i,j+1),one-em3)
406 sigo(i,j) = uvar(i,j)
407 epsp(i,j) = uvar(i,j+6)
414 IF (off(i) == one)
THEN
415 epsp(i,xx) = alpha * abs(epsp11(i)) + (one-alpha)*epsp(i,xx)
416 epsp(i,yy) = alpha * abs(epsp22(i)) + (one-alpha)*epsp(i,yy)
417 epsp(i,zz) = alpha * abs(epsp33(i)) + (one-alpha)*epsp(i,zz)
418 epsp(i,xy) = alpha * abs(epsp12(i)) + (one-alpha)*epsp(i,xy)
419 epsp(i,yz) = alpha * abs(epsp23(i)) + (one-alpha)*epsp(i,yz)
420 epsp(i,zx) = alpha * abs(epsp31(i)) + (one-alpha)*epsp(i,zx)
435 fmode(1:nel,1:12) = 0
437 IF (off(i) == one)
THEN
468 epdot = abs(epsp(i,xx))/epspref
469 IF (ifunc(mode) > 0)
THEN
470 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
474 frate = frate*fsize(i)
477 deps =
max(eps11(i) - et1, zero)
478 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
480 fact = et1m /
max(eps11(i),em20)
481 di = fact*deps/
max(depsm,em20)
482 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
483 IF (dfmax(i,1+mode) >= one)
THEN
486 dfmax(i,1+mode) = one
494 epdot = abs(epsp(i,yy))/epspref
495 IF (ifunc(mode) > 0)
THEN
496 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
500 frate = frate*fsize(i)
503 deps =
max(eps22(i) - et2, zero)
504 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
506 fact = et2m /
max(eps22(i),em20)
507 di = fact * deps /
max(depsm,em20)
508 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
509 IF (dfmax(i,1+mode) >= one)
THEN
512 dfmax(i,1+mode) = one
520 epdot = abs(epsp(i,xy))/epspref
521 IF (ifunc(mode) > 0)
THEN
522 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
526 frate = frate*fsize(i)
527 et12m = frate * et12m
529 deps =
max(eps12(i) - et12, zero)
530 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
531 depsm = (et12m - et12)
532 fact = et12m /
max(eps12(i),em20)
533 di = fact * deps /
max(depsm,em20)
534 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
535 IF (dfmax(i,1+mode) >= one)
THEN
538 dfmax(i,1+mode) = one
546 epdot = abs(epsp(i,xx))/epspref
547 IF (ifunc(mode) > 0)
THEN
548 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
552 frate = frate*fsize(i)
555 deps =
max(-eps11(i) - ec1, zero)
556 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
558 fact = ec1m /
max(abs(eps11(i)),em20)
559 di = fact * deps /
max(depsm
560 dfmax(i,1+mode) =
max(dfmax
561 IF (dfmax(i,1+mode) >= one)
THEN
572 epdot = abs(epsp(i,yy))/epspref
573 IF (ifunc(mode) > 0)
THEN
574 frate = finter(ifunc(mode),epdot,npf
578 frate = frate*fsize(i)
581 deps =
max(-eps22(i) - ec2, zero)
582 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
584 fact = ec2m /
max(abs(eps22(i)),em20)
585 di = fact * deps /
max(depsm,em20)
586 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
587 IF (dfmax(i,1+mode) >= one)
THEN
590 dfmax(i,1+mode) = one
598 epdot = abs(epsp(i,xy))/epspref
599 IF (ifunc(mode) > 0)
THEN
600 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
604 frate = frate*fsize(i)
605 ec12m = frate * ec12m
607 deps =
max(-eps12(i) - ec12, zero)
608 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
609 depsm = (ec12m - ec12)
610 fact = ec12m /
max(abs(eps12(i)),em20)
611 di = fact * deps /
max(depsm,em20)
612 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
613 IF (dfmax(i,1+mode) >= one)
THEN
616 dfmax(i,1+mode) = one
624 epdot = abs(epsp(i,zz))/epspref
625 IF (ifunc(mode) > 0)
THEN
626 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
630 frate = frate*fsize(i)
633 deps =
max(eps33(i) - et3, zero)
634 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
636 fact = et3m /
max(eps33(i),em20)
637 di = fact * deps /
max(depsm,em20)
638 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
639 IF (dfmax(i,1+mode) >= one)
THEN
642 dfmax(i,1+mode) = one
650 epdot = abs(epsp(i,zz))/epspref
651 IF (ifunc(mode) > 0)
THEN
652 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
656 frate = frate*fsize(i)
659 deps =
max(-eps33(i) - ec3, zero)
660 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
662 fact = ec3m /
max(abs(eps33(i)),em20)
663 di = fact * deps /
max(depsm,em20)
664 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
665 IF (dfmax(i,1+mode) >= one)
THEN
668 dfmax(i,1+mode) = one
676 epdot = abs(epsp(i,yz))/epspref
677 IF (ifunc(mode) > 0)
THEN
678 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
682 frate = frate*fsize(i)
683 et23m = frate * et23m
685 deps =
max(eps23(i) - et23, zero)
686 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
688 fact = et23m /
max(eps23(i),em20)
689 di = fact * deps /
max(depsm,em20)
690 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
691 IF (dfmax(i,1+mode) >= one)
THEN
694 dfmax(i,1+mode) = one
702 epdot = abs(epsp(i,yz))/epspref
703 IF (ifunc(mode) > 0)
THEN
704 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
708 frate = frate*fsize(i)
709 ec23m = frate * ec23m
711 deps =
max(-eps23(i) - ec23, zero)
712 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
713 depsm = (ec23m - ec23)
714 fact = ec23m /
max(abs(eps23(i)),em20)
715 di = fact * deps /
max(depsm,em20)
716 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
717 IF (dfmax(i,1+mode) >= one)
THEN
720 dfmax(i,1+mode) = one
728 epdot = abs(epsp(i,zx))/epspref
729 IF (ifunc(mode) > 0)
THEN
730 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
734 frate = frate*fsize(i)
735 et31m = frate * et31m
737 deps =
max(eps31(i) - et31, zero)
738 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
739 depsm = (et31m - et31)
740 fact = et31m /
max(eps31(i),em20)
741 di = fact * deps /
max(depsm,em20)
742 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
743 IF (dfmax(i,1+mode) >= one)
THEN
746 dfmax(i,1+mode) = one
754 epdot = abs(epsp(i,zx))/epspref
755 IF (ifunc(mode) > 0)
THEN
756 frate = finter(ifunc(mode),epdot,npf,tf,dydx)
760 frate = frate*fsize(i)
761 ec31m = frate * ec31m
763 deps =
max(-eps31(i) - ec31, zero)
764 IF (deps > zero .AND. dfmax(i,1+mode) < one)
THEN
765 depsm = (ec31m - ec31)
766 fact = ec31m /
max(abs(eps31(i)),em20)
767 di = fact * deps /
max(depsm,em20)
768 dfmax(i,1+mode) =
max(dfmax(i,1+mode), di)
769 IF (dfmax(i,1+mode) >= one)
THEN
772 dfmax(i,1+mode) = one
783 IF (uelr(i) >= npt)
THEN
794 IF (off(i) == one)
THEN
796 damxx =
max(dfmax(i,2) ,dfmax(i,5) )
797 damyy =
max(dfmax(i,3) ,dfmax(i,6) )
798 damzz =
max(dfmax(i,8) ,dfmax(i,9) )
799 damxy =
max(dfmax(i,4) ,dfmax(i,7) )
800 damyz =
max(dfmax(i,10),dfmax(i,11))
801 damzx =
max(dfmax(i,12),dfmax(i,13))
803 odamxx =
max(odam(i,1) ,odam(i,4) )
804 odamyy =
max(odam(i,2) ,odam(i,5) )
805 odamzz =
max(odam(i,7) ,odam(i,8) )
806 odamxy =
max(odam(i,3) ,odam(i,6) )
807 odamyz =
max(odam(i,9) ,odam(i,10))
808 odamzx =
max(odam(i,11),odam(i,12))
810 dfmax(i,1) =
max(damxx,damyy)
811 dfmax(i,1) =
max(damzz,dfmax(i,1))
813 dfmax(i,1) =
max(damyz,dfmax(i,1))
814 dfmax(i,1) =
max(damzx,dfmax(i,1))
816 signxx(i) = sigo(i,xx)/
max(one-odamxx,em20) + (signxx(i) - sigo(i,xx))
817 signyy(i) = sigo(i,yy)/
max(one-odamyy,em20) + (signyy(i) - sigo(i,yy))
818 signzz(i) = sigo(i,zz)/
max(one-odamzz,em20) + (signzz(i) - sigo(i,zz))
819 signxy(i) = sigo(i,xy)/
max(one-odamxy,em20) + (signxy(i) - sigo(i,xy))
820 signyz(i) = sigo(i,yz)/
max(one-odamyz,em20) + (signyz(i) - sigo(i,yz))
821 signzx(i) = sigo(i,zx)/
max(one-odamzx,em20) + (signzx(i) - sigo(i,zx))
823 signxx(i) = signxx(i) * (one-damxx)*off(i)
824 signyy(i) = signyy(i) * (one-damyy)*off(i)
825 signzz(i) = signzz(i) * (one-damzz)*off(i)
826 signxy(i) = signxy(i) * (one-damxy)*off(i)
827 signyz(i) = signyz(i) * (one-damyz)*off(i)
828 signzx(i) = signzx(i) * (one-damzx)*off(i)
842 IF (off(i) == one)
THEN
844 uvar(i,j+6) = epsp(i,j)
849 IF (off(i) == one)
THEN
850 uvar(i,xx) = signxx(i)
851 uvar(i,yy) = signyy(i)
852 uvar(i,zz) = signzz(i)
853 uvar(i,xy) = signxy(i)
854 uvar(i,yz) = signyz(i)
855 uvar(i,zx) = signzx(i)
865 WRITE(istdo,1000) ngl(i),ipt
866 WRITE(iout, 2000) ngl(i),ipt
867 IF (fmode(i,1) == 1)
WRITE(iout,4000)
'1 - TRACTION XX',eps11(i),epsm1(i),epsp(i,xx)
868 IF (fmode(i,2) == 1)
WRITE(iout,4000)
'2 - TRACTION YY',eps22(i),epsm2(i),epsp(i,yy)
869 IF (fmode(i,3) == 1)
WRITE(iout,4000)
'3 - POSITIVE SHEAR XY',eps12(i),epsm3(i),epsp(i,xy)
870 IF (fmode(i,4) == 1)
WRITE(iout,4000)
'4 - COMPRESSION XX',eps11(i),epsm4
871 IF (fmode(i,5) == 1)
WRITE(iout,4000)
'5 - COMPRESSION YY',eps22(i),epsm5(i),epsp(i,yy)
872 IF (fmode(i,6) == 1)
WRITE(iout,4000)
'6 - NEGATIVE SHEAR XY',eps12(i),epsm6(i),epsp(i,xy)
873 IF (fmode(i,7) == 1)
WRITE(iout,4000)
'7 - TRACTION ZZ',eps33(i),epsm7(i),epsp(i,zz)
874 IF (fmode(i,8) == 1)
WRITE(iout,4000)
'8 - COMPRESSION ZZ',eps33(i),epsm8(i),epsp(i,zz)
875 IF (fmode(i,9) == 1)
WRITE(iout,4000)
'9 - POSITIVE SHEAR YZ',eps23(i),epsm9(i),epsp(i,yz)
876 IF (fmode(i,10) == 1)
WRITE(iout,4000)
'10 - NEGATIVE SHEAR YZ',eps23(i),epsm10(i),epsp(i,yz)
877 IF (fmode(i,11) == 1)
WRITE(iout,4000)
'11 - POSITIVE SHEAR ZX',eps31(i),epsm11(i),epsp(i,zx)
878 IF (fmode(i,12) == 1)
WRITE(iout,4000)
'12 - NEGATIVE SHEAR ZX',eps31(i),epsm12(i),epsp(i,zx)
879 IF (off(i) == zero)
WRITE(iout, 3000) ngl(i),time
880#include "lockoff.inc"
884 1000
FORMAT(1x,
'FAILURE (ORTHSTR) OF SOLID ELEMENT ',i10,1x,
',GAUSS PT ',i5)
885 2000
FORMAT(1x,
'FAILURE (ORTHSTR) OF SOLID ELEMENT ',i10,1x,
',GAUSS PT ',i5)
886 3000
FORMAT(1x,
'RUPTURE OF ELEMENT #',i10,1x,
'AT TIME # ',1pe12.4)
887 4000
FORMAT(1x,
'MODE',1x,a,
', STRAIN',1pe12.4,
', CRITICAL VALUE',1pe12.4,
888 .
', STRAIN RATE',1pe12.4)