SCALE-RM
scale_urban_grid_cartesC_real.F90
Go to the documentation of this file.
1 !-------------------------------------------------------------------------------
10 !-------------------------------------------------------------------------------
11 #include "scalelib.h"
13  !-----------------------------------------------------------------------------
14  !
15  !++ used modules
16  !
17  use scale_precision
18  use scale_io
19  use scale_prof
22  !-----------------------------------------------------------------------------
23  implicit none
24  private
25  !-----------------------------------------------------------------------------
26  !
27  !++ Public procedure
28  !
32 
33  !-----------------------------------------------------------------------------
34  !
35  !++ Public parameters & variables
36  !
37  real(rp), public, allocatable :: urban_grid_cartesc_real_area(:,:)
39  real(rp), public, allocatable :: urban_grid_cartesc_real_vol (:,:,:)
41 
42  !-----------------------------------------------------------------------------
43  !
44  !++ Private procedure
45  !
46  !-----------------------------------------------------------------------------
47  !
48  !++ Private parameters & variables
49  !
50  !-----------------------------------------------------------------------------
51 contains
52  !-----------------------------------------------------------------------------
55 
56  ! at this moment, horizontal grid is identical to that of the atmosphere
59  !$acc enter data create(URBAN_GRID_CARTESC_REAL_AREA,URBAN_GRID_CARTESC_REAL_VOL)
60 
61  return
62  end subroutine urban_grid_cartesc_real_setup
63 
64  !-----------------------------------------------------------------------------
67  implicit none
68 
69  !$acc exit data delete(URBAN_GRID_CARTESC_REAL_AREA,URBAN_GRID_CARTESC_REAL_VOL)
70  deallocate( urban_grid_cartesc_real_area )
71  deallocate( urban_grid_cartesc_real_vol )
72 
73  return
75 
76  !-----------------------------------------------------------------------------
80  use scale_urban_grid_cartesc, only: &
82  use scale_file_cartesc, only: &
84  use scale_landuse, only: &
86 
87  integer :: k, i, j
88 
89  do j = 1, uja
90  do i = 1, uia
92  end do
93  end do
94 
96  do j = ujs, uje
97  do i = uis, uie
99  end do
100  end do
101 
102  do j = 1, uja
103  do i = 1, uia
104  do k = uks, uke
106  enddo
107  enddo
108  enddo
109 
111  do j = ujs, uje
112  do i = uis, uie
113  do k = uks, uke
115  end do
116  end do
117  end do
118 
119  !$acc update device(URBAN_GRID_CARTESC_REAL_AREA,URBAN_GRID_CARTESC_REAL_VOL)
120 
122 
123  return
125 
scale_urban_grid_cartesc_index::uja
integer, public uja
Definition: scale_urban_grid_cartesC_index.F90:45
scale_urban_grid_cartesc_real::urban_grid_cartesc_real_vol
real(rp), dimension(:,:,:), allocatable, public urban_grid_cartesc_real_vol
volume of grid cell
Definition: scale_urban_grid_cartesC_real.F90:39
scale_urban_grid_cartesc_real::urban_grid_cartesc_real_totvol
real(rp), public urban_grid_cartesc_real_totvol
total volume
Definition: scale_urban_grid_cartesC_real.F90:40
scale_urban_grid_cartesc::urban_grid_cartesc_cdz
real(rp), dimension(:), allocatable, public urban_grid_cartesc_cdz
z-length of control volume [m]
Definition: scale_urban_grid_cartesC.F90:38
scale_urban_grid_cartesc_index::uia
integer, public uia
Definition: scale_urban_grid_cartesC_index.F90:41
scale_precision
module PRECISION
Definition: scale_precision.F90:14
scale_file_cartesc::file_cartesc_set_coordinates_urban
subroutine, public file_cartesc_set_coordinates_urban(VOL)
set volume for urban
Definition: scale_file_cartesC.F90:584
scale_urban_grid_cartesc_index
module urban / grid / icosahedralA / index
Definition: scale_urban_grid_cartesC_index.F90:11
scale_atmos_grid_cartesc_real
module Atmosphere GRID CartesC Real(real space)
Definition: scale_atmos_grid_cartesC_real.F90:11
scale_precision::rp
integer, parameter, public rp
Definition: scale_precision.F90:41
scale_io
module STDIO
Definition: scale_io.F90:10
scale_atmos_grid_cartesc_index
module atmosphere / grid / cartesC index
Definition: scale_atmos_grid_cartesC_index.F90:12
scale_urban_grid_cartesc_real::urban_grid_cartesc_real_set_areavol
subroutine, public urban_grid_cartesc_real_set_areavol
Definition: scale_urban_grid_cartesC_real.F90:78
scale_urban_grid_cartesc
module urban / grid / cartesianC
Definition: scale_urban_grid_cartesC.F90:12
scale_prof
module profiler
Definition: scale_prof.F90:11
scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_area
real(rp), dimension(:,:), allocatable, public atmos_grid_cartesc_real_area
horizontal area ( xy, normal z) [m2]
Definition: scale_atmos_grid_cartesC_real.F90:66
scale_urban_grid_cartesc_index::uks
integer, public uks
Definition: scale_urban_grid_cartesC_index.F90:38
scale_urban_grid_cartesc_real::urban_grid_cartesc_real_finalize
subroutine, public urban_grid_cartesc_real_finalize
Finalize.
Definition: scale_urban_grid_cartesC_real.F90:67
scale_urban_grid_cartesc_index::uka
integer, public uka
Definition: scale_urban_grid_cartesC_index.F90:37
scale_urban_grid_cartesc_index::uis
integer, public uis
Definition: scale_urban_grid_cartesC_index.F90:42
scale_landuse::landuse_fact_urban
real(rp), dimension(:,:), allocatable, public landuse_fact_urban
urban factor
Definition: scale_landuse.F90:47
scale_urban_grid_cartesc_real::urban_grid_cartesc_real_totarea
real(rp), public urban_grid_cartesc_real_totarea
total area
Definition: scale_urban_grid_cartesC_real.F90:38
scale_landuse
module LANDUSE
Definition: scale_landuse.F90:19
scale_urban_grid_cartesc_real
module urban / grid / cartesianC / real
Definition: scale_urban_grid_cartesC_real.F90:12
scale_urban_grid_cartesc_real::urban_grid_cartesc_real_setup
subroutine, public urban_grid_cartesc_real_setup
Setup real grid.
Definition: scale_urban_grid_cartesC_real.F90:55
scale_urban_grid_cartesc_index::uje
integer, public uje
Definition: scale_urban_grid_cartesC_index.F90:47
scale_urban_grid_cartesc_index::ujs
integer, public ujs
Definition: scale_urban_grid_cartesC_index.F90:46
scale_file_cartesc
module file / cartesianC
Definition: scale_file_cartesC.F90:11
scale_urban_grid_cartesc_index::uie
integer, public uie
Definition: scale_urban_grid_cartesC_index.F90:43
scale_urban_grid_cartesc_index::uke
integer, public uke
Definition: scale_urban_grid_cartesC_index.F90:39
scale_urban_grid_cartesc_real::urban_grid_cartesc_real_area
real(rp), dimension(:,:), allocatable, public urban_grid_cartesc_real_area
area of grid cell
Definition: scale_urban_grid_cartesC_real.F90:37