30 1 NEDGE ,LEDGE ,STFE ,STFM ,IGAP ,
31 2 GAPE ,GAP_E_L ,GAP_M ,GAP_M_L ,GAP_S_L ,
32 3 BGAPEMX ,INTFRIC ,IPARTFRIC_E,IPARTFRICM,IPARTSM ,
33 4 BGAPEMX_L,NSN ,NSV )
39#include "implicit_f.inc"
48 INTEGER NEDGE,IGAP,INTFRIC,
49 . LEDGE(NLEDGE,*),IPARTFRIC_E(*) ,IPARTFRICM(*), IPARTSM(*)
50 INTEGER ,
INTENT(IN) :: NSN
51 INTEGER ,
INTENT(IN) :: NSV(NSN)
53 . stfe(*), gape(*), gap_e_l(*), stfm(*), gap_m(*), gap_m_l(*), gap_s_l(*), bgapemx,
58 INTEGER I, A, B, N1, N2, IPRTA, IPRTB, IPRTGA, IPRTGB
61 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TAGSLAV
72 IF(stfa/=zero.AND.stfb/=zero)
THEN
73 IF(stfa + stfb < zero)
THEN
76 stfe(i)=two*stfa*stfb/
max(zero,stfa+stfb)
79 stfe(i)=
max(stfa,stfb)
90 IF(a/=0) gapa=gap_m(a)
92 IF(b/=0) gapb=gap_m(b)
93 gape(i)=
max(gapa,gapb)
95 bgapemx =
max(bgapemx,gape(i))
101 ALLOCATE(tagslav(numnod))
102 tagslav(1:numnod) = 0
109 gap_e_l(i)=
min(gap_s_l(tagslav(n1)),gap_s_l(tagslav(n2)))
112 bgapemx_l =
max(bgapemx_l,gap_e_l(i))
126 IF(a/=0) iprtga=ipartsm(a)
127 IF(a/=0) iprta=ipartfricm(a)
130 IF(b/=0) iprtgb=ipartsm(b)
131 IF(b/=0) iprtb=ipartfricm(b)
133 IF(iprta == iprtb)
THEN
134 ipartfric_e(i) = iprta
136 IF(iprtga > iprtgb )
THEN
137 ipartfric_e(i) = iprta
139 ipartfric_e(i) = iprtb
subroutine i25sti_edg(nedge, ledge, stfe, stfm, igap, gape, gap_e_l, gap_m, gap_m_l, gap_s_l, bgapemx, intfric, ipartfric_e, ipartfricm, ipartsm, bgapemx_l, nsn, nsv)