8 & xmul,sf,sg,su,sv,f,g,u,v,
9 & xel,yel,surfac,ikle1,ikle2,ikle3,ikle4,nelem,nelmax)
79 INTEGER,
INTENT(IN) :: NELEM,NELMAX
80 INTEGER,
INTENT(IN) :: IKLE1(nelmax),IKLE2(nelmax)
81 INTEGER,
INTENT(IN) :: IKLE3(nelmax),IKLE4(nelmax)
83 DOUBLE PRECISION,
INTENT(INOUT) :: A11(*),A12(*),A13(*)
84 DOUBLE PRECISION,
INTENT(INOUT) :: A21(*),A22(*),A23(*)
85 DOUBLE PRECISION,
INTENT(INOUT) :: A31(*),A32(*),A33(*)
87 DOUBLE PRECISION,
INTENT(IN) :: XMUL
88 DOUBLE PRECISION,
INTENT(IN) :: F(*),G(*),U(*),V(*)
91 TYPE(bief_obj),
INTENT(IN) :: SF,SG,SU,SV
93 DOUBLE PRECISION,
INTENT(IN) :: XEL(nelmax,3),YEL(nelmax,3)
94 DOUBLE PRECISION,
INTENT(IN) :: SURFAC(nelmax)
100 INTEGER IELMF,IELMG,IELMU,IELMV,IELEM
102 DOUBLE PRECISION SUR12,SUR36,X2,X3,Y2,Y3,U1,U2,U3,U4,V1,V2,V3,V4
103 DOUBLE PRECISION V123,U123,DEN,KKX,KKY,AUX1,AUX2,AUX3,AUX4
117 IF(ielmf.EQ.10.AND.ielmg.EQ.10.AND.
118 & ielmu.EQ.11.AND.ielmv.EQ.11)
THEN 139 den = sur12 / surfac(ielem)
143 aux1 = x2 * v123 - y2 * u123
144 aux2 = x3 * v123 - y3 * u123
145 aux3 = x2 * kky - y2 * kkx
146 aux4 = x3 * kky - y3 * kkx
148 a11(ielem) = ( aux1 - aux2 ) * ( aux3 - aux4 )
149 a22(ielem) = aux2 * aux4
150 a12(ielem) = aux2 * ( aux3 - aux4 )
151 a21(ielem) = ( aux1 - aux2 ) * aux4
156 a13(ielem) = - a11(ielem) - a12(ielem)
157 a23(ielem) = - a22(ielem) - a21(ielem)
158 a31(ielem) = - a11(ielem) - a21(ielem)
159 a32(ielem) = - a22(ielem) - a12(ielem)
160 a33(ielem) = - a13(ielem) - a23(ielem)
166 ELSEIF(ielmf.EQ.10.AND.ielmg.EQ.10.AND.ielmu.EQ.12)
THEN 186 den = sur36 / surfac(ielem)
190 a11(ielem) = ((x2*kky-x3*kky+kkx*y3-kkx*y2)*(2*x2*v3+3*x2*v4+
191 & 2*x2*v2+2*x2*v1-2*x3*v3-3*x3*v4-2*x3*v2-2*x3*v1+2*
192 & u3*y3-2*u3*y2+3*u4*y3-3*u4*y2+2*u2*y3-2*u2*y2+2*u1*
194 a22(ielem) = ((x3*kky-kkx*y3)*(2*x3*v3+3*x3*v4+2*x3*v2+2*
195 & x3*v1-2*u3*y3-3*u4*y3-2*u2*y3-2*u1*y3))
196 a12(ielem) = ((x2*kky-x3*kky+kkx*y3-kkx*y2)*(2*x3*v3+3*x3*v4+
197 & 2*x3*v2+2*x3*v1-2*u3*y3-3*u4*y3-2*u2*y3-2*u1*y3))
198 a21(ielem) = ((2*x2*v3+3*x2*v4+2*x2*v2+2*x2*v1-2*x3*v3-
199 & 3*x3*v4-2*x3*v2-2*x3*v1+2*u3*y3-2*u3*y2+3*u4*y3-3*
200 & u4*y2+2*u2*y3-2*u2*y2+2*u1*y3-2*u1*y2)*(x3*kky-kkx*y3))
205 a13(ielem) = - a11(ielem) - a12(ielem)
206 a23(ielem) = - a22(ielem) - a21(ielem)
207 a31(ielem) = - a11(ielem) - a21(ielem)
208 a32(ielem) = - a22(ielem) - a12(ielem)
209 a33(ielem) = - a13(ielem) - a23(ielem)
218 WRITE(
lu,101) ielmf,sf%NAME
219 WRITE(
lu,111) ielmg,sg%NAME
220 WRITE(
lu,201) ielmu,su%NAME
222 101
FORMAT(1x,
'MT03AA (BIEF) :',/,
223 & 1x,
'DISCRETIZATION OF F:',1i6,
224 & 1x,
'REAL NAME: ',a6)
225 111
FORMAT(1x,
'DISCRETIZATION OF G:',1i6,
226 & 1x,
'REAL NAME: ',a6)
227 201
FORMAT(1x,
'DISCRETIZATION OF U:',1i6,
228 & 1x,
'REAL NAME: ',a6)
229 301
FORMAT(1x,
'CASE NOT IMPLEMENTED')
subroutine mt03aa(A11, A12, A13, A21, A22, A23, A31, A32, A33, XMUL, SF, SG, SU, SV, F, G, U, V, XEL, YEL, SURFAC, IKLE1, IKLE2, IKLE3, IKLE4, NELEM, NELMAX)