OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
outmaxsubr.F File Reference
#include "implicit_f.inc"
#include "com01_c.inc"
#include "com04_c.inc"
#include "param_c.inc"
#include "tabsiz_c.inc"
#include "mvsiz_p.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine gps_solid (elbuf_tab, iparg, geo, pm, ixs, ixs10, ixs16, ixs20, ixq, ixc, ixtg, ixt, ixp, ixr, x, iad_elem, fr_elem, weight, sig_n, itagps)
subroutine gpstra_solid (elbuf_tab, iparg, geo, pm, ixs, ixs10, ixs16, ixs20, ixq, ixc, ixtg, ixt, ixp, ixr, x, iad_elem, fr_elem, weight, str_n, itagps)
subroutine sig2dpin2 (sig, pin, nel)
subroutine sig3dpin2 (sig, pin, nel)
subroutine sig3d2pin (sig1, sig3, pin, nel)
subroutine sig2d2pin (sig1, sig3, pin, nel)
subroutine ini_tmnorm2 (tm_d, tm_norm2, nnod)
subroutine tm_vonm_solid (ivisc, sig, visc, value, nel)
subroutine tm_seq_solid (elbuf_tab, nlay, nptr, npts, nptt, ivisc, value, nel)
subroutine tm_dmg_solid (elbuf_tab, nlay, nptr, npts, nptt, value, nel)
subroutine tm_sig_solid (elbuf_tab, nlay, nptr, npts, nptt, ivisc, ten1, ten3, p2, nel)
subroutine tm_stra_solid (elbuf_tab, nlay, nptr, npts, nptt, ten1, ten3, p2, nel)
subroutine tm_vonm_shell (for, value, nel)
subroutine tm_seq_shell (elbuf_tab, nlay, nptr, npts, value, nel)
subroutine tm_sig_shell (elbuf_tab, nlay, nptr, npts, ten1, ten3, p2, nel)
subroutine tm_stra_shell (elbuf_tab, nptr, npts, ten1, ten3, p2, nel)
subroutine tm_dmg_shells (elbuf_tab, nlay, nptr, npts, value, nel)
subroutine tm_dmgl25_shell (elbuf_tab, nlay, nptr, npts, igtyp, pm, matly, value, nel)
subroutine upd_tmnorm2 (d, tm_d, tm_norm2, nft, nlt)
subroutine upd_tmtens (nsig, pnsig, tm_nsig1, tm_nsig3, tm_pnsig, nft, nlt, igpstag)
subroutine sig3dpin2h (sig, pin, nft, nlt, igpstag)

Function/Subroutine Documentation

◆ gps_solid()

subroutine gps_solid ( type (elbuf_struct_), dimension(ngroup) elbuf_tab,
integer, dimension(nparg,ngroup), intent(in) iparg,
intent(in) geo,
intent(in) pm,
integer, dimension(nixs,numels), intent(in) ixs,
integer, dimension(6,numels10), intent(in) ixs10,
integer, dimension(8,numels16), intent(in) ixs16,
integer, dimension(12,numels20), intent(in) ixs20,
integer, dimension(nixq,numelq), intent(in) ixq,
integer, dimension(nixc,numelc), intent(in) ixc,
integer, dimension(nixtg,numeltg), intent(in) ixtg,
integer, dimension(nixt,numelt), intent(in) ixt,
integer, dimension(nixp,numelp), intent(in) ixp,
integer, dimension(nixr,numelr), intent(in) ixr,
intent(in) x,
integer, dimension(2,nspmd+1), intent(in) iad_elem,
integer, dimension(sfr_elem), intent(in) fr_elem,
integer, dimension(numnod), intent(in) weight,
intent(out) sig_n,
integer, dimension(numnod), intent(inout) itagps )

Definition at line 33 of file outmaxsubr.F.

38C-----------------------------------------------
39C M o d u l e s
40C-----------------------------------------------
41 USE elbufdef_mod
42C-----------------------------------------------
43C I m p l i c i t T y p e s
44C-----------------------------------------------
45#include "implicit_f.inc"
46C-----------------------------------------------
47C C o m m o n B l o c k s
48C-----------------------------------------------
49#include "com01_c.inc"
50#include "com04_c.inc"
51#include "param_c.inc"
52#include "tabsiz_c.inc"
53C-----------------------------------------------
54C D u m m y A r g u m e n t s
55C-----------------------------------------------
56 INTEGER, DIMENSION(NPARG,NGROUP) ,INTENT(IN):: IPARG
57 INTEGER, DIMENSION(NIXC,NUMELC) ,INTENT(IN):: IXC
58 INTEGER, DIMENSION(NIXTG,NUMELTG) ,INTENT(IN):: IXTG
59 INTEGER, DIMENSION(NIXS,NUMELS) ,INTENT(IN):: IXS
60 INTEGER, DIMENSION(NIXQ,NUMELQ) ,INTENT(IN):: IXQ
61 INTEGER, DIMENSION(NIXT,NUMELT) ,INTENT(IN):: IXT
62 INTEGER, DIMENSION(NIXP,NUMELP) ,INTENT(IN):: IXP
63 INTEGER, DIMENSION(NIXR,NUMELR) ,INTENT(IN):: IXR
64 INTEGER, DIMENSION(6,NUMELS10) ,INTENT(IN):: IXS10
65 INTEGER, DIMENSION(8,NUMELS16) ,INTENT(IN):: IXS16
66 INTEGER, DIMENSION(12,NUMELS20) ,INTENT(IN):: IXS20
67 INTEGER, DIMENSION(2,NSPMD+1) ,INTENT(IN):: IAD_ELEM
68 INTEGER, DIMENSION(SFR_ELEM) ,INTENT(IN):: FR_ELEM
69 INTEGER, DIMENSION(NUMNOD) ,INTENT(IN):: WEIGHT
70 INTEGER, DIMENSION(NUMNOD) ,INTENT(INOUT):: ITAGPS
71 my_real, DIMENSION(NPROPG,NUMGEO) ,INTENT(IN):: geo
72 my_real, DIMENSION(NPROPM,NUMMAT) ,INTENT(IN):: pm
73 my_real, DIMENSION(3,NUMNOD) ,INTENT(IN):: x
74 my_real, DIMENSION(NUMNOD,6) ,INTENT(OUT):: sig_n
75 TYPE (ELBUF_STRUCT_), DIMENSION(NGROUP) :: ELBUF_TAB
76C-----------------------------------------------
77C L o c a l V a r i a b l e s
78C-----------------------------------------------
79 INTEGER I,J,K,N,LENR,NSIZ
81 . fac
83 . , DIMENSION(:,:), ALLOCATABLE, TARGET :: vcom
85 . , DIMENSION(:,:), POINTER :: aflu, vflu
86C-----------------------------------------------
87C
88 nsiz = 7
89 ALLOCATE(vcom(nsiz,numnod))
90 aflu=>vcom(1:3,1:numnod)
91 vflu=>vcom(4:6,1:numnod)
92 vcom = zero
93
94 sig_n(1:numnod,1:6) = zero
95 itagps(1:numnod) = 0
96 CALL tensgps3(elbuf_tab ,vflu ,aflu ,iparg ,geo ,
97 . ixs ,ixs10 ,ixs16 ,ixs20 ,ixq ,
98 . ixc ,ixtg ,ixt ,ixp ,ixr ,
99 . x ,itagps ,pm )
100 IF(nspmd > 1)THEN
101 vcom(7,1:numnod) =itagps(1:numnod)
102 lenr = iad_elem(1,nspmd+1)-iad_elem(1,1)
103 CALL spmd_exch_v(vcom,nsiz,iad_elem,fr_elem,lenr)
104 itagps(1:numnod)=nint(vcom(7,1:numnod))
105 ENDIF
106 DO n=1,numnod
107 IF (itagps(n) == 0) cycle
108 fac = one/itagps(n)
109 sig_n(n,1:3)=fac*vflu(1:3,n)
110 sig_n(n,4:6)=fac*aflu(1:3,n)
111 ENDDO
112
113 DEALLOCATE(vcom)
114
115 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine spmd_exch_v(xnorm, nsiz, iad_elem, fr_elem, lenr)
Definition spmd_exch_v.F:33
subroutine tensgps3(elbuf_tab, func1, func2, iparg, geo, ixs, ixs10, ixs16, ixs20, ixq, ixc, ixtg, ixt, ixp, ixr, x, itagps, pm)
Definition tensor6.F:3910

