mt99bb.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\utils\bief\mt99bb.f
00002 !
00070                      SUBROUTINE MT99BB
00071 !                    *****************
00072 !
00073      &( A11 , A12 , A13 , A14 ,
00074      &  A21 , A22 , A23 , A24 ,
00075      &  A31 , A32 , A33 , A34 ,
00076      &  A41 , A42 , A43 , A44 ,
00077      &  XMUL,SF,F,XEL,YEL,
00078      &  SURFAC,IKLE1,IKLE2,IKLE3,NELEM,NELMAX,FORMUL,TDIA,TEXT)
00079 !
00080 !***********************************************************************
00081 ! BIEF   V6P1                                   21/08/2010
00082 !***********************************************************************
00083 !
00084 !
00085 !
00086 !
00087 !
00088 !
00089 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00090 !| A11            |<--| ELEMENTS OF MATRIX
00091 !| A12            |<--| ELEMENTS OF MATRIX
00092 !| A13            |<--| ELEMENTS OF MATRIX
00093 !| A14            |<--| ELEMENTS OF MATRIX
00094 !| A21            |<--| ELEMENTS OF MATRIX
00095 !| A22            |<--| ELEMENTS OF MATRIX
00096 !| A23            |<--| ELEMENTS OF MATRIX
00097 !| A24            |<--| ELEMENTS OF MATRIX
00098 !| A31            |<--| ELEMENTS OF MATRIX
00099 !| A32            |<--| ELEMENTS OF MATRIX
00100 !| A33            |<--| ELEMENTS OF MATRIX
00101 !| A34            |<--| ELEMENTS OF MATRIX
00102 !| A41            |<--| ELEMENTS OF MATRIX
00103 !| A42            |<--| ELEMENTS OF MATRIX
00104 !| A43            |<--| ELEMENTS OF MATRIX
00105 !| A44            |<--| ELEMENTS OF MATRIX
00106 !| FORMUL         |-->| FORMULA DESCRIBING THE RESULTING MATRIX
00107 !| IKLE1          |-->| FIRST POINTS OF TRIANGLES
00108 !| IKLE2          |-->| SECOND POINTS OF TRIANGLES
00109 !| IKLE3          |-->| THIRD POINTS OF TRIANGLES
00110 !| NELEM          |-->| NUMBER OF ELEMENTS
00111 !| NELMAX         |-->| MAXIMUM NUMBER OF ELEMENTS
00112 !| SURFAC         |-->| AREA OF TRIANGLES
00113 !| TDIA           |<--| TYPE OF DIAGONAL
00114 !| TEXT           |<--| TYPE OF OFF-DIAGONAL TERMS
00115 !| XMUL           |-->| MULTIPLICATION FACTOR
00116 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00117 !
00118       USE BIEF, EX_MT99BB => MT99BB
00119 !
00120       IMPLICIT NONE
00121       INTEGER LNG,LU
00122       COMMON/INFO/LNG,LU
00123 !
00124 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00125 !
00126       INTEGER, INTENT(IN) :: NELEM,NELMAX
00127       INTEGER, INTENT(IN) :: IKLE1(NELMAX),IKLE2(NELMAX),IKLE3(NELMAX)
00128 !
00129       CHARACTER(LEN=1), INTENT(INOUT) :: TDIA,TEXT
00130       CHARACTER(LEN=16), INTENT(IN) :: FORMUL
00131 !
00132       DOUBLE PRECISION, INTENT(INOUT) :: A11(*),A12(*),A13(*),A14(*)
00133       DOUBLE PRECISION, INTENT(INOUT) :: A21(*),A22(*),A23(*),A24(*)
00134       DOUBLE PRECISION, INTENT(INOUT) :: A31(*),A32(*),A33(*),A34(*)
00135       DOUBLE PRECISION, INTENT(INOUT) :: A41(*),A42(*),A43(*),A44(*)
00136 !
00137       DOUBLE PRECISION, INTENT(IN) :: XMUL
00138       DOUBLE PRECISION, INTENT(IN) :: F(*)
00139 !
00140 !     STRUCTURE OF F
00141 !
00142       TYPE(BIEF_OBJ), INTENT(IN) :: SF
00143 !
00144       DOUBLE PRECISION, INTENT(IN) :: XEL(NELMAX,3),YEL(NELMAX,3)
00145       DOUBLE PRECISION, INTENT(IN) :: SURFAC(NELMAX)
00146 !
00147 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00148 !
00149 !     DECLARATIONS SPECIFIC TO THIS SUBROUTINE
00150 !
00151       INTEGER IELEM
00152       DOUBLE PRECISION F1,F2,F3,X2,X3,Y2,Y3,S
00153 !
00154 !=======================================================================
00155 !
00156 !     ONLY ONE CASE IMPLEMENTED FOR NOW: LINEAR F
00157 !
00158       IF(SF%ELM.NE.11) THEN
00159 !
00160         IF (LNG.EQ.1) WRITE(LU,2000) SF%ELM
00161         IF (LNG.EQ.2) WRITE(LU,2001) SF%ELM
00162 2000    FORMAT(1X,'MT99BB (BIEF) : TYPE DE F : ',I6,' NON PREVU')
00163 2001    FORMAT(1X,'MT99BB (BIEF) : TYPE OF F:',I6,' NOT IMPLEMENTED')
00164         CALL PLANTE(0)
00165         STOP
00166 !
00167       ENDIF
00168 !
00169 !-----------------------------------------------------------------------
00170 !
00171       IF(FORMUL(8:16).EQ.'     0XX0') THEN
00172 !
00173       TDIA='Q'
00174       TEXT='Q'
00175 !
00176 !   LOOP ON THE ELEMENTS
00177 !
00178       DO IELEM = 1 , NELEM
00179 !
00180       S = SURFAC(IELEM)/XMUL
00181 !
00182 !   INITIALISES THE GEOMETRICAL VARIABLES
00183 !
00184       Y2 = YEL(IELEM,2)
00185       Y3 = YEL(IELEM,3)
00186 !
00187       F1 = F(IKLE1(IELEM))
00188       F2 = F(IKLE2(IELEM))
00189       F3 = F(IKLE3(IELEM))
00190 !
00191       A11(IELEM) = (Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00192      & (7*Y2*F1+3*Y2*F2+2*Y2*F3
00193      & -7*Y3*F1-2*Y3*F2-3*Y3*F3)/S/144
00194 !
00195       A12(IELEM) = (Y2*F1-Y3*F1+Y3*F2-Y2*F3)*(Y2+Y3)*
00196      & (7*F1+4*F2+F3)/S/432
00197 !
00198       A13(IELEM) = -(Y2*F1-Y3*F1+Y3*F2-Y2*F3)*(Y2+Y3)*
00199      & (4*F3+7*F1+F2)/S/432
00200 !
00201       A14(IELEM) = -(Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00202      & (7*Y2*F1+4*Y2*F2+Y2*F3-4*Y3*F3-7*Y3*F1-Y3*F2)/S/144
00203 !
00204       A21(IELEM) = (Y2*F1-Y3*F1+Y3*F2-Y2*F3)*(2*Y2-Y3)*
00205      &  (4*F1+7*F2+F3)/S/432
00206 !
00207       A22(IELEM) = (Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00208      &  (Y2*F1-Y2*F3+2*Y3*F1+7*Y3*F2+3*Y3*F3)/S/144
00209 !
00210       A23(IELEM) = -(Y2*F1-Y3*F1+Y3*F2-Y2*F3)*(2*Y2-Y3)*
00211      &  (7*F2+4*F3+F1)/S/432
00212 !
00213       A24(IELEM) = -(Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00214      &  (3*Y2*F1-3*Y2*F3+7*Y3*F2+4*Y3*F3+Y3*F1)/S/144
00215 !
00216       A31(IELEM) = (Y2*F1-Y3*F1+Y3*F2-Y2*F3)*(Y2-2*Y3)*
00217      &  (7*F3+4*F1+F2)/S/432
00218 !
00219       A32(IELEM) = -(Y2*F1-Y3*F1+Y3*F2-Y2*F3)*(Y2-2*Y3)*
00220      &  (4*F2+F1+7*F3)/S/432
00221 !
00222       A33(IELEM) = -(Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00223      &  (3*Y2*F2+2*Y2*F1+7*Y2*F3-Y3*F2+Y3*F1)/S/144
00224 !
00225       A34(IELEM) = (Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00226      &  (-3*Y3*F2+3*Y3*F1+4*Y2*F2+Y2*F1+7*Y2*F3)/S/144
00227 !
00228       A41(IELEM) = (Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00229      & (5*Y2*F1+4*Y2*F2+3*Y2*F3-5*Y3*F1-3*Y3*F2-4*Y3*F3)
00230      & /S/144
00231 !
00232       A42(IELEM) = (Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00233      &  (Y2*F1-Y2*F3+3*Y3*F1+5*Y3*F2+4*Y3*F3)/S/144
00234 !
00235       A43(IELEM) = -(Y2*F1-Y3*F1+Y3*F2-Y2*F3)*
00236      &  (4*Y2*F2+5*Y2*F3+3*Y2*F1-Y3*F2+Y3*F1)/S/144
00237 !
00238       A44(IELEM) = -(Y2*F1-Y3*F1+Y3*F2-Y2*F3)**2/S/48
00239 !
00240 !
00241 !
00242 !   END OF THE LOOP ON THE ELEMENTS
00243 !
00244       ENDDO ! IELEM
00245 !
00246 !-----------------------------------------------------------------------
00247 !
00248       ELSEIF(FORMUL(8:16).EQ.'     0YY0') THEN
00249 !
00250       TDIA='Q'
00251       TEXT='Q'
00252 !
00253 !   LOOP ON THE ELEMENTS
00254 !
00255       DO IELEM = 1 , NELEM
00256 !
00257       S = SURFAC(IELEM)/XMUL
00258 !
00259 !   INITIALISES THE GEOMETRICAL VARIABLES
00260 !
00261       X2 = XEL(IELEM,2)
00262       X3 = XEL(IELEM,3)
00263 !
00264       F1 = F(IKLE1(IELEM))
00265       F2 = F(IKLE2(IELEM))
00266       F3 = F(IKLE3(IELEM))
00267 !
00268 !  ELEMENTS OUTSIDE OF THE DIAGONAL
00269 !
00270       A11(IELEM) = -(X2*F1-X3*F1+X3*F2-X2*F3)*(-7*X2*F1-
00271      & 3*X2*F2-2*X2*F3+7*X3*F1+2*X3*F2+3*X3*F3)/S/144
00272       A12(IELEM) = (X2*F1-X3*F1+X3*F2-X2*F3)*(X2+X3)*
00273      & (7*F1+4*F2+F3)/S/432
00274       A13(IELEM) = -(X2*F1-X3*F1+X3*F2-X2*F3)*(X2+X3)*
00275      & (4*F3+7*F1+F2)/S/432
00276       A14(IELEM) = (X2*F1-X3*F1+X3*F2-X2*F3)*(-7*X2*F1-
00277      & 4*X2*F2-X2*F3+4*X3*F3+7*X3*F1+X3*F2)/S/144
00278       A21(IELEM) = -(X2*F1-X3*F1+X3*F2-X2*F3)*(-2*X2+X3)*
00279      & (4*F1+7*F2+F3)/S/432
00280       A22(IELEM) = (X2*F1-X3*F1+X3*F2-X2*F3)*(X2*F1-X2*F3+2*
00281      & X3*F1+7*X3*F2+3*X3*F3)/S/144
00282       A23(IELEM) = (X2*F1-X3*F1+X3*F2-X2*F3)*(-2*X2+X3)*
00283      & (7*F2+4*F3+F1)/S/432
00284       A24(IELEM) = -(X2*F1-X3*F1+X3*F2-X2*F3)*(3*X2*F1-3*X2*F3+
00285      & 7*X3*F2+4*X3*F3+X3*F1)/S/144
00286       A31(IELEM) = -(X2*F1-X3*F1+X3*F2-X2*F3)*(-X2+2*X3)*
00287      & (7*F3+4*F1+F2)/S/432
00288       A32(IELEM) = (X2*F1-X3*F1+X3*F2-X2*F3)*(-X2+2*X3)*
00289      & (4*F2+F1+7*F3)/S/432
00290       A33(IELEM) = (X2*F1-X3*F1+X3*F2-X2*F3)*(-3*X2*F2-2*X2*F1-
00291      & 7*X2*F3+X3*F2-X3*F1)/S/144
00292       A34(IELEM) = -(X2*F1-X3*F1+X3*F2-X2*F3)*(3*X3*F2-3*X3*F1-
00293      & 4*X2*F2-X2*F1-7*X2*F3)/S/144
00294       A41(IELEM) = -(X2*F1-X3*F1+X3*F2-X2*F3)*(-5*X2*F1-4*X2*F2-
00295      & 3*X2*F3+5*X3*F1+3*X3*F2+4*X3*F3)/S/144
00296       A42(IELEM) = (X2*F1-X3*F1+X3*F2-X2*F3)*(X2*F1-X2*F3+3*X3*
00297      & F1+5*X3*F2+4*X3*F3)/S/144
00298       A43(IELEM) = (X2*F1-X3*F1+X3*F2-X2*F3)*(-4*X2*F2-5*X2*F3-
00299      & 3*X2*F1+X3*F2-X3*F1)/S/144
00300       A44(IELEM) = -(X2*F1-X3*F1+X3*F2-X2*F3)**2/S/48
00301 !
00302 !   END OF THE LOOP ON THE ELEMENTS
00303 !
00304       ENDDO ! IELEM
00305 !
00306 !-----------------------------------------------------------------------
00307 !
00308       ELSEIF(FORMUL(8:16).EQ.'     XX00') THEN
00309 !
00310       TDIA='Q'
00311       TEXT='Q'
00312 !     SYMMETRY NOT TAKEN INTO ACCOUNT
00313 !     TEXT='S'
00314 !
00315 !   LOOP ON THE ELEMENTS
00316 !
00317       DO IELEM = 1 , NELEM
00318 !
00319       S = SURFAC(IELEM)/XMUL
00320 !
00321 !   INITIALISES THE GEOMETRICAL VARIABLES
00322 !
00323       Y2 = YEL(IELEM,2)
00324       Y3 = YEL(IELEM,3)
00325 !
00326       F1 = F(IKLE1(IELEM))
00327       F2 = F(IKLE2(IELEM))
00328       F3 = F(IKLE3(IELEM))
00329 !
00330 !
00331       A11(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/36
00332       A12(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/144
00333       A13(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/144
00334       A14(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/72
00335       A21(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/144
00336       A22(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/36
00337       A23(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/144
00338       A24(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/72
00339       A31(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/144
00340       A32(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/144
00341       A33(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/36
00342       A34(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/72
00343       A41(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/72
00344       A42(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/72
00345       A43(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/72
00346       A44(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)**2/S/24
00347 !
00348 !
00349 !
00350 !   END OF THE LOOP ON THE ELEMENTS
00351 !
00352       ENDDO ! IELEM
00353 !
00354 !-----------------------------------------------------------------------
00355 !
00356       ELSEIF(FORMUL(8:16).EQ.'     0X0Y') THEN
00357 !
00358       TDIA='Q'
00359       TEXT='Q'
00360 !
00361 !   LOOP ON THE ELEMENTS
00362 !
00363       DO IELEM = 1 , NELEM
00364 !
00365       S = SURFAC(IELEM)/XMUL
00366 !
00367 !   INITIALISES THE GEOMETRICAL VARIABLES
00368 !
00369       Y2 = YEL(IELEM,2)
00370       Y3 = YEL(IELEM,3)
00371       X2 = XEL(IELEM,2)
00372       X3 = XEL(IELEM,3)
00373 !
00374       F1 = F(IKLE1(IELEM))
00375       F2 = F(IKLE2(IELEM))
00376       F3 = F(IKLE3(IELEM))
00377 !
00378       A11(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00379      & (-7*X2*F1-3*X2*F2-2*X2*F3+7*X3*F1+2*X3*F2+3*X3*F3)
00380      & /S/144
00381 !
00382       A12(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(-2*X2+X3)*
00383      & (4*F1+7*F2+F3)/S/432
00384 !
00385       A13(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(-X2+2*X3)*
00386      & (7*F3+4*F1+F2)/S/432
00387 !
00388       A14(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(-5*X2*F1-4*X2*F2-
00389      & 3*X2*F3+5*X3*F1+3*X3*F2+4*X3*F3)/S/144
00390 !
00391       A21(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(X2+X3)*
00392      & (7*F1+4*F2+F3)/S/432
00393 !
00394       A22(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(X2*F1-X2*F3+2*X3*F1+
00395      & 7*X3*F2+3*X3*F3)/S/144
00396 !
00397       A23(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(-X2+2*X3)*
00398      & (4*F2+F1+7*F3)/S/432
00399 !
00400       A24(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(X2*F1-X2*F3+3*X3*F1+
00401      & 5*X3*F2+4*X3*F3)/S/144
00402 !
00403       A31(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(X2+X3)*
00404      & (4*F3+7*F1+F2)/S/432
00405 !
00406       A32(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(-2*X2+X3)*
00407      & (7*F2+4*F3+F1)/S/432
00408 !
00409       A33(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(3*X2*F2+2*X2*F1+
00410      & 7*X2*F3-X3*F2+X3*F1)/S/144
00411 !
00412       A34(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(4*X2*F2+5*X2*F3+
00413      & 3*X2*F1-X3*F2+X3*F1)/S/144
00414 !
00415       A41(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(-7*X2*F1-4*X2*F2-
00416      & X2*F3+4*X3*F3+7*X3*F1+X3*F2)/S/144
00417 !
00418       A42(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(3*X2*F1-3*X2*F3+
00419      & 7*X3*F2+4*X3*F3+X3*F1)/S/144
00420 !
00421       A43(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(-3*X3*F2+3*X3*F1+
00422      & 4*X2*F2+X2*F1+7*X2*F3)/S/144
00423 !
00424       A44(IELEM) = (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*(-X2*F1+X2*F3-X3*F2+
00425      & X3*F1)/S/48
00426 !
00427 !
00428 !   END OF THE LOOP ON THE ELEMENTS
00429 !
00430       ENDDO ! IELEM
00431 !
00432 !-----------------------------------------------------------------------
00433 !
00434       ELSEIF(FORMUL(8:16).EQ.'     XY00') THEN
00435 !
00436       TDIA='Q'
00437       TEXT='Q'
00438 !     SYMMETRY NOT TAKEN INTO ACCOUNT
00439 !     TEXT='S'
00440 !
00441 !   LOOP ON THE ELEMENTS
00442 !
00443       DO IELEM = 1 , NELEM
00444 !
00445       S =  SURFAC(IELEM)
00446 !
00447 !   INITIALISES THE GEOMETRICAL VARIABLES
00448 !
00449       Y2 = YEL(IELEM,2)
00450       Y3 = YEL(IELEM,3)
00451       X2 = XEL(IELEM,2)
00452       X3 = XEL(IELEM,3)
00453 !
00454       F1 = F(IKLE1(IELEM))
00455       F2 = F(IKLE2(IELEM))
00456       F3 = F(IKLE3(IELEM))
00457 !
00458       A11(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00459      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/36
00460 !
00461       A12(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00462      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/144
00463 !
00464       A13(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00465      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/144
00466 !
00467       A14(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00468      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/72
00469 !
00470       A21(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00471      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/144
00472 !
00473       A22(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00474      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/36
00475 !
00476       A23(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00477      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/144
00478 !
00479       A24(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00480      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/72
00481 !
00482       A31(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00483      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/144
00484 !
00485       A32(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00486      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/144
00487 !
00488       A33(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00489      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/36
00490 !
00491       A34(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00492      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/72
00493 !
00494       A41(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00495      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/72
00496 !
00497       A42(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00498      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/72
00499 !
00500       A43(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00501      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/72
00502 !
00503       A44(IELEM) = -(-Y2*F1+Y3*F1-Y3*F2+Y2*F3)*
00504      & (-X2*F1+X3*F1-X3*F2+X2*F3)/S/24
00505 !
00506 !   END OF THE LOOP ON THE ELEMENTS
00507 !
00508       ENDDO ! IELEM
00509 !
00510 !-----------------------------------------------------------------------
00511 !
00512       ELSEIF(FORMUL(8:16).EQ.'     YY00') THEN
00513 !
00514       TDIA='Q'
00515       TEXT='Q'
00516 !     SYMMETRY NOT TAKEN INTO ACCOUNT
00517 !     TEXT='S'
00518 !
00519 !   LOOP ON THE ELEMENTS
00520 !
00521       DO IELEM = 1 , NELEM
00522 !
00523       S = SURFAC(IELEM)/XMUL
00524 !
00525 !   INITIALISES THE GEOMETRICAL VARIABLES
00526 !
00527       X2 = XEL(IELEM,2)
00528       X3 = XEL(IELEM,3)
00529 !
00530       F1 = F(IKLE1(IELEM))
00531       F2 = F(IKLE2(IELEM))
00532       F3 = F(IKLE3(IELEM))
00533 !
00534       A11(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/36
00535       A12(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/144
00536       A13(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/144
00537       A14(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/72
00538       A21(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/144
00539       A22(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/36
00540       A23(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/144
00541       A24(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/72
00542       A31(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/144
00543       A32(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/144
00544       A33(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/36
00545       A34(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/72
00546       A41(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/72
00547       A42(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/72
00548       A43(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/72
00549       A44(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)**2/S/24
00550 !
00551 !
00552 !   END OF THE LOOP ON THE ELEMENTS
00553 !
00554       ENDDO ! IELEM
00555 !
00556 !-----------------------------------------------------------------------
00557 !
00558       ELSEIF(FORMUL(8:16).EQ.'     0Y0X') THEN
00559 !
00560       TDIA='Q'
00561       TEXT='Q'
00562 !
00563 !   LOOP ON THE ELEMENTS
00564 !
00565       DO IELEM = 1 , NELEM
00566 !
00567       S = SURFAC(IELEM)/XMUL
00568 !
00569 !   INITIALISES THE GEOMETRICAL VARIABLES
00570 !
00571       Y2 = YEL(IELEM,2)
00572       Y3 = YEL(IELEM,3)
00573       X2 = XEL(IELEM,2)
00574       X3 = XEL(IELEM,3)
00575 !
00576       F1 = F(IKLE1(IELEM))
00577       F2 = F(IKLE2(IELEM))
00578       F3 = F(IKLE3(IELEM))
00579 !
00580       A11(IELEM) = -(-X2*F1+X3*F1-X3*F2+X2*F3)*(-7*Y2*F1-
00581      & 3*Y2*F2-2*Y2*F3+7*Y3*F1+2*Y3*F2+3*Y3*F3)/S/144
00582 !
00583       A12(IELEM) = -(-X2*F1+X3*F1-X3*F2+X2*F3)*
00584      & (-2*Y2+Y3)*(4*F1+7*F2+F3)/S/432
00585 !
00586       A13(IELEM) = -(-Y2+2*Y3)*(-X2*F1+X3*F1-X3*F2+X2*F3)*
00587      & (7*F3+4*F1+F2)/S/432
00588 !
00589       A14(IELEM) = -(-X2*F1+X3*F1-X3*F2+X2*F3)*
00590      & (-5*Y2*F1-4*Y2*F2-3*Y2*F3+5*Y3*F1+3*Y3*F2+4*Y3*F3)/S/144
00591 !
00592       A21(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)*(Y2+Y3)*
00593      & (7*F1+4*F2+F3)/S/432
00594 !
00595       A22(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)*(Y2*F1-
00596      & Y2*F3+2*Y3*F1+7*Y3*F2+3*Y3*F3)/S/144
00597 !
00598       A23(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)*
00599      & (-Y2+2*Y3)*(4*F2+F1+7*F3)/S/432
00600 !
00601       A24(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)*
00602      & (Y2*F1-Y2*F3+3*Y3*F1+5*Y3*F2+4*Y3*F3)/S/144
00603 !
00604       A31(IELEM) = -(-X2*F1+X3*F1-X3*F2+X2*F3)*(Y2+Y3)*
00605      & (4*F3+7*F1+F2)/S/432
00606 !
00607       A32(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)*(-2*Y2+Y3)*
00608      & (7*F2+4*F3+F1)/S/432
00609 !
00610       A33(IELEM) = -(-X2*F1+X3*F1-X3*F2+X2*F3)*
00611      & (3*Y2*F2+2*Y2*F1+7*Y2*F3-Y3*F2+Y3*F1)/S/144
00612 !
00613       A34(IELEM) = -(-X2*F1+X3*F1-X3*F2+X2*F3)*
00614      & (4*Y2*F2+5*Y2*F3+3*Y2*F1-Y3*F2+Y3*F1)/S/144
00615 !
00616       A41(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)*(-7*Y2*F1-4*Y2*F2-
00617      & Y2*F3+4*Y3*F3+7*Y3*F1+Y3*F2)/S/144
00618 !
00619       A42(IELEM) = -(-X2*F1+X3*F1-X3*F2+X2*F3)*(3*Y2*F1-3*Y2*F3+
00620      & 7*Y3*F2+4*Y3*F3+Y3*F1)/S/144
00621 !
00622       A43(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)*(4*Y2*F2+Y2*F1+
00623      & 7*Y2*F3-3*Y3*F2+3*Y3*F1)/S/144
00624 !
00625       A44(IELEM) = (-X2*F1+X3*F1-X3*F2+X2*F3)*
00626      & (-Y2*F1+Y3*F1-Y3*F2+Y2*F3)/S/48
00627 !
00628 !
00629 !
00630 !   END OF THE LOOP ON THE ELEMENTS
00631 !
00632       ENDDO ! IELEM
00633 !
00634 !-----------------------------------------------------------------------
00635 !
00636       ELSEIF(FORMUL(8:16).EQ.'00XX+00YY') THEN
00637 !
00638       TDIA='Q'
00639       TEXT='Q'
00640 !     SYMMETRY NOT TAKEN INTO ACCOUNT
00641 !     TEXT='S'
00642 !
00643 !   LOOP ON THE ELEMENTS
00644 !
00645       DO IELEM = 1 , NELEM
00646 !
00647       S = SURFAC(IELEM)/XMUL
00648 !
00649 !   INITIALISES THE GEOMETRICAL VARIABLES
00650 !
00651       X2 = XEL(IELEM,2)
00652       X3 = XEL(IELEM,3)
00653       Y2 = YEL(IELEM,2)
00654       Y3 = YEL(IELEM,3)
00655 !
00656       F1 = F(IKLE1(IELEM))
00657       F2 = F(IKLE2(IELEM))
00658       F3 = F(IKLE3(IELEM))
00659 !
00660       A11(IELEM) = (-56*F2**2*X2*X3+25*F2*F3*X3**2-56*
00661      & F3**2*Y2*Y3-104*F1**2*X2*X3+37*F1*F2*Y3**2+37*F1*F2*X3**2+
00662      & 25*F2*F3*Y2**2+25*F2*F3*Y3**2-56*F2**2*Y2*Y3+73*F1*
00663      & F2*Y2**2+37*F1*F3*Y2**2-104*F1**2*Y2*Y3+73*F1*F3*Y3**2+
00664      & 37*F1*F3*X2**2+25*F2*F3*X2**2-56*F3**2*X2*X3+73*F1*F2*X2**2+
00665      & 73*F1*F3*X3**2+17*F3**2*Y2**2-40*F2*F3*Y2*Y3+65*F1**2*
00666      & X3**2+65*F1**2*X2**2-40*F2*F3*X2*X3+53*F3**2*Y3**2+
00667      & 17*F2**2*X3**2-88*F1*F3*Y2*Y3-88*F1*F3*X2*X3+17*F3**2*X2**2+
00668      & 53*F3**2*X3**2+53*F2**2*X2**2+53*F2**2*Y2**2+17*F2**2*Y3**2-
00669      & 88*F1*F2*Y2*Y3-88*F1*F2*X2*X3+65*F1**2*Y2**2+65*F1**2*Y3**2)
00670      & /S/648
00671 !
00672       A12(IELEM) = -(13*F1**2+17*F1*F2+5*F1*F3+F3**2+
00673      & 13*F2**2+5*F2*F3)*
00674      & (-2*Y2**2-Y2*Y3+Y3**2-2*X2**2-X2*X3+X3**2)/S/648
00675 !
00676       A13(IELEM) = (13*F1**2+5*F1*F2+17*F1*F3+13*F3**2+F2**2+5*F2*F3)*
00677      & (-Y2**2+Y2*Y3+2*Y3**2-X2**2+X2*X3+2*X3**2)/S/648
00678 !
00679       A14(IELEM) = -(-7*F2**2*X2*X3+5*F2*F3*X3**2-7*F3**2*Y2*Y3-13*
00680      & F1**2*X2*X3+5*F1*F2*Y3**2+5*F1*F2*X3**2+5*F2*F3*Y2**2+5*F2*F3*
00681      & Y3**2-7*F2**2*Y2*Y3+17*F1*F2*Y2**2+5*F1*F3*Y2**2-
00682      & 13*F1**2*Y2*Y3+
00683      & 17*F1*F3*Y3**2+5*F1*F3*X2**2+5*F2*F3*X2**2-7*F3**2*X2*X3+17*F1*
00684      & F2*X2**2+17*F1*F3*X3**2+F3**2*Y2**2-5*F2*F3*Y2*Y3+
00685      & 13*F1**2*X3**2+
00686      & 13*F1**2*X2**2-5*F2*F3*X2*X3+13*F3**2*Y3**2+F2**2*X3**2-
00687      & 11*F1*F3*Y2*Y3-11*F1*F3*X2*X3+F3**2*X2**2+13*F3**2*X3**2+
00688      & 13*F2**2*X2**2+13*F2**2*Y2**2+F2**2*Y3**2-11*F1*F2*Y2*Y3-
00689      & 11*F1*F2*X2*X3+13*F1**2*Y2**2+13*F1**2*Y3**2)/S/108
00690 !
00691       A22(IELEM) = (-26*F2**2*X2*X3+73*F2*F3*X3**2-50*F3**2*Y2*Y3+22*
00692      & F1**2*X2*X3+37*F1*F2*Y3**2+37*F1*F2*X3**2+22*F2*F3*Y2**2+
00693      & 73*F2*F3*Y3**2-26*F2**2*Y2*Y3+22*F1*F2*Y2**2+10*F1*F3*Y2**2+
00694      & 22*F1**2*Y2*Y3+25*F1*F3*Y3**2+10*F1*F3*X2**2+22*F2*F3*X2**2-
00695      & 50*F3**2*X2*X3+22*F1*F2*X2**2+25*F1*F3*X3**2+14*F3**2*Y2**2-
00696      & 58*F2*F3*Y2*Y3+17*F1**2*X3**2+14*F1**2*X2**2-58*F2*F3*X2*X3+
00697      & 53*F3**2*
00698      & Y3**2+65*F2**2*X3**2-10*F1*F3*Y2*Y3-10*F1*F3*X2*X3+
00699      & 14*F3**2*X2**2+
00700      & 53*F3**2*X3**2+26*F2**2*X2**2+26*F2**2*Y2**2+65*F2**2*Y3**2+
00701      & 14*F1*F2*Y2*Y3+14*F1*F2*X2*X3+14*F1**2*Y2**2+
00702      & 17*F1**2*Y3**2)/S/648
00703 !
00704       A23(IELEM) = (13*F3**2+17*F2*F3+5*F1*F3+13*F2**2+
00705      & F1**2+5*F1*F2)*
00706      & (2*Y2**2-5*Y2*Y3+2*Y3**2+2*X2**2-5*X2*X3+2*X3**2)/S/648
00707 !
00708       A24(IELEM) = -(-13*F2**2*X2*X3+17*F2*F3*X3**2-
00709      & 19*F3**2*Y2*Y3+5*F1**2*
00710      & X2*X3+5*F1*F2*Y3**2+5*F1*F2*X3**2+
00711      & 11*F2*F3*Y2**2+17*F2*F3*Y3**2-
00712      & 13*F2**2*Y2*Y3+11*F1*F2*Y2**2+5*F1*F3*Y2**2+5*F1**2*
00713      & Y2*Y3+5*F1*F3*
00714      & Y3**2+5*F1*F3*X2**2+11*F2*F3*X2**2-19*F3**2*X2*X3+
00715      & 11*F1*F2*X2**2+
00716      & 5*F1*F3*X3**2+7*F3**2*Y2**2-23*F2*F3*Y2*Y3+
00717      & F1**2*X3**2+7*F1**2*
00718      & X2**2-23*F2*F3*X2*X3+13*F3**2*Y3**2+13*F2**2*X3**2-
00719      & 5*F1*F3*Y2*Y3-
00720      & 5*F1*F3*X2*X3+7*F3**2*X2**2+13*F3**2*X3**2+13*F2**2*X2**2+
00721      & 13*F2**2*
00722      & Y2**2+13*F2**2*Y3**2+F1*F2*Y2*Y3+F1*F2*X2*X3+7*F1**2*
00723      & Y2**2+F1**2*Y3**2)/S/108
00724 !
00725       A33(IELEM) = (-50*F2**2*X2*X3+22*F2*F3*X3**2-26*F3**2*
00726      & Y2*Y3+22*F1**2*X2*X3+10*F1*F2*Y3**2+10*F1*F2*X3**2+73*F2*F3*
00727      & Y2**2+22*F2*F3*Y3**2-
00728      &  50*F2**2*Y2*Y3+25*F1*F2*Y2**2+37*F1*F3*Y2**2+
00729      & 22*F1**2*Y2*Y3+22*F1*
00730      &  F3*Y3**2+37*F1*F3*X2**2+73*F2*F3*X2**2-
00731      & 26*F3**2*X2*X3+25*F1*
00732      &  F2*X2**2+22*F1*F3*X3**2+65*F3**2*Y2**2-58*F2*F3*Y2*Y3+
00733      & 14*F1**2*X3**2+
00734      &  17*F1**2*X2**2-58*F2*F3*X2*X3+26*F3**2*Y3**2+14*F2**2*
00735      & X3**2+14*F1*
00736      &  F3*Y2*Y3+14*F1*F3*X2*X3+65*F3**2*X2**2+26*F3**2*X3**2+53*
00737      & F2**2*X2**2+
00738      &  53*F2**2*Y2**2+14*F2**2*Y3**2-10*F1*F2*Y2*Y3-
00739      & 10*F1*F2*X2*X3+17*
00740      &  F1**2*Y2**2+14*F1**2*Y3**2)/S/648
00741 !
00742       A34(IELEM) = -(-19*F2**2*X2*X3+11*F2*F3*X3**2-
00743      & 13*F3**2*Y2*Y3+5*F1**2
00744      &  *X2*X3+5*F1*F2*Y3**2+5*F1*F2*X3**2+17*F2*F3*Y2**2+
00745      & 11*F2*F3*Y3**2-
00746      &  19*F2**2*Y2*Y3+5*F1*F2*Y2**2+5*F1*F3*Y2**2+5*F1**2*
00747      & Y2*Y3+11*F1*
00748      &  F3*Y3**2+5*F1*F3*X2**2+17*F2*F3*X2**2-13*F3**2*X2*X3+
00749      & 5*F1*F2*X2**2+
00750      &  11*F1*F3*X3**2+13*F3**2*Y2**2-23*F2*F3*Y2*Y3+7*F1**2*X3**2+
00751      &  F1**2*X2**2-23*F2*F3*X2*X3+13*F3**2*Y3**2+7*F2**2*X3**2+
00752      & F1*F3*Y2*Y3+
00753      &  F1*F3*X2*X3+13*F3**2*X2**2+13*F3**2*X3**2+13*F2**2*X2**2+
00754      & 13*F2**2*Y2**2+
00755      &  7*F2**2*Y3**2-5*F1*F2*Y2*Y3-5*F1*F2*X2*X3+F1**2*Y2**2+
00756      & 7*F1**2*Y3**2)/S/108
00757 !
00758       A44(IELEM) = (-13*F2**2*X2*X3+11*F2*F3*X3**2-
00759      &  13*F3**2*Y2*Y3-F1**2*X2*X3+
00760      &  5*F1*F2*Y3**2+5*F1*F2*X3**2+11*F2*F3*Y2**2+11*F2*F3*Y3**2-
00761      &  13*F2**2*Y2*Y3+11*F1*F2*Y2**2+5*F1*F3*Y2**2-F1**2*Y2*Y3+
00762      & 11*F1*F3*Y3**2+5*F1*F3*X2**2+11*F2*F3*X2**2-13*F3**2*
00763      & X2*X3+11*F1*F2*X2**2+
00764      &  11*F1*F3*X3**2+7*F3**2*Y2**2-17*F2*F3*Y2*Y3+
00765      & 7*F1**2*X3**2+7*F1**2*X2**2-17*F2*F3*X2*X3+
00766      & 13*F3**2*Y3**2+7*F2**2*X3**2-5*F1*F3*Y2*Y3-5*F1*F3*X2*X3+
00767      & 7*F3**2*X2**2+13*F3**2*X3**2+13*F2**2*X2**2+
00768      &  13*F2**2*Y2**2+7*F2**2*Y3**2-5*F1*F2*Y2*Y3-5*F1*F2*X2*X3+
00769      & 7*F1**2*Y2**2+7*F1**2*Y3**2)/S/36
00770 !
00771 !   TERMS OBTAINED BY SYMMETRY
00772 !
00773       A21(IELEM) = A12(IELEM)
00774       A31(IELEM) = A13(IELEM)
00775       A32(IELEM) = A23(IELEM)
00776       A41(IELEM) = A14(IELEM)
00777       A42(IELEM) = A24(IELEM)
00778       A43(IELEM) = A34(IELEM)
00779 !
00780 !   END OF THE LOOP ON THE ELEMENTS
00781 !
00782       ENDDO
00783 !
00784 !------------------------------------------------------------------
00785 !
00786       ELSEIF(FORMUL(8:16).EQ.'     00XX') THEN
00787 !
00788       TDIA='Q'
00789       TEXT='Q'
00790 !     SYMMETRY NOT TAKEN INTO ACCOUNT
00791 !     TEXT='S'
00792 !
00793 !   LOOP ON THE ELEMENTS
00794 !
00795       DO IELEM = 1 , NELEM
00796 !
00797       S = SURFAC(IELEM)/XMUL
00798 !
00799 !   INITIALISES THE GEOMETRICAL VARIABLES
00800 !
00801       X2 = XEL(IELEM,2)
00802       X3 = XEL(IELEM,3)
00803       Y2 = YEL(IELEM,2)
00804       Y3 = YEL(IELEM,3)
00805 !
00806       F1 = F(IKLE1(IELEM))
00807       F2 = F(IKLE2(IELEM))
00808       F3 = F(IKLE3(IELEM))
00809 !
00810       A11(IELEM)=(65*F1**2*Y2**2+65*F1**2*Y3**2+17*F3**2*Y2**2+53*F3**2*
00811      &Y3**2-88*F1*F2*Y2*Y3-88*F1*F3*Y2*Y3+53*F2**2*Y2**2+17*F2**2*Y3**2-
00812      &40*F2*F3*Y2*Y3+73*F1*F3*Y3**2-56*F2**2*Y2*Y3-56*F3**2*Y2*Y3+37*F1*
00813      &F3*Y2**2+37*F1*F2*Y3**2+73*F1*F2*Y2**2+25*F2*F3*Y2**2+25*F2*F3*Y3*
00814      &*2-104*F1**2*Y2*Y3)/S/648
00815 !
00816       A12(IELEM)=(13*F1**2+17*F1*F2+5*F1*F3+F3**2+13*F2**2+5*F2*F3)*(Y2+
00817      &Y3)*(2*Y2-Y3)/S/648
00818 !
00819       A13(IELEM)=-(13*F1**2+17*F1*F3+5*F1*F2+13*F3**2+F2**2+5*F2*F3)*(Y2
00820      &+Y3)*(Y2-2*Y3)/S/648
00821 !
00822       A14(IELEM)=-(13*F1**2*Y2**2-13*F1**2*Y2*Y3+17*F1*F2*Y2**2-11*F1*F2
00823      &*Y2*Y3+5*F1*F3*Y2**2-11*F1*F3*Y2*Y3+F3**2*Y2**2-7*F3**2*Y2*Y3+13*F
00824      &2**2*Y2**2-7*F2**2*Y2*Y3+5*F2*F3*Y2**2-5*F2*F3*Y2*Y3+13*F1**2*Y3**
00825      &2+17*F1*F3*Y3**2+5*F1*F2*Y3**2+13*F3**2*Y3**2+F2**2*Y3**2+5*F2*F3*
00826      &Y3**2)/S/108
00827 !
00828       A22(IELEM)=(14*F1**2*Y2**2+17*F1**2*Y3**2+14*F3**2*Y2**2+53*F3**2*
00829      &Y3**2+14*F1*F2*Y2*Y3-10*F1*F3*Y2*Y3+26*F2**2*Y2**2+65*F2**2*Y3**2-
00830      &58*F2*F3*Y2*Y3+25*F1*F3*Y3**2-26*F2**2*Y2*Y3-50*F3**2*Y2*Y3+10*F1*
00831      &F3*Y2**2+37*F1*F2*Y3**2+22*F1*F2*Y2**2+22*F2*F3*Y2**2+73*F2*F3*Y3*
00832      &*2+22*F1**2*Y2*Y3)/S/648
00833 !
00834       A23(IELEM)=(13*F2**2+17*F2*F3+5*F1*F2+F1**2+13*F3**2+5*F1*F3)*(2*Y
00835      &2-Y3)*(Y2-2*Y3)/S/648
00836 !
00837       A24(IELEM)=-(7*F1**2*Y2**2+F1**2*Y3**2+7*F3**2*Y2**2+13*F3**2*Y3**
00838      &2+F1*F2*Y2*Y3-5*F1*F3*Y2*Y3+13*F2**2*Y2**2+13*F2**2*Y3**2-23*F2*F3
00839      &*Y2*Y3+5*F1*F3*Y3**2-13*F2**2*Y2*Y3-19*F3**2*Y2*Y3+5*F1*F3*Y2**2+5
00840      &*F1*F2*Y3**2+11*F1*F2*Y2**2+11*F2*F3*Y2**2+17*F2*F3*Y3**2+5*F1**2*
00841      &Y2*Y3)/S/108
00842 !
00843       A33(IELEM)=(17*F1**2*Y2**2+14*F1**2*Y3**2+65*F3**2*Y2**2+26*F3**2*
00844      &Y3**2-10*F1*F2*Y2*Y3+14*F1*F3*Y2*Y3+53*F2**2*Y2**2+14*F2**2*Y3**2-
00845      &58*F2*F3*Y2*Y3+22*F1*F3*Y3**2-50*F2**2*Y2*Y3-26*F3**2*Y2*Y3+37*F1*
00846      &F3*Y2**2+10*F1*F2*Y3**2+25*F1*F2*Y2**2+73*F2*F3*Y2**2+22*F2*F3*Y3*
00847      &*2+22*F1**2*Y2*Y3)/S/648
00848 !
00849       A34(IELEM)=-(F1**2*Y2**2+7*F1**2*Y3**2+13*F3**2*Y2**2+13*F3**2*Y3*
00850      &*2-5*F1*F2*Y2*Y3+F1*F3*Y2*Y3+13*F2**2*Y2**2+7*F2**2*Y3**2-23*F2*F3
00851      &*Y2*Y3+11*F1*F3*Y3**2-19*F2**2*Y2*Y3-13*F3**2*Y2*Y3+5*F1*F3*Y2**2+
00852      &5*F1*F2*Y3**2+5*F1*F2*Y2**2+17*F2*F3*Y2**2+11*F2*F3*Y3**2+5*F1**2*
00853      &Y2*Y3)/S/108
00854 !
00855       A44(IELEM)=(7*F1**2*Y2**2+7*F1**2*Y3**2+7*F3**2*Y2**2+13*F3**2*Y3*
00856      &*2-5*F1*F2*Y2*Y3-5*F1*F3*Y2*Y3+13*F2**2*Y2**2+7*F2**2*Y3**2-17*F2*
00857      &F3*Y2*Y3+11*F1*F3*Y3**2-13*F2**2*Y2*Y3-13*F3**2*Y2*Y3+5*F1*F3*Y2**
00858      &2+5*F1*F2*Y3**2+11*F1*F2*Y2**2+11*F2*F3*Y2**2+11*F2*F3*Y3**2-F1**2
00859      &*Y2*Y3)/S/36
00860 !
00861 !   TERMS OBTAINED BY SYMMETRY
00862 !
00863       A21(IELEM) = A12(IELEM)
00864       A31(IELEM) = A13(IELEM)
00865       A32(IELEM) = A23(IELEM)
00866       A41(IELEM) = A14(IELEM)
00867       A42(IELEM) = A24(IELEM)
00868       A43(IELEM) = A34(IELEM)
00869 !
00870 !   END OF THE LOOP ON THE ELEMENTS
00871 !
00872       ENDDO
00873 !
00874 !------------------------------------------------------------------
00875 !
00876       ELSEIF(FORMUL(8:16).EQ.'     00YY') THEN
00877 !
00878       TDIA='Q'
00879       TEXT='Q'
00880 !     SYMMETRY NOT TAKEN INTO ACCOUNT
00881 !     TEXT='S'
00882 !
00883 !   LOOP ON THE ELEMENTS
00884 !
00885       DO IELEM = 1 , NELEM
00886 !
00887       S = SURFAC(IELEM)/XMUL
00888 !
00889 !   INITIALISES THE GEOMETRICAL VARIABLES
00890 !
00891       X2 = XEL(IELEM,2)
00892       X3 = XEL(IELEM,3)
00893 !
00894       F1 = F(IKLE1(IELEM))
00895       F2 = F(IKLE2(IELEM))
00896       F3 = F(IKLE3(IELEM))
00897 !
00898       A11(IELEM)=(-56*F3**2*X2*X3+37*F1*F3*X2**2+73*F1*F3*X3**2-88*F1*F3
00899      &*X2*X3-88*F1*F2*X2*X3-40*F2*F3*X2*X3+73*F1*F2*X2**2-104*F1**2*X2*X
00900      &3-56*F2**2*X2*X3+37*F1*F2*X3**2+65*F1**2*X2**2+65*F1**2*X3**2+53*F
00901      &2**2*X2**2+17*F2**2*X3**2+17*F3**2*X2**2+53*F3**2*X3**2+25*F2*F3*X
00902      &2**2+25*F2*F3*X3**2)/S/648
00903 !
00904       A12(IELEM)=-(13*F1**2+5*F1*F3+17*F1*F2+13*F2**2+F3**2+5*F2*F3)*(X2
00905      &+X3)*(-2*X2+X3)/S/648
00906 !
00907       A13(IELEM)=(13*F1**2+17*F1*F3+5*F1*F2+13*F3**2+F2**2+5*F2*F3)*(X2+
00908      &X3)*(-X2+2*X3)/S/648
00909 !
00910       A14(IELEM)=-(13*F1**2*X2**2-13*F1**2*X2*X3+5*F1*F3*X2**2-11*F1*F3*
00911      &X2*X3+17*F1*F2*X2**2-11*F1*F2*X2*X3+13*F2**2*X2**2-7*F2**2*X2*X3+F
00912      &3**2*X2**2-7*F3**2*X2*X3+5*F2*F3*X2**2-5*F2*F3*X2*X3+13*F1**2*X3**
00913      &2+17*F1*F3*X3**2+5*F1*F2*X3**2+13*F3**2*X3**2+F2**2*X3**2+5*F2*F3*
00914      &X3**2)/S/108
00915 !
00916       A22(IELEM)=(-50*F3**2*X2*X3+10*F1*F3*X2**2+25*F1*F3*X3**2-10*F1*F3
00917      &*X2*X3+14*F1*F2*X2*X3-58*F2*F3*X2*X3+22*F1*F2*X2**2+22*F1**2*X2*X3
00918      &-26*F2**2*X2*X3+37*F1*F2*X3**2+14*F1**2*X2**2+17*F1**2*X3**2+26*F2
00919      &**2*X2**2+65*F2**2*X3**2+14*F3**2*X2**2+53*F3**2*X3**2+22*F2*F3*X2
00920      &**2+73*F2*F3*X3**2)/S/648
00921 !
00922       A23(IELEM)=(13*F2**2+5*F1*F2+17*F2*F3+F1**2+13*F3**2+5*F1*F3)*(-2*
00923      &X2+X3)*(-X2+2*X3)/S/648
00924 !
00925       A24(IELEM)=-(-19*F3**2*X2*X3+5*F1*F3*X2**2+5*F1*F3*X3**2-5*F1*F3*X
00926      &2*X3+F1*F2*X2*X3-23*F2*F3*X2*X3+11*F1*F2*X2**2+5*F1**2*X2*X3-13*F2
00927      &**2*X2*X3+5*F1*F2*X3**2+7*F1**2*X2**2+F1**2*X3**2+13*F2**2*X2**2+1
00928      &3*F2**2*X3**2+7*F3**2*X2**2+13*F3**2*X3**2+11*F2*F3*X2**2+17*F2*F3
00929      &*X3**2)/S/108
00930 !
00931       A33(IELEM)=(-26*F3**2*X2*X3+37*F1*F3*X2**2+22*F1*F3*X3**2+14*F1*F3
00932      &*X2*X3-10*F1*F2*X2*X3-58*F2*F3*X2*X3+25*F1*F2*X2**2+22*F1**2*X2*X3
00933      &-50*F2**2*X2*X3+10*F1*F2*X3**2+17*F1**2*X2**2+14*F1**2*X3**2+53*F2
00934      &**2*X2**2+14*F2**2*X3**2+65*F3**2*X2**2+26*F3**2*X3**2+73*F2*F3*X2
00935      &**2+22*F2*F3*X3**2)/S/648
00936 !
00937       A34(IELEM)=-(-13*F3**2*X2*X3+5*F1*F3*X2**2+11*F1*F3*X3**2+F1*F3*X2
00938      &*X3-5*F1*F2*X2*X3-23*F2*F3*X2*X3+5*F1*F2*X2**2+5*F1**2*X2*X3-19*F2
00939      &**2*X2*X3+5*F1*F2*X3**2+F1**2*X2**2+7*F1**2*X3**2+13*F2**2*X2**2+7
00940      &*F2**2*X3**2+13*F3**2*X2**2+13*F3**2*X3**2+17*F2*F3*X2**2+11*F2*F3
00941      &*X3**2)/S/108
00942 !
00943       A44(IELEM)=(-13*F3**2*X2*X3+5*F1*F3*X2**2+11*F1*F3*X3**2-5*F1*F3*X
00944      &2*X3-5*F1*F2*X2*X3-17*F2*F3*X2*X3+11*F1*F2*X2**2-F1**2*X2*X3-13*F2
00945      &**2*X2*X3+5*F1*F2*X3**2+7*F1**2*X2**2+7*F1**2*X3**2+13*F2**2*X2**2
00946      &+7*F2**2*X3**2+7*F3**2*X2**2+13*F3**2*X3**2+11*F2*F3*X2**2+11*F2*F
00947      &3*X3**2)/S/36
00948 !
00949 !   TERMS OBTAINED BY SYMMETRY
00950 !
00951       A21(IELEM) = A12(IELEM)
00952       A31(IELEM) = A13(IELEM)
00953       A32(IELEM) = A23(IELEM)
00954       A41(IELEM) = A14(IELEM)
00955       A42(IELEM) = A24(IELEM)
00956       A43(IELEM) = A34(IELEM)
00957 !
00958 !   END OF THE LOOP ON THE ELEMENTS
00959 !
00960       ENDDO
00961 !
00962 !------------------------------------------------------------------
00963 !
00964       ELSEIF(FORMUL(8:16).EQ.'     00XY') THEN
00965 !
00966       TDIA='Q'
00967       TEXT='Q'
00968 !
00969 !   LOOP ON THE ELEMENTS
00970 !
00971       DO IELEM = 1 , NELEM
00972 !
00973       S = SURFAC(IELEM)/XMUL
00974 !
00975 !   INITIALISES THE GEOMETRICAL VARIABLES
00976 !
00977       X2 = XEL(IELEM,2)
00978       X3 = XEL(IELEM,3)
00979       Y2 = YEL(IELEM,2)
00980       Y3 = YEL(IELEM,3)
00981 !
00982       F1 = F(IKLE1(IELEM))
00983       F2 = F(IKLE2(IELEM))
00984       F3 = F(IKLE3(IELEM))
00985 !
00986       A11(IELEM)=(44*F1*F3*Y2*X3+44*F1*F3*Y3*X2-73*F1*F3*Y3*X3-73*F1*F2*
00987      &Y2*X2-25*F2*F3*Y3*X3+44*F1*F2*Y3*X2-37*F1*F2*Y3*X3-25*F2*F3*Y2*X2+
00988      &20*F2*F3*Y2*X3+52*F1**2*Y2*X3+28*F3**2*Y2*X3-17*F2**2*Y3*X3-65*F1*
00989      &*2*Y2*X2+28*F2**2*Y2*X3-53*F2**2*Y2*X2+28*F3**2*Y3*X2+52*F1**2*Y3*
00990      &X2-65*F1**2*Y3*X3-17*F3**2*Y2*X2+28*F2**2*Y3*X2-53*F3**2*Y3*X3-37*
00991      &F1*F3*Y2*X2+44*F1*F2*Y2*X3+20*F2*F3*Y3*X2)/S/648
00992 !
00993       A12(IELEM)=(13*F1**2+5*F1*F3+17*F1*F2+F3**2+13*F2**2+5*F2*F3)*(Y2+
00994      &Y3)*(-2*X2+X3)/S/648
00995 !
00996       A13(IELEM)=-(13*F1**2+17*F1*F3+5*F1*F2+F2**2+13*F3**2+5*F2*F3)*(Y2
00997      &+Y3)*(-X2+2*X3)/S/648
00998 !
00999       A14(IELEM)=-(-26*F1**2*Y2*X2+13*F1**2*Y2*X3-10*F1*F3*Y2*X2+5*F1*F3
01000      &*Y2*X3-34*F1*F2*Y2*X2+17*F1*F2*Y2*X3-2*F3**2*Y2*X2+F3**2*Y2*X3-26*
01001      &F2**2*Y2*X2+13*F2**2*Y2*X3-10*F2*F3*Y2*X2+5*F2*F3*Y2*X3+13*F1**2*Y
01002      &3*X2-26*F1**2*Y3*X3+17*F1*F3*Y3*X2-34*F1*F3*Y3*X3+5*F1*F2*Y3*X2-10
01003      &*F1*F2*Y3*X3+F2**2*Y3*X2-2*F2**2*Y3*X3+13*F3**2*Y3*X2-26*F3**2*Y3*
01004      &X3+5*F2*F3*Y3*X2-10*F2*F3*Y3*X3)/S/216
01005 !
01006       A21(IELEM)=-(13*F1**2+5*F1*F3+17*F1*F2+F3**2+13*F2**2+5*F2*F3)*(2*
01007      &Y2-Y3)*(X2+X3)/S/648
01008 !
01009       A22(IELEM)=-(-5*F1*F3*Y2*X3-5*F1*F3*Y3*X2+25*F1*F3*Y3*X3+22*F1*F2*
01010      &Y2*X2+73*F2*F3*Y3*X3+7*F1*F2*Y3*X2+37*F1*F2*Y3*X3+22*F2*F3*Y2*X2-2
01011      &9*F2*F3*Y2*X3+11*F1**2*Y2*X3-25*F3**2*Y2*X3+65*F2**2*Y3*X3+14*F1**
01012      &2*Y2*X2-13*F2**2*Y2*X3+26*F2**2*Y2*X2-25*F3**2*Y3*X2+11*F1**2*Y3*X
01013      &2+17*F1**2*Y3*X3+14*F3**2*Y2*X2-13*F2**2*Y3*X2+53*F3**2*Y3*X3+10*F
01014      &1*F3*Y2*X2+7*F1*F2*Y2*X3-29*F2*F3*Y3*X2)/S/648
01015 !
01016       A23(IELEM)=(13*F2**2+5*F1*F2+17*F2*F3+F1**2+13*F3**2+5*F1*F3)*(2*Y
01017      &2-Y3)*(-X2+2*X3)/S/648
01018 !
01019       A24(IELEM)=(-5*F1*F3*Y2*X3-5*F1*F3*Y3*X2+10*F1*F3*Y3*X3+22*F1*F2*Y
01020      &2*X2+34*F2*F3*Y3*X3-5*F1*F2*Y3*X2+10*F1*F2*Y3*X3+22*F2*F3*Y2*X2-29
01021      &*F2*F3*Y2*X3+11*F1**2*Y2*X3-25*F3**2*Y2*X3+26*F2**2*Y3*X3+14*F1**2
01022      &*Y2*X2-13*F2**2*Y2*X3+26*F2**2*Y2*X2-13*F3**2*Y3*X2-F1**2*Y3*X2+2*
01023      &F1**2*Y3*X3+14*F3**2*Y2*X2-13*F2**2*Y3*X2+26*F3**2*Y3*X3+10*F1*F3*
01024      &Y2*X2+7*F1*F2*Y2*X3-17*F2*F3*Y3*X2)/S/216
01025 !
01026       A31(IELEM)=(13*F1**2+17*F1*F3+5*F1*F2+F2**2+13*F3**2+5*F2*F3)*(Y2-
01027      &2*Y3)*(X2+X3)/S/648
01028 !
01029       A32(IELEM)=(13*F2**2+5*F1*F2+17*F2*F3+F1**2+13*F3**2+5*F1*F3)*(Y2-
01030      &2*Y3)*(-2*X2+X3)/S/648
01031 !
01032       A33(IELEM)=-(7*F1*F3*Y2*X3+7*F1*F3*Y3*X2+22*F1*F3*Y3*X3+25*F1*F2*Y
01033      &2*X2+22*F2*F3*Y3*X3-5*F1*F2*Y3*X2+10*F1*F2*Y3*X3+73*F2*F3*Y2*X2-29
01034      &*F2*F3*Y2*X3+11*F1**2*Y2*X3-13*F3**2*Y2*X3+14*F2**2*Y3*X3+17*F1**2
01035      &*Y2*X2-25*F2**2*Y2*X3+53*F2**2*Y2*X2-13*F3**2*Y3*X2+11*F1**2*Y3*X2
01036      &+14*F1**2*Y3*X3+65*F3**2*Y2*X2-25*F2**2*Y3*X2+26*F3**2*Y3*X3+37*F1
01037      &*F3*Y2*X2-5*F1*F2*Y2*X3-29*F2*F3*Y3*X2)/S/648
01038 !
01039       A34(IELEM)=-(5*F1*F3*Y2*X3-7*F1*F3*Y3*X2-22*F1*F3*Y3*X3-10*F1*F2*Y
01040      &2*X2-22*F2*F3*Y3*X3+5*F1*F2*Y3*X2-10*F1*F2*Y3*X3-34*F2*F3*Y2*X2+17
01041      &*F2*F3*Y2*X3+F1**2*Y2*X3+13*F3**2*Y2*X3-14*F2**2*Y3*X3-2*F1**2*Y2*
01042      &X2+13*F2**2*Y2*X3-26*F2**2*Y2*X2+13*F3**2*Y3*X2-11*F1**2*Y3*X2-14*
01043      &F1**2*Y3*X3-26*F3**2*Y2*X2+25*F2**2*Y3*X2-26*F3**2*Y3*X3-10*F1*F3*
01044      &Y2*X2+5*F1*F2*Y2*X3+29*F2*F3*Y3*X2)/S/216
01045 !
01046       A41(IELEM)=-(-26*F1**2*Y2*X2+13*F1**2*Y3*X2-10*F1*F3*Y2*X2+5*F1*F3
01047      &*Y3*X2-34*F1*F2*Y2*X2+17*F1*F2*Y3*X2-2*F3**2*Y2*X2+F3**2*Y3*X2-26*
01048      &F2**2*Y2*X2+13*F2**2*Y3*X2-10*F2*F3*Y2*X2+5*F2*F3*Y3*X2+13*F1**2*Y
01049      &2*X3-26*F1**2*Y3*X3+17*F1*F3*Y2*X3-34*F1*F3*Y3*X3+5*F1*F2*Y2*X3-10
01050      &*F1*F2*Y3*X3+F2**2*Y2*X3-2*F2**2*Y3*X3+13*F3**2*Y2*X3-26*F3**2*Y3*
01051      &X3+5*F2*F3*Y2*X3-10*F2*F3*Y3*X3)/S/216
01052 !
01053       A42(IELEM)=-(5*F1*F3*Y2*X3+5*F1*F3*Y3*X2-10*F1*F3*Y3*X3-22*F1*F2*Y
01054      &2*X2-34*F2*F3*Y3*X3-7*F1*F2*Y3*X2-10*F1*F2*Y3*X3-22*F2*F3*Y2*X2+17
01055      &*F2*F3*Y2*X3+F1**2*Y2*X3+13*F3**2*Y2*X3-26*F2**2*Y3*X3-14*F1**2*Y2
01056      &*X2+13*F2**2*Y2*X3-26*F2**2*Y2*X2+25*F3**2*Y3*X2-11*F1**2*Y3*X2-2*
01057      &F1**2*Y3*X3-14*F3**2*Y2*X2+13*F2**2*Y3*X2-26*F3**2*Y3*X3-10*F1*F3*
01058      &Y2*X2+5*F1*F2*Y2*X3+29*F2*F3*Y3*X2)/S/216
01059 !
01060       A43(IELEM)=(7*F1*F3*Y2*X3-5*F1*F3*Y3*X2+22*F1*F3*Y3*X3+10*F1*F2*Y2
01061      &*X2+22*F2*F3*Y3*X3-5*F1*F2*Y3*X2+10*F1*F2*Y3*X3+34*F2*F3*Y2*X2-29*
01062      &F2*F3*Y2*X3+11*F1**2*Y2*X3-13*F3**2*Y2*X3+14*F2**2*Y3*X3+2*F1**2*Y
01063      &2*X2-25*F2**2*Y2*X3+26*F2**2*Y2*X2-13*F3**2*Y3*X2-F1**2*Y3*X2+14*F
01064      &1**2*Y3*X3+26*F3**2*Y2*X2-13*F2**2*Y3*X2+26*F3**2*Y3*X3+10*F1*F3*Y
01065      &2*X2-5*F1*F2*Y2*X3-17*F2*F3*Y3*X2)/S/216
01066 !
01067       A44(IELEM)=(5*F1*F3*Y2*X3+5*F1*F3*Y3*X2-22*F1*F3*Y3*X3-22*F1*F2*Y2
01068      &*X2-22*F2*F3*Y3*X3+5*F1*F2*Y3*X2-10*F1*F2*Y3*X3-22*F2*F3*Y2*X2+17*
01069      &F2*F3*Y2*X3+F1**2*Y2*X3+13*F3**2*Y2*X3-14*F2**2*Y3*X3-14*F1**2*Y2*
01070      &X2+13*F2**2*Y2*X3-26*F2**2*Y2*X2+13*F3**2*Y3*X2+F1**2*Y3*X2-14*F1*
01071      &*2*Y3*X3-14*F3**2*Y2*X2+13*F2**2*Y3*X2-26*F3**2*Y3*X3-10*F1*F3*Y2*
01072      &X2+5*F1*F2*Y2*X3+17*F2*F3*Y3*X2)/S/72
01073 !
01074 !   END OF THE LOOP ON THE ELEMENTS
01075 !
01076       ENDDO
01077 !
01078 !-----------------------------------------------------------------------
01079 !
01080 !   CASE NOT IMPLEMENTED
01081 !
01082       ELSE
01083 !
01084         IF (LNG.EQ.1) WRITE(LU,1000) FORMUL
01085         IF (LNG.EQ.2) WRITE(LU,1001) FORMUL
01086 1000    FORMAT(1X,'MT99BB (BIEF) : MATRICE NON PREVUE : ',A16)
01087 1001    FORMAT(1X,'MT99BB (BIEF) : MATRIX NOT IMPLEMENTED:',A16)
01088         CALL PLANTE(0)
01089         STOP
01090 !
01091       ENDIF
01092 !
01093 !-----------------------------------------------------------------------
01094 !
01095       RETURN
01096       END

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