mt04tt.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\utils\bief\mt04tt.f
00002 !
00084                      SUBROUTINE MT04TT
00085 !                    *****************
00086 !
00087      &( T,XM,XMUL,SU,SV,SW,U,V,W,X,Y,Z,IKLE,NELEM,NELMAX,FORMUL)
00088 !
00089 !***********************************************************************
00090 ! BIEF   V6P2                                   21/08/2010
00091 !***********************************************************************
00092 !
00093 !
00094 !
00095 !
00096 !
00097 !
00098 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00099 !| IKLE           |-->| CONNECTIVITY TABLE.
00100 !| NELEM          |-->| NUMBER OF ELEMENTS
00101 !| NELMAX         |-->| MAXIMUM NUMBER OF ELEMENTS
00102 !| SU             |-->| STRUCTURE OF FUNCTIONS U
00103 !| SV             |-->| STRUCTURE OF FUNCTIONS V
00104 !| SW             |-->| STRUCTURE OF FUNCTIONS W
00105 !| SURFAC         |-->| AREA OF 2D ELEMENTS
00106 !| T              |<->| WORK ARRAY FOR ELEMENT BY ELEMENT DIAGONAL
00107 !| U              |-->| FUNCTION USED IN THE FORMULA
00108 !| V              |-->| FUNCTION USED IN THE FORMULA
00109 !| W              |-->| FUNCTION USED IN THE FORMULA
00110 !| X              |-->| ABSCISSAE OF POINTS
00111 !| Y              |-->| ORDINATES OF POINTS
00112 !| Z              |-->| ELEVATIONS OF POINTS
00113 !| XM             |<->| OFF-DIAGONAL TERMS
00114 !| XMUL           |-->| COEFFICIENT FOR MULTIPLICATION
00115 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00116 !
00117       USE BIEF, EX_MT04TT => MT04TT
00118       IMPLICIT NONE
00119 !
00120       INTEGER LNG,LU
00121       COMMON/INFO/LNG,LU
00122 !
00123 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00124 !
00125       INTEGER, INTENT(IN) :: NELEM,NELMAX
00126       INTEGER, INTENT(IN) :: IKLE(NELMAX,4)
00127 !
00128       DOUBLE PRECISION, INTENT(INOUT) :: T(NELMAX,4),XM(NELMAX,6)
00129 !
00130       DOUBLE PRECISION, INTENT(IN) :: XMUL
00131       DOUBLE PRECISION, INTENT(IN) :: U(*),V(*),W(*)
00132 !
00133 !     STRUCTURES OF U, V, W
00134 !
00135       TYPE(BIEF_OBJ), INTENT(IN) :: SU,SV,SW
00136 !
00137       DOUBLE PRECISION, INTENT(IN) :: X(*),Y(*),Z(*)
00138 !
00139       CHARACTER(LEN=16), INTENT(IN) :: FORMUL
00140 !
00141 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00142 !
00143 !     SPECIFIC DECLARATIONS
00144 !
00145       DOUBLE PRECISION X2,Y2,Z2,X3,Y3,Z3,X4,Y4,Z4
00146       DOUBLE PRECISION U1,U2,U3,U4,V1,V2,V3,V4,W1,W2,W3,W4,XJAC
00147       DOUBLE PRECISION COEF,SUR120,AUX1,AUX2,AUX4,AUX5,AUX6,AUX7
00148       DOUBLE PRECISION A1,A2,A3
00149       INTEGER I1,I2,I3,I4,IELEM
00150 !
00151 !***********************************************************************
00152 !
00153       SUR120=XMUL/120.D0
00154 !
00155       IF(FORMUL(1:7).EQ.'MAUGUG2') THEN
00156 !
00157       IF((SU%ELM.EQ.31.AND.SV%ELM.EQ.31.AND.SW%ELM.EQ.31).OR.
00158      &   (SU%ELM.EQ.51.AND.SV%ELM.EQ.51.AND.SW%ELM.EQ.51)     ) THEN
00159 !
00160 !-----------------------------------------------------------------------
00161 !
00162 !     LINEAR DISCRETISATION OF DIFFUSION COEFFICIENTS
00163 !
00164 !     LOOP ON THE TETRAHEDRONS
00165 !
00166       DO IELEM=1,NELEM
00167 !
00168       I1=IKLE(IELEM,1)
00169       I2=IKLE(IELEM,2)
00170       I3=IKLE(IELEM,3)
00171       I4=IKLE(IELEM,4)
00172 !
00173 !-----------------------------------------------------------------------
00174 !
00175       X2=X(I2)-X(I1)
00176       Y2=Y(I2)-Y(I1)
00177       Z2=Z(I2)-Z(I1)
00178       X3=X(I3)-X(I1)
00179       Y3=Y(I3)-Y(I1)
00180       Z3=Z(I3)-Z(I1)
00181       X4=X(I4)-X(I1)
00182       Y4=Y(I4)-Y(I1)
00183       Z4=Z(I4)-Z(I1)
00184 !
00185 !-----------------------------------------------------------------------
00186 !
00187       U1 = U(IKLE(IELEM,1))
00188       U2 = U(IKLE(IELEM,2))
00189       U3 = U(IKLE(IELEM,3))
00190       U4 = U(IKLE(IELEM,4))
00191       V1 = V(IKLE(IELEM,1))
00192       V2 = V(IKLE(IELEM,2))
00193       V3 = V(IKLE(IELEM,3))
00194       V4 = V(IKLE(IELEM,4))
00195       W1 = W(IKLE(IELEM,1))
00196       W2 = W(IKLE(IELEM,2))
00197       W3 = W(IKLE(IELEM,3))
00198       W4 = W(IKLE(IELEM,4))
00199 !
00200       XJAC = X2*(Y3*Z4-Y4*Z3)+Y2*(X4*Z3-X3*Z4)+Z2*(X3*Y4-X4*Y3)
00201 !
00202       COEF = SUR120/MAX(XJAC,1.D-8)
00203 !
00204       A1 = -Y3*Z4+Y4*Z3+Y2*Z4-Z2*Y4-Y2*Z3+Z2*Y3
00205       A2 = -X3*Z4+X4*Z3+X2*Z4-Z2*X4-X2*Z3+Z2*X3
00206       A3 = -X3*Y4+X4*Y3+X2*Y4-Y2*X4-X2*Y3+Y2*X3
00207 !
00208       AUX1 = U3*U2+U1*U3+U1*U2+U4**2+U1*U4+U4*U2+U3**2+U2**2+U1**2+U3*U4
00209 !
00210       AUX2 = V1*U4+2*V1*U1+V1*U2+V3*U1+V3*U2+V1*U3+V2*U1+V2*U3
00211      &      +V4*U1+2*V2*U2+2*V3*U3+V4*U2+V2*U4+V4*U3+V3*U4+2*V4*U4
00212 !
00213       AUX4 = V1**2+V1*V3+V3**2+V2**2+V3*V2+V1*V2+V4**2+V1*V4+V3*V4+V2*V4
00214       AUX5 = V3*W2+V3*W1+V1*W2+2*V1*W1+V2*W3+V2*W1+V1*W3+2*V3*W3+2*V2*W2
00215      &+V4*W1+V4*W3+V4*W2+2*V4*W4+V3*W4+V2*W4+V1*W4
00216       AUX6 = W2**2+W3**2+W2*W3+W1**2+W1*W3+W4**2+W1*W2+W1*W4+W4*W2+W4*W3
00217       AUX7 = 2*U2*W2+2*U3*W3+U3*W2+U3*W1+U1*W2+2*U1*W1+U2*W3+U2*W1+
00218      &U1*W3+U4*W2+U4*W1+2*U4*W4+U1*W4+U2*W4+U4*W3+U3*W4
00219 !
00220       T(IELEM,1)= (A1**2*AUX1-A1*A2*AUX2+A1*A3*AUX7+A2**2*AUX4-A2*
00221      &A3*AUX5+A3**2*AUX6)*2*COEF
00222 !
00223       XM(IELEM,1) = (2*(Y3*Z4-Y4*Z3)*A1*AUX1-(Y3*Z4-Y4*Z3)*A2*AUX2+
00224      &(Y3*Z4-Y4*Z3)*A3*AUX7-(X3*Z4-X4*Z3)*A1*AUX2+
00225      &2*(X3*Z4-X4*Z3)*A2*AUX4-(X3*Z4-X4*Z3)*A3*AUX5-
00226      &(-X3*Y4+X4*Y3)*A1*AUX7+(-X3*Y4+X4*Y3)*A2*AUX5-
00227      &2*(-X3*Y4+X4*Y3)*A3*AUX6)*COEF
00228 !
00229       XM(IELEM,2) = (2*(-Y2*Z4+Z2*Y4)*A1*AUX1-(-Y2*Z4+Z2*Y4)*A2*AUX2+
00230      &(-Y2*Z4+Z2*Y4)*A3*AUX7-(-X2*Z4+Z2*X4)*A1*AUX2+
00231      &2*(-X2*Z4+Z2*X4)*A2*AUX4-(-X2*Z4+Z2*X4)*A3*AUX5-
00232      &(X2*Y4-Y2*X4)*A1*AUX7+(X2*Y4-Y2*X4)*A2*AUX5-
00233      &2*(X2*Y4-Y2*X4)*A3*AUX6)*COEF
00234 !
00235       XM(IELEM,3) = (-2*(-Y2*Z3+Z2*Y3)*A1*AUX1+(-Y2*Z3+Z2*Y3)*A2*AUX2-
00236      &(-Y2*Z3+Z2*Y3)*A3*AUX7+(-X2*Z3+Z2*X3)*A1*AUX2-
00237      &2*(-X2*Z3+Z2*X3)*A2*AUX4+(-X2*Z3+Z2*X3)*A3*AUX5+
00238      &(X2*Y3-Y2*X3)*A1*AUX7-(X2*Y3-Y2*X3)*A2*AUX5+
00239      &2*(X2*Y3-Y2*X3)*A3*AUX6)*COEF
00240 !
00241       T(IELEM,2) =((Y3*Z4-Y4*Z3)**2*AUX1-
00242      &(Y3*Z4-Y4*Z3)*(X3*Z4-X4*Z3)*AUX2
00243      &-(Y3*Z4-Y4*Z3)*(-X3*Y4+X4*Y3)*AUX7+
00244      &(X3*Z4-X4*Z3)**2*AUX4+
00245      &(X3*Z4-X4*Z3)*(-X3*Y4+X4*Y3)*AUX5+
00246      &(-X3*Y4+X4*Y3)**2*AUX6)*2*COEF
00247 !
00248       XM(IELEM,4) =  (2*(-Y2*Z4+Z2*Y4)*(Y3*Z4-Y4*Z3)*AUX1-
00249      &(-Y2*Z4+Z2*Y4)*(X3*Z4-X4*Z3)*AUX2-
00250      &(-Y2*Z4+Z2*Y4)*(-X3*Y4+X4*Y3)*AUX7
00251      &-(Y3*Z4-Y4*Z3)*(-X2*Z4+Z2*X4)*AUX2+
00252      &2*(-X2*Z4+Z2*X4)*(X3*Z4-X4*Z3)*AUX4+
00253      &(-X2*Z4+Z2*X4)*(-X3*Y4+X4*Y3)*AUX5-
00254      &(Y3*Z4-Y4*Z3)*(X2*Y4-Y2*X4)*AUX7+
00255      &(X3*Z4-X4*Z3)*(X2*Y4-Y2*X4)*AUX5+
00256      &2*(X2*Y4-Y2*X4)*(-X3*Y4+X4*Y3)*AUX6)*COEF
00257 !
00258       XM(IELEM,5) = (-2*(-Y2*Z3+Z2*Y3)*(Y3*Z4-Y4*Z3)*AUX1+
00259      &(-Y2*Z3+Z2*Y3)*(X3*Z4-X4*Z3)*AUX2+
00260      &(-Y2*Z3+Z2*Y3)*(-X3*Y4+X4*Y3)*AUX7+
00261      &(Y3*Z4-Y4*Z3)*(-X2*Z3+Z2*X3)*AUX2-
00262      &2*(-X2*Z3+Z2*X3)*(X3*Z4-X4*Z3)*AUX4-
00263      &(-X2*Z3+Z2*X3)*(-X3*Y4+X4*Y3)*AUX5+
00264      &(Y3*Z4-Y4*Z3)*(X2*Y3-Y2*X3)*AUX7-
00265      &(X3*Z4-X4*Z3)*(X2*Y3-Y2*X3)*AUX5-
00266      &2*(X2*Y3-Y2*X3)*(-X3*Y4+X4*Y3)*AUX6)*COEF
00267 !
00268       T(IELEM,3) = ((-Y2*Z4+Z2*Y4)**2*AUX1-
00269      &(-Y2*Z4+Z2*Y4)*(-X2*Z4+Z2*X4)*AUX2-
00270      &(-Y2*Z4+Z2*Y4)*(X2*Y4-Y2*X4)*AUX7+
00271      &(-X2*Z4+Z2*X4)**2*AUX4+(-X2*Z4+Z2*X4)*(X2*Y4-Y2*X4)*AUX5+
00272      &(X2*Y4-Y2*X4)**2*AUX6)*2*COEF
00273 !
00274       XM(IELEM,6) = (-2*(-Y2*Z3+Z2*Y3)*(-Y2*Z4+Z2*Y4)*AUX1+
00275      &(-Y2*Z3+Z2*Y3)*(-X2*Z4+Z2*X4)*AUX2+
00276      &(-Y2*Z3+Z2*Y3)*(X2*Y4-Y2*X4)*AUX7+
00277      &(-Y2*Z4+Z2*Y4)*(-X2*Z3+Z2*X3)*AUX2-
00278      &2*(-X2*Z3+Z2*X3)*(-X2*Z4+Z2*X4)*AUX4-
00279      &(-X2*Z3+Z2*X3)*(X2*Y4-Y2*X4)*AUX5+
00280      &(-Y2*Z4+Z2*Y4)*(X2*Y3-Y2*X3)*AUX7-
00281      &(-X2*Z4+Z2*X4)*(X2*Y3-Y2*X3)*AUX5-
00282      &2*(X2*Y3-Y2*X3)*(X2*Y4-Y2*X4)*AUX6)*COEF
00283 !
00284       T(IELEM,4) = ((-Y2*Z3+Z2*Y3)**2*AUX1-
00285      &(-Y2*Z3+Z2*Y3)*(-X2*Z3+Z2*X3)*AUX2-
00286      &(-Y2*Z3+Z2*Y3)*(X2*Y3-Y2*X3)*AUX7
00287      &+(-X2*Z3+Z2*X3)**2*AUX4+(-X2*Z3+Z2*X3)*(X2*Y3-Y2*X3)*AUX5+
00288      &(X2*Y3-Y2*X3)**2*AUX6)*2*COEF
00289 !
00290 !
00291 !-----------------------------------------------------------------------
00292 !
00293       ENDDO ! IELEM
00294 !
00295 !---------------------------------------------------------------
00296 !
00297       ELSE IF((SU%ELM.EQ.30.AND.SV%ELM.EQ.30.AND.SW%ELM.EQ.30).OR.
00298      &        (SU%ELM.EQ.50.AND.SV%ELM.EQ.50.AND.SW%ELM.EQ.50)    ) THEN
00299 !
00300 !   P0 DISCRETISATION OF DIFFUSION COEFFICIENTS
00301 !
00302 !   LOOP ON THE TETRAHEDRONS
00303 !
00304       DO IELEM=1,NELEM
00305 !
00306       I1=IKLE(IELEM,1)
00307       I2=IKLE(IELEM,2)
00308       I3=IKLE(IELEM,3)
00309       I4=IKLE(IELEM,4)
00310 !
00311 !-----------------------------------------------------------------------
00312 !
00313       X2=X(I2)-X(I1)
00314       Y2=Y(I2)-Y(I1)
00315       Z2=Z(I2)-Z(I1)
00316       X3=X(I3)-X(I1)
00317       Y3=Y(I3)-Y(I1)
00318       Z3=Z(I3)-Z(I1)
00319       X4=X(I4)-X(I1)
00320       Y4=Y(I4)-Y(I1)
00321       Z4=Z(I4)-Z(I1)
00322 !
00323 !-----------------------------------------------------------------------
00324 !
00325       U1 = U(IELEM)
00326       U2 = U1
00327       U3 = U1
00328       U4 = U1
00329       V1 = V(IELEM)
00330       V2 = V1
00331       V3 = V1
00332       V4 = V1
00333       W1 = W(IELEM)
00334       W2 = W1
00335       W3 = W1
00336       W4 = W1
00337 !
00338       XJAC = X2*(Y3*Z4-Y4*Z3)+Y2*(X4*Z3-X3*Z4)+Z2*(X3*Y4-X4*Y3)
00339 !
00340       COEF = SUR120/MAX(XJAC,1.D-8)
00341 !
00342       A1 = -Y3*Z4+Y4*Z3+Y2*Z4-Z2*Y4-Y2*Z3+Z2*Y3
00343       A2 = -X3*Z4+X4*Z3+X2*Z4-Z2*X4-X2*Z3+Z2*X3
00344       A3 = -X3*Y4+X4*Y3+X2*Y4-Y2*X4-X2*Y3+Y2*X3
00345 !
00346 !     NOTE JMH : SIMPLIFICATIONS TO BE DONE HERE !!!!!!!!!!!!!!
00347 !
00348       AUX1 = U3*U2+U1*U3+U1*U2+U4**2+U1*U4+U4*U2+U3**2+U2**2+U1**2+U3*U4
00349 !
00350       AUX2 = V1*U4+2*V1*U1+V1*U2+V3*U1+V3*U2+V1*U3+V2*U1+V2*U3
00351      &      +V4*U1+2*V2*U2+2*V3*U3+V4*U2+V2*U4+V4*U3+V3*U4+2*V4*U4
00352 !
00353       AUX4 = V1**2+V1*V3+V3**2+V2**2+V3*V2+V1*V2+V4**2+V1*V4+V3*V4+V2*V4
00354       AUX5 = V3*W2+V3*W1+V1*W2+2*V1*W1+V2*W3+V2*W1+V1*W3+2*V3*W3+2*V2*W2
00355      &+V4*W1+V4*W3+V4*W2+2*V4*W4+V3*W4+V2*W4+V1*W4
00356       AUX6 = W2**2+W3**2+W2*W3+W1**2+W1*W3+W4**2+W1*W2+W1*W4+W4*W2+W4*W3
00357       AUX7 = 2*U2*W2+2*U3*W3+U3*W2+U3*W1+U1*W2+2*U1*W1+U2*W3+U2*W1+
00358      &U1*W3+U4*W2+U4*W1+2*U4*W4+U1*W4+U2*W4+U4*W3+U3*W4
00359 !
00360       T(IELEM,1)= (A1**2*AUX1-A1*A2*AUX2+A1*A3*AUX7+A2**2*AUX4-A2*
00361      &A3*AUX5+A3**2*AUX6)*2*COEF
00362 !
00363       XM(IELEM,1) = (2*(Y3*Z4-Y4*Z3)*A1*AUX1-
00364      &(Y3*Z4-Y4*Z3)*A2*AUX2+
00365      &(Y3*Z4-Y4*Z3)*A3*AUX7-
00366      &(X3*Z4-X4*Z3)*A1*AUX2+
00367      &2*(X3*Z4-X4*Z3)*A2*AUX4-
00368      &(X3*Z4-X4*Z3)*A3*AUX5-
00369      &(-X3*Y4+X4*Y3)*A1*AUX7+
00370      &(-X3*Y4+X4*Y3)*A2*AUX5-
00371      &2*(-X3*Y4+X4*Y3)*A3*AUX6)*COEF
00372 !
00373       XM(IELEM,2) = (2*(-Y2*Z4+Z2*Y4)*
00374      &A1*AUX1-(-Y2*Z4+Z2*Y4)*A2*AUX2+(-Y2*Z4+Z2*Y4)*A3*AUX7-
00375      &(-X2*Z4+Z2*X4)*A1*AUX2+2*(-X2*Z4+Z2*X4)*A2*AUX4-
00376      &(-X2*Z4+Z2*X4)*A3*AUX5-(X2*Y4-Y2*X4)*A1*AUX7+
00377      &(X2*Y4-Y2*X4)*A2*AUX5-2*(X2*Y4-Y2*X4)*A3*AUX6)*COEF
00378 !
00379       XM(IELEM,3) = (-2*(-Y2*Z3+Z2*Y3)*A1*AUX1+(-Y2*Z3+Z2*Y3)*A2*AUX2-
00380      &(-Y2*Z3+Z2*Y3)*A3*AUX7+(-X2*Z3+Z2*X3)*A1*AUX2-
00381      &2*(-X2*Z3+Z2*X3)*A2*AUX4+(-X2*Z3+Z2*X3)*A3*AUX5+
00382      &(X2*Y3-Y2*X3)*A1*AUX7-(X2*Y3-Y2*X3)*A2*AUX5+
00383      &2*(X2*Y3-Y2*X3)*A3*AUX6)*COEF
00384 !
00385       T(IELEM,2) =((Y3*Z4-Y4*Z3)**2*AUX1-
00386      &(Y3*Z4-Y4*Z3)*(X3*Z4-X4*Z3)*AUX2
00387      &-(Y3*Z4-Y4*Z3)*(-X3*Y4+X4*Y3)*AUX7+
00388      &(X3*Z4-X4*Z3)**2*AUX4+
00389      &(X3*Z4-X4*Z3)*(-X3*Y4+X4*Y3)*AUX5+
00390      &(-X3*Y4+X4*Y3)**2*AUX6)*2*COEF
00391 !
00392       XM(IELEM,4) =  (2*(-Y2*Z4+Z2*Y4)*(Y3*Z4-Y4*Z3)*AUX1-
00393      &(-Y2*Z4+Z2*Y4)*(X3*Z4-X4*Z3)*AUX2-
00394      &(-Y2*Z4+Z2*Y4)*(-X3*Y4+X4*Y3)*AUX7
00395      &-(Y3*Z4-Y4*Z3)*(-X2*Z4+Z2*X4)*AUX2+
00396      &2*(-X2*Z4+Z2*X4)*(X3*Z4-X4*Z3)*AUX4+
00397      &(-X2*Z4+Z2*X4)*(-X3*Y4+X4*Y3)*AUX5-
00398      &(Y3*Z4-Y4*Z3)*(X2*Y4-Y2*X4)*AUX7+
00399      &(X3*Z4-X4*Z3)*(X2*Y4-Y2*X4)*AUX5+
00400      &2*(X2*Y4-Y2*X4)*(-X3*Y4+X4*Y3)*AUX6)*COEF
00401 !
00402       XM(IELEM,5) = (-2*(-Y2*Z3+Z2*Y3)*(Y3*Z4-Y4*Z3)*AUX1+
00403      &(-Y2*Z3+Z2*Y3)*(X3*Z4-X4*Z3)*AUX2+
00404      &(-Y2*Z3+Z2*Y3)*(-X3*Y4+X4*Y3)*AUX7+
00405      &(Y3*Z4-Y4*Z3)*(-X2*Z3+Z2*X3)*AUX2-
00406      &2*(-X2*Z3+Z2*X3)*(X3*Z4-X4*Z3)*AUX4-
00407      &(-X2*Z3+Z2*X3)*(-X3*Y4+X4*Y3)*AUX5+
00408      &(Y3*Z4-Y4*Z3)*(X2*Y3-Y2*X3)*AUX7-
00409      &(X3*Z4-X4*Z3)*(X2*Y3-Y2*X3)*AUX5-
00410      &2*(X2*Y3-Y2*X3)*(-X3*Y4+X4*Y3)*AUX6)*COEF
00411 !
00412       T(IELEM,3) = ((-Y2*Z4+Z2*Y4)**2*AUX1-
00413      &(-Y2*Z4+Z2*Y4)*(-X2*Z4+Z2*X4)*AUX2-
00414      &(-Y2*Z4+Z2*Y4)*(X2*Y4-Y2*X4)*AUX7+
00415      &(-X2*Z4+Z2*X4)**2*AUX4+(-X2*Z4+Z2*X4)*(X2*Y4-Y2*X4)*AUX5+
00416      &(X2*Y4-Y2*X4)**2*AUX6)*2*COEF
00417 !
00418       XM(IELEM,6) = (-2*(-Y2*Z3+Z2*Y3)*(-Y2*Z4+Z2*Y4)*AUX1+
00419      &(-Y2*Z3+Z2*Y3)*(-X2*Z4+Z2*X4)*AUX2+
00420      &(-Y2*Z3+Z2*Y3)*(X2*Y4-Y2*X4)*AUX7+
00421      &(-Y2*Z4+Z2*Y4)*(-X2*Z3+Z2*X3)*AUX2-
00422      &2*(-X2*Z3+Z2*X3)*(-X2*Z4+Z2*X4)*AUX4-
00423      &(-X2*Z3+Z2*X3)*(X2*Y4-Y2*X4)*AUX5+
00424      &(-Y2*Z4+Z2*Y4)*(X2*Y3-Y2*X3)*AUX7-
00425      &(-X2*Z4+Z2*X4)*(X2*Y3-Y2*X3)*AUX5-
00426      &2*(X2*Y3-Y2*X3)*(X2*Y4-Y2*X4)*AUX6)*COEF
00427 !
00428       T(IELEM,4) = ((-Y2*Z3+Z2*Y3)**2*AUX1-
00429      &(-Y2*Z3+Z2*Y3)*(-X2*Z3+Z2*X3)*AUX2-
00430      &(-Y2*Z3+Z2*Y3)*(X2*Y3-Y2*X3)*AUX7
00431      &+(-X2*Z3+Z2*X3)**2*AUX4+(-X2*Z3+Z2*X3)*(X2*Y3-Y2*X3)*AUX5+
00432      &(X2*Y3-Y2*X3)**2*AUX6)*2*COEF
00433 !
00434 !-----------------------------------------------------------------------
00435 !
00436       ENDDO ! IELEM
00437 !
00438 !---------------------------------------------------------------
00439       ELSE
00440 !
00441         IF (LNG.EQ.1) WRITE(LU,1000) SU%ELM,SV%ELM,SW%ELM
00442         IF (LNG.EQ.2) WRITE(LU,1001) SU%ELM,SV%ELM,SW%ELM
00443 1000    FORMAT(1X,'MT04TT (BIEF) : MAUVAIS TYPE DE U,V OU W : ',
00444      &  I6,1X,I6,1X,I6)
00445 1001    FORMAT(1X,'MT04TT (BIEF) : WRONG TYPE OF U,V OR W: ',
00446      &  I6,1X,I6,1X,I6)
00447         CALL PLANTE(1)
00448         STOP
00449 !
00450       ENDIF
00451 !
00452 !     ELSEIF(FORMUL(1:7).EQ.'MAUGUG1') THEN
00453 !
00454 !
00455 !
00456       ELSE
00457         IF (LNG.EQ.1) WRITE(LU,4000) FORMUL
00458         IF (LNG.EQ.2) WRITE(LU,4001) FORMUL
00459 4000    FORMAT(1X,'MT04TT (BIEF) : FORMULE NON PREVUE : ',A16)
00460 4001    FORMAT(1X,'MT04TT (BIEF) : UNEXPECTED FORMULA: ',A16)
00461         CALL PLANTE(1)
00462         STOP
00463       ENDIF
00464 !
00465 !-----------------------------------------------------------------------
00466 !
00467       RETURN
00468       END

Generated on Fri Aug 31 2013 18:12:58 by S.E.Bourban (HRW) using doxygen 1.7.0