◆ gpstra_solid()

subroutine gpstra_solid ( type (elbuf_struct_), dimension(ngroup) elbuf_tab,
integer, dimension(nparg,ngroup), intent(in) iparg,
intent(in) geo,
intent(in) pm,
integer, dimension(nixs,numels), intent(in) ixs,
integer, dimension(6,numels10), intent(in) ixs10,
integer, dimension(8,numels16), intent(in) ixs16,
integer, dimension(12,numels20), intent(in) ixs20,
integer, dimension(nixq,numelq), intent(in) ixq,
integer, dimension(nixc,numelc), intent(in) ixc,
integer, dimension(nixtg,numeltg), intent(in) ixtg,
integer, dimension(nixt,numelt), intent(in) ixt,
integer, dimension(nixp,numelp), intent(in) ixp,
integer, dimension(nixr,numelr), intent(in) ixr,
intent(in) x,
integer, dimension(2,nspmd+1), intent(in) iad_elem,
integer, dimension(sfr_elem), intent(in) fr_elem,
integer, dimension(numnod), intent(in) weight,
intent(out) str_n,
integer, dimension(numnod), intent(inout) itagps )

Definition at line 128 of file outmaxsubr.F.

133C-----------------------------------------------
134C M o d u l e s
135C-----------------------------------------------
136 USE elbufdef_mod
137C-----------------------------------------------
138C I m p l i c i t T y p e s
139C-----------------------------------------------
140#include "implicit_f.inc"
141C-----------------------------------------------
142C C o m m o n B l o c k s
143C-----------------------------------------------
144#include "com01_c.inc"
145#include "com04_c.inc"
146#include "param_c.inc"
147#include "tabsiz_c.inc"
148C-----------------------------------------------
149C D u m m y A r g u m e n t s
150C-----------------------------------------------
151 INTEGER, DIMENSION(NPARG,NGROUP) ,INTENT(IN):: IPARG
152 INTEGER, DIMENSION(NIXC,NUMELC) ,INTENT(IN):: IXC
153 INTEGER, DIMENSION(NIXTG,NUMELTG) ,INTENT(IN):: IXTG
154 INTEGER, DIMENSION(NIXS,NUMELS) ,INTENT(IN):: IXS
155 INTEGER, DIMENSION(NIXQ,NUMELQ) ,INTENT(IN):: IXQ
156 INTEGER, DIMENSION(NIXT,NUMELT) ,INTENT(IN):: IXT
157 INTEGER, DIMENSION(NIXP,NUMELP) ,INTENT(IN):: IXP
158 INTEGER, DIMENSION(NIXR,NUMELR) ,INTENT(IN):: IXR
159 INTEGER, DIMENSION(6,NUMELS10) ,INTENT(IN):: IXS10
160 INTEGER, DIMENSION(8,NUMELS16) ,INTENT(IN):: IXS16
161 INTEGER, DIMENSION(12,NUMELS20) ,INTENT(IN):: IXS20
162 INTEGER, DIMENSION(2,NSPMD+1) ,INTENT(IN):: IAD_ELEM
163 INTEGER, DIMENSION(SFR_ELEM) ,INTENT(IN):: FR_ELEM
164 INTEGER, DIMENSION(NUMNOD) ,INTENT(IN):: WEIGHT
165 INTEGER, DIMENSION(NUMNOD) ,INTENT(INOUT):: ITAGPS
166 my_real, DIMENSION(NPROPG,NUMGEO) ,INTENT(IN):: geo
167 my_real, DIMENSION(NPROPM,NUMMAT) ,INTENT(IN):: pm
168 my_real, DIMENSION(3,NUMNOD) ,INTENT(IN):: x
169 my_real, DIMENSION(NUMNOD,6) ,INTENT(OUT):: str_n
170 TYPE (ELBUF_STRUCT_), DIMENSION(NGROUP) :: ELBUF_TAB
171C-----------------------------------------------
172C L o c a l V a r i a b l e s
173C-----------------------------------------------
174 INTEGER I,J,K,N,LENR
175 my_real
176 . fac
177 my_real
178 . , DIMENSION(:,:), ALLOCATABLE :: aflu, vflu
179C-----------------------------------------------
180C
181 ALLOCATE(aflu(3,numnod))
182 ALLOCATE(vflu(3,numnod))
183
184
185 str_n(1:numnod,1:6) = zero
186 DO n=1,numnod
187 itagps(n) = 0
188 vflu(1:3,n) = zero
189 aflu(1:3,n) = zero
190 ENDDO
191 CALL tensgpstrain(elbuf_tab,vflu ,aflu ,iparg ,geo ,
192 . ixs ,ixs10 ,ixs16 ,ixs20 ,ixq ,
193 . ixc ,ixtg ,ixt ,ixp ,ixr ,
194 . x ,itagps ,pm )
195 IF(nspmd > 1)THEN
196 lenr = iad_elem(1,nspmd+1)-iad_elem(1,1)
197 CALL spmd_exch_nodareai(itagps,iad_elem,fr_elem,lenr,weight)
198 CALL spmd_exch_n(vflu,iad_elem,fr_elem,lenr)
199 CALL spmd_exch_n(aflu,iad_elem,fr_elem,lenr)
200 ENDIF
201 DO n=1,numnod
202 IF (itagps(n) == 0) cycle
203 fac = one/itagps(n)
204 str_n(n,1:3)=fac*vflu(1:3,n)
205 str_n(n,4:6)=fac*aflu(1:3,n)
206 ENDDO
207
208 DEALLOCATE(aflu)
209 DEALLOCATE(vflu)
210
211 RETURN
subroutine spmd_exch_n(xnorm, iad_elem, fr_elem, lenr)
Definition spmd_exch_n.F:37
subroutine spmd_exch_nodareai(nodareai, iad_elem, fr_elem, lenr, weight)
subroutine tensgpstrain(elbuf_tab, func1, func2, iparg, geo, ixs, ixs10, ixs16, ixs20, ixq, ixc, ixtg, ixt, ixp, ixr, x, itagps, pm)

