5 &( xmul,sf,f,sg,g,x,y,z,
6 & ikle1,ikle2,ikle3,nbor,nelem,nelmax,w1,w2,w3)
71 INTEGER,
INTENT(IN) :: NELEM,NELMAX
72 INTEGER,
INTENT(IN) :: NBOR(*)
73 INTEGER,
INTENT(IN) :: IKLE1(nelmax),IKLE2(nelmax),IKLE3(nelmax)
75 DOUBLE PRECISION,
INTENT(IN) :: X(*),Y(*),Z(*)
76 DOUBLE PRECISION,
INTENT(INOUT) ::W1(nelmax),W2(nelmax),W3(nelmax)
77 DOUBLE PRECISION,
INTENT(IN) :: XMUL
81 TYPE(bief_obj),
INTENT(IN) :: SF,SG
82 DOUBLE PRECISION,
INTENT(IN) :: F(*),G(*)
86 INTEGER IELEM,IELMF,IELMG,I1,I2,I3
87 DOUBLE PRECISION XSUR12,COEF,F123,F1,F2,F3,X1,X2,X3,Y1,Y2
88 DOUBLE PRECISION Y3,Z1,Z2,Z3,S
101 IF( (ielmf.EQ.61.OR.ielmf.EQ.81) .AND. ielmg.EQ.80 )
THEN 111 i1 = nbor(ikle1(ielem))
112 i2 = nbor(ikle2(ielem))
113 i3 = nbor(ikle3(ielem))
126 f1 = f(ikle1(ielem))*g(ielem)
127 f2 = f(ikle2(ielem))*g(ielem)
128 f3 = f(ikle3(ielem))*g(ielem)
129 f123 = (f1 + f2 + f3)
134 s=0.5d0*sqrt( (y2*z3-y3*z2)**2
136 & +(x2*y3-x3*y2)**2 )
140 w1(ielem) = coef * ( f123 + f1 )
141 w2(ielem) = coef * ( f123 + f2 )
142 w3(ielem) = coef * ( f123 + f3 )
152 WRITE(
lu,101) ielmf,sf%NAME
153 101
FORMAT(1x,
'VC01FT2 (BIEF) :',/,
154 & 1x,
'DISCRETIZATION OF F NOT AVAILABLE:',1i6,
155 & 1x,
'REAL NAME: ',a6)
subroutine vc01ft2(XMUL, SF, F, SG, G, X, Y, Z, IKLE1, IKLE2, IKLE3, NBOR, NELEM, NELMAX, W1, W2, W3)