grad_zconv.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac2d\grad_zconv.f
00002 !
00039                      SUBROUTINE GRAD_ZCONV
00040 !                    *********************
00041 !
00042      &(GRAZCO,ZCONV,XEL,YEL,NELEM,NELMAX)
00043 !
00044 !***********************************************************************
00045 ! TELEMAC2D   V6P2                                   07/09/2011
00046 !***********************************************************************
00047 !
00048 !
00049 !
00050 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00051 !| GRAZCO         |<--| TWO COMPONENTS OF THE GRADIENT
00052 !| NELEM          |-->| NUMBER OF ELEMENTS
00053 !| NELMAX         |-->| MAXIMUM NUMBER OF ELEMENTS
00054 !| XEL            |-->| ABSCISSAE OF POINTS, PER ELEMENT
00055 !| YEL            |-->| ORDINATES OF POINTS, PER ELEMENT
00056 !| ZCONV          |-->| THE PIECE-WISE LINEAr FUNCTION
00057 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00058 !
00059       USE BIEF
00060 !
00061       IMPLICIT NONE
00062       INTEGER LNG,LU
00063       COMMON/INFO/LNG,LU
00064 !
00065 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00066 !
00067       INTEGER, INTENT(IN) :: NELEM,NELMAX
00068       DOUBLE PRECISION, INTENT(INOUT) :: GRAZCO(NELMAX,2)
00069       DOUBLE PRECISION, INTENT(IN)    :: ZCONV(NELMAX,3)
00070       DOUBLE PRECISION, INTENT(IN)    :: XEL(NELMAX,3),YEL(NELMAX,3)
00071 !
00072 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00073 !
00074       INTEGER IELEM
00075       DOUBLE PRECISION X2,X3,Y2,Y3,G2,G3,DET
00076 !
00077 !-----------------------------------------------------------------------
00078 !
00079       DO IELEM=1,NELEM
00080 !
00081         X2 = XEL(IELEM,2)
00082         X3 = XEL(IELEM,3)
00083         Y2 = YEL(IELEM,2)
00084         Y3 = YEL(IELEM,3)
00085         DET=X2*Y3-X3*Y2
00086         G2 = ZCONV(IELEM,2)-ZCONV(IELEM,1)
00087         G3 = ZCONV(IELEM,3)-ZCONV(IELEM,1)
00088         GRAZCO(IELEM,1)=(G2*Y3-G3*Y2)/DET
00089         GRAZCO(IELEM,2)=(X2*G3-X3*G2)/DET
00090 !
00091       ENDDO
00092 !
00093 !-----------------------------------------------------------------------
00094 !
00095       RETURN
00096       END

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