◆ ini_tmnorm2()

subroutine ini_tmnorm2 ( intent(in) tm_d,
intent(out) tm_norm2,
integer nnod )

Definition at line 379 of file outmaxsubr.F.

380C-----------------------------------------------------------------------
381C I m p l i c i t T y p e s
382C-----------------------------------------------
383#include "implicit_f.inc"
384C-----------------------------------------------
385C D u m m y A r g u m e n t s
386C-----------------------------------------------
387 INTEGER NNOD
388 my_real, DIMENSION(3,NNOD) ,INTENT(IN):: tm_d
389 my_real, DIMENSION(NNOD) ,INTENT(OUT):: tm_norm2
390C-----------------------------------------------
391C L o c a l V a r i a b l e s
392C-----------------------------------------------
393 INTEGER I,J
394 my_real
395 . s(3)
396C-----------------------------------------------
397C S o u r c e L i n e s
398C-----------------------------------------------
399 DO i=1,nnod
400 s(1:3) = tm_d(1:3,i)
401 tm_norm2(i) = s(1)*s(1)+s(2)*s(2)+s(3)*s(3)
402 ENDDO
403C
404 RETURN

◆ sig2d2pin()

subroutine sig2d2pin ( intent(in) sig1,
intent(in) sig3,
intent(out) pin,
integer, intent(in) nel )

Definition at line 348 of file outmaxsubr.F.

349C-----------------------------------------------------------------------
350C I m p l i c i t T y p e s
351C-----------------------------------------------
352#include "implicit_f.inc"
353C-----------------------------------------------
354C D u m m y A r g u m e n t s
355C-----------------------------------------------
356 INTEGER ,INTENT(IN) :: NEL
357 my_real, DIMENSION(NEL,3) ,INTENT(IN):: sig1,sig3
358 my_real, DIMENSION(NEL,2) ,INTENT(OUT):: pin
359C-----------------------------------------------
360C L o c a l V a r i a b l e s
361C-----------------------------------------------
362 INTEGER I,J
363 my_real
364 . p2(nel,2)
365C-----------------------------------------------
366C S o u r c e L i n e s
367C-----------------------------------------------
368 CALL sig2dpin2(sig1,p2,nel)
369 CALL sig2dpin2(sig3,pin,nel)
370 pin(1:nel,1) = p2(1:nel,1)
371C
372 RETURN
subroutine sig2dpin2(sig, pin, nel)
Definition outmaxsubr.F:221

◆ sig2dpin2()

subroutine sig2dpin2 ( intent(in) sig,
intent(out) pin,
integer, intent(in) nel )

Definition at line 220 of file outmaxsubr.F.

221C-----------------------------------------------------------------------
222C I m p l i c i t T y p e s
223C-----------------------------------------------
224#include "implicit_f.inc"
225C-----------------------------------------------
226C D u m m y A r g u m e n t s
227C-----------------------------------------------
228 INTEGER ,INTENT(IN) :: NEL
229 my_real, DIMENSION(NEL,3) ,INTENT(IN):: sig
230 my_real, DIMENSION(NEL,2) ,INTENT(OUT):: pin
231C-----------------------------------------------
232C L o c a l V a r i a b l e s
233C-----------------------------------------------
234 INTEGER I,J
235 my_real
236 . s1,t1,det,r
237C-----------------------------------------------
238C S o u r c e L i n e s
239C-----------------------------------------------
240 DO i=1,nel
241 t1 = sig(i,1)+sig(i,2)
242 det = sig(i,1)*sig(i,2)-sig(i,3)*sig(i,3)
243 r = sqrt(t1*t1-four*det)
244 pin(i,1) = half*(t1+r)
245 pin(i,2) = half*(t1-r)
246 ENDDO
247C
248 RETURN

◆ sig3d2pin()

subroutine sig3d2pin ( intent(in) sig1,
intent(in) sig3,
intent(out) pin,
integer, intent(in) nel )

Definition at line 315 of file outmaxsubr.F.

316C-----------------------------------------------------------------------
317C I m p l i c i t T y p e s
318C-----------------------------------------------
319#include "implicit_f.inc"
320C-----------------------------------------------
321C D u m m y A r g u m e n t s
322C-----------------------------------------------
323 INTEGER ,INTENT(IN) :: NEL
324 my_real, DIMENSION(NEL,6) ,INTENT(IN):: sig1,sig3
325 my_real, DIMENSION(NEL,2) ,INTENT(OUT):: pin
326C-----------------------------------------------
327C L o c a l V a r i a b l e s
328C-----------------------------------------------
329 INTEGER I,J
330 my_real
331 . p2(nel,2)
332C-----------------------------------------------
333C S o u r c e L i n e s
334C-----------------------------------------------
335 CALL sig3dpin2(sig1,p2,nel)
336 CALL sig3dpin2(sig3,pin,nel)
337 pin(1:nel,1) = p2(1:nel,1)
338C
339 RETURN
subroutine sig3dpin2(sig, pin, nel)
Definition outmaxsubr.F:258

◆ sig3dpin2()

subroutine sig3dpin2 ( intent(in) sig,
intent(out) pin,
integer, intent(in) nel )

Definition at line 257 of file outmaxsubr.F.

258C-----------------------------------------------------------------------
259C I m p l i c i t T y p e s
260C-----------------------------------------------
261#include "implicit_f.inc"
262C-----------------------------------------------
263C D u m m y A r g u m e n t s
264C-----------------------------------------------
265 INTEGER ,INTENT(IN) :: NEL
266 my_real, DIMENSION(NEL,6) ,INTENT(IN) :: sig
267 my_real, DIMENSION(NEL,2) ,INTENT(OUT):: pin
268C-----------------------------------------------
269C L o c a l V a r i a b l e s
270C-----------------------------------------------
271 INTEGER I,J
272 my_real
273 . s1,t1,t2,t3,s(6),p1,detb,dets,r,alpha
274C-----------------------------------------------
275C S o u r c e L i n e s
276C-----------------------------------------------
277 DO i=1,nel
278 s1 = sig(i,4)*sig(i,4)+sig(i,5)*sig(i,5)+sig(i,6)*sig(i,6)
279 IF (s1 > em10) THEN
280 t1 = third*(sig(i,1)+sig(i,2)+sig(i,3))
281 s(1:3) = sig(i,1:3) - t1
282 s(4) = sig(i,4)
283 s(5) = sig(i,6)
284 s(6) = sig(i,5)
285 t2 = s(1)*s(1)+s(2)*s(2)+s(3)*s(3) + two*s1
286 p1 = sqrt(t2/six)
287 dets = s(1)*(s(2)*s(3)-s(6)*s(6))-s(4)*(s(4)*s(3)-s(5)*s(6))
288 . +s(5)*(s(4)*s(6)-s(2)*s(5))
289 detb = dets/p1
290 r = half*detb
291 IF (r <= -one) THEN
292 alpha = third*pi
293 ELSEIF (r >= one) THEN
294 alpha = zero
295 ELSE
296 alpha = third*acos(r)
297 END IF
298 pin(i,1) = t1 + two * p1* cos(alpha)
299 pin(i,2) = t1 + two * p1* cos(alpha+2*pi/3)
300 ELSE
301 pin(i,1) = max(sig(i,1),sig(i,2),sig(i,3))
302 pin(i,2) = min(sig(i,1),sig(i,2),sig(i,3))
303 END IF
304 END DO
305C
306 RETURN
#define alpha
Definition eval.h:35
#define min(a, b)
Definition macros.h:20
#define max(a, b)
Definition macros.h:21

