volfin.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac2d\volfin.f
00002 !
00081                         SUBROUTINE VOLFIN
00082 !                       *****************
00083 !
00084      & (W1,AT,DT,LT,NELEM,NPTFR,NSEG,
00085      &  TB,ZF,CF,NPOIN,HN,H,U,V,QU,QV,G,LISTIN,
00086      &  MESH,LIMPRO,NBOR,KDIR,KNEU,KDDL,
00087      &  HBOR,UBOR,VBOR,MASSES,FLUENT,FLUSOR,CFLWTD,DTVARI,KFROT,
00088      &  NREJET,ISCE,TSCE2,MAXSCE,MAXTRA,YASMH,SMH,
00089      &  NTRAC,DIMT,T,HT,TN,
00090      &  TBOR,MASSOU,FLUTENT,FLUTSOR,DTHAUT,DPX,DPY,DJX,DJY,CMI,JMI,
00091      &  DJXT,DJYT,DIFVIT,ITURB,PROPNU,DIFT,DIFNU,
00092      &  DX,DY,OPTVF,
00093      &  HSTOK,HCSTOK,LOGFR,DSZ,FLUXT,FLUHBOR,FLBOR,DTN,FLUSORTN,
00094      &  FLUENTN,LTT,
00095      &  FLUXTEMP,FLUHBTEMP,HC,SMTR,AIRST,TMAX,DTT,GAMMA,FLUX_OLD,
00096      &  MXPTVS,NEISEG,V2DPAR)
00097 !
00098 !***********************************************************************
00099 ! TELEMAC2D   V6P3                                   15/06/2013
00100 !***********************************************************************
00101 !
00102 !            SCHEME (ORDER 1 OR 2) OR TCHAMEN/ZOKAGOA SCHEME
00103 !            FOR INTERIOR FLUXES
00104 !            AND OF TYPE STEGER AND WARMING FOR I/O;
00105 !+
00106 !+
00107 !+            2. SOLVES IN TIME USING A NEWMARK TYPE SCHEME OF SECOND ORDER.
00108 !
00109 !
00110 !
00111 !
00112 !
00113 !
00114 !
00115 !
00116 !
00117 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00118 !| AIRE           |-->| ELEMENT AREA
00119 !| AIRS           |-->| CELL AREA
00120 !| AIRST          |-->| AREA OF SUB-TRIANGLES (SECOND ORDER)
00121 !| AT,DT,LT       |-->| TIME, TIME STEP AND NUMBER OF THE STEP
00122 !| CF             |-->| FRICTION COEFFICIENT
00123 !| CFLWTD         |-->| WANTED CFL NUMBER
00124 !| CMI            |-->| COORDINATES OF MIDDLE PONTS OF EDGES
00125 !| DIFNU          |-->| COEFFICIENT OF DIFFUSION FOR TRACER
00126 !| DIFT           |-->| LOGICAL: DIFFUSION FOR TRACER OR NOT
00127 !| DIFVIT         |-->|  LOGICAL: DIFFUSION FOR VELOCITY OR NOT
00128 !| DIMT           |-->| DIMENSION OF TRACER
00129 !| DJXT,DJYT      |<->| WORKING TABLES FOR TRACER
00130 !| DSZ            |<->| VARIATION OF Z FOR ORDER 2
00131 !| DTHAUT         |-->| CHARACTERISTIC LENGTH (DX) USED FOR CFL
00132 !| DTN            |<->| TIME STEP   FROM TN+1 TO TN+2
00133 !| DTT            |<->| TIME STEP FOR TRACER
00134 !| DTVARI         |-->| DT VARIALE OR NOT
00135 !| DX,DY          |<->| WORKING TABLES
00136 !| DXT,DYT        |<->| WORKING TABLES FOR TRACER
00137 !| FLUENT,FLUSORT |<--| MASS FLUX MASSE INLET AND OUTLET FROM TN TO TN+1
00138 !| FLUHBTEMP      |<->| BORD FLUX FOR TRACER
00139 !| FLUSCE         |-->| SOURCE FLUXES
00140 !| FLUSORTN,FLUENT|<->| MASS FLUX MASSE INLET AND OUTLET FROM TN+1 TO TN+2
00141 !| FLUTENT,FLUTSOR|<--| FLUX TRACER INLET AND OUTLET
00142 !| FLUX           |<--| FLUX
00143 !| FLUXT,FLUHBOR  |<->| FLUX, FLUX BORD FOR TRACER
00144 !| FLUXTEMP       |<->| FLUX POUR TRACER
00145 !| FLUX_OLD       |<->| FLUX OF OLD TIME STEP
00146 !| GAMMA          |-->| NEWMARK COEFFICIENT FOR TIME INTEGRATION
00147 !| G              |-->| GRAVITY
00148 !| H              |<--| WATER DEPTH AT TIME N+1
00149 !| HBOR           |-->| IMPOSED VALUE FOR H
00150 !| HC             |<->| H RECONSTRUCTED (ORDER 2) CORRECTED
00151 !| HN             |-->| WATER DEPTH AT TIME N
00152 !| HSTOK,HCSTOK   |<->| H, H CORRECTED TO STOCK FOR TRACER
00153 !| HTN,TN         |-->| HT, T  AT TIME N
00154 !| IKLE           |-->| INDICES OF NODES FOR TRIANGLE
00155 !| ISCE           |-->| SOURCE POINTS
00156 !| ITURB          |-->| MODEL OF TURBULENCE  1 : LAMINAIRE
00157 !| JMI            |-->| NUMBER OF THE TRIANGLE IN WHICH IS LOCATED
00158 !|                |   | THE MIDPOINT OF THE INTERFACE
00159 !| KDDL           |-->| CONVENTION FOR FREE POINTS (BC)
00160 !| KDIR           |-->| CONVENTION FOR DIRICHLET POINTS
00161 !| KFROT          |-->| BED FRICTION LAW
00162 !| KNEU           |-->| CONVENTION NEUMANN POINTS
00163 !| LIMPRO         |-->| TYPES OF BOUNDARY CONDITION
00164 !| LIMTRA         |-->| TYPES OF BOUNDARY CONDITION FOR TRACER
00165 !| LISTIN         |-->| IF YES, PRINT MESSAGES AT LISTING.
00166 !| LOGFR          |<->| REFERENCE OF BOUNDARY NODES
00167 !| LTT            |<->| NUMBER OF TIME STEP FOR TRACER
00168 !| MASSES         |<--| ADDED MASS BY SOURCE TERMS
00169 !| MASSOU         |<--| ADDED TRACER MASS BY SOURCE TERM
00170 !| MAXSCE         |-->| MAXIMUM NUMBER OF SOURCES
00171 !| MAXTRA         |-->| MAXIMUM NUMBER OF TRACERS
00172 !| NBOR           |-->| GLOBAL INDICES FOR BORD NODES
00173 !| NELEM          |-->| NUMBER OF ELEMENTS
00174 !| NELMAX         |-->| MAXIMUM NUMBER OF ELEMENTS
00175 !| NIT            |-->| TOTAL NUMBER OF TIME STEPS
00176 !| NPOIN          |-->| TOTAL NUMBER OF NODES
00177 !| NPTFR          |-->| TOTAL NUMBER OF BOUNDARY NODES
00178 !| NREJET         |-->| NUMBER OF SOURCE/SINK
00179 !| NSEG           |-->| NUMBER OF EDGES
00180 !| NTRAC          |-->| NUMBER OF TRACERS
00181 !| NUBO           |-->| GLOBAL INDICES OF EDGE EXTREMITIES
00182 !| OPTVF          |-->| OPTION OF THE SCHEME
00183 !|                |   | 0:ROE, 1:KINETIC ORDRE 1,2:KINETIC ORDRE 2
00184 !|                |   | 3:ZOKAGOA, 4:TCHAMEN,5:HLLC,6:WAF
00185 !| PROPNU         |-->| COEFFICIENT OF MOLECULAR DIFFUSION
00186 !| QU,QV          |<->| FLOW COMPOENENTS AT TIME N THEN AT TIME  N+1
00187 !| SMH            |-->| SOURCE TERMS FOR CONTINUITY EQUATION
00188 !| SMTR           |<--| SOURCE TERMS FOR TRACERS
00189 !| T              |<--| TRACER UPDATED
00190 !| TBOR           |-->| PRESCRIBED BOUNDARY CONDITIONS FOR T
00191 !| TMAX           |-->| FINAL TIME
00192 !| TSCE2          |-->| VALUES OF TRACERS AT SOURCES
00193 !| U,V            |<--| VELOCITY COMPONENTS AT TIME N+1
00194 !| UBOR           |-->| IMPOSED VALUES FOR U
00195 !| VBOR           |-->| IMPOSED VALUES FOR V
00196 !| VNOIN          |-->| NORMAL TO THE INTERFACE
00197 !|                |   | (2 FIRST COMPONENTS) AND
00198 !|                |   | SEGMENT LENGTH (3RD COMPONENT)
00199 !| W              |<->| WORKING TABLE
00200 !| WINF           |-->| BOUNDARY CONDITIONS GIVEN BY BORD
00201 !| X,Y            |-->| COORDINATES FOR MESH NODES
00202 !| XNEBOR,YNEBOR  |-->| NORMAL TO BOUNDARY POINTS
00203 !| YASMH          |-->| LOGICAL: TO TAKE INTO ACCOUNT SMH
00204 !| ZF             |-->| BED TOPOGRAPHY (BATHYMETRY)
00205 !| MXPTVS         |-->| MAX NUMBER OF NEIGHBOR FOR A NODE
00206 !| NEISEG         |-->| NEIGHBOR OF THE SEGMENT
00207 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00208 !
00209       USE BIEF
00210       USE INTERFACE_TELEMAC2D, EX_VOLFIN => VOLFIN
00211 !
00212       IMPLICIT NONE
00213       INTEGER LNG,LU
00214       COMMON/INFO/LNG,LU
00215 !
00216 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00217 !
00218       INTEGER, INTENT(IN)    :: NPTFR,KDIR,KNEU,KDDL,DIMT,KFROT,OPTVF
00219       INTEGER, INTENT(IN)    :: NELEM,NPOIN,LT,NREJET,ITURB
00220       INTEGER, INTENT(IN)    :: NTRAC,MAXSCE,MAXTRA,MXPTVS
00221       INTEGER, INTENT(INOUT) :: LTT
00222       INTEGER, INTENT(IN)    :: LIMPRO(NPTFR,6),NBOR(NPTFR)
00223       INTEGER, INTENT(IN)    :: ISCE(NREJET),NSEG
00224       INTEGER, INTENT(INOUT) :: JMI(*),LOGFR(NPOIN),NEISEG(2,*)
00225       LOGICAL, INTENT(IN)    :: DIFVIT,DIFT,LISTIN,DTVARI,YASMH
00226 
00227       DOUBLE PRECISION, INTENT(IN) :: PROPNU,DIFNU,GAMMA
00228       DOUBLE PRECISION, INTENT(INOUT) :: AT,DT,MASSES,DTT
00229       DOUBLE PRECISION, INTENT(INOUT) :: H(NPOIN),QU(NPOIN),QV(NPOIN)
00230       DOUBLE PRECISION, INTENT(INOUT) :: W1(*)
00231 
00232       DOUBLE PRECISION, INTENT(INOUT) :: DSZ(2,*),HC(2,*)
00233       DOUBLE PRECISION, INTENT(INOUT) :: U(NPOIN),V(NPOIN),HN(NPOIN)
00234       DOUBLE PRECISION, INTENT(IN)    :: SMH(NPOIN)
00235       DOUBLE PRECISION, INTENT(IN)    :: CF(NPOIN),ZF(NPOIN),G
00236       DOUBLE PRECISION, INTENT(INOUT) :: HSTOK(DIMT),HCSTOK(2,*)
00237       DOUBLE PRECISION, INTENT(IN)    :: HBOR(NPTFR),UBOR(NPTFR)
00238       DOUBLE PRECISION, INTENT(IN)    :: VBOR(NPTFR)
00239       DOUBLE PRECISION, INTENT(IN)    :: TSCE2(MAXSCE,MAXTRA)
00240       DOUBLE PRECISION, INTENT(INOUT) :: DX(3,*),DY(3,*)
00241       DOUBLE PRECISION, INTENT(IN)    :: AIRST(2,*)
00242       DOUBLE PRECISION, INTENT(INOUT) :: DPX(3,*),DPY(3,*)
00243       DOUBLE PRECISION, INTENT(INOUT) :: CMI(NSEG,2),DJX(3,*),DJY(3,*)
00244       DOUBLE PRECISION, INTENT(IN)    :: CFLWTD,DTHAUT(NPOIN),TMAX
00245       DOUBLE PRECISION, INTENT(INOUT) :: FLUSOR,FLUENT,DTN,MASSOU(*)
00246       DOUBLE PRECISION, INTENT(INOUT) :: FLUSORTN,FLUENTN
00247       DOUBLE PRECISION, INTENT(INOUT) :: DJXT(*),DJYT(*)
00248       DOUBLE PRECISION, INTENT(INOUT) :: FLUTENT(*),FLUTSOR(*)
00249       TYPE(BIEF_OBJ), INTENT(INOUT)   :: TB
00250       TYPE(BIEF_MESH), INTENT(INOUT)  :: MESH
00251       TYPE(BIEF_OBJ) , INTENT(IN)     :: TBOR,TN,V2DPAR
00252       TYPE(BIEF_OBJ) , INTENT(INOUT)  :: T,HT,SMTR,FLUHBOR,FLUHBTEMP
00253       TYPE(BIEF_OBJ) , INTENT(INOUT)  :: FLUXTEMP,FLUXT,FLBOR,FLUX_OLD
00254 !
00255 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00256 !
00257 !
00258 !
00259       MASSES = 0.D0
00260 !
00261       CALL RESOLU(W1,W1(1+3*NPOIN),MESH%NUBO%I,
00262      &            MESH%VNOIN%R,W1(1+9*NPOIN),AT,DT,LT,
00263      &            NELEM,MESH%NSEG,NPTFR,W1(1+6*NPOIN),
00264 !RA  &            TB%ADR(1)%P%R,MESH%SURFAC%R,
00265      &            V2DPAR%R,MESH%SURFAC%R,
00266      &            MESH%X%R,MESH%Y%R,MESH%IKLE%I,
00267      &            ZF,CF,NPOIN,HN,H,U,V,QU,QV,G,LISTIN,
00268      &            MESH%XNEBOR%R,MESH%YNEBOR%R,
00269      &            LIMPRO,NBOR,KDIR,KNEU,KDDL,HBOR,UBOR,VBOR,
00270      &            FLUSOR,FLUENT,CFLWTD,DTVARI,MESH%NELMAX,KFROT,
00271      &            NREJET,ISCE,TSCE2,MAXSCE,MAXTRA,YASMH,SMH,MASSES,
00272      &            NTRAC,DIMT,T,HT,TN,DIMT,
00273      &            TBOR,MASSOU,FLUTENT,FLUTSOR,DTHAUT,DPX,DPY,DJX,DJY,
00274      &            CMI,JMI,SMTR,TB%ADR(3)%P%R,TB%ADR(4)%P%R,
00275      &            DJXT,DJYT,DIFVIT,ITURB,PROPNU,DIFT,DIFNU,DX,DY,OPTVF,
00276      &            FLUSORTN,FLUENTN,DSZ,AIRST,HSTOK,HCSTOK,FLUXT,FLUHBOR,
00277      &            FLBOR,LOGFR,LTT,DTN,FLUXTEMP,FLUHBTEMP,HC,TMAX,DTT,
00278      &            TB%ADR(6)%P%R,TB%ADR(7)%P%R,TB%ADR(8)%P%R,
00279      &            TB%ADR(9)%P%R,TB%ADR(10)%P%R,
00280      &            GAMMA,FLUX_OLD%R,MXPTVS,NEISEG,
00281      &            MESH%ELTSEG%I,MESH%IFABOR%I,MESH)
00282 !
00283 !-----------------------------------------------------------------------
00284 !
00285       RETURN
00286       END

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