airwik3.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac3d\airwik3.f
00002 !
00054                      SUBROUTINE AIRWIK3
00055 !                    ******************
00056 !
00057      & (LIHBOR,U,V,XNEBOR,YNEBOR,NBOR,NPTFR,NPLAN,NPOIN2,KLOG)
00058 !
00059 !***********************************************************************
00060 ! TELEMAC3D   V6P1                                   21/08/2010
00061 !***********************************************************************
00062 !
00063 !
00064 !
00065 !
00066 !
00067 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00068 !| KLOG           |-->| CONVENTION FOR SOLID BOUNDARY
00069 !| LIHBOR         |-->| TYPE OF BOUNDARY CONDITIONS ON DEPTH
00070 !| NBOR           |-->| GLOBAL NUMBER OF BOUNDARY POINTS
00071 !| NPLAN          |-->| NUMBER OF PLANES IN THE 3D MESH OF PRISMS
00072 !| NPOIN2         |-->| NUMBER OF POINTS IN 2D
00073 !| NPTFR          |-->| NUMBER OF BOUNDARY POINTS IN 2D
00074 !| XNEBOR         |-->| X COMPONENT OF NORMAL VECTOR FOR BOUNDARY POINTS
00075 !| YNEBOR         |-->| Y COMPONENT OF NORMAL VECTOR FOR BOUNDARY POINTS
00076 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00077 !
00078       USE BIEF
00079 !
00080       IMPLICIT NONE
00081       INTEGER LNG,LU
00082       COMMON/INFO/LNG,LU
00083 !
00084 !----------------------------------------------------------------------
00085 !
00086       INTEGER, INTENT(IN) :: NPTFR,NPLAN,NPOIN2,KLOG
00087       INTEGER, INTENT(IN) :: LIHBOR(NPTFR),NBOR(NPTFR)
00088 !
00089       DOUBLE PRECISION, INTENT(IN)    :: XNEBOR(NPTFR),YNEBOR(NPTFR)
00090       DOUBLE PRECISION, INTENT(INOUT) :: U(NPOIN2,NPLAN),V(NPOIN2,NPLAN)
00091 !
00092 !-----------------------------------------------------------------------
00093 !
00094       INTEGER IPTFR,IPLAN,IPOIN
00095       DOUBLE PRECISION PSCAL
00096 !
00097 !***********************************************************************
00098 !
00099 ! BOUNDARY CONDITIONS
00100 !
00101 ! ENFORCES BC'S ON THE 3D FIELDS
00102 !
00103       DO IPLAN=1,NPLAN
00104         DO IPTFR=1,NPTFR
00105           IF(LIHBOR(IPTFR).EQ.KLOG) THEN
00106             IPOIN=NBOR(IPTFR)
00107             PSCAL = U(IPOIN,IPLAN)*XNEBOR(IPTFR)
00108      &            + V(IPOIN,IPLAN)*YNEBOR(IPTFR)
00109             U(IPOIN,IPLAN) = U(IPOIN,IPLAN) - PSCAL*XNEBOR(IPTFR)
00110             V(IPOIN,IPLAN) = V(IPOIN,IPLAN) - PSCAL*YNEBOR(IPTFR)
00111           ENDIF
00112         ENDDO
00113       ENDDO
00114 !
00115 !-----------------------------------------------------------------------
00116 !
00117       RETURN
00118       END

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