◆ sig3dpin2h()

subroutine sig3dpin2h ( intent(in) sig,
intent(inout) pin,
integer, intent(in) nft,
integer, intent(in) nlt,
integer, dimension(numnod), intent(in) igpstag )

Definition at line 1180 of file outmaxsubr.F.

1181C-----------------------------------------------------------------------
1182C I m p l i c i t T y p e s
1183C-----------------------------------------------
1184#include "implicit_f.inc"
1185C-----------------------------------------------
1186C C o m m o n B l o c k s
1187C-----------------------------------------------
1188#include "com04_c.inc"
1189C-----------------------------------------------
1190C D u m m y A r g u m e n t s
1191C-----------------------------------------------
1192 INTEGER ,INTENT(IN) :: NFT,NLT
1193 INTEGER ,DIMENSION(NUMNOD) ,INTENT(IN):: IGPSTAG
1194 my_real, DIMENSION(NUMNOD,6) ,INTENT(IN) :: sig
1195 my_real, DIMENSION(NUMNOD,2) ,INTENT(INOUT):: pin
1196C-----------------------------------------------
1197C L o c a l V a r i a b l e s
1198C-----------------------------------------------
1199 INTEGER I,J
1200 my_real
1201 . s1,t1,t2,t3,s(6),p1,detb,dets,r,alpha
1202C-----------------------------------------------
1203C S o u r c e L i n e s
1204C-----------------------------------------------
1205 DO i=nft,nlt
1206 IF (igpstag(i)==0) cycle
1207 s1 = sig(i,4)*sig(i,4)+sig(i,5)*sig(i,5)+sig(i,6)*sig(i,6)
1208 IF (s1 > em10) THEN
1209 t1 = third*(sig(i,1)+sig(i,2)+sig(i,3))
1210 s(1:3) = sig(i,1:3) - t1
1211 s(4) = sig(i,4)
1212 s(5) = sig(i,6)
1213 s(6) = sig(i,5)
1214 t2 = s(1)*s(1)+s(2)*s(2)+s(3)*s(3) + two*s1
1215 p1 = sqrt(t2/six)
1216 dets = s(1)*(s(2)*s(3)-s(6)*s(6))-s(4)*(s(4)*s(3)-s(5)*s(6))
1217 . +s(5)*(s(4)*s(6)-s(2)*s(5))
1218 detb = dets/p1
1219 r = half*detb
1220 IF (r <= -one) THEN
1221 alpha = third*pi
1222 ELSEIF (r >= one) THEN
1223 alpha = zero
1224 ELSE
1225 alpha = third*acos(r)
1226 END IF
1227 pin(i,1) = t1 + two * p1* cos(alpha)
1228 pin(i,2) = t1 + two * p1* cos(alpha+2*pi/3)
1229 ELSE
1230 pin(i,1) = max(sig(i,1),sig(i,2),sig(i,3))
1231 pin(i,2) = min(sig(i,1),sig(i,2),sig(i,3))
1232 END IF
1233 END DO
1234C
1235 RETURN

◆ tm_dmg_shells()

subroutine tm_dmg_shells ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nlay,
integer, intent(in) nptr,
integer, intent(in) npts,
intent(inout) value,
integer, intent(in) nel )

Definition at line 936 of file outmaxsubr.F.

937C-----------------------------------------------
938C M o d u l e s
939C-----------------------------------------------
940 USE elbufdef_mod
941C-----------------------------------------------
942C I m p l i c i t T y p e s
943C-----------------------------------------------
944#include "implicit_f.inc"
945C-----------------------------------------------
946C D u m m y A r g u m e n t s
947C-----------------------------------------------
948 INTEGER,INTENT(IN):: NLAY,NPTR,NPTS,NEL
949 my_real, DIMENSION(NEL) ,INTENT(INOUT):: VALUE
950 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
951C-----------------------------------------------
952C L o c a l V a r i a b l e s
953C-----------------------------------------------
954 INTEGER I,J,IL,IR,IS,IT,NFAIL,IIR
955 my_real, DIMENSION(:), POINTER :: dfmax
956 TYPE(BUF_LAY_) ,POINTER :: BUFLY
957C-----------------------------------------------
958C S o u r c e L i n e s
959C-----------------------------------------------
960 DO il=1,nlay
961 bufly => elbuf_tab%BUFLY(il)
962 nfail = bufly%NFAIL
963 DO is=1,npts
964 DO ir=1,nptr
965 DO it=1,bufly%NPTT
966 DO iir=1,nfail
967 dfmax=>bufly%FAIL(ir,is,it)%FLOC(iir)%DAMMX
968 DO i=1,nel
969 value(i) = max(value(i),dfmax(i))
970 ENDDO
971 ENDDO
972 ENDDO
973 ENDDO
974 ENDDO
975 ENDDO
976C
977 RETURN

◆ tm_dmg_solid()

subroutine tm_dmg_solid ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nlay,
integer, intent(in) nptr,
integer, intent(in) npts,
integer, intent(in) nptt,
intent(inout) value,
integer, intent(in) nel )

Definition at line 509 of file outmaxsubr.F.

510C-----------------------------------------------
511C M o d u l e s
512C-----------------------------------------------
513 USE elbufdef_mod
514C-----------------------------------------------------------------------
515C I m p l i c i t T y p e s
516C-----------------------------------------------
517#include "implicit_f.inc"
518C-----------------------------------------------
519C D u m m y A r g u m e n t s
520C-----------------------------------------------
521 INTEGER,INTENT(IN):: NLAY,NPTR,NPTS,NPTT,NEL
522 my_real, DIMENSION(NEL) ,INTENT(INOUT):: VALUE
523 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
524C-----------------------------------------------
525C L o c a l V a r i a b l e s
526C-----------------------------------------------
527 INTEGER I,J,IL,IR,IS,IT,NFAIL,IIR
528 TYPE(BUF_FAIL_) ,POINTER :: FBUF
529 my_real,
530 . DIMENSION(:), POINTER :: dfmax
531C-----------------------------------------------
532C S o u r c e L i n e s
533C-----------------------------------------------
534 DO il=1,nlay
535 nfail = elbuf_tab%BUFLY(il)%NFAIL
536 DO is=1,npts
537 DO it=1,nptt
538 DO iir=1,nptr
539 DO ir=1,nfail
540 dfmax=>elbuf_tab%BUFLY(il)%FAIL(iir,is,it)%FLOC(ir)%DAMMX
541 DO i=1,nel
542 value(i) = max(value(i),dfmax(i))
543 ENDDO
544 ENDDO
545 ENDDO
546 ENDDO
547 ENDDO
548 ENDDO
549C
550 RETURN

