5 &(xmul,sf,su,sv,f,u,v,xnor,ynor,lgseg,
6 & ikle,nbor,nelem,nelmax,w1,w2)
80 INTEGER,
INTENT(IN) :: NELEM,NELMAX
81 INTEGER,
INTENT(IN) :: IKLE(nelmax,*)
82 INTEGER,
INTENT(IN) :: NBOR(*)
84 DOUBLE PRECISION,
INTENT(IN) :: XNOR(nelmax),YNOR(nelmax)
85 DOUBLE PRECISION,
INTENT(INOUT) :: W1(nelmax),W2(nelmax)
86 DOUBLE PRECISION,
INTENT(IN) :: LGSEG(*)
87 DOUBLE PRECISION,
INTENT(IN) :: XMUL
91 TYPE(bief_obj),
INTENT(IN) :: SF,SU,SV
92 DOUBLE PRECISION,
INTENT(IN) :: F(*),U(*),V(*)
96 INTEGER N1,N2,N3,NG1,NG2,NG3,IELEM,IELMF,IELMU,IELMV
97 DOUBLE PRECISION XSUR12,XSUR04,XSUR60,F1,F2,F3,U1,U2,U3
98 DOUBLE PRECISION V1,V2,V3,VX1,VY1,VX2,VY2
116 IF( (ielmf.EQ.11.OR.ielmf.EQ.12.OR.ielmf.EQ.21) .AND.
117 & (ielmu.EQ.11.OR.ielmu.EQ.12.OR.ielmu.EQ.21) .AND.
118 & (ielmv.EQ.11.OR.ielmv.EQ.12.OR.ielmv.EQ.21) )
THEN 126 ng1= nbor(ikle(ielem,1))
127 ng2= nbor(ikle(ielem,2))
138 vx1 = xsur04 * f1 * u1 + xsur12 * ( f1 * u2 + f2 * ( u1 + u2 ) )
139 vy1 = xsur04 * f1 * v1 + xsur12 * ( f1 * v2 + f2 * ( v1 + v2 ) )
140 vx2 = xsur04 * f2 * u2 + xsur12 * ( f2 * u1 + f1 * ( u1 + u2 ) )
141 vy2 = xsur04 * f2 * v2 + xsur12 * ( f2 * v1 + f1 * ( v1 + v2 ) )
143 w1(ielem) = lgseg(ielem) * ( vx1*xnor(ielem) + vy1*ynor(ielem) )
144 w2(ielem) = lgseg(ielem) * ( vx2*xnor(ielem) + vy2*ynor(ielem) )
153 ELSEIF( (ielmf.EQ.11.OR.ielmf.EQ.12.OR.ielmf.EQ.21) .AND.
154 & (ielmu.EQ.1 ) .AND.
155 & (ielmv.EQ.1 ) )
THEN 178 vx1 = xsur04 * f1 * u1 + xsur12 * ( f1 * u2 + f2 * ( u1 + u2 ) )
179 vy1 = xsur04 * f1 * v1 + xsur12 * ( f1 * v2 + f2 * ( v1 + v2 ) )
180 vx2 = xsur04 * f2 * u2 + xsur12 * ( f2 * u1 + f1 * ( u1 + u2 ) )
181 vy2 = xsur04 * f2 * v2 + xsur12 * ( f2 * v1 + f1 * ( v1 + v2 ) )
183 w1(ielem) = lgseg(ielem) * ( vx1*xnor(ielem) + vy1*ynor(ielem) )
184 w2(ielem) = lgseg(ielem) * ( vx2*xnor(ielem) + vy2*ynor(ielem) )
193 ELSEIF( ielmf.EQ.1 .AND.
215 vx1 = xsur04 * f1 * u1 + xsur12 * ( f1 * u2 + f2 * ( u1 + u2 ) )
216 vy1 = xsur04 * f1 * v1 + xsur12 * ( f1 * v2 + f2 * ( v1 + v2 ) )
217 vx2 = xsur04 * f2 * u2 + xsur12 * ( f2 * u1 + f1 * ( u1 + u2 ) )
218 vy2 = xsur04 * f2 * v2 + xsur12 * ( f2 * v1 + f1 * ( v1 + v2 ) )
220 w1(ielem) = lgseg(ielem) * ( vx1*xnor(ielem) + vy1*ynor(ielem) )
221 w2(ielem) = lgseg(ielem) * ( vx2*xnor(ielem) + vy2*ynor(ielem) )
232 ELSEIF( (ielmf.EQ.11.OR.ielmf.EQ.12.OR.ielmf.EQ.21 ) .AND.
233 & (ielmu.EQ.13 ) .AND.
234 & (ielmv.EQ.13 ) )
THEN 242 ng1= nbor(ikle(ielem,1))
243 ng2= nbor(ikle(ielem,2))
244 ng3= nbor(ikle(ielem,3))
257 vx1 = xsur60 *(9.d0*f1*u1-f1*u2+12.d0*f1*u3+f2*(u1+u2)+8.d0*f2*u3)
258 vy1 = xsur60 *(9.d0*f1*v1-f1*v2+12.d0*f1*v3+f2*(v1+v2)+8.d0*f2*v3)
259 vx2 = xsur60 *(f1*(u1+u2)+8.d0*f1*u3-f2*u1+9.d0*f2*u2+12.d0*f2*u3)
260 vy2 = xsur60 *(f1*(v1+v2)+8.d0*f1*v3-f2*v1+9.d0*f2*v2+12.d0*f2*v3)
262 w1(ielem) = lgseg(ielem) * ( vx1*xnor(ielem) + vy1*ynor(ielem) )
263 w2(ielem) = lgseg(ielem) * ( vx2*xnor(ielem) + vy2*ynor(ielem) )
272 ELSEIF( (ielmf.EQ.11.OR.ielmf.EQ.12.OR.ielmf.EQ.21) .AND.
273 & (ielmu.EQ.2 ) .AND.
274 & (ielmv.EQ.2 ) )
THEN 301 vx1 = xsur60 *(9.d0*f1*u1-f1*u2+12.d0*f1*u3+f2*(u1+u2)+8.d0*f2*u3)
302 vy1 = xsur60 *(9.d0*f1*v1-f1*v2+12.d0*f1*v3+f2*(v1+v2)+8.d0*f2*v3)
303 vx2 = xsur60 *(f1*(u1+u2)+8.d0*f1*u3-f2*u1+9.d0*f2*u2+12.d0*f2*u3)
304 vy2 = xsur60 *(f1*(v1+v2)+8.d0*f1*v3-f2*v1+9.d0*f2*v2+12.d0*f2*v3)
306 w1(ielem) = lgseg(ielem) * ( vx1*xnor(ielem) + vy1*ynor(ielem) )
307 w2(ielem) = lgseg(ielem) * ( vx2*xnor(ielem) + vy2*ynor(ielem) )
316 ELSEIF( ielmf.EQ.2 .AND.
344 vx1 = xsur60 *(9.d0*f1*u1-f1*u2+12.d0*f1*u3+f2*(u1+u2)+8.d0*f2*u3)
345 vy1 = xsur60 *(9.d0*f1*v1-f1*v2+12.d0*f1*v3+f2*(v1+v2)+8.d0*f2*v3)
346 vx2 = xsur60 *(f1*(u1+u2)+8.d0*f1*u3-f2*u1+9.d0*f2*u2+12.d0*f2*u3)
347 vy2 = xsur60 *(f1*(v1+v2)+8.d0*f1*v3-f2*v1+9.d0*f2*v2+12.d0*f2*v3)
349 w1(ielem) = lgseg(ielem) * ( vx1*xnor(ielem) + vy1*ynor(ielem) )
350 w2(ielem) = lgseg(ielem) * ( vx2*xnor(ielem) + vy2*ynor(ielem) )
361 WRITE(
lu,111) ielmf,sf%NAME
362 WRITE(
lu,112) ielmu,su%NAME
363 WRITE(
lu,113) ielmv,sv%NAME
365 110
FORMAT(1x,
'VC10OO (BIEF):')
366 111
FORMAT(1x,
'DISCRETIZATION OF F:',1i6,
367 & 1x,
'REAL NAME: ',a6)
368 112
FORMAT(1x,
'DISCRETIZATION OF U:',1i6,
369 & 1x,
'REAL NAME: ',a6)
370 113
FORMAT(1x,
'DISCRETIZATION OF V:',1i6,
371 & 1x,
'REAL NAME: ',a6)
372 114
FORMAT(1x,
'CASE NOT IMPLEMENTED')
subroutine vc10oo(XMUL, SF, SU, SV, F, U, V, XNOR, YNOR, LGSEG, IKLE, NBOR, NELEM, NELMAX, W1, W2)