INTERFACE:
subroutine init_spm(nml_file,runtype)DESCRIPTION:
Here, the suspended matter equation is initialised. First, the namelist spm is read from getm.inp. Then, depending on the spm_init_method, the suspended matter field is read from a hotstart file (spm_init_method=0), initialised with a constant value (spm_init_method=1), initialised and interpolated with horizontally homogeneous suspended matter from a given suspended matter profile (spm_init_method=2), or read in and interpolated from a 3D netCDF field (spm_init_method=3). Then, some specifications for the SPM bottom pool are given, such as that there should be no initial SPM pool on tidal flats.
As the next step, a number of sanity checks is performed for the chosen suspended matter advection schemes.
Finally, the settling velocity is directly prescibed or calculated by means of the Zanke (1977) formula. USES:
For initialization of spm in intertidal flats
use domain,only: min_depth
use advection, only: J7
use advection_3d, only: print_adv_settings_3d
IMPLICIT NONE
INPUT PARAMETERS:
character(len=*), intent(in) :: nml_file
logical :: hotstart_spm
integer, intent(in) :: runtype
REVISION HISTORY:
See revision for the moduleLOCAL VARIABLES:
integer :: i,j,k,n
integer :: rc
integer, parameter :: nmax=100
REALTYPE :: zlev(nmax),prof(nmax)
No initial pool of spm at intertidal flats
logical :: intertidal_spm0=.false.
namelist /spm_nml/ spm_calc,spm_save,spm_method,spm_init_method, &
spm_const,spm_format,spm_file,spm_name, &
spm_adv_split,spm_adv_hor,spm_adv_ver, &
spm_AH,spm_ws_method,spm_ws_const, &
spm_erosion_const, spm_tauc_sedimentation, &
spm_tauc_erosion, spm_porosity, spm_pool_init, &
spm_rho,spm_dens