◆ tm_dmgl25_shell()

subroutine tm_dmgl25_shell ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nlay,
integer, intent(in) nptr,
integer, intent(in) npts,
integer, intent(in) igtyp,
intent(in) pm,
integer, dimension((mvsiz*100)), intent(in) matly,
intent(inout) value,
integer, intent(in) nel )

Definition at line 986 of file outmaxsubr.F.

988C-----------------------------------------------
989C M o d u l e s
990C-----------------------------------------------
991 USE elbufdef_mod
992C-----------------------------------------------------------------------
993C I m p l i c i t T y p e s
994C-----------------------------------------------
995#include "implicit_f.inc"
996C-----------------------------------------------
997C C o m m o n B l o c k s
998C-----------------------------------------------
999#include "mvsiz_p.inc"
1000#include "com04_c.inc"
1001#include "param_c.inc"
1002C-----------------------------------------------
1003C D u m m y A r g u m e n t s
1004C-----------------------------------------------
1005 INTEGER,INTENT(IN):: NLAY,NPTR,NPTS,IGTYP,NEL
1006 INTEGER,DIMENSION((MVSIZ*100)),INTENT(IN):: MATLY
1007 my_real, DIMENSION(NPROPM,NUMMAT) ,INTENT(IN):: pm
1008 my_real, DIMENSION(NEL) ,INTENT(INOUT):: VALUE
1009 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
1010C-----------------------------------------------
1011C L o c a l V a r i a b l e s
1012C-----------------------------------------------
1013 INTEGER I,J,IL,IR,IS,IT,NFAIL,IIR,IPT,IADR,JJ(3)
1014 my_real
1015 . vg(5),vly(5),ve(5)
1016 my_real,
1017 . DIMENSION(MVSIZ) :: dmax,wpmax,epst1,epst2,epsf1,epsf2
1018 my_real,
1019 . DIMENSION(:), POINTER :: dfmax
1020 TYPE(BUF_LAY_) ,POINTER :: BUFLY
1021 TYPE(L_BUFEL_) ,POINTER :: LBUF
1022C-----------------------------------------------
1023C S o u r c e L i n e s
1024C-----------------------------------------------
1025 DO il=1,nlay
1026 bufly => elbuf_tab%BUFLY(il)
1027 nfail = bufly%NFAIL
1028 DO is=1,npts
1029 DO ir=1,nptr
1030 DO it=1,bufly%NPTT
1031 DO iir=1,nfail
1032 dfmax=>bufly%FAIL(ir,is,it)%FLOC(iir)%DAMMX
1033 DO i=1,nel
1034 value(i) = max(value(i),dfmax(i))
1035 END DO
1036 END DO
1037 END DO
1038 END DO
1039 END DO !DO IS=1
1040 END DO
1041C
1042 IF(igtyp == 10 .OR. igtyp == 11 .OR.
1043 . igtyp == 17 .OR. igtyp == 51 .OR. igtyp == 52 ) THEN
1044 DO i=1,3
1045 jj(i) = nel*(i-1)
1046 ENDDO
1047 DO il=1,nlay
1048 bufly => elbuf_tab%BUFLY(il)
1049 DO ipt=1,bufly%NPTT
1050 iadr = (ipt - 1)*nel
1051 DO i=1,nel
1052 j = iadr + i
1053 vly(1:5) = zero
1054 vg(1:5) = zero
1055 DO ir=1,nptr
1056 DO is=1,npts
1057 lbuf => bufly%LBUF(ir,is,ipt)
1058 dmax(i) = one/pm(64,matly(j))
1059 wpmax(i)= one/pm(41,matly(j))
1060 epst1(i)= pm(60,matly(j))
1061 epst2(i)= pm(61,matly(j))
1062 epsf1(i)= one/pm(98,matly(j))
1063 epsf2(i)= one/pm(99,matly(j))
1064C
1065 vg(1) = max(vg(1),lbuf%DAM(jj(1)+i)*dmax(i))
1066 vg(2) = max(vg(2),lbuf%DAM(jj(2)+i)*dmax(i))
1067 vg(3) = max(vg(3),abs(lbuf%PLA(i))*wpmax(i))
1068 IF(lbuf%CRAK(jj(1)+i) > zero) vg(4)= max(vg(4),
1069 . (lbuf%CRAK(jj(1)+i)+epst1(i))*epsf1(i))
1070 IF(lbuf%CRAK(jj(2)+i) > zero )vg(5) = max(vg(5),
1071 . (lbuf%CRAK(jj(2)+i)+epst2(i))*epsf2(i))
1072 END DO
1073 END DO
1074 vly(1) =vly(1) + vg(1)
1075 vly(2) =vly(2) + vg(2)
1076 vly(3) =vly(3) + vg(3)
1077 vly(4) =vly(4) + vg(4)
1078 vly(5) =vly(5) + vg(5)
1079C
1080 value(i) = max(value(i),vly(1),vly(2),vly(3),vly(4),vly(5))
1081 END DO ! I=1,NEL
1082 END DO !ipt=1,bufly%NPTT
1083 END DO !IL=1,NLAY
1084 END IF !(IGTYP == 10 .OR. IGTYP == 11 .OR.
1085C
1086 RETURN

◆ tm_seq_shell()

subroutine tm_seq_shell ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nlay,
integer, intent(in) nptr,
integer, intent(in) npts,
intent(inout) value,
integer, intent(in) nel )

Definition at line 736 of file outmaxsubr.F.

737C-----------------------------------------------
738C M o d u l e s
739C-----------------------------------------------
740 USE elbufdef_mod
741C-----------------------------------------------------------------------
742C I m p l i c i t T y p e s
743C-----------------------------------------------
744#include "implicit_f.inc"
745C-----------------------------------------------
746C D u m m y A r g u m e n t s
747C-----------------------------------------------
748 INTEGER,INTENT(IN):: NLAY,NPTR,NPTS,NEL
749 my_real, DIMENSION(NEL) ,INTENT(INOUT):: VALUE
750 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
751C-----------------------------------------------
752C L o c a l V a r i a b l e s
753C-----------------------------------------------
754 INTEGER I,J,IL,IR,IS,IT
755 my_real
756 . s(3),s1,s2,s3,vonm
757 TYPE(BUF_LAY_) ,POINTER :: BUFLY
758 TYPE(L_BUFEL_) ,POINTER :: LBUF
759C-----------------------------------------------
760C S o u r c e L i n e s
761C-----------------------------------------------
762 DO is = 1,npts
763 DO ir = 1,nptr
764 DO il =1,nlay
765 bufly => elbuf_tab%BUFLY(il)
766 DO it=1,bufly%NPTT
767 lbuf => bufly%LBUF(ir,is,it)
768 IF (bufly%L_SEQ > 0) THEN
769 DO i=1,nel
770 value(i) = max(value(i),lbuf%SEQ(i))
771 ENDDO
772 ELSE
773 CALL tm_vonm_shell(lbuf%SIG,VALUE,nel)
774 ENDIF ! IF (ELBUF_TAB(NG)%BUFLY(IL)%L_SEQ > 0)
775 ENDDO ! IT=1,
776 ENDDO ! ILAY =1
777 ENDDO ! IR = 1
778 ENDDO ! DO IS = 1
779C
780 RETURN
subroutine tm_vonm_shell(for, value, nel)
Definition outmaxsubr.F:697

