SCALE-RM
Functions/Subroutines | Variables
mod_lake_admin Module Reference

module Lake admin More...

Functions/Subroutines

subroutine, public lake_admin_setup
 Setup. More...
 

Variables

logical, public lake_do = .true.
 
character(len=h_short), public lake_dyn_type = 'NONE'
 
character(len=h_short), public lake_sfc_type = 'NONE'
 

Detailed Description

module Lake admin

Description
Lake model administrator
Author
Team SCALE

Function/Subroutine Documentation

◆ lake_admin_setup()

subroutine, public mod_lake_admin::lake_admin_setup

Setup.

Definition at line 51 of file mod_lake_admin.F90.

51  use scale_prc, only: &
52  prc_abort
53  implicit none
54 
55 ! namelist / PARAM_LAKE / &
56 ! LAKE_DYN_TYPE
57 
58 ! integer :: ierr
59  !---------------------------------------------------------------------------
60 
61  log_newline
62  log_info("LAKE_ADMIN_setup",*) 'Setup'
63 
64  !--- read namelist
65 !!$ rewind(IO_FID_CONF)
66 !!$ read(IO_FID_CONF,nml=PARAM_LAKE,iostat=ierr)
67 !!$ if( ierr < 0 ) then !--- missing
68 !!$ LOG_INFO("LAKE_ADMIN_setup",*) 'Not found namelist. Default used.'
69 !!$ elseif( ierr > 0 ) then !--- fatal error
70 !!$ LOG_ERROR("LAKE_ADMIN_setup",*) 'Not appropriate names in namelist PARAM_LAKE. Check!'
71 !!$ call PRC_abort
72 !!$ endif
73 !!$ LOG_NML(PARAM_LAKE)
74 
75  !-----< module component check >-----
76 
77  log_newline
78  log_info("LAKE_ADMIN_setup",*) 'Lake model components '
79 
80  if ( lake_dyn_type /= 'OFF' .AND. lake_dyn_type /= 'NONE' ) then
81  log_error("LAKE_ADMIN_setup",*) 'Currently, no lake model is impremented'
82 !!$ if ( WKMAX < 0 ) then
83 !!$ LOG_ERROR("LAKE_ADMIN_setup",*) 'LAKE_DYN_TYPE is set but WKMAX < 0'
84 !!$ call PRC_abort
85 !!$ end if
86  log_info_cont(*) 'Lake model : ON, ', trim(lake_dyn_type)
87  lake_do = .true.
88  else
89  log_info_cont(*) 'Lake model : OFF'
90  lake_do = .false.
91  endif
92 
93  return

References lake_do, lake_dyn_type, and scale_prc::prc_abort().

Referenced by mod_rm_driver::rm_driver(), and mod_rm_prep::rm_prep().

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

Variable Documentation

◆ lake_do

logical, public mod_lake_admin::lake_do = .true.

Definition at line 32 of file mod_lake_admin.F90.

32  logical, public :: LAKE_do = .true. ! main switch for the model

Referenced by mod_cpl_vars::cpl_vars_setup(), lake_admin_setup(), mod_rm_driver::rm_driver(), and mod_rm_prep::rm_prep().

◆ lake_dyn_type

character(len=h_short), public mod_lake_admin::lake_dyn_type = 'NONE'

Definition at line 34 of file mod_lake_admin.F90.

34  character(len=H_SHORT), public :: LAKE_DYN_TYPE = 'NONE'

Referenced by lake_admin_setup().

◆ lake_sfc_type

character(len=h_short), public mod_lake_admin::lake_sfc_type = 'NONE'

Definition at line 36 of file mod_lake_admin.F90.

36  character(len=H_SHORT), public :: LAKE_SFC_TYPE = 'NONE'
scale_prc::prc_abort
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:342
scale_prc
module PROCESS
Definition: scale_prc.F90:11
mod_lake_admin::lake_do
logical, public lake_do
Definition: mod_lake_admin.F90:32