The TELEMAC-MASCARET system  trunk
Functions/Subroutines
suspension_computation.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine suspension_computation (SLVTRA, HN, HN_TEL, UCONV, VCONV, MU, TOB, FDM, FD90, KSP, KSR, KS, ELAY, AVA, AFBOR, BFBOR, LIMDIF, CLT, MASKEL, MASKTR, MASKPT, IFAMAS, NPOIN, IELM, NPTFR, ITRA, LT, NIT, RESOL, OPTBAN, KENT, KDDL, KDIR, KSORT, KLOG, KNEU, OPTADV, OPDTRA, DEBUG, CSF_SABLE, TETA_SUSP, DT, MASED0, ZERO, XWC, KARMAN, XMVE, XMVS, VCE, GRAV, HMIN, VITCD, PARTHENIADES, ENTETS, BILMA, MSK, CHARR, IMP_INFLOW_C, MESH, ZF, CS, CST, CTILD, CBOR, DISP, IT1, IT2, IT3, IT4, TB, T1, T2, T3, T4, T8, T9, T10, T11, T12, T14, TE1, TE2, TE3, S, AM1_S, AM2_S, MBOR, MASTEN, MASTOU, MASINI, AC, ZFCL_S, FLUDPT, FLUDP, FLUER, HPROP, DISP_C, CSTAEQ, CSRATIO, MASFIN, MASDEPT, MASDEP, MASSOU, QS_C, ICQ, ZREF, CORR_CONV, U2D, V2D, SEDCO, DIFT, DM1, ZCONV, UCONV_TEL, VCONV_TEL, SOLSYS, FLBOR_TEL, FLBOR_SIS, FLBORTRA, CODE, VOLU2D, V2DPAR, UNSV2D, NUMLIQ, NFRLIQ, LICBOR, MIXTE, AVAIL, NSICLA, ES, ES_SABLE, ES_VASE, NOMBLAY, CONC, TOCE_VASE, TOCE_SABLE, FLUER_VASE, TOCE_MIXTE, MS_SABLE, MS_VASE, DIRFLU, QSCLXS, QSCLYS, MAXADV)
 

Function/Subroutine Documentation

◆ suspension_computation()