◆ tm_seq_solid()

subroutine tm_seq_solid ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nlay,
integer, intent(in) nptr,
integer, intent(in) npts,
integer, intent(in) nptt,
integer, intent(in) ivisc,
intent(inout) value,
integer, intent(in) nel )

Definition at line 456 of file outmaxsubr.F.

457C-----------------------------------------------
458C M o d u l e s
459C-----------------------------------------------
460 USE elbufdef_mod
461C-----------------------------------------------------------------------
462C I m p l i c i t T y p e s
463C-----------------------------------------------
464#include "implicit_f.inc"
465C-----------------------------------------------
466C D u m m y A r g u m e n t s
467C-----------------------------------------------
468 INTEGER,INTENT(IN):: NLAY,NPTR,NPTS,NPTT,NEL,IVISC
469 my_real, DIMENSION(NEL) ,INTENT(INOUT):: VALUE
470 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
471C-----------------------------------------------
472C L o c a l V a r i a b l e s
473C-----------------------------------------------
474 INTEGER I,J,IL,IR,IS,IT
475 my_real
476 . s(6),s1,s2,s3,vonm
477 TYPE(G_BUFEL_) ,POINTER :: GBUF
478 TYPE(L_BUFEL_) ,POINTER :: LBUF
479C-----------------------------------------------
480C S o u r c e L i n e s
481C-----------------------------------------------
482 gbuf => elbuf_tab%GBUF
483 DO il=1,nlay
484 DO it=1,nptt
485 DO ir=1,nptr
486 DO is=1,npts
487 lbuf => elbuf_tab%BUFLY(il)%LBUF(ir,is,it)
488 IF (elbuf_tab%BUFLY(il)%L_SEQ > 0) THEN
489 DO i=1,nel
490 value(i) = max(value(i),lbuf%SEQ(i))
491 ENDDO
492 ELSE
493 CALL tm_vonm_solid(ivisc,lbuf%SIG,lbuf%VISC,VALUE,nel)
494 ENDIF ! IF (ELBUF_TAB(NG)%BUFLY(IL)%L_SEQ > 0)
495 ENDDO ! DO IS=1,NPTS
496 ENDDO ! DO IR=1,NPTR
497 ENDDO ! DO IT=1,NPTT
498 ENDDO ! DO IL=1,NLAY
499C
500 RETURN
subroutine tm_vonm_solid(ivisc, sig, visc, value, nel)
Definition outmaxsubr.F:413

◆ tm_sig_shell()

subroutine tm_sig_shell ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nlay,
integer, intent(in) nptr,
integer, intent(in) npts,
intent(inout) ten1,
intent(inout) ten3,
intent(inout) p2,
integer, intent(in) nel )

Definition at line 791 of file outmaxsubr.F.

792C-----------------------------------------------
793C M o d u l e s
794C-----------------------------------------------
795 USE elbufdef_mod
796C-----------------------------------------------------------------------
797C I m p l i c i t T y p e s
798C-----------------------------------------------
799#include "implicit_f.inc"
800C-----------------------------------------------
801C D u m m y A r g u m e n t s
802C-----------------------------------------------
803 INTEGER,INTENT(IN):: NLAY,NPTR,NPTS,NEL
804 my_real, DIMENSION(NEL,3) ,INTENT(INOUT):: ten1,ten3
805 my_real, DIMENSION(NEL,2) ,INTENT(INOUT):: p2
806 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
807C-----------------------------------------------
808C L o c a l V a r i a b l e s
809C-----------------------------------------------
810 INTEGER I,J,IL,IR,IS,IT,JJ(3)
811 my_real
812 . s(nel,3),s1,s2,s3,sp2(nel,2)
813 TYPE(BUF_LAY_) ,POINTER :: BUFLY
814 TYPE(L_BUFEL_) ,POINTER :: LBUF
815C-----------------------------------------------
816C S o u r c e L i n e s
817C-----------------------------------------------
818 DO i=1,3
819 jj(i) = nel*(i-1)
820 ENDDO
821 DO is = 1,npts
822 DO ir = 1,nptr
823 DO il =1,nlay
824 bufly => elbuf_tab%BUFLY(il)
825 DO it=1,bufly%NPTT
826 lbuf => bufly%LBUF(ir,is,it)
827 DO i = 1,nel
828 s(i,1:3) = lbuf%SIG(jj(1:3)+i)
829 END DO
830 CALL sig2dpin2(s,sp2,nel)
831 DO i = 1,nel
832 IF (sp2(i,1) > p2(i,1)) THEN
833 ten1(i,1:3) = s(i,1:3)
834 p2(i,1) = sp2(i,1)
835 END IF
836 IF (sp2(i,2) < p2(i,2)) THEN
837 ten3(i,1:3) = s(i,1:3)
838 p2(i,2) = sp2(i,2)
839 END IF
840 END DO
841 ENDDO ! IT=1,
842 ENDDO ! ILAY =1
843 ENDDO ! IR = 1
844 ENDDO ! DO IS = 1
845C
846 RETURN

◆ tm_sig_solid()

subroutine tm_sig_solid ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nlay,
integer, intent(in) nptr,
integer, intent(in) npts,
integer, intent(in) nptt,
integer, intent(in) ivisc,
intent(inout) ten1,
intent(inout) ten3,
intent(inout) p2,
integer, intent(in) nel )

Definition at line 561 of file outmaxsubr.F.

