INTERFACE:
module suspended_matterDESCRIPTION:
This model for Suspended Particulate Matter (SPM) considers a single class of non-cohesive SPM particles that do not interact with the mean flow (no density effect of SPM is taken into account by default). The concentration of SPM is modelled with the tracer equation. At the bottom, the net SPM flux is the residual of erosion and sedimentation fluxes:
where erosion and sedimentation fluxes are modelled following Krone (1962) as functions of the bottom shear stress . In (121), is a positive settling velocity. So far, GETM is only coded for constant settling velocities. The erosion flux is only non-zero when the bottom shear stress exceeds a critical shear stress : with erosion constant with units kg s m and the fluff layer SPM content (see below). The sedimentation flux is only non-zero for bottom shear stresses smaller than a critical shear stress . This flux is limited by the near bottom concentration : Critical shear stresses for erosion and sedimentation ( and have as units N m). However, the SPM flux between the water column and the bed may be switched off by setting spm_method in spm.inp to zero. A pool of non-dynamic particulate matter (fluff layer) is assumed in order to take into account the effects of depletion of erodible material at the bottom. A horizontally homogeneous distribution with kg m is initially assumed. Sedimentation and erosion fill and empty this pool, respectively: and the erosion flux is constricted by the availability of SPM from the pool (see eq. (122)). The erosion and sedimentation fluxes are discretised using the quasi-implicit Patankar (1980) approach, which guarantees positivity of SPM, but only in the diffusion step, negative values might appear after the advection step, although these negative values should be small. The settling of SPM is linearly reduced towards zero when the water depth is between the critical and the minimum water depth. This is done by means of multiplication of the settling velocity with , (see the definition in equation (5)).It is possible to take into account the impact of sediments on density by setting spm_dens to .true. The modified density is computed as:
USES:
use exceptions use domain, only: imin,jmin,imax,jmax,kmax,ioff,joff #ifdef TRACER_POSITIVE use m2d, only : z,D #endif use domain, only: H,az use parameters, only: rho_0,g use variables_3d, only: hn,taub,spm,spm_ws,spm_pool use halo_zones, only: update_3d_halo,wait_halo,D_TAG,H_TAG IMPLICIT NONE privatePUBLIC DATA MEMBERS:
public init_spm, do_spm logical, public :: spm_calc=.false. logical, public :: spm_save=.true. logical, public :: spm_hotstart=.false. !PRIVATE DATA MEMBERS: integer :: spm_method=1 integer :: spm_init_method=1, spm_format=2 character(len=PATH_MAX) :: spm_file="spm.nc" character(len=32) :: spm_name='spm' integer :: spm_adv_split=0 integer :: spm_adv_hor=1 integer :: spm_adv_ver=1 REALTYPE :: spm_AH = -_ONE_ REALTYPE :: spm_const= _ZERO_ REALTYPE :: spm_init= _ZERO_ integer :: spm_ws_method = 0 REALTYPE :: spm_ws_const=0.001 REALTYPE :: spm_erosion_const, spm_tauc_sedimentation REALTYPE :: spm_tauc_erosion, spm_pool_init REALTYPE :: spm_porosity=_ZERO_ REALTYPE :: spm_rho= 2650. logical :: spm_dens=.false. For erosion-sedimentation flux REALTYPE :: Erosion_flux , Sedimentation_flux logical :: erosed_flux =.false. For flocculation (not yet in namelist) REALTYPE :: spm_gellingC=0.08 !(g/l or kg/m3) REALTYPE :: spm_part_density=2650. !(g/l or kg/m3) integer :: spm_mfloc=4REVISION HISTORY:
Original author(s): Manuel Ruiz Villarreal, Karsten Bolding and Hans Burchard