34 . IXS ,IXS10 ,IXS16 ,IXS20 ,IXQ ,
35 . IXC ,IXTG ,IXT ,IXP ,IXR ,
36 . X ,IAD_ELEM,FR_ELEM ,WEIGHT ,SIG_N ,
45#include "implicit_f.inc"
52#include "tabsiz_c.inc"
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)
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
79 INTEGER I,J,K,N,LENR,NSIZ
83 . ,
DIMENSION(:,:),
ALLOCATABLE,
TARGET :: vcom
85 . ,
DIMENSION(:,:),
POINTER :: aflu, vflu
89 ALLOCATE(vcom(nsiz,numnod))
90 aflu=>vcom(1:3,1:numnod)
91 vflu=>vcom(4:6,1:numnod)
94 sig_n(1:numnod,1:6) = zero
96 CALL tensgps3(elbuf_tab ,vflu ,aflu ,iparg ,geo ,
97 . ixs ,ixs10 ,ixs16 ,ixs20 ,ixq ,
98 . ixc ,ixtg ,ixt ,ixp ,ixr ,
101 vcom(7,1:numnod) =itagps(1:numnod)
102 lenr = iad_elem(1,nspmd+1)-iad_elem(1,1)
104 itagps(1:numnod)=nint(vcom(7,1:numnod))
107 IF (itagps(n) == 0) cycle
109 sig_n(n,1:3)=fac*vflu(1:3,n)
110 sig_n(n,4:6)=fac*aflu(1:3,n)
129 . IXS ,IXS10 ,IXS16 ,IXS20 ,IXQ ,
130 . IXC ,IXTG ,IXT ,IXP ,IXR ,
131 . X ,IAD_ELEM,FR_ELEM ,WEIGHT ,STR_N ,
140#include "implicit_f.inc"
144#include "com01_c.inc"
145#include "com04_c.inc"
146#include "param_c.inc"
147#include "tabsiz_c.inc"
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)::
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
178 . ,
DIMENSION(:,:),
ALLOCATABLE :: aflu, vflu
181 ALLOCATE(aflu(3,numnod))
182 ALLOCATE(vflu(3,numnod))
185 str_n(1:numnod,1:6) = zero
192 . ixs ,ixs10 ,ixs16 ,ixs20 ,ixq ,
193 . ixc ,ixtg ,ixt ,ixp ,ixr ,
196 lenr = iad_elem(1,nspmd+1)-iad_elem(1,1)
202 IF (itagps(n) == 0) cycle
204 str_n(n,1:3)=fac*vflu(1:3,n)
205 str_n(n,4:6)=fac*aflu(1:3,n)
215!||--- called by ------------------------------------------------------
224#include "implicit_f.inc"
228 INTEGER ,
INTENT(IN) :: NEL
229 my_real,
DIMENSION(NEL,3) ,
INTENT(IN):: SIG
230 my_real,
DIMENSION(NEL,2) ,
INTENT(OUT):: PIN
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)
261#include "implicit_f.inc"
265 INTEGER ,
INTENT(IN) :: NEL
266 my_real,
DIMENSION(NEL,6) ,
INTENT(IN) :: SIG
267 my_real,
DIMENSION(NEL,2) ,
INTENT(OUT):: PIN
273 . s1,t1,t2,t3,s(6),p1,detb,dets,r,
alpha
278 s1 = sig(i,4)*sig(i,4)+sig(i,5)*sig(i,5)+sig(i,6)*sig(i,6)
280 t1 = third*(sig(i,1)+sig(i,2)+sig(i,3))
281 s(1:3) = sig(i,1:3) - t1
285 t2 = s(1)*s(1)+s(2)*s(2)+s(3)*s(3) + two*s1
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))
293 ELSEIF (r >= one)
THEN
296 alpha = third*acos(r)
298 pin(i,1) = t1 + two * p1* cos(
alpha)
299 pin(i,2) = t1 + two * p1* cos(
alpha+2*pi/3)
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))
319#include "implicit_f.inc"
323 INTEGER ,
INTENT(IN) :: NEL
324 my_real,
DIMENSION(NEL,6) ,
INTENT(IN):: SIG1,SIG3
325 my_real,
DIMENSION(NEL,2) ,
INTENT(OUT):: PIN
337 pin(1:nel,1) = p2(1:nel,1)
352#include "implicit_f.inc"
356 INTEGER ,
INTENT(IN) :: NEL
357 my_real,
DIMENSION(NEL,3) ,
INTENT(IN):: SIG1,SIG3
358 my_real,
DIMENSION(NEL,2) ,
INTENT(OUT):: PIN
370 pin(1:nel,1) = p2(1:nel,1)
383#include "implicit_f.inc"
388 my_real,
DIMENSION(3,NNOD) ,
INTENT(IN):: TM_D
389 my_real,
DIMENSION(NNOD) ,
INTENT(OUT):: TM_NORM2
401 tm_norm2(i) = s(1)*s(1)+s(2)*s(2)+s(3)*s(3)
416#include "implicit_f.inc"
421 my_real,
DIMENSION(NEL,6) ,
INTENT(IN):: SIG,VISC
422 my_real,
DIMENSION(NEL) ,
INTENT(INOUT):: VALUE
428 . s(6),s1,s2,s3,vonm,p,vonm2
434 IF(ivisc > 0 ) s(1:6) = s(1:6) + visc(i,1:6)
435 p = - (s(1) + s(2) + s(3) ) * third
439 vonm2= three*(s(4)*s(4) + s(5)*s(5) + s(6)*s(6) +
440 . half*(s1*s1 + s2*s2 + s3*s3) )
442 value(i) =
max(value(i),vonm)
464#include "implicit_f.inc"
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
474 INTEGER I,J,IL,IR,IS,IT
477 TYPE(g_bufel_) ,
POINTER
478TYPE(l_bufel_) ,
POINTER :: LBUF
482 gbuf => elbuf_tab%GBUF
487 lbuf => elbuf_tab%BUFLY(il)%LBUF(ir,is,it)
488 IF (elbuf_tab%BUFLY(il)%L_SEQ > 0)
THEN
490 value(i) =
max(value(i),lbuf%SEQ(i))
517#include "implicit_f.inc"
521 INTEGER,
INTENT(IN):: NLAY,NPTR,NPTS,NPTT,NEL
522 my_real,
DIMENSION(NEL) ,
INTENT(INOUT):: VALUE
523 TYPE (ELBUF_STRUCT_),
TARGET :: ELBUF_TAB
527 INTEGER I,J,IL,IR,IS,IT,NFAIL,IIR
528 TYPE(BUF_FAIL_) ,
POINTER :: FBUF
530 .
DIMENSION(:),
POINTER :: dfmax
535 nfail = elbuf_tab%BUFLY(il)%NFAIL
540 dfmax=>elbuf_tab%BUFLY(il)%FAIL(iir,is,it)%FLOC(ir)%DAMMX
542 value(i) =
max(value(i),dfmax(i))
570#include "implicit_f.inc"
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
581 INTEGER I,J,IL,IR,IS,IT,JJ(6)
583 . s(nel,6),s1,s2,s3,sp2(nel,2)
584 TYPE(l_bufel_) ,
POINTER :: LBUF
595 lbuf => elbuf_tab%BUFLY(il)%LBUF(ir,is,it)
597 s(i,1:6) = lbuf%SIG(jj(1:6)+i)
601 s(i,1:6) = s(i,1:6) + lbuf%VISC(jj(1:6)+i)
606 IF (sp2(i,1) > p2(i,1))
THEN
607 ten1(i,1:6) = s(i,1:6)
610 IF (sp2(i,2) < p2(i,2))
THEN
611 ten3(i,1:6) = s(i,1:6)
640#include "implicit_f.inc"
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
651 INTEGER I,J,IL,IR,IS,IT,JJ(6)
653 . S(NEL,6),S1,S2,S3,SP2(NEL,2)
654 TYPE(l_bufel_) ,
POINTER :: LBUF
665 lbuf => elbuf_tab%BUFLY(il)%LBUF(ir,is,it)
667 IF (elbuf_tab%BUFLY(il)%L_STRA > 0)
THEN
669 s(i,1:6) = lbuf%STRA(jj(1:6)+i)
673 IF (sp2(i,1) > p2(i,1))
THEN
674 ten1(i,1:6) = s(i,1:6)
677 IF (sp2(i,2) < p2(i,2))
THEN
678 ten3(i,1:6) = s(i,1:6)
695!||====================================================================
700#include "implicit_f.inc"
705 my_real,
DIMENSION(NEL,5) ,
INTENT(IN):: FOR
706 my_real,
DIMENSION(NEL) ,
INTENT(INOUT)::
VALUE
712 . S(3),S1,S2,S12,VONM2,VONM
720 vonm2= s1*s1 + s2*s2 - s1*s2 + three
722 value(i) =
max(value(i),vonm)
744#include
"implicit_f.inc"
748 INTEGER,
INTENT(IN):: NLAY,NPTR,NPTS,NEL
749 my_real,
DIMENSION(NEL) ,
INTENT(INOUT):: VALUE
750 TYPE (ELBUF_STRUCT_),
TARGET :: ELBUF_TAB
754 INTEGER I,J,IL,IR,IS,IT
757 TYPE(BUF_LAY_) ,
POINTER :: BUFLY
758 TYPE(l_bufel_) ,
POINTER :: LBUF
765 bufly => elbuf_tab%BUFLY(il)
767 lbuf => bufly%LBUF(ir,is,it)
768 IF (bufly%L_SEQ > 0)
THEN
770 value(i) =
max(value(i),lbuf%SEQ(i))
799#include "implicit_f.inc"
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
810 INTEGER I,J,IL,IR,IS,IT,JJ(3)
812 . S(NEL,3),S1,S2,S3,SP2(NEL,2)
813 TYPE(buf_lay_) ,
POINTER :: BUFLY
814 TYPE(l_bufel_) ,
POINTER :: LBUF
824 bufly => elbuf_tab%BUFLY(il)
826 lbuf => bufly%LBUF(ir,is,it)
828 s(i,1:3) = lbuf%SIG(jj(1:3)+i)
832 IF (sp2(i,1) > p2(i,1))
THEN
833 ten1(i,1:3) = s(i,1:3)
836 IF (sp2(i,2) < p2(i,2))
THEN
837 ten3(i,1:3) = s(i,1:3)
865#include "implicit_f.inc"
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
876 INTEGER I,J,IL,IR,IS,IT,JJ(3),NPG,LENS,NG,PTS
878 . S(NEL,3),S1,S2,S3,SP2(NEL,2)
879 TYPE(g_bufel_)
POINTER
886 gbuf => elbuf_tab%GBUF
890 s(i,1:3) = gbuf%STRA(jj(1:3)+i)
894 IF (sp2(i,1) > p2(i,1))
THEN
895 ten1(i,1:3) = s(i,1:3)
898 IF (sp2(i,2) < p2(i,2))
THEN
899 ten3(i,1:3) = s(i,1:3)
904 lens = nel*gbuf%G_STRPG/npg
907 ng = nptr*(is-1) + ir
910 s(i,1:3) = gbuf%STRPG(pts+jj(1:3)+i)
914 IF (sp2(i,1) > p2(i,1))
THEN
915 ten1(i,1:3) = s(i,1:3)
918 IF (sp2(i,2) < p2(i,2))
THEN
919 ten3(i,1:3) = s(i,1:3)
931!||--- called by ------------------------------------------------------
944#include "implicit_f.inc"
948 INTEGER,
INTENT(IN):: ,NPTR,NPTS,NEL
949 my_real,
DIMENSION(NEL) ,
INTENT(INOUT):: VALUE
950 TYPE (ELBUF_STRUCT_),
TARGET :: ELBUF_TAB
954 INTEGER I,J,IL,IR,IS,IT,NFAIL,IIR
955 my_real,
DIMENSION(:),
POINTER :: DFMAX
956 TYPE(BUF_LAY_) ,
POINTER :: BUFLY
961 bufly => elbuf_tab%BUFLY(il)
967 dfmax=>bufly%FAIL(ir,is,it)%FLOC(iir
969 value(i) =
max(value(i),dfmax(i))
985!||====================================================================
987 . PM,MATLY,VALUE,NEL)
995#include "implicit_f.inc"
999#include "mvsiz_p.inc"
1000#include "com04_c.inc"
1001#include "param_c.inc"
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
1013 INTEGER I,J,IL,IR,IS,IT,NFAIL,IIR,IPT,IADR,JJ(3)
1017 .
DIMENSION(MVSIZ) :: dmax,wpmax,epst1,epst2,epsf1,epsf2
1019 .
DIMENSION(:),
POINTER :: dfmax
1020 TYPE(buf_lay_) ,
POINTER :: BUFLY
1021 TYPE(L_BUFEL_) ,
POINTER :: LBUF
1026 bufly => elbuf_tab%BUFLY(il)
1032 dfmax=>bufly%FAIL(ir,is,it)%FLOC(iir)%DAMMX
1034 value(i) =
max(value(i),dfmax(i))
1042 IF(igtyp == 10 .OR. igtyp == 11 .OR.
1043 . igtyp == 17 .OR. igtyp == 51 .OR. igtyp == 52 )
THEN
1048 bufly => elbuf_tab%BUFLY(il)
1050 iadr = (ipt - 1)*nel
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))
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))
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))
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)
1080 value(i) =
max(value(i),vly(1),vly(2),vly(3),vly(4),vly(5))
1097#include "implicit_f.inc"
1101#include "com04_c.inc"
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)
1120 norm2 = s(1)*s(1)+s(2)*s(2)+s(3)*s(3)
1121 IF (norm2 > tm_norm2(i))
THEN
1123 tm_d(1:3,i) = s(1:3)
1134 SUBROUTINE upd_tmtens(NSIG,PNSIG,TM_NSIG1,TM_NSIG3,TM_PNSIG,NFT,NLT,IGPSTAG)
1138#include "implicit_f.inc"
1142#include "com04_c.inc"
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
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)
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)
1184#include "implicit_f.inc"
1188#include "com04_c.inc"
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)::
1201 . S1,T1,,T3,S(6),P1,DETB,DETS,R,ALPHA
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)
1209 t1 = third*(sig(i,1)+sig(i,2)+sig(i,3))
1210 s(1:3) = sig(i,1:3) - t1
1214 t2 = s(1)*s(1)+s(2)*s(2)+s(3)*s(3) + two*s1
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))
1222 ELSEIF (r >= one)
THEN
1225 alpha = third*acos(r)
1227 pin(i,1) = t1 + two * p1* cos(alpha)
1228 pin(i,2) = t1 + two * p1* cos(alpha+2*pi/3)
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))
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 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 tm_seq_solid(elbuf_tab, nlay, nptr, npts, nptt, ivisc, value, nel)
subroutine ini_tmnorm2(tm_d, tm_norm2, nnod)
subroutine tm_seq_shell(elbuf_tab, nlay, nptr, npts, value, nel)
subroutine tm_stra_shell(elbuf_tab, nptr, npts, ten1, ten3, p2, nel)
subroutine sig3dpin2(sig, pin, nel)
subroutine tm_sig_solid(elbuf_tab, nlay, nptr, npts, nptt, ivisc, ten1, ten3, p2, nel)
subroutine sig2d2pin(sig1, sig3, pin, nel)
subroutine sig3dpin2h(sig, pin, nft, nlt, igpstag)
subroutine tm_dmg_solid(elbuf_tab, nlay, nptr, npts, nptt, value, nel)
subroutine tm_vonm_shell(for, value, nel)
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 tm_dmg_shells(elbuf_tab, nlay, nptr, npts, value, nel)
subroutine tm_sig_shell(elbuf_tab, nlay, nptr, npts, ten1, ten3, p2, nel)
subroutine sig3d2pin(sig1, sig3, pin, nel)
subroutine sig2dpin2(sig, pin, nel)
subroutine tm_stra_solid(elbuf_tab, nlay, nptr, npts, nptt, ten1, ten3, p2, nel)
subroutine tm_vonm_solid(ivisc, sig, visc, value, nel)
subroutine spmd_exch_n(xnorm, iad_elem, fr_elem, lenr)
subroutine spmd_exch_nodareai(nodareai, iad_elem, fr_elem, lenr, weight)
subroutine spmd_exch_v(xnorm, nsiz, iad_elem, fr_elem, lenr)
subroutine tensgpstrain(elbuf_tab, func1, func2, iparg, geo, ixs, ixs10, ixs16, ixs20, ixq, ixc, ixtg, ixt, ixp, ixr, x, itagps, pm)
subroutine tensgps3(elbuf_tab, func1, func2, iparg, geo, ixs, ixs10, ixs16, ixs20, ixq, ixc, ixtg, ixt, ixp, ixr, x, itagps, pm)