36 1 ELBUF_TAB ,IPARG ,GEO ,IGEO ,IXP ,
37 2 WA ,WAP0 ,IPARTP ,IPART_STATE ,STAT_INDXP,
44 use element_mod ,
only : nixp
48#include "implicit_f.inc"
61 INTEGER IXP(NIXP,*),IPARG(NPARG,*),IGEO(NPROPGI,*),
62 . IPARTP(*),IPART_STATE(*),STAT_INDXP(*)
65 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP),
TARGET :: ELBUF_TAB
66 double precision WA(*),WAP0(*)
70 INTEGER I,J,K,N,II(3),JJ,LEN,IOFF,IE,NG,NEL,NFT,LFT,
71 . LLT,ITY,ID,IPRT0,IPRT,IGTYP,IPROP,NPT,IPT,ILAY,
72 . IR,IS,PT,L_PLA,G_PLA
73 INTEGER,
DIMENSION(:),
ALLOCATABLE :: PTWA
74 INTEGER,
DIMENSION(:),
ALLOCATABLE :: PTWA_P0
76 TYPE(g_bufel_) ,
POINTER :: GBUF
77 TYPE(l_bufel_) ,
POINTER :: LBUF
80 ./
'#---1----|----2----|----3----|----4----|----5----|----6----|'/
82 ./
'----7----|----8----|----9----|----10---|'/
86 CALL my_alloc(ptwa,stat_numelp)
87 ALLOCATE(ptwa_p0(0:
max(1,stat_numelp_g)))
91 IF (stat_numelp /= 0)
THEN
97 gbuf => elbuf_tab(ng)%GBUF
102 igtyp = igeo(11,iprop)
113 IF (ipart_state(iprt) /= 0)
THEN
114 wa(jj + 1) = gbuf%OFF(i)
116 wa(jj + 3) = ixp(nixp,n)
121 wa(jj + 1) = gbuf%EINT(ii(1)+i)
122 wa(jj + 2) = gbuf%EINT(ii(2)+i)
124 wa(jj + 3) = gbuf%FOR(ii(1)+i)
125 wa(jj + 4) = gbuf%FOR(ii(2)+i)
126 wa(jj + 5) = gbuf%FOR(ii(3)+i)
128 wa(jj + 6) = gbuf%MOM(ii(1)+i)
129 wa(jj + 7) = gbuf%MOM(ii(2)+i)
130 wa(jj + 8) = gbuf%MOM(ii(3)+i)
137 wa(jj + 1) = gbuf%PLA(i)
143 ELSEIF (igtyp == 18)
THEN
150 lbuf => elbuf_tab(ng)%BUFLY(ilay)%LBUF(ir,is,ipt)
151 l_pla = elbuf_tab(ng)%BUFLY(ilay)%L_PLA
152 wa(jj + pt + 1) = lbuf%SIG(ii(1)+i)
153 wa(jj + pt + 2) = lbuf%SIG(ii(2)+i)
154 wa(jj + pt + 3) = lbuf%SIG(ii(3)+i)
156 wa(jj + pt + 4) = lbuf%PLA(i)
158 wa(jj + pt + 4) = zero
194 IF (ispmd == 0 .AND. len > 0)
THEN
202 ioff = nint(wap0(j + 1))
204 iprt = nint(wap0(j + 2))
205 id = nint(wap0(j + 3))
206 igtyp = nint(wap0(j + 4))
207 npt = nint(wap0(j + 5))
212 IF (iprt /= iprt0)
THEN
213 WRITE(iugeo,
'(A)') delimit
214 WRITE(iugeo,
'(A)')
'/INIBEAM/FULL'
216 .
'#----------------------------------------------------------'
217 WRITE(iugeo,
'(A)')
'#BEAM_ID NPT PROP_TYPE'
218 WRITE(iugeo,
'(A)')
'#FORMAT:(1P2E20.13) #(EM(I),EB(I) ,I=BEAM_ID)'
219 WRITE(iugeo,
'(A)')
'#FORMAT:(1P3E20.13) #(FX(I),FXY(I),FXZ(I),I=BEAM_ID)'
220 WRITE(iugeo,
'(A)')
'#FORMAT:(1P3E20.13) #(MX(I),MY(I),MZ(I),I=BEAM_ID)'
221 WRITE(iugeo,
'(A)')
'#FORMAT:(1P1E20.13) #(EPSP(I),I=BEAM_ID)'
223 .
'#----------------------------------------------------------'
228 WRITE(iugeo,
'(3I10)') id,npt,igtyp
229 WRITE(iugeo,
'(1P2E20.13)')(wap0(j+k),k=1,2)
230 WRITE(iugeo,
'(1P3E20.13)')(wap0(j+k),k=3,5)
231 WRITE(iugeo,
'(1P3E20.13)')(wap0(j+k),k=6,8)
232 WRITE(iugeo,
'(1P1E20.13)') wap0(j+9)
234 ELSEIF (igtyp == 18)
THEN
236 IF (iprt /= iprt0)
THEN
237 WRITE(iugeo,
'(A)') delimit
238 WRITE(iugeo,
'(A)')
'/INIBEAM/FULL'
240 .
'#----------------------------------------------------------'
242 .
'#BEAM_ID NPT PROP_TYPE'
243 WRITE(iugeo,
'(A)')
'#FORMAT:(1P2E20.13) #(EM(I),EB(I) ,I=BEAM_ID)'
244 WRITE(iugeo,
'(A)')
'#FORMAT:(1P3E20.13) #(FX(I),FXY(I),FXZ(I),I=BEAM_ID)'
245 WRITE(iugeo,
'(A)')
'#FORMAT:(1P3E20.13) #(MX(I),MY(I) ,MZ(I) ,I=BEAM_ID)'
247 .
'#------------------------ REPEAT --------------------------'
249 .
'# FORMAT:(1P3E20.13) ; REPEAT K=1,NPT : ',
250 .
'#(S1(I),S12(I),S13(I),EPSP(I) ,I=BEAM_ID)'
252 .
'#---------------------- END REPEAT ------------------------'
254 .
'#----------------------------------------------------------'
258 WRITE(iugeo,
'(3I10)') id,npt,igtyp
259 WRITE(iugeo,
'(1P2E20.13)')(wap0(j+k),k=1,2)
260 WRITE(iugeo,
'(1P3E20.13)')(wap0(j+k),k=3,5)
261 WRITE(iugeo,
'(1P3E20.13)')(wap0(j+k),k=6,8)
265 WRITE(iugeo,
'(1P4E20.13)')(wap0(j+k),k=1,4)
subroutine stat_p_full(elbuf_tab, iparg, geo, igeo, ixp, wa, wap0, ipartp, ipart_state, stat_indxp, sizp0)