5 &( a11 , a12 , a13 , a14 ,
9 & xmul,sf,f,x,y,z,ikle1,ikle2,ikle3,ikle4,nbor,nelbor,
10 & nulone,neleb,nelebx,nelmax)
83 INTEGER,
INTENT(IN) :: NELEB,NELEBX,NELMAX
84 INTEGER,
INTENT(IN) :: NBOR(*),NELBOR(nelebx),NULONE(nelebx,4)
85 INTEGER,
INTENT(IN) :: IKLE1(nelebx),IKLE2(nelebx)
86 INTEGER,
INTENT(IN) :: IKLE3(nelebx),IKLE4(nelebx)
88 DOUBLE PRECISION,
INTENT(INOUT) :: A11(*),A12(*),A13(*),A14(*)
89 DOUBLE PRECISION,
INTENT(INOUT) :: A22(*),A23(*),A24(*)
90 DOUBLE PRECISION,
INTENT(INOUT) :: A33(*),A34(*)
91 DOUBLE PRECISION,
INTENT(INOUT) :: A44(*)
93 DOUBLE PRECISION,
INTENT(IN) :: XMUL
94 DOUBLE PRECISION,
INTENT(IN) :: F(*)
97 TYPE(bief_obj),
INTENT(IN) :: SF
99 DOUBLE PRECISION,
INTENT(IN) :: X(nelmax,6),Y(nelmax,6),Z(*)
107 INTEGER IELMF,I1,I2,I3,I4,IELEM,IEL,J1,J2
109 DOUBLE PRECISION SUR720,AL,S1,S2,S11112,S11122,S11222,S12222
110 DOUBLE PRECISION F14,F23,F1114,F2223,F2333,F1444
143 al = sqrt((x(iel,j2)-x(iel,j1))**2
144 & +(y(iel,j2)-y(iel,j1))**2) * sur720
146 s1 = (z(nbor(i4)) - z(nbor(i1))) * al
147 s2 = (z(nbor(i3)) - z(nbor(i2))) * al
148 s11112 = s1 + s1 + s1 + s1 + s2
149 s11122 = s1 + s1 + s1 + s2 + s2
150 s11222 = s1 + s1 + s2 + s2 + s2
151 s12222 = s1 + s2 + s2 + s2 + s2
155 f1114 = f(i1) + f(i1) + f14
156 f2223 = f(i2) + f(i2) + f23
157 f2333 = f23 + f(i3) + f(i3)
158 f1444 = f14 + f(i4) + f(i4)
162 a11(ielem) = 3*f1114*s11112 + f2223*s11122
163 a22(ielem) = 3*f2223*s12222 + f1114*s11222
164 a33(ielem) = 3*f2333*s12222 + f1444*s11222
165 a44(ielem) = 3*f1444*s11112 + f2333*s11122
169 a12(ielem) = f1114*s11122 + f2223*s11222
170 a13(ielem) = f14*s11122 + f23*s11222
171 a14(ielem) = 3*f14*s11112 + f23*s11122
172 a23(ielem) = 3*f23*s12222 + f14*s11222
173 a24(ielem) = a13(ielem)
174 a34(ielem) = f2333*s11222 + f1444*s11122
201 WRITE(
lu,101) ielmf,sf%NAME
202 101
FORMAT(1x,
'MT06FF (BIEF) :',/,
203 & 1x,
'DISCRETIZATION OF F NOT AVAILABLE:',1i6,
204 & 1x,
'REAL NAME: ',a6)
subroutine mt06ff(A11, A12, A13, A14, A22, A23, A24, A33, A34, A44, XMUL, SF, F, X, Y, Z, IKLE1, IKLE2, IKLE3, IKLE4, NBOR, NELBOR, NULONE, NELEB, NELEBX, NELMAX)