SCALE-RM
Functions/Subroutines | Variables
mod_cpl_admin Module Reference

module Coupler admin More...

Functions/Subroutines

subroutine, public cpl_admin_setup
 Setup. More...
 
subroutine, public cpl_admin_getscheme
 Get name of scheme for each component. More...
 

Variables

logical, public cpl_sw
 

Detailed Description

module Coupler admin

Description
Coupler submodel administrator
Author
Team SCALE

Function/Subroutine Documentation

◆ cpl_admin_setup()

subroutine, public mod_cpl_admin::cpl_admin_setup

Setup.

Definition at line 48 of file mod_cpl_admin.F90.

48  use scale_prc, only: &
49  prc_abort
50  use mod_atmos_admin, only: &
53  use mod_ocean_admin, only: &
54  ocean_do
55  use mod_land_admin, only: &
56  land_do
57  use mod_urban_admin, only: &
58  urban_do
59  implicit none
60  !---------------------------------------------------------------------------
61 
62  log_newline
63  log_info("CPL_ADMIN_setup",*) 'Setup'
64 
65  !-----< module component check >-----
66 
67  log_newline
68  log_info("CPL_ADMIN_setup",*) 'Coupler components '
69 
70  ! Atmos-Ocean/Land/Urban Switch
71  if ( ocean_do .OR. land_do .OR. urban_do ) then
72  cpl_sw = .true.
73  else
74  cpl_sw = .false.
75  endif
76 
77  ! Check Atmos_Surface setting
78  if ( cpl_sw ) then
79  log_info_cont(*) 'Coupler : ON'
80 
81  if ( atmos_phy_sf_type == 'COUPLE' ) then
82  ! do nothing
83  elseif( atmos_phy_sf_type == 'NONE' ) then
84  log_info_cont(*) '-> Surface Flux Type is forced to change from NONE to COUPLE.'
85  ! overwrite
86  atmos_phy_sf_type = 'COUPLE'
87  atmos_sw_phy_sf = .true.
88  else
89  log_error("CPL_ADMIN_setup",*) 'Setting conflicts between coupler and surface flux! STOP.'
90  log_error_cont(*) 'Surface Flux : ', trim(atmos_phy_sf_type)
91  call prc_abort
92  endif
93  else
94  log_info_cont(*) 'Coupler : OFF'
95  endif
96 
97  return

References mod_atmos_admin::atmos_phy_sf_type, mod_atmos_admin::atmos_sw_phy_sf, cpl_sw, mod_land_admin::land_do, mod_ocean_admin::ocean_do, scale_prc::prc_abort(), and mod_urban_admin::urban_do.

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:

◆ cpl_admin_getscheme()

subroutine, public mod_cpl_admin::cpl_admin_getscheme

Get name of scheme for each component.

Definition at line 103 of file mod_cpl_admin.F90.

103  implicit none
104  !---------------------------------------------------------------------------
105 
106  return

Variable Documentation

◆ cpl_sw

logical, public mod_cpl_admin::cpl_sw
mod_urban_admin::urban_do
logical, public urban_do
Definition: mod_urban_admin.F90:32
scale_prc::prc_abort
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:342
mod_atmos_admin
module ATMOS admin
Definition: mod_atmos_admin.F90:11
scale_prc
module PROCESS
Definition: scale_prc.F90:11
mod_atmos_admin::atmos_phy_sf_type
character(len=h_short), public atmos_phy_sf_type
Definition: mod_atmos_admin.F90:40
mod_ocean_admin
module Ocean admin
Definition: mod_ocean_admin.F90:11
mod_land_admin
module Land admin
Definition: mod_land_admin.F90:11
mod_ocean_admin::ocean_do
logical, public ocean_do
Definition: mod_ocean_admin.F90:32
mod_land_admin::land_do
logical, public land_do
Definition: mod_land_admin.F90:41
mod_urban_admin
module Urban admin
Definition: mod_urban_admin.F90:11
mod_cpl_admin::cpl_sw
logical, public cpl_sw
Definition: mod_cpl_admin.F90:33
mod_atmos_admin::atmos_sw_phy_sf
logical, public atmos_sw_phy_sf
Definition: mod_atmos_admin.F90:56