563C-----------------------------------------------
564C M o d u l e s
565C-----------------------------------------------
566 USE elbufdef_mod
567C-----------------------------------------------------------------------
568C I m p l i c i t T y p e s
569C-----------------------------------------------
570#include "implicit_f.inc"
571C-----------------------------------------------
572C D u m m y A r g u m e n t s
573C-----------------------------------------------
574 INTEGER,INTENT(IN):: NLAY,NPTR,NPTS,NPTT,NEL,IVISC
575 my_real, DIMENSION(NEL,6) ,INTENT(INOUT):: TEN1,TEN3
576 my_real, DIMENSION(NEL,2) ,INTENT(INOUT):: P2
577 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
578C-----------------------------------------------
579C L o c a l V a r i a b l e s
580C-----------------------------------------------
581 INTEGER I,J,IL,IR,IS,IT,JJ(6)
582 my_real
583 . S(NEL,6),S1,S2,S3,SP2(NEL,2)
584 TYPE(L_BUFEL_) ,POINTER :: LBUF
585C-----------------------------------------------
586C S o u r c e L i n e s
587C-----------------------------------------------
588 DO I=1,6
589 JJ(I) = NEL*(I-1)
590 ENDDO
591 DO IL=1,NLAY
592 DO IT=1,NPTT
593 DO IR=1,NPTR
594 DO IS=1,NPTS
595 LBUF => ELBUF_TAB%BUFLY(IL)%LBUF(IR,IS,IT)
596 DO I = 1,NEL
597 S(I,1:6) = LBUF%SIG(JJ(1:6)+I)
598 END DO
599 IF(IVISC > 0 ) THEN
600 DO I = 1,NEL
601 S(I,1:6) = S(I,1:6) + LBUF%VISC(JJ(1:6)+I)
602 END DO
603 END IF
604 CALL SIG3DPIN2(S,SP2,NEL)
605 DO I = 1,NEL
606 IF (SP2(I,1) > P2(I,1)) THEN
607 TEN1(I,1:6) = S(I,1:6)
608 P2(I,1) = SP2(I,1)
609 END IF
610 IF (SP2(I,2) < P2(I,2)) THEN
611 TEN3(I,1:6) = S(I,1:6)
612 P2(I,2) = SP2(I,2)
613 END IF
614 END DO
615 ENDDO ! DO IS=1,NPTS
616 ENDDO ! DO IR=1,NPTR
617 ENDDO ! DO IT=1,NPTT
618 ENDDO ! DO IL=1,NLAY
619C
620 RETURN

◆ tm_stra_shell()

subroutine tm_stra_shell ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nptr,
integer, intent(in) npts,
intent(inout) ten1,
intent(inout) ten3,
intent(inout) p2,
integer, intent(in) nel )

Definition at line 857 of file outmaxsubr.F.

858C-----------------------------------------------
859C M o d u l e s
860C-----------------------------------------------
861 USE elbufdef_mod
862C-----------------------------------------------------------------------
863C I m p l i c i t T y p e s
864C-----------------------------------------------
865#include "implicit_f.inc"
866C-----------------------------------------------
867C D u m m y A r g u m e n t s
868C-----------------------------------------------
869 INTEGER,INTENT(IN):: NPTR,NPTS,NEL
870 my_real, DIMENSION(NEL,3) ,INTENT(INOUT):: ten1,ten3
871 my_real, DIMENSION(NEL,2) ,INTENT(INOUT):: p2
872 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
873C-----------------------------------------------
874C L o c a l V a r i a b l e s
875C-----------------------------------------------
876 INTEGER I,J,IL,IR,IS,IT,JJ(3),NPG,LENS,NG,PTS
877 my_real
878 . s(nel,3),s1,s2,s3,sp2(nel,2)
879 TYPE(G_BUFEL_) ,POINTER :: GBUF
880C-----------------------------------------------
881C S o u r c e L i n e s
882C-----------------------------------------------
883 DO i=1,3
884 jj(i) = nel*(i-1)
885 ENDDO
886 gbuf => elbuf_tab%GBUF
887 npg = npts*nptr
888 IF (npg == 1) THEN
889 DO i = 1,nel
890 s(i,1:3) = gbuf%STRA(jj(1:3)+i)
891 END DO
892 CALL sig2dpin2(s,sp2,nel)
893 DO i = 1,nel
894 IF (sp2(i,1) > p2(i,1)) THEN
895 ten1(i,1:3) = s(i,1:3)
896 p2(i,1) = sp2(i,1)
897 END IF
898 IF (sp2(i,2) < p2(i,2)) THEN
899 ten3(i,1:3) = s(i,1:3)
900 p2(i,2) = sp2(i,2)
901 END IF
902 END DO
903 ELSE
904 lens = nel*gbuf%G_STRPG/npg
905 DO is = 1,npts
906 DO ir = 1,nptr
907 ng = nptr*(is-1) + ir
908 pts = (ng-1)*lens+1
909 DO i = 1,nel
910 s(i,1:3) = gbuf%STRPG(pts+jj(1:3)+i)
911 END DO
912 CALL sig2dpin2(s,sp2,nel)
913 DO i = 1,nel
914 IF (sp2(i,1) > p2(i,1)) THEN
915 ten1(i,1:3) = s(i,1:3)
916 p2(i,1) = sp2(i,1)
917 END IF
918 IF (sp2(i,2) < p2(i,2)) THEN
919 ten3(i,1:3) = s(i,1:3)
920 p2(i,2) = sp2(i,2)
921 END IF
922 END DO
923 ENDDO ! IR = 1
924 ENDDO ! DO IS = 1
925 END IF !(NPG == 1) THEN
926C
927 RETURN

◆ tm_stra_solid()

subroutine tm_stra_solid ( type (elbuf_struct_), target elbuf_tab,
integer, intent(in) nlay,
integer, intent(in) nptr,
integer, intent(in) npts,
integer, intent(in) nptt,
intent(inout) ten1,
intent(inout) ten3,
intent(inout) p2,
integer, intent(in) nel )

Definition at line 631 of file outmaxsubr.F.

633C-----------------------------------------------
634C M o d u l e s
635C-----------------------------------------------
636 USE elbufdef_mod
637C-----------------------------------------------------------------------
638C I m p l i c i t T y p e s
639C-----------------------------------------------
640#include "implicit_f.inc"
641C-----------------------------------------------
642C D u m m y A r g u m e n t s
643C-----------------------------------------------
644 INTEGER,INTENT(IN):: NLAY,NPTR,NPTS,NPTT,NEL
645 my_real, DIMENSION(NEL,6) ,INTENT(INOUT):: ten1,ten3
646 my_real, DIMENSION(NEL,2) ,INTENT(INOUT):: p2
647 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
648C-----------------------------------------------
649C L o c a l V a r i a b l e s
650C-----------------------------------------------
651 INTEGER I,J,IL,IR,IS,IT,JJ(6)
652 my_real
653 . s(nel,6),s1,s2,s3,sp2(nel,2)
654 TYPE(L_BUFEL_) ,POINTER :: LBUF
655C-----------------------------------------------
656C S o u r c e L i n e s
657C-----------------------------------------------
658 DO i=1,6
659 jj(i) = nel*(i-1)
660 ENDDO
661 DO il=1,nlay
662 DO it=1,nptt
663 DO ir=1,nptr
664 DO is=1,npts
665 lbuf => elbuf_tab%BUFLY(il)%LBUF(ir,is,it)
666C !!!!! law 12,14
667 IF (elbuf_tab%BUFLY(il)%L_STRA > 0) THEN
668 DO i = 1,nel
669 s(i,1:6) = lbuf%STRA(jj(1:6)+i)
670 END DO
671 CALL sig3dpin2(s,sp2,nel)
672 DO i = 1,nel
673 IF (sp2(i,1) > p2(i,1)) THEN
674 ten1(i,1:6) = s(i,1:6)
675 p2(i,1) = sp2(i,1)
676 END IF
677 IF (sp2(i,2) < p2(i,2)) THEN
678 ten3(i,1:6) = s(i,1:6)
679 p2(i,2) = sp2(i,2)
680 END IF
681 END DO
682 END IF !(ELBUF_TAB%BUFLY(IL)%L_STRA > 0) THEN
683 ENDDO ! DO IS=1,NPTS
684 ENDDO ! DO IR=1,NPTR
685 ENDDO ! DO IT=1,NPTT
686 ENDDO ! DO IL=1,NLAY
687C
688 RETURN

