filp10.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\utils\bief\filp10.f
00002 !
00060                      SUBROUTINE FILP10
00061 !                    *****************
00062 !
00063      &( F , C , XSOM , YSOM , NSOM , X , Y , NELEM , NELMAX , IKLE )
00064 !
00065 !***********************************************************************
00066 ! BIEF   V6P1                                   21/08/2010
00067 !***********************************************************************
00068 !
00069 !
00070 !
00071 !
00072 !
00073 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00074 !| C              |-->| THE CONSTANT VALUE
00075 !| F              |<->| THE FUNCTION
00076 !| IKLE           |-->| CONNECTIVITY TABLE.
00077 !| NELEM          |-->| NUMBER OF ELEMENTS
00078 !| NELMAX         |-->| MAXIMUM NUMBER OF ELEMENTS
00079 !| NSOM           |-->| NUMBER OF VERTICES IN THE POLYGON
00080 !| X              |-->| ABSCISSAE OF POINTS IN THE MESH
00081 !| XSOM           |-->| ABSCISSAE OF POINTS IN THE POLYGON
00082 !| Y              |-->| ORDINATES OF POINTS IN THE MESH
00083 !| YSOM           |-->| ORDINATES OF POINTS IN THE POLYGON
00084 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00085 !
00086       USE BIEF, EX_FILP10 => FILP10
00087 !
00088       IMPLICIT NONE
00089       INTEGER LNG,LU
00090       COMMON/INFO/LNG,LU
00091 !
00092 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00093 !
00094       INTEGER, INTENT(IN)             :: NSOM,NELEM,NELMAX
00095       DOUBLE PRECISION, INTENT(INOUT) :: F(*)
00096       DOUBLE PRECISION, INTENT(IN)    :: X(*) , Y(*)
00097       DOUBLE PRECISION, INTENT(IN)    :: XSOM(NSOM) , YSOM(NSOM) , C
00098       INTEGER, INTENT(IN)             :: IKLE(NELMAX,3)
00099 !
00100 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00101 !
00102       INTEGER IELEM , I1 , I2 , I3
00103 !
00104 !-----------------------------------------------------------------------
00105 !
00106       DO IELEM = 1 , NELEM
00107 !
00108         I1 = IKLE(IELEM,1)
00109         I2 = IKLE(IELEM,2)
00110         I3 = IKLE(IELEM,3)
00111         IF( INPOLY(X(I1),Y(I1),XSOM,YSOM,NSOM) .AND.
00112      &      INPOLY(X(I2),Y(I2),XSOM,YSOM,NSOM) .AND.
00113      &      INPOLY(X(I3),Y(I3),XSOM,YSOM,NSOM) ) F(IELEM) = C
00114 !
00115       ENDDO ! IELEM
00116 !
00117 !-----------------------------------------------------------------------
00118 !
00119       RETURN
00120       END

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