longml.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac3d\longml.f
00002 !
00067                      SUBROUTINE LONGML
00068 !                    *****************
00069 !
00070      & (LM2,Z,HN,NPOIN3,NPOIN2,NPLAN,MIXING,KARMAN,ZF)
00071 !
00072 !***********************************************************************
00073 ! TELEMAC3D   V6P2                                   21/08/2010
00074 !***********************************************************************
00075 !
00076 !
00077 !
00078 !
00079 !
00080 !
00081 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00082 !| HN             |-->| WATER DEPTH AT TIME N
00083 !| KARMAN         |-->| KARMAN CONSTANT
00084 !| LM2            |<->| SQUARE MIXING LENGTH
00085 !| MIXING         |-->| MIXING LENGTH MODEL
00086 !| NPLAN          |-->| NUMBER OF PLANES IN THE 3D MESH OF PRISMS
00087 !| NPOIN2         |-->| NUMBER OF POINTS IN 2D
00088 !| NPOIN3         |-->| NUMBER OF 3D POINTS
00089 !| NTRAC          |-->| NUMBER OF ACTIVE TRACERS
00090 !| Z              |-->| ELEVATION OF REAL 3D MESH POINTS ABOVE BOTTOM
00091 !| ZF             |-->| ELEVATION OF BOTTOM
00092 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00093 !
00094       IMPLICIT NONE
00095       INTEGER LNG,LU
00096       COMMON/INFO/LNG,LU
00097 !
00098 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00099 !
00100       INTEGER, INTENT(IN)             :: NPOIN3,NPOIN2,NPLAN,MIXING
00101 !
00102       DOUBLE PRECISION, INTENT(INOUT) :: LM2(NPOIN3)
00103       DOUBLE PRECISION, INTENT(IN)    :: Z(NPOIN3),HN(NPOIN2),KARMAN
00104       DOUBLE PRECISION, INTENT(IN)    :: ZF(NPOIN2)
00105 !
00106 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00107 !
00108       INTEGER I,IPLAN,I3D
00109       DOUBLE PRECISION LMM,HH
00110 !
00111 !***********************************************************************
00112 !
00113       IF(MIXING.EQ.1) THEN
00114 !
00115 !     PRANDTL'S MODEL
00116 !
00117       DO I=1,NPOIN2
00118         DO IPLAN=1,NPLAN
00119           I3D = I + (IPLAN-1)*NPOIN2
00120           IF(Z(I3D).LE.0.2D0*HN(I)) THEN
00121             LM2(I3D)=(KARMAN*Z(I3D))**2
00122           ELSE
00123             LM2(I3D)=(0.2D0*KARMAN*HN(I))**2
00124           ENDIF
00125         ENDDO
00126       ENDDO
00127 !
00128       ELSEIF(MIXING.EQ.3) THEN
00129 !
00130 !     NEZU AND NAKAGAWA MODEL
00131 !
00132         DO I=1,NPOIN2
00133           DO IPLAN=1,NPLAN
00134             I3D = I + (IPLAN-1)*NPOIN2
00135             HH=MAX(HN(I),1.D-6)
00136             LM2(I3D)=(1.D0-Z(I3D)/HH)*(KARMAN*Z(I3D))**2
00137           ENDDO
00138         ENDDO
00139 !
00140 !     QUETIN MODEL (1977) : EOLE MODEL
00141 !
00142       ELSEIF(MIXING.EQ.5) THEN
00143 !
00144         DO I=1,NPOIN2
00145           DO IPLAN=1,NPLAN
00146             I3D = I + (IPLAN-1)*NPOIN2
00147             LMM=1.D0/(KARMAN*Z(I3D)+1.D-7)+
00148      &          1.D0/(0.65D0*(HN(I)-Z(I3D))+1.D-7)
00149             LM2(I3D)=(1.D0/LMM)**2
00150           ENDDO
00151         ENDDO
00152 !
00153 !     TSANIS MODEL (1989)
00154 !
00155       ELSEIF(MIXING.EQ.6) THEN
00156 !
00157         DO I=1,NPOIN2
00158           DO IPLAN=1,NPLAN
00159             I3D = I + (IPLAN-1)*NPOIN2
00160             IF(Z(I3D).LE.0.2D0*HN(I)) THEN
00161               LM2(I3D)=(KARMAN*Z(I3D))**2
00162             ELSEIF(Z(I3D).GE.0.8D0*HN(I)) THEN
00163               LM2(I3D)=(KARMAN*(HN(I)-Z(I3D)))**2
00164             ELSE
00165               LM2(I3D)=(0.2D0*KARMAN*HN(I))**2
00166             ENDIF
00167           ENDDO
00168         ENDDO
00169 !
00170       ELSE
00171 !
00172         IF (LNG.EQ.1) WRITE(LU,11) MIXING
00173         IF (LNG.EQ.2) WRITE(LU,12) MIXING
00174         CALL PLANTE(1)
00175         STOP
00176 !
00177       ENDIF
00178 !
00179 !-----------------------------------------------------------------------
00180 !
00181 11    FORMAT('LONGML: VARIABLE NON PREVUE MIXING: ',I2)
00182 12    FORMAT('LONGML: UNEXPECTED PARAMETER MIXING: ',I2)
00183 !
00184 !-----------------------------------------------------------------------
00185 !
00186       RETURN
00187       END

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