◆ tm_vonm_shell()

subroutine tm_vonm_shell ( intent(in) for,
intent(inout) value,
integer nel )

Definition at line 696 of file outmaxsubr.F.

697C-----------------------------------------------------------------------
698C I m p l i c i t T y p e s
699C-----------------------------------------------
700#include "implicit_f.inc"
701C-----------------------------------------------
702C D u m m y A r g u m e n t s
703C-----------------------------------------------
704 INTEGER NEL
705 my_real, DIMENSION(NEL,5) ,INTENT(IN):: for
706 my_real, DIMENSION(NEL) ,INTENT(INOUT):: VALUE
707C-----------------------------------------------
708C L o c a l V a r i a b l e s
709C-----------------------------------------------
710 INTEGER I,J
711 my_real
712 . s(3),s1,s2,s12,vonm2,vonm
713C-----------------------------------------------
714C S o u r c e L i n e s
715C-----------------------------------------------
716 DO i=1,nel
717 s1 = for(i,1)
718 s2 = for(i,2)
719 s12 = for(i,3)
720 vonm2= s1*s1 + s2*s2 - s1*s2 + three*s12*s12
721 vonm= sqrt(vonm2)
722 value(i) = max(value(i),vonm)
723 ENDDO
724C
725 RETURN
for(i8=*sizetab-1;i8 >=0;i8--)

◆ tm_vonm_solid()

subroutine tm_vonm_solid ( integer ivisc,
intent(in) sig,
intent(in) visc,
intent(inout) value,
integer nel )

Definition at line 412 of file outmaxsubr.F.

413C-----------------------------------------------------------------------
414C I m p l i c i t T y p e s
415C-----------------------------------------------
416#include "implicit_f.inc"
417C-----------------------------------------------
418C D u m m y A r g u m e n t s
419C-----------------------------------------------
420 INTEGER IVISC,NEL
421 my_real, DIMENSION(NEL,6) ,INTENT(IN):: sig,visc
422 my_real, DIMENSION(NEL) ,INTENT(INOUT):: VALUE
423C-----------------------------------------------
424C L o c a l V a r i a b l e s
425C-----------------------------------------------
426 INTEGER I,J
427 my_real
428 . s(6),s1,s2,s3,vonm,p,vonm2
429C-----------------------------------------------
430C S o u r c e L i n e s
431C-----------------------------------------------
432 DO i=1,nel
433 s(1:6) = sig(i,1:6)
434 IF(ivisc > 0 ) s(1:6) = s(1:6) + visc(i,1:6)
435 p = - (s(1) + s(2) + s(3) ) * third
436 s1= s(1) + p
437 s2= s(2) + p
438 s3= s(3) + p
439 vonm2= three*(s(4)*s(4) + s(5)*s(5) + s(6)*s(6) +
440 . half*(s1*s1 + s2*s2 + s3*s3) )
441 vonm= sqrt(vonm2) ! can be optimized
442 value(i) = max(value(i),vonm)
443 ENDDO
444C
445 RETURN

◆ upd_tmnorm2()

subroutine upd_tmnorm2 ( intent(in) d,
intent(inout) tm_d,
intent(inout) tm_norm2,
integer nft,
integer nlt )

Definition at line 1093 of file outmaxsubr.F.

1094C-----------------------------------------------------------------------
1095C I m p l i c i t T y p e s
1096C-----------------------------------------------
1097#include "implicit_f.inc"
1098C-----------------------------------------------
1099C C o m m o n B l o c k s
1100C-----------------------------------------------
1101#include "com04_c.inc"
1102C-----------------------------------------------
1103C D u m m y A r g u m e n t s
1104C-----------------------------------------------
1105 INTEGER NFT,NLT
1106 my_real, DIMENSION(3,NUMNOD) ,INTENT(IN):: d
1107 my_real, DIMENSION(NUMNOD) ,INTENT(INOUT):: tm_norm2
1108 my_real, DIMENSION(3,NUMNOD) ,INTENT(INOUT):: tm_d
1109C-----------------------------------------------
1110C L o c a l V a r i a b l e s
1111C-----------------------------------------------
1112 INTEGER I,J
1113 my_real
1114 . s(3),norm2
1115C-----------------------------------------------
1116C S o u r c e L i n e s
1117C-----------------------------------------------
1118 DO i=nft,nlt
1119 s(1:3) = d(1:3,i)
1120 norm2 = s(1)*s(1)+s(2)*s(2)+s(3)*s(3)
1121 IF (norm2 > tm_norm2(i)) THEN
1122 tm_norm2(i) = norm2
1123 tm_d(1:3,i) = s(1:3)
1124 END IF
1125 ENDDO
1126C
1127 RETURN

◆ upd_tmtens()

subroutine upd_tmtens ( intent(in) nsig,
intent(in) pnsig,
intent(inout) tm_nsig1,
intent(inout) tm_nsig3,
intent(inout) tm_pnsig,
integer nft,
integer nlt,
integer, dimension(numnod), intent(in) igpstag )

Definition at line 1134 of file outmaxsubr.F.

1135C-----------------------------------------------------------------------
1136C I m p l i c i t T y p e s
1137C-----------------------------------------------
1138#include "implicit_f.inc"
1139C-----------------------------------------------
1140C C o m m o n B l o c k s
1141C-----------------------------------------------
1142#include "com04_c.inc"
1143C-----------------------------------------------
1144C D u m m y A r g u m e n t s
1145C-----------------------------------------------
1146 INTEGER NFT,NLT
1147 INTEGER ,DIMENSION(NUMNOD) ,INTENT(IN):: IGPSTAG
1148 my_real, DIMENSION(NUMNOD,6) ,INTENT(IN):: nsig
1149 my_real, DIMENSION(NUMNOD,2) ,INTENT(IN):: pnsig
1150 my_real, DIMENSION(NUMNOD,2) ,INTENT(INOUT):: tm_pnsig
1151 my_real, DIMENSION(NUMNOD,6) ,INTENT(INOUT):: tm_nsig1,tm_nsig3
1152C-----------------------------------------------
1153C L o c a l V a r i a b l e s
1154C-----------------------------------------------
1155 INTEGER I,J
1156 my_real
1157 . s(3),norm2
1158C-----------------------------------------------
1159C S o u r c e L i n e s
1160C-----------------------------------------------
1161 DO i=nft,nlt
1162 IF (igpstag(i)==0) cycle
1163 IF (pnsig(i,1) > tm_pnsig(i,1)) THEN
1164 tm_pnsig(i,1) = pnsig(i,1)
1165 tm_nsig1(i,1:6) = nsig(i,1:6)
1166 END IF
1167 IF (pnsig(i,2) < tm_pnsig(i,2)) THEN
1168 tm_pnsig(i,2) = pnsig(i,2)
1169 tm_nsig3(i,1:6) = nsig(i,1:6)
1170 END IF
1171 ENDDO
1172C
1173 RETURN