5 &(xmul,sf,sg,su,sv,f,g,u,v,
6 & xel,yel,ikle1,ikle2,ikle3,nelem,nelmax,w1,w2,w3 )
68 INTEGER,
INTENT(IN) :: NELEM,NELMAX
69 INTEGER,
INTENT(IN) :: IKLE1(nelmax),IKLE2(nelmax),IKLE3(nelmax)
71 DOUBLE PRECISION,
INTENT(IN) :: XEL(nelmax,*),YEL(nelmax,*)
72 DOUBLE PRECISION,
INTENT(INOUT) ::W1(nelmax),W2(nelmax),W3(nelmax)
73 DOUBLE PRECISION,
INTENT(IN) :: XMUL
77 TYPE(bief_obj),
INTENT(IN) :: SF,SG,SU,SV
78 DOUBLE PRECISION,
INTENT(IN) :: F(*),G(*),U(*),V(*)
82 INTEGER IELEM,IELMF,IELMU,IELMG,IELMV
84 DOUBLE PRECISION X2,Y2,X3,Y3,F1,F2,F3,G1,G2,G3,U1,U2,U3,V1,V2,V3
85 DOUBLE PRECISION XS120,T11,T12,T13,T22,T23,T33,FTX,FTY
86 DOUBLE PRECISION U123,V123
103 IF( ielmf.EQ.11.AND.ielmg.EQ.11
104 & .AND.ielmu.EQ.11.AND.ielmv.EQ.11 )
THEN 129 ftx = f1 * (x3-x2) - f2 * x3 + f3*x2
130 fty = f1 * (y2-y3) + f2 * y3 - f3*y2
135 t11 = ftx * ( v123 + v1 + v1 ) + fty * ( u123 + u1 + u1 )
136 t22 = ftx * ( v123 + v2 + v2 ) + fty * ( u123 + u2 + u2 )
137 t33 = ftx * ( v123 + v3 + v3 ) + fty * ( u123 + u3 + u3 )
139 t12 = ftx * ( v123 + v123 - v3 ) + fty * ( u123 + u123 - u3 )
140 t13 = ftx * ( v123 + v123 - v2 ) + fty * ( u123 + u123 - u2 )
141 t23 = ftx * ( v123 + v123 - v1 ) + fty * ( u123 + u123 - u1 )
143 w1(ielem) = ( 2 * g1*t11 + g2*t12 + g3*t13 ) * xs120
144 w2(ielem) = ( g1*t12 + 2 * g2*t22 + g3*t23 ) * xs120
145 w3(ielem) = ( g1*t13 + g2*t23 + 2 * g3*t33 ) * xs120
155 WRITE(
lu,101) ielmf,sf%NAME
156 WRITE(
lu,111) ielmg,sg%NAME
157 WRITE(
lu,201) ielmu,su%NAME
159 101
FORMAT(1x,
'VC09AA (BIEF) :',/,
160 & 1x,
'DISCRETIZATION OF F:',1i6,
161 & 1x,
'REAL NAME: ',a6)
162 111
FORMAT(1x,
'DISCRETIZATION OF G:',1i6,
163 & 1x,
'REAL NAME: ',a6)
164 201
FORMAT(1x,
'DISCRETIZATION OF U:',1i6,
165 & 1x,
'REAL NAME: ',a6)
166 301
FORMAT(1x,
'CASE NOT IMPLEMENTED')
subroutine vc09aa(XMUL, SF, SG, SU, SV, F, G, U, V, XEL, YEL, IKLE1, IKLE2, IKLE3, NELEM, NELMAX, W1, W2, W3)