SCALE-RM
scale_land_grid_icoA_index.F90
Go to the documentation of this file.
1 !-------------------------------------------------------------------------------
9 !-------------------------------------------------------------------------------
10 #include "scalelib.h"
12  !-----------------------------------------------------------------------------
13  !
14  !++ used modules
15  !
16  use scale_precision
17  use scale_io
18  use scale_prof
19  !-----------------------------------------------------------------------------
20  implicit none
21  private
22  !-----------------------------------------------------------------------------
23  !
24  !++ Public procedure
25  !
27 
28  !-----------------------------------------------------------------------------
29  !
30  !++ Public parameters & variables
31  !
32  integer, public :: lkmax = -1 ! # of computational cells: z for land
33  integer, public :: limax = -1 ! # of computational cells: x for land
34  integer, public :: ljmax = -1 ! # of computational cells: y for land
35 
36  integer, public :: lka ! # of total grids: z for land, local
37  integer, public :: lia ! # of total grids: x for land, local
38  integer, public :: lja ! # of total grids: y for land, local
39 
40  integer, public :: lks ! start point of inner domain: z for land, local
41  integer, public :: lke ! end point of inner domain: z for land, local
42  integer, public :: lis ! start point of inner domain: x for land, local
43  integer, public :: lie ! end point of inner domain: x for land, local
44  integer, public :: ljs ! start point of inner domain: y for land, local
45  integer, public :: lje ! end point of inner domain: y for land, local
46 
47  !-----------------------------------------------------------------------------
48  !
49  !++ Private procedure
50  !
51  !-----------------------------------------------------------------------------
52  !
53  !++ Private parameters & variables
54  !
55  !-----------------------------------------------------------------------------
56 contains
57  !-----------------------------------------------------------------------------
60  use scale_prc, only: &
61  prc_abort
62  use scale_atmos_grid_icoa_index, only: &
63  imax, &
64  ia, is, ie, &
65  jmax, &
66  ja, js, je
67  implicit none
68 
69  namelist / param_land_grid_icoa_index / &
70  lkmax
71 
72  integer :: ierr
73  !---------------------------------------------------------------------------
74 
75  log_newline
76  log_info("LAND_GRID_ICOA_INDEX_setup",*) 'Setup'
77 
78  !--- read namelist
79  rewind(io_fid_conf)
80  read(io_fid_conf,nml=param_land_grid_icoa_index,iostat=ierr)
81  if( ierr < 0 ) then !--- missing
82  log_info("LAND_GRID_ICOA_INDEX_setup",*) 'Not found namelist. Default used.'
83  elseif( ierr > 0 ) then !--- fatal error
84  log_error("LAND_GRID_ICOA_INDEX_setup",*) 'Not appropriate names in namelist PARAM_LAND_GRID_ICOA_INDEX. Check!'
85  call prc_abort
86  endif
87  log_nml(param_land_grid_icoa_index)
88 
89  if ( lkmax < 1 ) then
90  log_error("LAND_GRID_ICOA_INDEX_setup",*) 'LKMAX must be >= 1 ', lkmax
91  call prc_abort
92  end if
93 
94  lks = 1
95  lke = lkmax
96  lka = lkmax
97 
98  log_newline
99  log_info("LAND_GRID_ICOA_INDEX_setup",*) 'Land grid index information '
100  log_info_cont('(1x,A,I6,A,I6,A,I6)') 'z-axis levels :', lkmax
101 
102  ! at this moment horizontal grid is same as that in atmosphere
103  limax = imax
104  lia = ia
105  lis = is
106  lie = ie
107 
108  ljmax = jmax
109  lja = ja
110  ljs = js
111  lje = je
112 
113  return
114  end subroutine land_grid_icoa_index_setup
115 
scale_atmos_grid_icoa_index::ia
integer, public ia
Definition: scale_atmos_grid_icoA_index.F90:93
scale_land_grid_icoa_index::lka
integer, public lka
Definition: scale_land_grid_icoA_index.F90:36
scale_land_grid_icoa_index::ljs
integer, public ljs
Definition: scale_land_grid_icoA_index.F90:44
scale_prc::prc_abort
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:350
scale_land_grid_icoa_index::lks
integer, public lks
Definition: scale_land_grid_icoA_index.F90:40
scale_precision
module PRECISION
Definition: scale_precision.F90:14
scale_land_grid_icoa_index::lke
integer, public lke
Definition: scale_land_grid_icoA_index.F90:41
scale_land_grid_icoa_index::lie
integer, public lie
Definition: scale_land_grid_icoA_index.F90:43
scale_land_grid_icoa_index::lia
integer, public lia
Definition: scale_land_grid_icoA_index.F90:37
scale_land_grid_icoa_index::lis
integer, public lis
Definition: scale_land_grid_icoA_index.F90:42
scale_land_grid_icoa_index::lja
integer, public lja
Definition: scale_land_grid_icoA_index.F90:38
scale_atmos_grid_icoa_index::je
integer, public je
Definition: scale_atmos_grid_icoA_index.F90:96
scale_prc
module PROCESS
Definition: scale_prc.F90:11
scale_io
module STDIO
Definition: scale_io.F90:10
scale_land_grid_icoa_index::land_grid_icoa_index_setup
subroutine, public land_grid_icoa_index_setup
Setup.
Definition: scale_land_grid_icoA_index.F90:60
scale_atmos_grid_icoa_index::ie
integer, public ie
Definition: scale_atmos_grid_icoA_index.F90:92
scale_atmos_grid_icoa_index::is
integer, parameter, public is
Definition: scale_atmos_grid_icoA_index.F90:91
scale_prof
module profiler
Definition: scale_prof.F90:11
scale_land_grid_icoa_index::ljmax
integer, public ljmax
Definition: scale_land_grid_icoA_index.F90:34
scale_atmos_grid_icoa_index::jmax
integer, public jmax
Definition: scale_atmos_grid_icoA_index.F90:94
scale_land_grid_icoa_index::lje
integer, public lje
Definition: scale_land_grid_icoA_index.F90:45
scale_land_grid_icoa_index::limax
integer, public limax
Definition: scale_land_grid_icoA_index.F90:33
scale_atmos_grid_icoa_index
module atmosphere / grid / icosahedralA / index
Definition: scale_atmos_grid_icoA_index.F90:12
scale_atmos_grid_icoa_index::imax
integer, public imax
Definition: scale_atmos_grid_icoA_index.F90:90
scale_land_grid_icoa_index
module land / grid / icosahedralA / index
Definition: scale_land_grid_icoA_index.F90:11
scale_atmos_grid_icoa_index::ja
integer, public ja
Definition: scale_atmos_grid_icoA_index.F90:97
scale_io::io_fid_conf
integer, public io_fid_conf
Config file ID.
Definition: scale_io.F90:57
scale_land_grid_icoa_index::lkmax
integer, public lkmax
Definition: scale_land_grid_icoA_index.F90:32
scale_atmos_grid_icoa_index::js
integer, parameter, public js
Definition: scale_atmos_grid_icoA_index.F90:95