subroutine suspension_computation ( type (slvcfg), intent(inout)  SLVTRA,
type (bief_obj), intent(in), target  HN,
type (bief_obj), intent(in), target  HN_TEL,
type (bief_obj), intent(inout)  UCONV,
type (bief_obj), intent(inout)  VCONV,
type (bief_obj), intent(in)  MU,
type (bief_obj), intent(in)  TOB,
double precision, intent(in)  FDM,
double precision, intent(in)  FD90,
type (bief_obj), intent(in)  KSP,
type (bief_obj), intent(in)  KSR,
type (bief_obj), intent(in)  KS,
type (bief_obj), intent(inout)  ELAY,
double precision, dimension(npoin), intent(in)  AVA,
type (bief_obj), intent(in)  AFBOR,
type (bief_obj), intent(in)  BFBOR,
type (bief_obj), intent(inout)  LIMDIF,
type (bief_obj), intent(inout)  CLT,
type (bief_obj), intent(in)  MASKEL,
type (bief_obj), intent(inout)  MASKTR,
type (bief_obj), intent(in)  MASKPT,
type (bief_obj), intent(in)  IFAMAS,
integer, intent(in)  NPOIN,
integer, intent(in)  IELM,
integer, intent(in)  NPTFR,
integer, intent(in)  ITRA,
integer, intent(in)  LT,
integer, intent(in)  NIT,
integer, intent(in)  RESOL,
integer, intent(in)  OPTBAN,
integer, intent(in)  KENT,
integer, intent(in)  KDDL,
integer, intent(in)  KDIR,
integer, intent(in)  KSORT,
integer, intent(in)  KLOG,
integer, intent(in)  KNEU,
integer, intent(in)  OPTADV,
integer, intent(in)  OPDTRA,
integer, intent(in)  DEBUG,
double precision, intent(in)  CSF_SABLE,
double precision, intent(in)  TETA_SUSP,
double precision, intent(in)  DT,
double precision, intent(in)  MASED0,
double precision, intent(in)  ZERO,
double precision, intent(in)  XWC,
double precision, intent(in)  KARMAN,
double precision, intent(in)  XMVE,
double precision, intent(in)  XMVS,
double precision, intent(in)  VCE,
double precision, intent(in)  GRAV,
double precision, intent(in)  HMIN,
double precision, intent(in)  VITCD,
double precision, intent(in)  PARTHENIADES,
logical, intent(in)  ENTETS,
logical, intent(in)  BILMA,
logical, intent(in)  MSK,
logical, intent(in)  CHARR,
logical, intent(in)  IMP_INFLOW_C,
type (bief_mesh), intent(inout)  MESH,
type (bief_obj), intent(in)  ZF,
type (bief_obj), intent(inout)  CS,
type (bief_obj), intent(inout)  CST,
type (bief_obj), intent(inout)  CTILD,
type (bief_obj), intent(inout)  CBOR,
type (bief_obj), intent(inout)  DISP,
type (bief_obj), intent(inout)  IT1,
type (bief_obj), intent(inout)  IT2,
type (bief_obj), intent(inout)  IT3,
type (bief_obj), intent(inout)  IT4,
type (bief_obj), intent(inout)  TB,
type (bief_obj), intent(inout), target  T1,
type (bief_obj), intent(inout)  T2,
type (bief_obj), intent(inout)  T3,
type (bief_obj), intent(inout)  T4,
type (bief_obj), intent(inout)  T8,
type (bief_obj), intent(inout)  T9,
type (bief_obj), intent(inout)  T10,
type (bief_obj), intent(inout)  T11,
type (bief_obj), intent(inout)  T12,
type (bief_obj), intent(inout)  T14,
type (bief_obj), intent(inout)  TE1,
type (bief_obj), intent(inout)  TE2,
type (bief_obj), intent(inout)  TE3,
type (bief_obj), intent(inout)  S,
type (bief_obj), intent(inout)  AM1_S,
type (bief_obj), intent(inout)  AM2_S,
type (bief_obj), intent(inout)  MBOR,
double precision, intent(inout)  MASTEN,
double precision, intent(inout)  MASTOU,
double precision, intent(inout)  MASINI,
double precision, intent(inout)  AC,
type (bief_obj), intent(inout)  ZFCL_S,
type (bief_obj), intent(inout)  FLUDPT,
type (bief_obj), intent(inout)  FLUDP,
type (bief_obj), intent(inout)  FLUER,
type (bief_obj), intent(inout)  HPROP,
type (bief_obj), intent(inout)  DISP_C,
type (bief_obj), intent(inout)  CSTAEQ,
type (bief_obj), intent(inout)  CSRATIO,
double precision, intent(inout)  MASFIN,
double precision, intent(inout)  MASDEPT,
double precision, intent(inout)  MASDEP,
double precision, intent(inout)  MASSOU,
type (bief_obj), intent(in)  QS_C,
integer, intent(in)  ICQ,
type (bief_obj), intent(inout)  ZREF,
logical, intent(in)  CORR_CONV,
type (bief_obj), intent(in)  U2D,
type (bief_obj), intent(in)  V2D,
logical, intent(in)  SEDCO,
logical, intent(in)  DIFT,
type (bief_obj), intent(in)  DM1,
type (bief_obj), intent(in)  ZCONV,
type (bief_obj), intent(in)  UCONV_TEL,
type (bief_obj), intent(in)  VCONV_TEL,
integer, intent(in)  SOLSYS,
type (bief_obj), intent(in)  FLBOR_TEL,
type (bief_obj), intent(inout)  FLBOR_SIS,
type (bief_obj), intent(inout)  FLBORTRA,
character(len=24), intent(in)  CODE,
type (bief_obj), intent(in)  VOLU2D,
type (bief_obj), intent(in)  V2DPAR,
type (bief_obj), intent(in)  UNSV2D,
integer, dimension(*), intent(in)  NUMLIQ,
integer, intent(in)  NFRLIQ,
type (bief_obj), intent(in)  LICBOR,
logical, intent(in)  MIXTE,
double precision, dimension(npoin,nomblay,nsicla), intent(inout)  AVAIL,
integer, intent(in)  NSICLA,
double precision, dimension(npoin,nomblay), intent(inout)  ES,
double precision, dimension(*), intent(inout)  ES_SABLE,
double precision, dimension(*), intent(inout)  ES_VASE,
integer, intent(in)  NOMBLAY,
double precision, dimension(npoin,nomblay), intent(inout)  CONC,
double precision, dimension(nomblay), intent(inout)  TOCE_VASE,
double precision, intent(inout)  TOCE_SABLE,
type (bief_obj), intent(inout)  FLUER_VASE,
type (bief_obj), intent(inout)  TOCE_MIXTE,
double precision, dimension(*), intent(inout)  MS_SABLE,
double precision, dimension(*), intent(inout)  MS_VASE,
integer, intent(in)  DIRFLU,
type (bief_obj), intent(inout)  QSCLXS,
type (bief_obj), intent(inout)  QSCLYS,
integer, intent(in)  MAXADV 
)
Parameters
[in,out]slvtra[in, out] AC Critical shields parameter
[in]ACLADMMean diameter of sediment
[in]AFBORBoundary condition on f: nu*df/dn=afbor*f+bfbor
[in,out]AM1_SMatrix object
[in,out]AM2_SMatrix object
[in,out]AVAILVolume percent of each class
[in]BFBORBoundary condition on f: nu*df/dn=afbor*f+bfbor
[in]BILMAMass balance
[in,out]CBORImposed suspended sand concentration at the boundary
[in]CFQuadratic friction coefficient
[in]CHARRLogical, bedload or not
[in,out]CLTBoundary conditions for tracer (modified litbor)
[in]CODEHydrodynamic code in case of coupling
[in,out]CONC_VASEMud concentration for each layer
[in]CORR_CONVCorrection on convection velocity
[in,out]CSConcentration at time n
[in]CSF_SABLEVolume concentration of the sand bed
[in,out]CSRATIOEquilibrium concentration for soulsby-van rijn eq.
[in,out]CSTConcentration at time t(n+1)
[in,out]CSTAEQEquilibrium concentration
[in,out]CTILDConcentration after advection
[in]DEBUGFlag for debugging
[in]DIFTDiffusion of suspended sediment concentration
[in]DISPViscosity coefficients along x,y and z . IF P0 : PER ELEMENT IF P1 : PERR POINT
[in,out]DISP_SWork array for saving dispc
[in]DM1The piece-wise constant part of advection field IS DM1*GRAD(ZCONV)
[in]DTSTime step for suspension
[in,out]ELAYThickness of each layer
[in,out]ENTETLogical, if yes information is given on mass conservation
[in]ENTETSLogical, if yes information is given on mass conservation for suspension
[in,out]ESLayer thicknesses as double precision
[in,out]FLBORTRAFluxes at boundaries tracer
[in,out]FLBOR_SISFluxes at boundaries sisyphe
[in]FLBOR_TELFluxes at boundaries telemac
[in,out]FLUDPDeposition flux
[in,out]FLUDPTDeposition flux (implicit)
[in,out]FLUERErosion flux
[in,out]FLUER_VASEFor mixed sediments
[in]GRAVAcceleration of gravity
[in]HMINMinimum value of water depth
[in]HNWater depth
[in]HN_TELWater depth as sent by telemac or calling code
[in,out]HPROPPropagation depth (done in cvdftr)
[in]ICQReference concentration formula
[in]IELMType of element
[in]IFAMASA modified ifabor when elements are masked
[in]IMP_INFLOW_CImposed concentration in inflow
[in,out]IT1Integer work array in a bief_obj structure
[in,out]IT2Integer work array in a bief_obj structure
[in,out]IT3Integer work array in a bief_obj structure
[in,out]IT4Integer work array in a bief_obj structure
[in]KARMANVon karman constant
[in]KDDLConvention for degree of freedom
[in]KDIRConvention for dirichlet point
[in]KENTConvention for liquid input with prescribed value
[in]KINCConvention for incident wave boundary condition
[in]KLOGConvention for solid boundary
[in]KNEUConvention for neumann condition
[in]KSTotal bed roughness
[in]KSORTConvention for free output
[in]KSPSkin bed roughness
[in]KSRRipple bed roughness
[in,out]KXCoefficients of the dispersion tensor (dim. npoin)
[in,out]KYCoefficients of the dispersion tensor (dim. npoin)
[in,out]KZCoefficients of the dispersion tensor (dim. npoin)
[in]LICBORBoundary conditions for sediment
[in,out]LIMDIFBoundary conditions for diffusion
[in]LTIteration
[out]MASDEPTotal deposited mass
[out]MASDEPTDeposited mass during the time step
[in,out]MASED0Suspended mass balance
[out]MASFINMass at the end
[in,out]MASINIInitial mass
[in]MASKELMasking of elements
[in]MASKPTMasking per point
[in,out]MASKTRMasking for tracers, per point
[out]MASSOUMass of tracer added by source term SEE DIFSOU
[out]MASTCP??? ne sert a rien, a supprimer
[in,out]MASTENMass entered through liquid boundary
[in,out]MASTOUMass created by source term
[in,out]MAXADVMaximum number of iterations of advection schemes
[in,out]MBORMatrix object
[in,out]MESHMesh structure
[in]MIXTEMixture of cohesive and non cohesive sediment
[in]MSKIf yes, there is masked elements
[in,out]MS_SABLEMass of sand per layer (kg/m2)
[in,out]MS_VASEMass of mud per layer (kg/m2)
[in]MUCorrection factor for bed roughness
[in]NOMBLAYNumber of layers
[in]NFRLIQNumber of liquid boundaries
[in]NITTotal number of iterations
[in]NPOINNumber of points
[in]NPTFRNumber of boundary points
[in]NSICLANumber of size classes for bed materials
[in]NUMLIQLiquid boundary number of boundary points
[in]OPDTRAOption for the diffusion of tracers
[in]OPTBANOption for the treatment of tidal flats
[in]OPTDIFOption for the dispersion
[in]OPTADVScheme option for advection
[in]PARTHENIADESConstant of the krone and partheniades erosion law (m/s)
[in,out]PASSIn fact pass_susp in sisyphe.f, arrives as .true. AT FIRST CALL AND IS CHANGED INTO .FALSE. BELOW
[in,out]QSCLXSTransport rate for each class x-direction
[in,out]QSCLYSTransport rate for each class y-direction
[in,out]QSCL_SSuspended load transport rate
[in,out]QSXSSolid discharge x (suspension)
[in,out]QSYSSolid discharge y (suspension)
[in]QS_CBedload transport rate
[in,out]QS_SSuspended transport rate
[in]RESOLChoice of advection scheme
[in,out]SVoid structure
[in]SEDCOLogical, sediment cohesive or not
[in,out]SLVTRASlvcfg structure
[in]SOLSYSSlvcfg structure
[in,out]T1Work bief_obj structure
[in,out]T10Work bief_obj structure
[in,out]T11Work bief_obj structure
[in,out]T12Work bief_obj structure
[in,out]T2Work bief_obj structure
[in,out]T3Work bief_obj structure
[in,out]T4Work bief_obj structure
[in,out]T5Work bief_obj structure
[in,out]T6Work bief_obj structure
[in,out]T7Work bief_obj structure
[in,out]T8Work bief_obj structure
[in,out]T9Work bief_obj structure
[in]TASSConsolidation taken into account
[in]TBBlock of working arrays
[in,out]TE1Working array for elements
[in,out]TE2Working array for elements
[in,out]TE3Working array for elements
[in,out]TETA_SUSPImplicitation factor for the deposition flux and diffusion
[in]TOBBed shear stress (total friction)
[in,out]TOCE_SABLECritical bed shear stress of sand
[in,out]TOCE_MIXTECritical bed shear stress of the mixed seduiment per layer
[in,out]TOCE_VASECritical erosion shear stress of the mud per layer (n/m2)
[in]U2DMean flow velocity x-direction
[in,out]UCONVX-component advection field (sisyphe)
[in]UCONV_TELX-component advection field (telemac)
[in]UNSV2DInverse of integrals of test functions
[in]V2DMean flow velocity y-direction
[in]V2DPARIntegral of test functions, assembled in parallel
[in]VCEFlow viscosity
[in,out]VCONVY-component advection field (sisyphe)
[in]VCONV_TELY-component advection field (telemac)
[in]VISC_TELVelocity diffusivity (telemac)
[in]VITCDCritical shear velocity for mud deposition
[in]VOLU2DIntegral of bases
[in,out]W1Working array
[in]XKXCoefficient used for computing the dispersion DEPENDS OF OPTIONS
[in]XKYCoefficient used for computing the dispersion DEPENDS OF OPTIONS
[in]XMVEFluid density
[in]XMVSSediment density
[in]XWCSettling velocities
[in]ZCONVThe piece-wise constant part of advection field IS DM1*GRAD(ZCONV)
[in]ZEROZero
[in]ZFElevation of bottom
[in,out]ZFCL_SBed evolution per class, due to suspended sediment
[in,out]ZF_SAccumulated bed evolution due to suspended sediment
[in,out]ZREFReference elevation

Definition at line 25 of file suspension_computation.f.

+ Here is the call graph for this function:
+ Here is the caller graph for this function: