35 SUBROUTINE cutfunce(NC ,NUMEL,ELBUF_TAB,IFUNC ,
42 use element_mod ,
only : nixs
46#include "implicit_f.inc"
50#include "vect01_c.inc"
59 INTEGER IPARG(NPARG,*),NC(5,*),IXS(NIXS,*)
61 TYPE (),
DIMENSION(NGROUP),
TARGET :: ELBUF_TAB
63 INTEGER I,J,N,IC,IL,IL_OLD,NG,NEL,MLW,JTURB,MT,II(6)
66 . off, p, vonm2, vonm, s1, s2, s3,
VALUE
68 TYPE(g_bufel_) ,
POINTER ::
69 TYPE(l_bufel_) ,
POINTER :: LBUF
70 TYPE(buf_mat_) ,
POINTER :: MBUF
81 2 mlw ,nel ,nft ,iad ,ity ,
82 3 npt ,jale ,ismstr ,jeul ,jtur ,
83 4 jthe ,jlag ,jmult ,jhbe ,jivf ,
84 5 nvaux ,jpor ,jcvt ,jclose ,jplasol ,
85 6 irep ,iint ,igtyp ,israt ,isrot ,
86 7 icsen ,isorth ,isorthg ,ifailure,jsms )
88 IF (nel+nft<il)
GOTO 490
92 gbuf => elbuf_tab(ng)%GBUF
93 lbuf => elbuf_tab(ng)%BUFLY(1)%LBUF(1,1,1)
94 mbuf => elbuf_tab(ng)%BUFLY(1)%MAT(1,1,1)
97 jturb=iparg(12,ng)*(iparg(7,ng)+iparg(11,ng))
107 IF (ifunc==1 .AND. gbuf%G_PLA > 0)
THEN
110 ELSEIF (ifunc == 2)
THEN
113 ELSEIF (ifunc == 3)
THEN
116 ELSEIF(ifunc==4 .AND. jthe > 0)
THEN
119 ELSEIF(ifunc==6.OR.ifunc==7)
THEN
120 p = - (gbuf%SIG(ii(1)+i)
121 . + gbuf%SIG(ii(2)+i)
122 . + gbuf%SIG(ii(3)+i)) / three
125 s1 = gbuf%SIG(ii(1)+i) + p
126 s2 = gbuf%SIG(ii(2)+i) + p
127 s3 = gbuf%SIG(ii(3)+i) + p
128 vonm2 = three*(gbuf%SIG(ii(4)+i)**2 +
129 . gbuf%SIG(ii(5)+i)**2 +
130 . gbuf%SIG(ii(6)+i)**2 +
131 . half*(s1*s1+s2*s2+s3*s3))
136 ELSEIF (ifunc==8 . and. jturb/=0)
THEN
139 ELSEIF (ifunc==9)
THEN
141 IF((mlw==6 .OR. mlw==17).AND.jturb/=0)
THEN
143 VALUE=pm(81,mt)*gbuf%RK(i)**2/
144 .
max(em15,gbuf%RE(i))
145 ELSEIF (mlw==46 .OR. mlw==47)
THEN
151 ELSEIF(ifunc==10)
THEN
153 IF(mlw==6 .OR. mlw==17)
THEN
155 ELSEIF(mlw==46 .OR. mlw==47)
THEN
161 ELSEIF(ifunc>=14.AND.ifunc<=19)
THEN
162 VALUE = gbuf%SIG(ii(ifunc - 13) + i)
subroutine initbuf(iparg, ng, mtn, llt, nft, iad, ity, npt, jale, ismstr, jeul, jtur, jthe, jlag, jmult, jhbe, jivf, mid, jpor, jcvt, jclose, jpla, irep, iint, igtyp, israt, isrot, icsen, isorth, isorthg, ifailure, jsms)