41 1 IXTG ,PM ,IPARG ,GEO ,
42 2 EADD ,ND ,IPARTTG ,DD_IAD ,
43 3 IDX ,INUM ,INDEX ,CEP ,
44 4 THK ,XNUM ,ITR1 ,IGRSURF ,IGRSH3N ,
45 5 ICNOD ,IGEO ,IPM ,IXTG1 ,
46 6 IPART ,SH3TREE ,NOD2ELTG ,ITRIOFF ,
47 7 SH3TRIM ,TAGPRT_SMS ,IWORKSH ,STACK ,
48 8 DRAPE ,RNOISE ,INIVOL ,MAT_PARAM ,
49 9 SH3ANG ,DRAPEG ,PRINT_FLAG ,PTSH3N )
82#include "implicit_f.inc"
88#include "com_xfem1.inc"
91#include "vect01_c.inc"
93#include "remesh_c.inc"
102 . IXTG(NIXTG,*), IPARG(NPARG,*), EADD(*), IXTG1(4,*),
103 . DD_IAD(NSPMD+1,*),IPARTTG(*),
104 . INUM(10,*),ITR1(*),INDEX(*),CEP(*),ICNOD(*),IPM(NPROPMI,NUMMAT),
105 . (*), SH3TRIM(*),IGEO(,NUMGEO),
106 . IPART(LIPART1,*), SH3TREE(KSH3TREE,*), NOD2ELTG(*) ,
107 . TAGPRT_SMS(*),IWORKSH(3,*)
108 INTEGER,
INTENT(IN) :: PRINT_FLAG
109 INTEGER ,
DIMENSION(NUMELTG)INTENT(INOUT)
110TYPE (INIVOL_STRUCT_),
DIMENSION(NUM_INIVOL) :: INIVOL
111 MY_REAL :: PM(,NUMMAT), GEO(NPROPG,NUMGEO),THK(*),XNUM(*),RNOISE(NPERTURB,*),SH3ANG(*)
113 TYPE (STACK_PLY) :: STACK
114 TYPE (DRAPE_),
TARGET :: DRAPE(NUMELC_DRAPE + NUMELTG_DRAPE)
115 TYPE (DRAPEG_) :: DRAPEG
116 TYPE (DRAPE_),
DIMENSION(:),
ALLOCATABLE :: XNUM_DRAPE
117 TYPE (DRAPEG_),
ALLOCATABLE :: XNUM_DRAPEG
118 TYPE (DRAPE_PLY_),
POINTER ::
119 TYPE(matparam_struct_) ,
DIMENSION(NUMMAT),
INTENT(IN) :: MAT_PARAM
121 TYPE (GROUP_),
DIMENSION(NGRSH3N) :: IGRSH3N
122 TYPE (SURF_),
DIMENSION(NSURF) :: IGRSURF
126 INTEGER , K, NGR1, MLN, ISMST,NN,ICSEN,NLEVXF,
128 . ipla, igtyp, p, nel_prec, nb,mode,kcnod,prt,neltg3,ipt,
129 . ilev, ie, mpt, nuvar, nuvarr, iadm, my_nvsiz,
130 . imatly,ixfem,iptun,irep,
131 . isubstack,ippid,ipmat,ish3n, npg,idrot1,nb_law58,ipert,
133 . jale_from_mat,jale_from_prop,nslice,kk,npt_drp,idrape,iel,iel0
134 my_real :: angle(numeltg)
135 INTEGER WORK(70000),NGP(NSPMD+1)
136 INTEGER,
DIMENSION(:,:)ALLOCATABLE :: ISTOR
138 CHARACTER(LEN=NCHARTITLE)::TITR,TITR1
139 my_real,
DIMENSION(:,:),
ALLOCATABLE :: XNUM_RNOISE
140 INTEGER,
DIMENSION(:),
ALLOCATABLE :: INDEX2, INUM_PTSH3N
141 INTEGER,
DIMENSION(:,:),
ALLOCATABLE :: INUM_WORKSH
144 CALL my_alloc(index2,numeltg)
148 ALLOCATE( istor(ksh3tree+1,numeltg) )
150 ALLOCATE( istor(0,0) )
153 IF (nperturb > 0)
THEN
154 ALLOCATE(xnum_rnoise(nperturb,numeltg),stat=stat)
155 IF (stat /= 0)
CALL ancmsg(msgid=268,anmode=aninfo,msgtype=msgerror,c1=
'XNUM_RNOISE')
157 ALLOCATE(xnum_rnoise(0,0))
169 CALL zeroin(1,nd*(nspmd+1),dd_iad(1,nspgroup+1))
175 dd_iad(p,nspgroup+n) = 0
181 IF(ndrape > 0 ) iel = drapeg%NUMSH4
183 nel = eadd(n+1)-eadd(n)
184 IF (ndrape > 0 .AND. numeltg_drape > 0)
THEN
185 ALLOCATE(xnum_drape(nel))
186 ALLOCATE(xnum_drapeg%INDX(nel))
189 iel0 = drapeg%INDX(numelc + i + nft)
191 npt = drape(iel0)%NPLY
192 npt_drp = drape(iel0)%NPLY_DRAPE
193 ALLOCATE(xnum_drape(i)%INDX_PLY(npt_drp))
194 ALLOCATE(xnum_drape(i)%DRAPE_PLY(npt_drp))
195 xnum_drape(i)%INDX_PLY= 0
197 nslice = drape(iel0)%DRAPE_PLY(j)%NSLICE
198 ALLOCATE(xnum_drape(i)%DRAPE_PLY(j)%RDRAPE(nslice,2))
199 ALLOCATE(xnum_drape(i)%DRAPE_PLY(j)%IDRAPE(nslice,2))
200 xnum_drape(i)%DRAPE_PLY(j)%RDRAPE = 0
201 xnum_drape(i)%DRAPE_PLY(j)%IDRAPE = 0
205 ALLOCATE( xnum_drape(0) )
207 ALLOCATE(inum_worksh(3,nel))
209 IF(ndrape > 0 .AND. numeltg_drape > 0 )
THEN
212 inum(1,i)=iparttg(nft+i)
213 inum(2,i)=itrioff(nft+i)
214 inum(3,i)=ixtg(1,nft+i)
215 inum(4,i)=ixtg(2,nft+i)
216 inum(5,i)=ixtg(3,nft+i)
217 inum(6,i)=ixtg(4,nft+i)
218 inum(7,i)=ixtg(5,nft+i)
219 inum(8,i)=ixtg(6,nft+i)
220 inum(10,i)=ixtg(1,nft+i)
222 inum_worksh(1,i) = iworksh(1,numelc + nft + i)
223 inum_worksh(2,i) = iworksh(2,numelc + nft + i)
224 inum_worksh(3,i) = iworksh(3,numelc + nft + i)
225 IF (nperturb > 0)
THEN
226 DO ipert = 1, nperturb
227 xnum_rnoise(ipert,i) = rnoise(ipert,nft+i)
230 angle(i) = sh3ang(nft + i)
232 iel0 = drapeg%INDX(numelc + nft + i)
233 xnum_drapeg%INDX(i) = iel0
235 npt = drape(iel0)%NPLY
236 xnum_drape(i)%NPLY = npt
237 xnum_drape(i)%INDX_PLY(1:npt) = drape(iel0)%INDX_PLY(1:npt)
238 npt = drape(iel)%NPLY_DRAPE
239 xnum_drape(i)%NPLY_DRAPE = npt
240 xnum_drape(i)%THICK = drape(iel0)%THICK
242 drape_ply => drape(iel0)%DRAPE_PLY(jj)
243 nslice = drape_ply%NSLICE
244 xnum_drape(i)%DRAPE_PLY(jj)%NSLICE = nslice
245 xnum_drape(i)%DRAPE_PLY(jj)%IPID = drape_ply%IPID
247 xnum_drape(i)%DRAPE_PLY(jj)%IDRAPE(kk,1)=drape_ply%IDRAPE(kk,1)
248 xnum_drape(i)%DRAPE_PLY(jj)%IDRAPE(kk,2)=drape_ply%IDRAPE(kk,2)
249 xnum_drape(i)%DRAPE_PLY(jj)%RDRAPE(kk,1)=drape_ply%RDRAPE(kk,1)
250 xnum_drape(i)%DRAPE_PLY(jj)%RDRAPE(kk,2)=drape_ply%RDRAPE(kk,2)
252 DEALLOCATE(drape_ply%IDRAPE, drape_ply%RDRAPE)
254 DEALLOCATE(drape(iel0)%DRAPE_PLY)
255 DEALLOCATE(drape(iel0)%INDX_PLY)
260 inum(1,i)=iparttg(nft+i)
261 inum(2,i)=itrioff(nft+i)
262 inum(3,i)=ixtg(1,nft+i)
263 inum(4,i)=ixtg(2,nft+i)
264 inum(5,i)=ixtg(3,nft+i)
265 inum(6,i)=ixtg(4,nft+i)
266 inum(7,i)=ixtg(5,nft+i)
267 inum(8,i)=ixtg(6,nft+i)
268 inum(10,i)=ixtg(1,nft+i)
270 inum_worksh(1,i) = iworksh(1,numelc + nft + i)
271 inum_worksh(2,i) = iworksh(2,numelc + nft + i)
272 inum_worksh(3,i) = iworksh(3,numelc + nft + i)
273 IF (nperturb > 0)
THEN
274 DO ipert = 1, nperturb
275 xnum_rnoise(ipert,i) = rnoise(ipert,nft+i)
278 angle(i)=sh3ang(nft+i)
282 IF(abs(isigi) == 3 .OR. abs(isigi) == 4 .OR. abs(isigi) == 5)
THEN
283 ALLOCATE(inum_ptsh3n(nel))
285 inum_ptsh3n(i)=ptsh3n(nft+i)
291 istor(k,i)=sh3tree(k,nft+i)
296 istor(ksh3tree+1,i)=sh3trim(nft+i)
302 CALL my_orders( mode, work, cep(nft+1), index, nel , 1)
303 IF(ndrape > 0 .AND. numeltg_drape > 0)
THEN
307 itrioff(i+nft)=inum(2,index(i))
308 thk(i+nft) =xnum(index(i))
309 ixtg(1,i+nft)=inum(3,index(i))
310 ixtg(2,i+nft)=inum(4,index(i))
311 ixtg(3,i+nft)=inum(5,index(i))
312 ixtg(4,i+nft)=inum(6,index(i))
313 ixtg(5,i+nft)=inum(7,index(i))
314 ixtg(6,i+nft)=inum(8,index(i))
315 itr1(nft+index(i)) = nft+i
316 iworksh(1,numelc + nft + i)=inum_worksh(1,index(i))
317 iworksh(2,numelc + nft + i)=inum_worksh(2,index(i))
318 iworksh(3,numelc + nft + i)=inum_worksh(3,index(i))
319 IF (nperturb > 0)
THEN
320 DO ipert = 1, nperturb
321 rnoise(ipert,i+nft) = xnum_rnoise(ipert,index(i))
324 sh3ang(nft+i) = angle(index(i))
325 IF(xnum_drapeg%INDX(index(i)) == 0) cycle
327 npt = xnum_drape(index(i))%NPLY
328 drape(iel)%NPLY = npt
329 drapeg%INDX(numelc + nft + i)= iel
330 ALLOCATE(drape(iel)%INDX_PLY(npt))
331 drape(iel)%INDX_PLY(1:npt) = xnum_drape(index(i))%INDX_PLY(1:npt)
332 npt = xnum_drape(index(i))%NPLY_DRAPE
333 drape(iel)%NPLY_DRAPE = npt
334 drape(iel)%THICK = xnum_drape(index(i))%THICK
335 ALLOCATE(drape(iel)%INDX_PLY(npt))
337 drape_ply => drape(iel)%DRAPE_PLY(jj)
338 nslice = xnum_drape(index(i))%DRAPE_PLY(jj)%NSLICE
339 drape_ply%NSLICE = nslice
340 drape_ply%IPID = xnum_drape(index(i))%DRAPE_PLY(jj)%IPID
341 ALLOCATE(drape_ply%IDRAPE(nslice,2), drape_ply%RDRAPE(nslice,2))
343 drape_ply%RDRAPE = zero
345 drape_ply%IDRAPE(kk,1) = xnum_drape(index(i))%DRAPE_PLY(jj)%IDRAPE(kk,1)
346 drape_ply%IDRAPE(kk,2) = xnum_drape(index(i))%DRAPE_PLY(jj)%IDRAPE(kk,2)
347 drape_ply%RDRAPE(kk,1) = xnum_drape(index(i))%DRAPE_PLY(jj)%RDRAPE(kk,1)
348 drape_ply%RDRAPE(kk,2) = xnum_drape(index(i))%DRAPE_PLY(jj)%RDRAPE(kk,2)
355 iparttg(i+nft)=inum(1,index(i))
356 itrioff(i+nft)=inum(2,index(i))
357 thk(i+nft) =xnum(index(i))
358 ixtg(1,i+nft)=inum(3,index(i))
359 ixtg(2,i+nft)=inum(4,index(i))
360 ixtg(3,i+nft)=inum(5,index(i))
361 ixtg(4,i+nft)=inum(6,index(i))
362 ixtg(5,i+nft)=inum(7,index(i))
363 ixtg(6,i+nft)=inum(8,index(i))
364 itr1(nft+index(i)) = nft+i
365 iworksh(1,numelc + nft + i)=inum_worksh(1,index(i))
366 iworksh(2,numelc + nft + i)=inum_worksh(2,index(i))
367 iworksh(3,numelc + nft + i)=inum_worksh(3,index(i))
368 IF (nperturb > 0)
THEN
369 DO ipert = 1, nperturb
370 rnoise(ipert,i+nft) = xnum_rnoise(ipert,index(i))
373 sh3ang(nft+i) = angle(index(i))
376 IF(abs(isigi)==3.OR.abs(isigi)== 4.OR.abs(isigi)==5)
THEN
378 ptsh3n(nft+i) = inum_ptsh3n(index(i))
380 DEALLOCATE(inum_ptsh3n)
385 sh3tree(k,i+nft)=istor(k,index(i))
390 sh3trim(i+nft)=istor(ksh3tree+1,index(i))
398 inum(1,i)=ixtg1(1,ii)
399 inum(2,i)=ixtg1(2,ii)
400 inum(3,i)=ixtg1(3,ii)
405 ixtg1(1,ii)=inum(1,index(i))
406 ixtg1(2,ii)=inum(2,index(i))
407 ixtg1(3,ii)=inum(3,index(i))
414 p = cep(nft+index(1))
417 IF (cep(nft+index(i))/=p)
THEN
418 dd_iad(p+1,nspgroup+n) = nb
420 p = cep(nft+index(i))
425 dd_iad(p+1,nspgroup+n) = nb
427 dd_iad(p,nspgroup+n) = dd_iad(p,nspgroup+n)
428 . + dd_iad(p-1,nspgroup+n)
431 dd_iad(p,nspgroup+n) = dd_iad(p-1,nspgroup+n)+1
433 dd_iad(1,nspgroup+n) = 1
438 index(i) = cep(nft+index(i))
441 cep(nft+i) = index(i)
445 IF(ndrape > 0 .AND. numeltg_drape > 0)
THEN
447 iel0 = xnum_drapeg%INDX(i)
449 npt_drp = xnum_drape(i)%NPLY_DRAPE
451 DEALLOCATE(xnum_drape(i)%DRAPE_PLY(j)%RDRAPE)
452 DEALLOCATE(xnum_drape(i)%DRAPE_PLY(j)%IDRAPE)
454 DEALLOCATE(xnum_drape(i)%DRAPE_PLY,xnum_drape(i)%INDX_PLY)
456 DEALLOCATE( xnum_drape, xnum_drapeg%INDX )
458 DEALLOCATE( xnum_drape )
460 DEALLOCATE(inum_worksh)
470 . sh3tree(1,i)=itr1(sh3tree(1,i))
472 . sh3tree(2,i)=itr1(sh3tree(2,i))
481 IF(igrsurf(i)%ELTYP(j) == 7)
482 . igrsurf(i)%ELEM(j) = itr1(igrsurf(i)%ELEM(j))
489 nn=igrsh3n(i)%NENTITY
491 igrsh3n(i)%ENTITY(j) = itr1(igrsh3n(i)%ENTITY(j))
498 IF(nod2eltg(i) /= 0)nod2eltg(i)=itr1(nod2eltg(i))
508 nel = dd_iad(p+1,nspgroup+n)-dd_iad(p,nspgroup+n)
510 nel_prec = dd_iad(p,nspgroup+n)-dd_iad(1,nspgroup+n)
512 DO WHILE (nft < nel_prec+nel)
517 mln = nint(pm(19,mid))
520 IF (nsubdom>0) ipartr2r =
tag_mat(mid)
528 IF (ish3n > 3 .AND. ish3n < 30) ish3n=2
533 IF (igtyp == 17 .OR. igtyp == 51 .OR. igtyp == 52)
THEN
534 npn = iworksh(1,numelc + ii)
535 isubstack =iworksh(3,numelc + ii)
549 IF(ndrape > 0 .AND. (igtyp == 17 .OR. igtyp == 51 .OR. igtyp ==52) )
THEN
550 IF( drapeg%INDX(ii) /= 0 ) idrape = 1
553 IF (icrack3d > 0)
THEN
554 IF (igtyp == 11)
THEN
556 imatly = igeo(100+ipt,pid)
557 IF (mat_param(imatly)%NFAIL > 0) ixfem = mat_param(imatly)%IXFEM
559 IF (ixfem > 0) ixfem = 1
560 IF (ixfem == 1) nlevxf = nxel*npn
561 ELSEIF (igtyp == 51 .OR. igtyp == 52)
THEN
565 imatly = stack%IGEO(ipmat + ipt ,isubstack)
566 IF (mat_param(imatly)%NFAIL > 0) ixfem = mat_param(imatly)%IXFEM
567 IF (ixfem > 0) ixfem = 1
568 IF (ixfem == 1) nlevxf = nxel*npn
570 ELSEIF (igtyp == 1)
THEN
571 ixfem = mat_param(mid)%IXFEM
578 IF (ish3n >= 30 .and. ixfem > 0)
THEN
582 . msgtype=msgwarning,
583 . anmode=aninfo_blind_1,
588 nlevmax =
max(nlevmax, nlevxf)
592 CALL fretitl2(titr,igeo(npropgi-ltitr+1,pid),ltitr)
604 IF(ilev<0)ilev=-ilev-1
605 my_nvsiz=
max(4,
min(4**ilev,nvsiz))
609 IF (igtyp == 0) mln=0
611 IF (igtyp == 16 .and. mln == 58 .and.
612 . ismst /= 11 .and. ismst /= 4)
THEN
615 . msgtype=msgwarning,
616 . anmode=aninfo_blind_2,
623 IF (npn /= 1 .and. mln == 1) npn = 0
624 IF (npn == 0 .and. mln > 2 .and. mln /= 22 .and.
625 . mln /= 36 .and. mln /= 43 .and. mln /= 60 .and.
626 . mln /= 86 .and. mln /= 13 .and. mln /= 151)
THEN
628 . ipm(npropmi-ltitr+1,mid),
641 IF (idrot1>0.AND.ish3n>29)
THEN
643 . msgtype=msgwarning,
644 . anmode=aninfo_blind_2,
649 ithk = nint(geo(35,pid))
650 ipla = nint(geo(39,pid))
652 IF(npn == 0.AND.(mln == 36.OR.mln == 86))
THEN
655 ELSEIF(npn == 0.AND.mln == 3)
THEN
663 ELSEIF(mln == 32)
THEN
666 istrain = nint(geo(11,pid))
668 IF(mln == 19.OR.mln>=25.OR.mln == 15)istrain = 1
670 CALL zeroin(1,nparg,iparg(1,ngroup))
671 iparg(1,ngroup) = mln
672 ne1 =
min( my_nvsiz, nel + nel_prec - nft)
673 iparg(2,ngroup) = ne1
674 iparg(3,ngroup)= eadd(n)-1 + nft
675 iparg(4,ngroup) = lbufel+1
682 imatly = igeo(100+ipt,pid)
683 IF(mat_param(imatly)%NFAIL > 0)
THEN
688 ELSEIF(igtyp == 17)
THEN
697 imatly = stack%IGEO(ipmat + ipt ,isubstack)
698 IF(mat_param(imatly)%NFAIL > 0)
THEN
703 ELSEIF (igtyp == 51 .OR. igtyp == 52 )
THEN
711 imatly = stack%IGEO(ipmat + ipt ,isubstack)
712 IF(mat_param(imatly)%NFAIL > 0)
THEN
716 IF (nint(pm(19,imatly)) == 58) nb_law58 = nb_law58 + 1
719 IF (nb_law58 == npn)
THEN
721 ELSEIF (nb_law58 > 0)
THEN
726 IF(mat_param(mid)%NFAIL > 0.AND.mln /= 0 .AND. mln /= 13)
THEN
731 IF(mln == 13) irigid_mat = 1
733 jthe = nint(pm(71,mid))
737 IF(ipm(218,mid) > 0 .AND. mln /=0 .AND. mln /= 13)
THEN
744 nuvar =
max(nuvar,ipm(8,ixtg(1,ie)))
746 iparg(46,ngroup)=nuvar
755 mft = iparg(3,ngroup)
756 DO iloc = 1 ,iparg(2,ngroup)
758 IF(inivol(jj)%PART_ID == iparttg(iloc+mft))
THEN
768 iparg(54,ngroup) = ixfem
769 iparg(62,ngroup) = pid
770 iparg(65,ngroup) = nlevxf
772 IF (nsubdom>0) iparg(77,ngroup)= ipartr2r
774 iparg(6,ngroup) = npn
775 iparg(9,ngroup) = ismst
776 iparg(11,ngroup)= kcnod
777 iparg(13,ngroup)= jthe
778 IF(jale+jeul>0)iparg(13,ngroup)=-jthe
779 iparg(44,ngroup)= istrain
780 iparg(23,ngroup)= ish3n
781 iparg(28,ngroup)= ithk
782 iparg(29,ngroup)= ipla
783 iparg(35,ngroup)= irep
784 iparg(38,ngroup)= igtyp
785 iparg(39,ngroup)= icsen
786 iparg(41,ngroup)= idrot1
789 iparg(20, ngroup) = ipm(20, mid)
790 jale_from_mat = nint(pm(72,mid))
791 jale_from_prop = igeo(62,pid)
792 jale =
max(jale_from_mat, jale_from_prop)
799 iparg(7, ngroup) = jale
800 iparg(11, ngroup) = jeul
801 iparg(13,ngroup) = +abs(jthe) ! -1 nodal temperature +1 centroid temperature
808 ale%REZON%NUM_NUVAR_MAT =
ale%REZON%NUM_NUVAR_MAT + mat_param(mid)%REZON%NUM_NUVAR_MAT
809 ale%REZON%NUM_NUVAR_EOS =
ale%REZON%NUM_NUVAR_EOS + mat_param(mid)%REZON%NUM_NUVAR_EOS
814 iparg(81,ngroup) = mat_param(mid)%REZON%NUM_NUVAR_MAT
815 iparg(82,ngroup) = mat_param(mid)%REZON%NUM_NUVAR_EOS
818 iparg(45,ngroup)= ilev
819 IF(ilev/=0 .AND. ish3n > 2)
THEN
821 CALL fretitl2(titr,igeo(npropgi-ltitr+1,pid),ltitr)
824 . anmode=aninfo_blind_1,
833 sh3tree(4,j+eadd(n)+nft-1)=ngroup
834 ilev=sh3tree(3,j+eadd(n)+nft-1)
835 IF(ilev >= 0)iparg(8,ngroup)=0
841 midn = ixtg(1,j+eadd(n)+nft-1)
848 iparg(10,ngroup)= nsg
849 iparg(32,ngroup)= p-1
852 IF (igtyp == 11)
THEN
858 nuvarr =
max(nuvarr,ipm(221,ixtg(1,ie)))
864 nuvarr =
max(nuvarr,ipm(221,ixtg(1,ie)))
867 iparg(47,ngroup)=nuvarr
879 IF(tagprt_sms(iparttg(ii))/=0)jsms=1
886 iparg(71,ngroup) = isubstack
887 iparg(92,ngroup) = idrape
898 ngp(nspmd+1)=ngp(nspmd+1)+ngp(p)
899 dd_iad(p,nspgroup+n)=ngp(p)
901 dd_iad(nspmd+1,nspgroup+n)=ngp(nspmd+1)
905 nspgroup = nspgroup + nd
908 . msgtype=msgwarning,
909 . anmode=aninfo_blind_1,
914 IF(print_flag>6)
THEN
918 WRITE(iout,1001)n,mln,iparg(2,n),iparg(3,n)+1,
919 + iparg(5,n),iabs(iparg(6,n)),
920 + iparg(9,n),iparg(10,n),iparg(44,n),iparg(43,n)
925 + /10x,
' 2D - TRIANGULAR SOLID ELEMENT GROUPS'/
926 + 10x,
' ------------------------------------'/
927 +
' GROUP MATERIAL ELEMENT FIRST',
929 +
' INTEG SMALL SUB STRAIN FAILURE'/
930 +
' LAW NUMBER ELEMENT',
932 +
' PTS STRAIN GROUPS OUTPUT FLAG'/)
933 1001
FORMAT(11(1x,i10))
935 IF (
ALLOCATED(xnum_rnoise))
DEALLOCATE(xnum_rnoise)