SCALE-RM
Functions/Subroutines | Variables
mod_cpl_vars Module Reference

module COUPLER Variables More...

Functions/Subroutines

subroutine, public cpl_vars_setup
 Setup. More...
 
subroutine, public cpl_putatm (TEMP, PRES, W, U, V, DENS, QTRC, PBL, SFC_PRES, SFLX_rad_dn, cosSZA, SFLX_rain, SFLX_snow, countup)
 
subroutine, public cpl_putocn (SFC_TEMP, SFC_albedo, SFC_Z0M, SFC_Z0H, SFC_Z0E, SFLX_MW, SFLX_MU, SFLX_MV, SFLX_SH, SFLX_LH, SFLX_WH, SFLX_evap, U10, V10, T2, Q2, countup)
 
subroutine, public cpl_putlnd (SFC_TEMP, SFC_albedo, SFC_Z0M, SFC_Z0H, SFC_Z0E, SFLX_MW, SFLX_MU, SFLX_MV, SFLX_SH, SFLX_LH, SFLX_GH, SFLX_evap, U10, V10, T2, Q2, countup)
 
subroutine, public cpl_puturb (SFC_TEMP, SFC_albedo, SFC_Z0M, SFC_Z0H, SFC_Z0E, SFLX_MW, SFLX_MU, SFLX_MV, SFLX_SH, SFLX_LH, SFLX_GH, SFLX_evap, U10, V10, T2, Q2, countup)
 
subroutine, public cpl_getsfc_atm (SFC_TEMP, SFC_albedo, SFC_Z0M, SFC_Z0H, SFC_Z0E, SFLX_MW, SFLX_MU, SFLX_MV, SFLX_SH, SFLX_LH, SFLX_GH, SFLX_QTRC, U10, V10, T2, Q2)
 
subroutine, public cpl_getatm_ocn (TEMP, PRES, W, U, V, DENS, QV, PBL, SFC_PRES, SFLX_rad_dn, cosSZA, SFLX_rain, SFLX_snow)
 
subroutine, public cpl_getatm_lnd (TEMP, PRES, W, U, V, DENS, QV, PBL, SFC_PRES, SFLX_rad_dn, cosSZA, SFLX_rain, SFLX_snow)
 
subroutine, public cpl_getatm_urb (TEMP, PRES, W, U, V, DENS, QV, PBL, SFC_PRES, SFLX_rad_dn, cosSZA, SFLX_rain, SFLX_snow)
 

Variables

real(rp), dimension(:,:), allocatable, public ocn_sfc_temp
 
real(rp), dimension(:,:,:), allocatable, public ocn_sfc_albedo
 
real(rp), dimension(:,:), allocatable, public ocn_sfc_z0m
 
real(rp), dimension(:,:), allocatable, public ocn_sfc_z0h
 
real(rp), dimension(:,:), allocatable, public ocn_sfc_z0e
 
real(rp), dimension(:,:), allocatable, public ocn_sflx_mw
 
real(rp), dimension(:,:), allocatable, public ocn_sflx_mu
 
real(rp), dimension(:,:), allocatable, public ocn_sflx_mv
 
real(rp), dimension(:,:), allocatable, public ocn_sflx_sh
 
real(rp), dimension(:,:), allocatable, public ocn_sflx_lh
 
real(rp), dimension(:,:), allocatable, public ocn_sflx_wh
 
real(rp), dimension(:,:), allocatable, public ocn_sflx_evap
 
real(rp), dimension(:,:), allocatable, public ocn_u10
 
real(rp), dimension(:,:), allocatable, public ocn_v10
 
real(rp), dimension(:,:), allocatable, public ocn_t2
 
real(rp), dimension(:,:), allocatable, public ocn_q2
 
real(rp), dimension(:,:), allocatable, public lnd_sfc_temp
 
real(rp), dimension(:,:,:), allocatable, public lnd_sfc_albedo
 
real(rp), dimension(:,:), allocatable, public lnd_sfc_z0m
 
real(rp), dimension(:,:), allocatable, public lnd_sfc_z0h
 
real(rp), dimension(:,:), allocatable, public lnd_sfc_z0e
 
real(rp), dimension(:,:), allocatable, public lnd_sflx_mw
 
real(rp), dimension(:,:), allocatable, public lnd_sflx_mu
 
real(rp), dimension(:,:), allocatable, public lnd_sflx_mv
 
real(rp), dimension(:,:), allocatable, public lnd_sflx_sh
 
real(rp), dimension(:,:), allocatable, public lnd_sflx_lh
 
real(rp), dimension(:,:), allocatable, public lnd_sflx_gh
 
real(rp), dimension(:,:), allocatable, public lnd_sflx_evap
 
real(rp), dimension(:,:), allocatable, public lnd_u10
 
real(rp), dimension(:,:), allocatable, public lnd_v10
 
real(rp), dimension(:,:), allocatable, public lnd_t2
 
real(rp), dimension(:,:), allocatable, public lnd_q2
 
real(rp), dimension(:,:), allocatable, public urb_sfc_temp
 
real(rp), dimension(:,:,:), allocatable, public urb_sfc_albedo
 
real(rp), dimension(:,:), allocatable, public urb_sfc_z0m
 
real(rp), dimension(:,:), allocatable, public urb_sfc_z0h
 
real(rp), dimension(:,:), allocatable, public urb_sfc_z0e
 
real(rp), dimension(:,:), allocatable, public urb_sflx_mw
 
real(rp), dimension(:,:), allocatable, public urb_sflx_mu
 
real(rp), dimension(:,:), allocatable, public urb_sflx_mv
 
real(rp), dimension(:,:), allocatable, public urb_sflx_sh
 
real(rp), dimension(:,:), allocatable, public urb_sflx_lh
 
real(rp), dimension(:,:), allocatable, public urb_sflx_gh
 
real(rp), dimension(:,:), allocatable, public urb_sflx_evap
 
real(rp), dimension(:,:), allocatable, public urb_u10
 
real(rp), dimension(:,:), allocatable, public urb_v10
 
real(rp), dimension(:,:), allocatable, public urb_t2
 
real(rp), dimension(:,:), allocatable, public urb_q2
 
real(rp), dimension(:,:), allocatable, public ocn_atm_temp
 
real(rp), dimension(:,:), allocatable, public ocn_atm_pres
 
real(rp), dimension(:,:), allocatable, public ocn_atm_w
 
real(rp), dimension(:,:), allocatable, public ocn_atm_u
 
real(rp), dimension(:,:), allocatable, public ocn_atm_v
 
real(rp), dimension(:,:), allocatable, public ocn_atm_dens
 
real(rp), dimension(:,:), allocatable, public ocn_atm_qv
 
real(rp), dimension(:,:), allocatable, public ocn_atm_pbl
 
real(rp), dimension(:,:), allocatable, public ocn_atm_sfc_pres
 
real(rp), dimension(:,:,:,:), allocatable, public ocn_atm_sflx_rad_dn
 
real(rp), dimension(:,:), allocatable, public ocn_atm_cossza
 
real(rp), dimension(:,:), allocatable, public ocn_atm_sflx_rain
 
real(rp), dimension(:,:), allocatable, public ocn_atm_sflx_snow
 
real(rp), dimension(:,:), allocatable, public lnd_atm_temp
 
real(rp), dimension(:,:), allocatable, public lnd_atm_pres
 
real(rp), dimension(:,:), allocatable, public lnd_atm_w
 
real(rp), dimension(:,:), allocatable, public lnd_atm_u
 
real(rp), dimension(:,:), allocatable, public lnd_atm_v
 
real(rp), dimension(:,:), allocatable, public lnd_atm_dens
 
real(rp), dimension(:,:), allocatable, public lnd_atm_qv
 
real(rp), dimension(:,:), allocatable, public lnd_atm_pbl
 
real(rp), dimension(:,:), allocatable, public lnd_atm_sfc_pres
 
real(rp), dimension(:,:,:,:), allocatable, public lnd_atm_sflx_rad_dn
 
real(rp), dimension(:,:), allocatable, public lnd_atm_cossza
 
real(rp), dimension(:,:), allocatable, public lnd_atm_sflx_rain
 
real(rp), dimension(:,:), allocatable, public lnd_atm_sflx_snow
 
real(rp), dimension(:,:), allocatable, public urb_atm_temp
 
real(rp), dimension(:,:), allocatable, public urb_atm_pres
 
real(rp), dimension(:,:), allocatable, public urb_atm_w
 
real(rp), dimension(:,:), allocatable, public urb_atm_u
 
real(rp), dimension(:,:), allocatable, public urb_atm_v
 
real(rp), dimension(:,:), allocatable, public urb_atm_dens
 
real(rp), dimension(:,:), allocatable, public urb_atm_qv
 
real(rp), dimension(:,:), allocatable, public urb_atm_pbl
 
real(rp), dimension(:,:), allocatable, public urb_atm_sfc_pres
 
real(rp), dimension(:,:,:,:), allocatable, public urb_atm_sflx_rad_dn
 
real(rp), dimension(:,:), allocatable, public urb_atm_cossza
 
real(rp), dimension(:,:), allocatable, public urb_atm_sflx_rain
 
real(rp), dimension(:,:), allocatable, public urb_atm_sflx_snow
 
real(rp), public cnt_putatm_ocn
 
real(rp), public cnt_putatm_lnd
 
real(rp), public cnt_putatm_urb
 
real(rp), public cnt_putocn
 
real(rp), public cnt_putlnd
 
real(rp), public cnt_puturb
 

Detailed Description

module COUPLER Variables

Description
Container for coupler variables
Author
Team SCALE

Function/Subroutine Documentation

◆ cpl_vars_setup()

subroutine, public mod_cpl_vars::cpl_vars_setup ( )

Setup.

Definition at line 169 of file mod_cpl_vars.f90.

References cnt_putatm_lnd, cnt_putatm_ocn, cnt_putatm_urb, cnt_putlnd, cnt_putocn, cnt_puturb, scale_const::const_undef, scale_grid_index::ia, scale_stdio::io_fid_log, scale_stdio::io_l, scale_grid_index::ja, lnd_atm_cossza, lnd_atm_dens, lnd_atm_pbl, lnd_atm_pres, lnd_atm_qv, lnd_atm_sfc_pres, lnd_atm_sflx_rad_dn, lnd_atm_sflx_rain, lnd_atm_sflx_snow, lnd_atm_temp, lnd_atm_u, lnd_atm_v, lnd_atm_w, lnd_q2, lnd_sfc_albedo, lnd_sfc_temp, lnd_sfc_z0e, lnd_sfc_z0h, lnd_sfc_z0m, lnd_sflx_evap, lnd_sflx_gh, lnd_sflx_lh, lnd_sflx_mu, lnd_sflx_mv, lnd_sflx_mw, lnd_sflx_sh, lnd_t2, lnd_u10, lnd_v10, ocn_atm_cossza, ocn_atm_dens, ocn_atm_pbl, ocn_atm_pres, ocn_atm_qv, ocn_atm_sfc_pres, ocn_atm_sflx_rad_dn, ocn_atm_sflx_rain, ocn_atm_sflx_snow, ocn_atm_temp, ocn_atm_u, ocn_atm_v, ocn_atm_w, ocn_q2, ocn_sfc_albedo, ocn_sfc_temp, ocn_sfc_z0e, ocn_sfc_z0h, ocn_sfc_z0m, ocn_sflx_evap, ocn_sflx_lh, ocn_sflx_mu, ocn_sflx_mv, ocn_sflx_mw, ocn_sflx_sh, ocn_sflx_wh, ocn_t2, ocn_u10, ocn_v10, urb_atm_cossza, urb_atm_dens, urb_atm_pbl, urb_atm_pres, urb_atm_qv, urb_atm_sfc_pres, urb_atm_sflx_rad_dn, urb_atm_sflx_rain, urb_atm_sflx_snow, urb_atm_temp, urb_atm_u, urb_atm_v, urb_atm_w, urb_q2, urb_sfc_albedo, urb_sfc_temp, urb_sfc_z0e, urb_sfc_z0h, urb_sfc_z0m, urb_sflx_evap, urb_sflx_gh, urb_sflx_lh, urb_sflx_mu, urb_sflx_mv, urb_sflx_mw, urb_sflx_sh, urb_t2, urb_u10, and urb_v10.

Referenced by mod_rm_driver::scalerm(), and mod_rm_prep::scalerm_prep().

169  use scale_const, only: &
170  undef => const_undef
171  implicit none
172  !---------------------------------------------------------------------------
173 
174  if( io_l ) write(io_fid_log,*)
175  if( io_l ) write(io_fid_log,*) '++++++ Module[VARS] / Categ[CPL] / Origin[SCALE-RM]'
176 
177  allocate( ocn_sfc_temp(ia,ja) )
178  allocate( ocn_sfc_albedo(ia,ja,2) )
179  allocate( ocn_sfc_z0m(ia,ja) )
180  allocate( ocn_sfc_z0h(ia,ja) )
181  allocate( ocn_sfc_z0e(ia,ja) )
182  allocate( ocn_sflx_mu(ia,ja) )
183  allocate( ocn_sflx_mv(ia,ja) )
184  allocate( ocn_sflx_mw(ia,ja) )
185  allocate( ocn_sflx_sh(ia,ja) )
186  allocate( ocn_sflx_lh(ia,ja) )
187  allocate( ocn_sflx_wh(ia,ja) )
188  allocate( ocn_sflx_evap(ia,ja) )
189  allocate( ocn_u10(ia,ja) )
190  allocate( ocn_v10(ia,ja) )
191  allocate( ocn_t2(ia,ja) )
192  allocate( ocn_q2(ia,ja) )
193  ocn_sfc_temp(:,:) = undef
194  ocn_sfc_albedo(:,:,:) = undef
195  ocn_sfc_z0m(:,:) = undef
196  ocn_sfc_z0h(:,:) = undef
197  ocn_sfc_z0e(:,:) = undef
198  ocn_sflx_mu(:,:) = undef
199  ocn_sflx_mv(:,:) = undef
200  ocn_sflx_mw(:,:) = undef
201  ocn_sflx_sh(:,:) = undef
202  ocn_sflx_lh(:,:) = undef
203  ocn_sflx_wh(:,:) = undef
204  ocn_sflx_evap(:,:) = undef
205  ocn_u10(:,:) = undef
206  ocn_v10(:,:) = undef
207  ocn_t2(:,:) = undef
208  ocn_q2(:,:) = undef
209 
210  allocate( lnd_sfc_temp(ia,ja) )
211  allocate( lnd_sfc_albedo(ia,ja,2) )
212  allocate( lnd_sfc_z0m(ia,ja) )
213  allocate( lnd_sfc_z0h(ia,ja) )
214  allocate( lnd_sfc_z0e(ia,ja) )
215  allocate( lnd_sflx_mu(ia,ja) )
216  allocate( lnd_sflx_mv(ia,ja) )
217  allocate( lnd_sflx_mw(ia,ja) )
218  allocate( lnd_sflx_sh(ia,ja) )
219  allocate( lnd_sflx_lh(ia,ja) )
220  allocate( lnd_sflx_gh(ia,ja) )
221  allocate( lnd_sflx_evap(ia,ja) )
222  allocate( lnd_u10(ia,ja) )
223  allocate( lnd_v10(ia,ja) )
224  allocate( lnd_t2(ia,ja) )
225  allocate( lnd_q2(ia,ja) )
226  lnd_sfc_temp(:,:) = undef
227  lnd_sfc_albedo(:,:,:) = undef
228  lnd_sfc_z0m(:,:) = undef
229  lnd_sfc_z0h(:,:) = undef
230  lnd_sfc_z0e(:,:) = undef
231  lnd_sflx_mu(:,:) = undef
232  lnd_sflx_mv(:,:) = undef
233  lnd_sflx_mw(:,:) = undef
234  lnd_sflx_sh(:,:) = undef
235  lnd_sflx_lh(:,:) = undef
236  lnd_sflx_gh(:,:) = undef
237  lnd_sflx_evap(:,:) = undef
238  lnd_u10(:,:) = undef
239  lnd_v10(:,:) = undef
240  lnd_t2(:,:) = undef
241  lnd_q2(:,:) = undef
242 
243  allocate( urb_sfc_temp(ia,ja) )
244  allocate( urb_sfc_albedo(ia,ja,2) )
245  allocate( urb_sfc_z0m(ia,ja) )
246  allocate( urb_sfc_z0h(ia,ja) )
247  allocate( urb_sfc_z0e(ia,ja) )
248  allocate( urb_sflx_mu(ia,ja) )
249  allocate( urb_sflx_mv(ia,ja) )
250  allocate( urb_sflx_mw(ia,ja) )
251  allocate( urb_sflx_sh(ia,ja) )
252  allocate( urb_sflx_lh(ia,ja) )
253  allocate( urb_sflx_gh(ia,ja) )
254  allocate( urb_sflx_evap(ia,ja) )
255  allocate( urb_u10(ia,ja) )
256  allocate( urb_v10(ia,ja) )
257  allocate( urb_t2(ia,ja) )
258  allocate( urb_q2(ia,ja) )
259  urb_sfc_temp(:,:) = undef
260  urb_sfc_albedo(:,:,:) = undef
261  urb_sfc_z0m(:,:) = undef
262  urb_sfc_z0h(:,:) = undef
263  urb_sfc_z0e(:,:) = undef
264  urb_sflx_mu(:,:) = undef
265  urb_sflx_mv(:,:) = undef
266  urb_sflx_mw(:,:) = undef
267  urb_sflx_sh(:,:) = undef
268  urb_sflx_lh(:,:) = undef
269  urb_sflx_gh(:,:) = undef
270  urb_sflx_evap(:,:) = undef
271  urb_u10(:,:) = undef
272  urb_v10(:,:) = undef
273  urb_t2(:,:) = undef
274  urb_q2(:,:) = undef
275 
276  allocate( ocn_atm_temp(ia,ja) )
277  allocate( ocn_atm_pres(ia,ja) )
278  allocate( ocn_atm_w(ia,ja) )
279  allocate( ocn_atm_u(ia,ja) )
280  allocate( ocn_atm_v(ia,ja) )
281  allocate( ocn_atm_dens(ia,ja) )
282  allocate( ocn_atm_qv(ia,ja) )
283  allocate( ocn_atm_pbl(ia,ja) )
284  allocate( ocn_atm_sfc_pres(ia,ja) )
285  allocate( ocn_atm_sflx_rad_dn(ia,ja,2,2) )
286  allocate( ocn_atm_cossza(ia,ja) )
287  allocate( ocn_atm_sflx_rain(ia,ja) )
288  allocate( ocn_atm_sflx_snow(ia,ja) )
289  ocn_atm_temp(:,:) = undef
290  ocn_atm_pres(:,:) = undef
291  ocn_atm_w(:,:) = undef
292  ocn_atm_u(:,:) = undef
293  ocn_atm_v(:,:) = undef
294  ocn_atm_dens(:,:) = undef
295  ocn_atm_qv(:,:) = undef
296  ocn_atm_pbl(:,:) = undef
297  ocn_atm_sfc_pres(:,:) = undef
298  ocn_atm_sflx_rad_dn(:,:,2,2) = undef
299  ocn_atm_cossza(:,:) = undef
300  ocn_atm_sflx_rain(:,:) = undef
301  ocn_atm_sflx_snow(:,:) = undef
302 
303  allocate( lnd_atm_temp(ia,ja) )
304  allocate( lnd_atm_pres(ia,ja) )
305  allocate( lnd_atm_w(ia,ja) )
306  allocate( lnd_atm_u(ia,ja) )
307  allocate( lnd_atm_v(ia,ja) )
308  allocate( lnd_atm_dens(ia,ja) )
309  allocate( lnd_atm_qv(ia,ja) )
310  allocate( lnd_atm_pbl(ia,ja) )
311  allocate( lnd_atm_sfc_pres(ia,ja) )
312  allocate( lnd_atm_sflx_rad_dn(ia,ja,2,2) )
313  allocate( lnd_atm_cossza(ia,ja) )
314  allocate( lnd_atm_sflx_rain(ia,ja) )
315  allocate( lnd_atm_sflx_snow(ia,ja) )
316  lnd_atm_temp(:,:) = undef
317  lnd_atm_pres(:,:) = undef
318  lnd_atm_w(:,:) = undef
319  lnd_atm_u(:,:) = undef
320  lnd_atm_v(:,:) = undef
321  lnd_atm_dens(:,:) = undef
322  lnd_atm_qv(:,:) = undef
323  lnd_atm_pbl(:,:) = undef
324  lnd_atm_sfc_pres(:,:) = undef
325  lnd_atm_sflx_rad_dn(:,:,2,2) = undef
326  lnd_atm_cossza(:,:) = undef
327  lnd_atm_sflx_rain(:,:) = undef
328  lnd_atm_sflx_snow(:,:) = undef
329 
330  allocate( urb_atm_temp(ia,ja) )
331  allocate( urb_atm_pres(ia,ja) )
332  allocate( urb_atm_w(ia,ja) )
333  allocate( urb_atm_u(ia,ja) )
334  allocate( urb_atm_v(ia,ja) )
335  allocate( urb_atm_dens(ia,ja) )
336  allocate( urb_atm_qv(ia,ja) )
337  allocate( urb_atm_pbl(ia,ja) )
338  allocate( urb_atm_sfc_pres(ia,ja) )
339  allocate( urb_atm_sflx_rad_dn(ia,ja,2,2) )
340  allocate( urb_atm_cossza(ia,ja) )
341  allocate( urb_atm_sflx_rain(ia,ja) )
342  allocate( urb_atm_sflx_snow(ia,ja) )
343  urb_atm_temp(:,:) = undef
344  urb_atm_pres(:,:) = undef
345  urb_atm_w(:,:) = undef
346  urb_atm_u(:,:) = undef
347  urb_atm_v(:,:) = undef
348  urb_atm_dens(:,:) = undef
349  urb_atm_qv(:,:) = undef
350  urb_atm_pbl(:,:) = undef
351  urb_atm_sfc_pres(:,:) = undef
352  urb_atm_sflx_rad_dn(:,:,2,2) = undef
353  urb_atm_cossza(:,:) = undef
354  urb_atm_sflx_rain(:,:) = undef
355  urb_atm_sflx_snow(:,:) = undef
356 
357  ! counter intialize
358  cnt_putatm_ocn = 0.0_rp
359  cnt_putatm_lnd = 0.0_rp
360  cnt_putatm_urb = 0.0_rp
361  cnt_putocn = 0.0_rp
362  cnt_putlnd = 0.0_rp
363  cnt_puturb = 0.0_rp
364 
365  return
logical, public io_l
output log or not? (this process)
Definition: scale_stdio.F90:59
real(rp), public const_undef
Definition: scale_const.F90:43
integer, public ia
of x whole cells (local, with HALO)
module CONSTANT
Definition: scale_const.F90:14
integer, public io_fid_log
Log file ID.
Definition: scale_stdio.F90:56
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

◆ cpl_putatm()

subroutine, public mod_cpl_vars::cpl_putatm ( real(rp), dimension (ia,ja), intent(in)  TEMP,
real(rp), dimension (ia,ja), intent(in)  PRES,
real(rp), dimension (ia,ja), intent(in)  W,
real(rp), dimension (ia,ja), intent(in)  U,
real(rp), dimension (ia,ja), intent(in)  V,
real(rp), dimension (ia,ja), intent(in)  DENS,
real(rp), dimension (ia,ja,qa), intent(in)  QTRC,
real(rp), dimension (ia,ja), intent(in)  PBL,
real(rp), dimension (ia,ja), intent(in)  SFC_PRES,
real(rp), dimension(ia,ja,2,2), intent(in)  SFLX_rad_dn,
real(rp), dimension (ia,ja), intent(in)  cosSZA,
real(rp), dimension (ia,ja), intent(in)  SFLX_rain,
real(rp), dimension (ia,ja), intent(in)  SFLX_snow,
logical, intent(in)  countup 
)

Definition at line 384 of file mod_cpl_vars.f90.

References cnt_putatm_lnd, cnt_putatm_ocn, cnt_putatm_urb, scale_tracer::i_qv, scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, lnd_atm_cossza, lnd_atm_dens, lnd_atm_pbl, lnd_atm_pres, lnd_atm_qv, lnd_atm_sfc_pres, lnd_atm_sflx_rad_dn, lnd_atm_sflx_rain, lnd_atm_sflx_snow, lnd_atm_temp, lnd_atm_u, lnd_atm_v, lnd_atm_w, ocn_atm_cossza, ocn_atm_dens, ocn_atm_pbl, ocn_atm_pres, ocn_atm_qv, ocn_atm_sfc_pres, ocn_atm_sflx_rad_dn, ocn_atm_sflx_rain, ocn_atm_sflx_snow, ocn_atm_temp, ocn_atm_u, ocn_atm_v, ocn_atm_w, urb_atm_cossza, urb_atm_dens, urb_atm_pbl, urb_atm_pres, urb_atm_qv, urb_atm_sfc_pres, urb_atm_sflx_rad_dn, urb_atm_sflx_rain, urb_atm_sflx_snow, urb_atm_temp, urb_atm_u, urb_atm_v, and urb_atm_w.

Referenced by mod_atmos_driver::atmos_surface_set().

384  implicit none
385 
386  ! arguments
387  real(RP), intent(in) :: temp (ia,ja)
388  real(RP), intent(in) :: pres (ia,ja)
389  real(RP), intent(in) :: w (ia,ja)
390  real(RP), intent(in) :: u (ia,ja)
391  real(RP), intent(in) :: v (ia,ja)
392  real(RP), intent(in) :: dens (ia,ja)
393  real(RP), intent(in) :: qtrc (ia,ja,qa)
394  real(RP), intent(in) :: pbl (ia,ja)
395  real(RP), intent(in) :: sfc_pres (ia,ja)
396  real(RP), intent(in) :: sflx_rad_dn(ia,ja,2,2)
397  real(RP), intent(in) :: cossza (ia,ja)
398  real(RP), intent(in) :: sflx_rain (ia,ja)
399  real(RP), intent(in) :: sflx_snow (ia,ja)
400 
401  logical, intent(in) :: countup
402 
403  ! works
404  integer :: i, j
405  !---------------------------------------------------------------------------
406 
407  do j = js, je
408  do i = is, ie
409  ! for ocean
410  ocn_atm_temp(i,j) = ocn_atm_temp(i,j) * cnt_putatm_ocn + temp(i,j)
411  ocn_atm_pres(i,j) = ocn_atm_pres(i,j) * cnt_putatm_ocn + pres(i,j)
412  ocn_atm_w(i,j) = ocn_atm_w(i,j) * cnt_putatm_ocn + w(i,j)
413  ocn_atm_u(i,j) = ocn_atm_u(i,j) * cnt_putatm_ocn + u(i,j)
414  ocn_atm_v(i,j) = ocn_atm_v(i,j) * cnt_putatm_ocn + v(i,j)
415  ocn_atm_dens(i,j) = ocn_atm_dens(i,j) * cnt_putatm_ocn + dens(i,j)
416  ocn_atm_qv(i,j) = ocn_atm_qv(i,j) * cnt_putatm_ocn + qtrc(i,j,i_qv)
417  ocn_atm_pbl(i,j) = ocn_atm_pbl(i,j) * cnt_putatm_ocn + pbl(i,j)
418  ocn_atm_sfc_pres(i,j) = ocn_atm_sfc_pres(i,j) * cnt_putatm_ocn + sfc_pres(i,j)
419  ocn_atm_sflx_rad_dn(i,j,:,:) = ocn_atm_sflx_rad_dn(i,j,:,:) * cnt_putatm_ocn + sflx_rad_dn(i,j,:,:)
420  ocn_atm_cossza(i,j) = ocn_atm_cossza(i,j) * cnt_putatm_ocn + cossza(i,j)
421  ocn_atm_sflx_rain(i,j) = ocn_atm_sflx_rain(i,j) * cnt_putatm_ocn + sflx_rain(i,j)
422  ocn_atm_sflx_snow(i,j) = ocn_atm_sflx_snow(i,j) * cnt_putatm_ocn + sflx_snow(i,j)
423  ! for land
424  lnd_atm_temp(i,j) = lnd_atm_temp(i,j) * cnt_putatm_lnd + temp(i,j)
425  lnd_atm_pres(i,j) = lnd_atm_pres(i,j) * cnt_putatm_lnd + pres(i,j)
426  lnd_atm_w(i,j) = lnd_atm_w(i,j) * cnt_putatm_lnd + w(i,j)
427  lnd_atm_u(i,j) = lnd_atm_u(i,j) * cnt_putatm_lnd + u(i,j)
428  lnd_atm_v(i,j) = lnd_atm_v(i,j) * cnt_putatm_lnd + v(i,j)
429  lnd_atm_dens(i,j) = lnd_atm_dens(i,j) * cnt_putatm_lnd + dens(i,j)
430  lnd_atm_qv(i,j) = lnd_atm_qv(i,j) * cnt_putatm_lnd + qtrc(i,j,i_qv)
431  lnd_atm_pbl(i,j) = lnd_atm_pbl(i,j) * cnt_putatm_lnd + pbl(i,j)
432  lnd_atm_sfc_pres(i,j) = lnd_atm_sfc_pres(i,j) * cnt_putatm_lnd + sfc_pres(i,j)
433  lnd_atm_sflx_rad_dn(i,j,:,:) = lnd_atm_sflx_rad_dn(i,j,:,:) * cnt_putatm_lnd + sflx_rad_dn(i,j,:,:)
434  lnd_atm_cossza(i,j) = lnd_atm_cossza(i,j) * cnt_putatm_lnd + cossza(i,j)
435  lnd_atm_sflx_rain(i,j) = lnd_atm_sflx_rain(i,j) * cnt_putatm_lnd + sflx_rain(i,j)
436  lnd_atm_sflx_snow(i,j) = lnd_atm_sflx_snow(i,j) * cnt_putatm_lnd + sflx_snow(i,j)
437  ! for urban
438  urb_atm_temp(i,j) = urb_atm_temp(i,j) * cnt_putatm_urb + temp(i,j)
439  urb_atm_pres(i,j) = urb_atm_pres(i,j) * cnt_putatm_urb + pres(i,j)
440  urb_atm_w(i,j) = urb_atm_w(i,j) * cnt_putatm_urb + w(i,j)
441  urb_atm_u(i,j) = urb_atm_u(i,j) * cnt_putatm_urb + u(i,j)
442  urb_atm_v(i,j) = urb_atm_v(i,j) * cnt_putatm_urb + v(i,j)
443  urb_atm_dens(i,j) = urb_atm_dens(i,j) * cnt_putatm_urb + dens(i,j)
444  urb_atm_qv(i,j) = urb_atm_qv(i,j) * cnt_putatm_urb + qtrc(i,j,i_qv)
445  urb_atm_pbl(i,j) = urb_atm_pbl(i,j) * cnt_putatm_urb + pbl(i,j)
446  urb_atm_sfc_pres(i,j) = urb_atm_sfc_pres(i,j) * cnt_putatm_urb + sfc_pres(i,j)
447  urb_atm_sflx_rad_dn(i,j,:,:) = urb_atm_sflx_rad_dn(i,j,:,:) * cnt_putatm_urb + sflx_rad_dn(i,j,:,:)
448  urb_atm_cossza(i,j) = urb_atm_cossza(i,j) * cnt_putatm_urb + cossza(i,j)
449  urb_atm_sflx_rain(i,j) = urb_atm_sflx_rain(i,j) * cnt_putatm_urb + sflx_rain(i,j)
450  urb_atm_sflx_snow(i,j) = urb_atm_sflx_snow(i,j) * cnt_putatm_urb + sflx_snow(i,j)
451  enddo
452  enddo
453 
454  do j = js, je
455  do i = is, ie
456  ! for ocean
457  ocn_atm_temp(i,j) = ocn_atm_temp(i,j) / ( cnt_putatm_ocn + 1.0_rp )
458  ocn_atm_pres(i,j) = ocn_atm_pres(i,j) / ( cnt_putatm_ocn + 1.0_rp )
459  ocn_atm_w(i,j) = ocn_atm_w(i,j) / ( cnt_putatm_ocn + 1.0_rp )
460  ocn_atm_u(i,j) = ocn_atm_u(i,j) / ( cnt_putatm_ocn + 1.0_rp )
461  ocn_atm_v(i,j) = ocn_atm_v(i,j) / ( cnt_putatm_ocn + 1.0_rp )
462  ocn_atm_dens(i,j) = ocn_atm_dens(i,j) / ( cnt_putatm_ocn + 1.0_rp )
463  ocn_atm_qv(i,j) = ocn_atm_qv(i,j) / ( cnt_putatm_ocn + 1.0_rp )
464  ocn_atm_pbl(i,j) = ocn_atm_pbl(i,j) / ( cnt_putatm_ocn + 1.0_rp )
465  ocn_atm_sfc_pres(i,j) = ocn_atm_sfc_pres(i,j) / ( cnt_putatm_ocn + 1.0_rp )
466  ocn_atm_sflx_rad_dn(i,j,:,:) = ocn_atm_sflx_rad_dn(i,j,:,:) / ( cnt_putatm_ocn + 1.0_rp )
467  ocn_atm_cossza(i,j) = ocn_atm_cossza(i,j) / ( cnt_putatm_ocn + 1.0_rp )
468  ocn_atm_sflx_rain(i,j) = ocn_atm_sflx_rain(i,j) / ( cnt_putatm_ocn + 1.0_rp )
469  ocn_atm_sflx_snow(i,j) = ocn_atm_sflx_snow(i,j) / ( cnt_putatm_ocn + 1.0_rp )
470  ! for ocean
471  lnd_atm_temp(i,j) = lnd_atm_temp(i,j) / ( cnt_putatm_lnd + 1.0_rp )
472  lnd_atm_pres(i,j) = lnd_atm_pres(i,j) / ( cnt_putatm_lnd + 1.0_rp )
473  lnd_atm_w(i,j) = lnd_atm_w(i,j) / ( cnt_putatm_lnd + 1.0_rp )
474  lnd_atm_u(i,j) = lnd_atm_u(i,j) / ( cnt_putatm_lnd + 1.0_rp )
475  lnd_atm_v(i,j) = lnd_atm_v(i,j) / ( cnt_putatm_lnd + 1.0_rp )
476  lnd_atm_dens(i,j) = lnd_atm_dens(i,j) / ( cnt_putatm_lnd + 1.0_rp )
477  lnd_atm_qv(i,j) = lnd_atm_qv(i,j) / ( cnt_putatm_lnd + 1.0_rp )
478  lnd_atm_pbl(i,j) = lnd_atm_pbl(i,j) / ( cnt_putatm_lnd + 1.0_rp )
479  lnd_atm_sfc_pres(i,j) = lnd_atm_sfc_pres(i,j) / ( cnt_putatm_lnd + 1.0_rp )
480  lnd_atm_sflx_rad_dn(i,j,:,:) = lnd_atm_sflx_rad_dn(i,j,:,:) / ( cnt_putatm_lnd + 1.0_rp )
481  lnd_atm_cossza(i,j) = lnd_atm_cossza(i,j) / ( cnt_putatm_lnd + 1.0_rp )
482  lnd_atm_sflx_rain(i,j) = lnd_atm_sflx_rain(i,j) / ( cnt_putatm_lnd + 1.0_rp )
483  lnd_atm_sflx_snow(i,j) = lnd_atm_sflx_snow(i,j) / ( cnt_putatm_lnd + 1.0_rp )
484  ! for ocean
485  urb_atm_temp(i,j) = urb_atm_temp(i,j) / ( cnt_putatm_urb + 1.0_rp )
486  urb_atm_pres(i,j) = urb_atm_pres(i,j) / ( cnt_putatm_urb + 1.0_rp )
487  urb_atm_w(i,j) = urb_atm_w(i,j) / ( cnt_putatm_urb + 1.0_rp )
488  urb_atm_u(i,j) = urb_atm_u(i,j) / ( cnt_putatm_urb + 1.0_rp )
489  urb_atm_v(i,j) = urb_atm_v(i,j) / ( cnt_putatm_urb + 1.0_rp )
490  urb_atm_dens(i,j) = urb_atm_dens(i,j) / ( cnt_putatm_urb + 1.0_rp )
491  urb_atm_qv(i,j) = urb_atm_qv(i,j) / ( cnt_putatm_urb + 1.0_rp )
492  urb_atm_pbl(i,j) = urb_atm_pbl(i,j) / ( cnt_putatm_urb + 1.0_rp )
493  urb_atm_sfc_pres(i,j) = urb_atm_sfc_pres(i,j) / ( cnt_putatm_urb + 1.0_rp )
494  urb_atm_sflx_rad_dn(i,j,:,:) = urb_atm_sflx_rad_dn(i,j,:,:) / ( cnt_putatm_urb + 1.0_rp )
495  urb_atm_cossza(i,j) = urb_atm_cossza(i,j) / ( cnt_putatm_urb + 1.0_rp )
496  urb_atm_sflx_rain(i,j) = urb_atm_sflx_rain(i,j) / ( cnt_putatm_urb + 1.0_rp )
497  urb_atm_sflx_snow(i,j) = urb_atm_sflx_snow(i,j) / ( cnt_putatm_urb + 1.0_rp )
498  enddo
499  enddo
500 
501  if( countup ) then
502  cnt_putatm_ocn = cnt_putatm_ocn + 1.0_rp
503  cnt_putatm_lnd = cnt_putatm_lnd + 1.0_rp
504  cnt_putatm_urb = cnt_putatm_urb + 1.0_rp
505  end if
506 
507  return
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
integer, public qa
real(rp), dimension(:,:,:), allocatable, target, public dens
integer, public ia
of x whole cells (local, with HALO)
integer, public i_qv
integer, public js
start point of inner domain: y, local
integer, public ie
end point of inner domain: x, local
real(rp), dimension(:,:,:,:), allocatable, target, public qtrc
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

◆ cpl_putocn()

subroutine, public mod_cpl_vars::cpl_putocn ( real(rp), dimension (ia,ja), intent(in)  SFC_TEMP,
real(rp), dimension(ia,ja,2), intent(in)  SFC_albedo,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0M,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0H,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0E,
real(rp), dimension (ia,ja), intent(in)  SFLX_MW,
real(rp), dimension (ia,ja), intent(in)  SFLX_MU,
real(rp), dimension (ia,ja), intent(in)  SFLX_MV,
real(rp), dimension (ia,ja), intent(in)  SFLX_SH,
real(rp), dimension (ia,ja), intent(in)  SFLX_LH,
real(rp), dimension (ia,ja), intent(in)  SFLX_WH,
real(rp), dimension (ia,ja), intent(in)  SFLX_evap,
real(rp), dimension (ia,ja), intent(in)  U10,
real(rp), dimension (ia,ja), intent(in)  V10,
real(rp), dimension (ia,ja), intent(in)  T2,
real(rp), dimension (ia,ja), intent(in)  Q2,
logical, intent(in)  countup 
)

Definition at line 529 of file mod_cpl_vars.f90.

References cnt_putocn, scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, ocn_q2, ocn_sfc_albedo, ocn_sfc_temp, ocn_sfc_z0e, ocn_sfc_z0h, ocn_sfc_z0m, ocn_sflx_evap, ocn_sflx_lh, ocn_sflx_mu, ocn_sflx_mv, ocn_sflx_mw, ocn_sflx_sh, ocn_sflx_wh, ocn_t2, ocn_u10, and ocn_v10.

Referenced by mod_ocean_driver::ocean_surface_set().

529  implicit none
530 
531  ! arguments
532  real(RP), intent(in) :: sfc_temp (ia,ja)
533  real(RP), intent(in) :: sfc_albedo(ia,ja,2)
534  real(RP), intent(in) :: sfc_z0m (ia,ja)
535  real(RP), intent(in) :: sfc_z0h (ia,ja)
536  real(RP), intent(in) :: sfc_z0e (ia,ja)
537  real(RP), intent(in) :: sflx_mw (ia,ja)
538  real(RP), intent(in) :: sflx_mu (ia,ja)
539  real(RP), intent(in) :: sflx_mv (ia,ja)
540  real(RP), intent(in) :: sflx_sh (ia,ja)
541  real(RP), intent(in) :: sflx_lh (ia,ja)
542  real(RP), intent(in) :: sflx_wh (ia,ja)
543  real(RP), intent(in) :: sflx_evap (ia,ja)
544  real(RP), intent(in) :: u10 (ia,ja)
545  real(RP), intent(in) :: v10 (ia,ja)
546  real(RP), intent(in) :: t2 (ia,ja)
547  real(RP), intent(in) :: q2 (ia,ja)
548 
549  logical, intent(in) :: countup
550 
551  ! works
552  integer :: i, j
553  !---------------------------------------------------------------------------
554 
555  do j = js, je
556  do i = is, ie
557  ocn_sfc_temp(i,j) = ocn_sfc_temp(i,j) * cnt_putocn + sfc_temp(i,j)
558  ocn_sfc_albedo(i,j,i_lw) = ocn_sfc_albedo(i,j,i_lw) * cnt_putocn + sfc_albedo(i,j,i_lw)
559  ocn_sfc_albedo(i,j,i_sw) = ocn_sfc_albedo(i,j,i_sw) * cnt_putocn + sfc_albedo(i,j,i_sw)
560  ocn_sfc_z0m(i,j) = ocn_sfc_z0m(i,j) * cnt_putocn + sfc_z0m(i,j)
561  ocn_sfc_z0h(i,j) = ocn_sfc_z0h(i,j) * cnt_putocn + sfc_z0h(i,j)
562  ocn_sfc_z0e(i,j) = ocn_sfc_z0e(i,j) * cnt_putocn + sfc_z0e(i,j)
563  ocn_sflx_mw(i,j) = ocn_sflx_mw(i,j) * cnt_putocn + sflx_mw(i,j)
564  ocn_sflx_mu(i,j) = ocn_sflx_mu(i,j) * cnt_putocn + sflx_mu(i,j)
565  ocn_sflx_mv(i,j) = ocn_sflx_mv(i,j) * cnt_putocn + sflx_mv(i,j)
566  ocn_sflx_sh(i,j) = ocn_sflx_sh(i,j) * cnt_putocn + sflx_sh(i,j)
567  ocn_sflx_lh(i,j) = ocn_sflx_lh(i,j) * cnt_putocn + sflx_lh(i,j)
568  ocn_sflx_wh(i,j) = ocn_sflx_wh(i,j) * cnt_putocn + sflx_wh(i,j)
569  ocn_sflx_evap(i,j) = ocn_sflx_evap(i,j) * cnt_putocn + sflx_evap(i,j)
570  ocn_u10(i,j) = ocn_u10(i,j) * cnt_putocn + u10(i,j)
571  ocn_v10(i,j) = ocn_v10(i,j) * cnt_putocn + v10(i,j)
572  ocn_t2(i,j) = ocn_t2(i,j) * cnt_putocn + t2(i,j)
573  ocn_q2(i,j) = ocn_q2(i,j) * cnt_putocn + q2(i,j)
574  enddo
575  enddo
576 
577  do j = js, je
578  do i = is, ie
579  ocn_sfc_temp(i,j) = ocn_sfc_temp(i,j) / ( cnt_putocn + 1.0_rp )
580  ocn_sfc_albedo(i,j,i_lw) = ocn_sfc_albedo(i,j,i_lw) / ( cnt_putocn + 1.0_rp )
581  ocn_sfc_albedo(i,j,i_sw) = ocn_sfc_albedo(i,j,i_sw) / ( cnt_putocn + 1.0_rp )
582  ocn_sfc_z0m(i,j) = ocn_sfc_z0m(i,j) / ( cnt_putocn + 1.0_rp )
583  ocn_sfc_z0h(i,j) = ocn_sfc_z0h(i,j) / ( cnt_putocn + 1.0_rp )
584  ocn_sfc_z0e(i,j) = ocn_sfc_z0e(i,j) / ( cnt_putocn + 1.0_rp )
585  ocn_sflx_mw(i,j) = ocn_sflx_mw(i,j) / ( cnt_putocn + 1.0_rp )
586  ocn_sflx_mu(i,j) = ocn_sflx_mu(i,j) / ( cnt_putocn + 1.0_rp )
587  ocn_sflx_mv(i,j) = ocn_sflx_mv(i,j) / ( cnt_putocn + 1.0_rp )
588  ocn_sflx_sh(i,j) = ocn_sflx_sh(i,j) / ( cnt_putocn + 1.0_rp )
589  ocn_sflx_lh(i,j) = ocn_sflx_lh(i,j) / ( cnt_putocn + 1.0_rp )
590  ocn_sflx_wh(i,j) = ocn_sflx_wh(i,j) / ( cnt_putocn + 1.0_rp )
591  ocn_sflx_evap(i,j) = ocn_sflx_evap(i,j) / ( cnt_putocn + 1.0_rp )
592  ocn_u10(i,j) = ocn_u10(i,j) / ( cnt_putocn + 1.0_rp )
593  ocn_v10(i,j) = ocn_v10(i,j) / ( cnt_putocn + 1.0_rp )
594  ocn_t2(i,j) = ocn_t2(i,j) / ( cnt_putocn + 1.0_rp )
595  ocn_q2(i,j) = ocn_q2(i,j) / ( cnt_putocn + 1.0_rp )
596  enddo
597  enddo
598 
599  if( countup ) then
600  cnt_putocn = cnt_putocn + 1.0_rp
601  end if
602 
603  return
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
integer, parameter, public i_lw
integer, parameter, public i_sw
integer, public ia
of x whole cells (local, with HALO)
integer, public js
start point of inner domain: y, local
integer, public ie
end point of inner domain: x, local
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

◆ cpl_putlnd()

subroutine, public mod_cpl_vars::cpl_putlnd ( real(rp), dimension (ia,ja), intent(in)  SFC_TEMP,
real(rp), dimension(ia,ja,2), intent(in)  SFC_albedo,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0M,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0H,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0E,
real(rp), dimension (ia,ja), intent(in)  SFLX_MW,
real(rp), dimension (ia,ja), intent(in)  SFLX_MU,
real(rp), dimension (ia,ja), intent(in)  SFLX_MV,
real(rp), dimension (ia,ja), intent(in)  SFLX_SH,
real(rp), dimension (ia,ja), intent(in)  SFLX_LH,
real(rp), dimension (ia,ja), intent(in)  SFLX_GH,
real(rp), dimension (ia,ja), intent(in)  SFLX_evap,
real(rp), dimension (ia,ja), intent(in)  U10,
real(rp), dimension (ia,ja), intent(in)  V10,
real(rp), dimension (ia,ja), intent(in)  T2,
real(rp), dimension (ia,ja), intent(in)  Q2,
logical, intent(in)  countup 
)

Definition at line 625 of file mod_cpl_vars.f90.

References cnt_putlnd, scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, lnd_q2, lnd_sfc_albedo, lnd_sfc_temp, lnd_sfc_z0e, lnd_sfc_z0h, lnd_sfc_z0m, lnd_sflx_evap, lnd_sflx_gh, lnd_sflx_lh, lnd_sflx_mu, lnd_sflx_mv, lnd_sflx_mw, lnd_sflx_sh, lnd_t2, lnd_u10, and lnd_v10.

Referenced by mod_land_driver::land_surface_set().

625  implicit none
626 
627  ! arguments
628  real(RP), intent(in) :: sfc_temp (ia,ja)
629  real(RP), intent(in) :: sfc_albedo(ia,ja,2)
630  real(RP), intent(in) :: sfc_z0m (ia,ja)
631  real(RP), intent(in) :: sfc_z0h (ia,ja)
632  real(RP), intent(in) :: sfc_z0e (ia,ja)
633  real(RP), intent(in) :: sflx_mw (ia,ja)
634  real(RP), intent(in) :: sflx_mu (ia,ja)
635  real(RP), intent(in) :: sflx_mv (ia,ja)
636  real(RP), intent(in) :: sflx_sh (ia,ja)
637  real(RP), intent(in) :: sflx_lh (ia,ja)
638  real(RP), intent(in) :: sflx_gh (ia,ja)
639  real(RP), intent(in) :: sflx_evap (ia,ja)
640  real(RP), intent(in) :: u10 (ia,ja)
641  real(RP), intent(in) :: v10 (ia,ja)
642  real(RP), intent(in) :: t2 (ia,ja)
643  real(RP), intent(in) :: q2 (ia,ja)
644 
645  logical, intent(in) :: countup
646 
647  ! works
648  integer :: i, j
649  !---------------------------------------------------------------------------
650 
651  do j = js, je
652  do i = is, ie
653  lnd_sfc_temp(i,j) = lnd_sfc_temp(i,j) * cnt_putlnd + sfc_temp(i,j)
654  lnd_sfc_albedo(i,j,i_lw) = lnd_sfc_albedo(i,j,i_lw) * cnt_putlnd + sfc_albedo(i,j,i_lw)
655  lnd_sfc_albedo(i,j,i_sw) = lnd_sfc_albedo(i,j,i_sw) * cnt_putlnd + sfc_albedo(i,j,i_sw)
656  lnd_sfc_z0m(i,j) = lnd_sfc_z0m(i,j) * cnt_putlnd + sfc_z0m(i,j)
657  lnd_sfc_z0h(i,j) = lnd_sfc_z0h(i,j) * cnt_putlnd + sfc_z0h(i,j)
658  lnd_sfc_z0e(i,j) = lnd_sfc_z0e(i,j) * cnt_putlnd + sfc_z0e(i,j)
659  lnd_sflx_mw(i,j) = lnd_sflx_mw(i,j) * cnt_putlnd + sflx_mw(i,j)
660  lnd_sflx_mu(i,j) = lnd_sflx_mu(i,j) * cnt_putlnd + sflx_mu(i,j)
661  lnd_sflx_mv(i,j) = lnd_sflx_mv(i,j) * cnt_putlnd + sflx_mv(i,j)
662  lnd_sflx_sh(i,j) = lnd_sflx_sh(i,j) * cnt_putlnd + sflx_sh(i,j)
663  lnd_sflx_lh(i,j) = lnd_sflx_lh(i,j) * cnt_putlnd + sflx_lh(i,j)
664  lnd_sflx_gh(i,j) = lnd_sflx_gh(i,j) * cnt_putlnd + sflx_gh(i,j)
665  lnd_sflx_evap(i,j) = lnd_sflx_evap(i,j) * cnt_putlnd + sflx_evap(i,j)
666  lnd_u10(i,j) = lnd_u10(i,j) * cnt_putlnd + u10(i,j)
667  lnd_v10(i,j) = lnd_v10(i,j) * cnt_putlnd + v10(i,j)
668  lnd_t2(i,j) = lnd_t2(i,j) * cnt_putlnd + t2(i,j)
669  lnd_q2(i,j) = lnd_q2(i,j) * cnt_putlnd + q2(i,j)
670  enddo
671  enddo
672 
673  do j = js, je
674  do i = is, ie
675  lnd_sfc_temp(i,j) = lnd_sfc_temp(i,j) / ( cnt_putlnd + 1.0_rp )
676  lnd_sfc_albedo(i,j,i_lw) = lnd_sfc_albedo(i,j,i_lw) / ( cnt_putlnd + 1.0_rp )
677  lnd_sfc_albedo(i,j,i_sw) = lnd_sfc_albedo(i,j,i_sw) / ( cnt_putlnd + 1.0_rp )
678  lnd_sfc_z0m(i,j) = lnd_sfc_z0m(i,j) / ( cnt_putlnd + 1.0_rp )
679  lnd_sfc_z0h(i,j) = lnd_sfc_z0h(i,j) / ( cnt_putlnd + 1.0_rp )
680  lnd_sfc_z0e(i,j) = lnd_sfc_z0e(i,j) / ( cnt_putlnd + 1.0_rp )
681  lnd_sflx_mw(i,j) = lnd_sflx_mw(i,j) / ( cnt_putlnd + 1.0_rp )
682  lnd_sflx_mu(i,j) = lnd_sflx_mu(i,j) / ( cnt_putlnd + 1.0_rp )
683  lnd_sflx_mv(i,j) = lnd_sflx_mv(i,j) / ( cnt_putlnd + 1.0_rp )
684  lnd_sflx_sh(i,j) = lnd_sflx_sh(i,j) / ( cnt_putlnd + 1.0_rp )
685  lnd_sflx_lh(i,j) = lnd_sflx_lh(i,j) / ( cnt_putlnd + 1.0_rp )
686  lnd_sflx_gh(i,j) = lnd_sflx_gh(i,j) / ( cnt_putlnd + 1.0_rp )
687  lnd_sflx_evap(i,j) = lnd_sflx_evap(i,j) / ( cnt_putlnd + 1.0_rp )
688  lnd_u10(i,j) = lnd_u10(i,j) / ( cnt_putlnd + 1.0_rp )
689  lnd_v10(i,j) = lnd_v10(i,j) / ( cnt_putlnd + 1.0_rp )
690  lnd_t2(i,j) = lnd_t2(i,j) / ( cnt_putlnd + 1.0_rp )
691  lnd_q2(i,j) = lnd_q2(i,j) / ( cnt_putlnd + 1.0_rp )
692  enddo
693  enddo
694 
695  if( countup ) then
696  cnt_putlnd = cnt_putlnd + 1.0_rp
697  end if
698 
699  return
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
integer, parameter, public i_lw
integer, parameter, public i_sw
integer, public ia
of x whole cells (local, with HALO)
integer, public js
start point of inner domain: y, local
integer, public ie
end point of inner domain: x, local
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

◆ cpl_puturb()

subroutine, public mod_cpl_vars::cpl_puturb ( real(rp), dimension (ia,ja), intent(in)  SFC_TEMP,
real(rp), dimension(ia,ja,2), intent(in)  SFC_albedo,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0M,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0H,
real(rp), dimension (ia,ja), intent(in)  SFC_Z0E,
real(rp), dimension (ia,ja), intent(in)  SFLX_MW,
real(rp), dimension (ia,ja), intent(in)  SFLX_MU,
real(rp), dimension (ia,ja), intent(in)  SFLX_MV,
real(rp), dimension (ia,ja), intent(in)  SFLX_SH,
real(rp), dimension (ia,ja), intent(in)  SFLX_LH,
real(rp), dimension (ia,ja), intent(in)  SFLX_GH,
real(rp), dimension (ia,ja), intent(in)  SFLX_evap,
real(rp), dimension (ia,ja), intent(in)  U10,
real(rp), dimension (ia,ja), intent(in)  V10,
real(rp), dimension (ia,ja), intent(in)  T2,
real(rp), dimension (ia,ja), intent(in)  Q2,
logical, intent(in)  countup 
)

Definition at line 721 of file mod_cpl_vars.f90.

References cnt_puturb, scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, urb_q2, urb_sfc_albedo, urb_sfc_temp, urb_sfc_z0e, urb_sfc_z0h, urb_sfc_z0m, urb_sflx_evap, urb_sflx_gh, urb_sflx_lh, urb_sflx_mu, urb_sflx_mv, urb_sflx_mw, urb_sflx_sh, urb_t2, urb_u10, and urb_v10.

Referenced by mod_urban_driver::urban_surface_set().

721  implicit none
722 
723  ! arguments
724  real(RP), intent(in) :: sfc_temp (ia,ja)
725  real(RP), intent(in) :: sfc_albedo(ia,ja,2)
726  real(RP), intent(in) :: sfc_z0m (ia,ja)
727  real(RP), intent(in) :: sfc_z0h (ia,ja)
728  real(RP), intent(in) :: sfc_z0e (ia,ja)
729  real(RP), intent(in) :: sflx_mw (ia,ja)
730  real(RP), intent(in) :: sflx_mu (ia,ja)
731  real(RP), intent(in) :: sflx_mv (ia,ja)
732  real(RP), intent(in) :: sflx_sh (ia,ja)
733  real(RP), intent(in) :: sflx_lh (ia,ja)
734  real(RP), intent(in) :: sflx_gh (ia,ja)
735  real(RP), intent(in) :: sflx_evap (ia,ja)
736  real(RP), intent(in) :: u10 (ia,ja)
737  real(RP), intent(in) :: v10 (ia,ja)
738  real(RP), intent(in) :: t2 (ia,ja)
739  real(RP), intent(in) :: q2 (ia,ja)
740 
741  logical, intent(in) :: countup
742 
743  ! works
744  integer :: i, j
745  !---------------------------------------------------------------------------
746 
747  do j = js, je
748  do i = is, ie
749  urb_sfc_temp(i,j) = urb_sfc_temp(i,j) * cnt_puturb + sfc_temp(i,j)
750  urb_sfc_albedo(i,j,i_lw) = urb_sfc_albedo(i,j,i_lw) * cnt_puturb + sfc_albedo(i,j,i_lw)
751  urb_sfc_albedo(i,j,i_sw) = urb_sfc_albedo(i,j,i_sw) * cnt_puturb + sfc_albedo(i,j,i_sw)
752  urb_sfc_z0m(i,j) = urb_sfc_z0m(i,j) * cnt_puturb + sfc_z0m(i,j)
753  urb_sfc_z0h(i,j) = urb_sfc_z0h(i,j) * cnt_puturb + sfc_z0h(i,j)
754  urb_sfc_z0e(i,j) = urb_sfc_z0e(i,j) * cnt_puturb + sfc_z0e(i,j)
755  urb_sflx_mw(i,j) = urb_sflx_mw(i,j) * cnt_puturb + sflx_mw(i,j)
756  urb_sflx_mu(i,j) = urb_sflx_mu(i,j) * cnt_puturb + sflx_mu(i,j)
757  urb_sflx_mv(i,j) = urb_sflx_mv(i,j) * cnt_puturb + sflx_mv(i,j)
758  urb_sflx_sh(i,j) = urb_sflx_sh(i,j) * cnt_puturb + sflx_sh(i,j)
759  urb_sflx_lh(i,j) = urb_sflx_lh(i,j) * cnt_puturb + sflx_lh(i,j)
760  urb_sflx_gh(i,j) = urb_sflx_gh(i,j) * cnt_puturb + sflx_gh(i,j)
761  urb_sflx_evap(i,j) = urb_sflx_evap(i,j) * cnt_puturb + sflx_evap(i,j)
762  urb_u10(i,j) = urb_u10(i,j) * cnt_puturb + u10(i,j)
763  urb_v10(i,j) = urb_v10(i,j) * cnt_puturb + v10(i,j)
764  urb_t2(i,j) = urb_t2(i,j) * cnt_puturb + t2(i,j)
765  urb_q2(i,j) = urb_q2(i,j) * cnt_puturb + q2(i,j)
766  enddo
767  enddo
768 
769  do j = js, je
770  do i = is, ie
771  urb_sfc_temp(i,j) = urb_sfc_temp(i,j) / ( cnt_puturb + 1.0_rp )
772  urb_sfc_albedo(i,j,i_lw) = urb_sfc_albedo(i,j,i_lw) / ( cnt_puturb + 1.0_rp )
773  urb_sfc_albedo(i,j,i_sw) = urb_sfc_albedo(i,j,i_sw) / ( cnt_puturb + 1.0_rp )
774  urb_sfc_z0m(i,j) = urb_sfc_z0m(i,j) / ( cnt_puturb + 1.0_rp )
775  urb_sfc_z0h(i,j) = urb_sfc_z0h(i,j) / ( cnt_puturb + 1.0_rp )
776  urb_sfc_z0e(i,j) = urb_sfc_z0e(i,j) / ( cnt_puturb + 1.0_rp )
777  urb_sflx_mw(i,j) = urb_sflx_mw(i,j) / ( cnt_puturb + 1.0_rp )
778  urb_sflx_mu(i,j) = urb_sflx_mu(i,j) / ( cnt_puturb + 1.0_rp )
779  urb_sflx_mv(i,j) = urb_sflx_mv(i,j) / ( cnt_puturb + 1.0_rp )
780  urb_sflx_sh(i,j) = urb_sflx_sh(i,j) / ( cnt_puturb + 1.0_rp )
781  urb_sflx_lh(i,j) = urb_sflx_lh(i,j) / ( cnt_puturb + 1.0_rp )
782  urb_sflx_gh(i,j) = urb_sflx_gh(i,j) / ( cnt_puturb + 1.0_rp )
783  urb_sflx_evap(i,j) = urb_sflx_evap(i,j) / ( cnt_puturb + 1.0_rp )
784  urb_u10(i,j) = urb_u10(i,j) / ( cnt_puturb + 1.0_rp )
785  urb_v10(i,j) = urb_v10(i,j) / ( cnt_puturb + 1.0_rp )
786  urb_t2(i,j) = urb_t2(i,j) / ( cnt_puturb + 1.0_rp )
787  urb_q2(i,j) = urb_q2(i,j) / ( cnt_puturb + 1.0_rp )
788  enddo
789  enddo
790 
791  if( countup ) then
792  cnt_puturb = cnt_puturb + 1.0_rp
793  end if
794 
795  return
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
integer, parameter, public i_lw
integer, parameter, public i_sw
integer, public ia
of x whole cells (local, with HALO)
integer, public js
start point of inner domain: y, local
integer, public ie
end point of inner domain: x, local
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

◆ cpl_getsfc_atm()

subroutine, public mod_cpl_vars::cpl_getsfc_atm ( real(rp), dimension (ia,ja), intent(out)  SFC_TEMP,
real(rp), dimension(ia,ja,2), intent(out)  SFC_albedo,
real(rp), dimension (ia,ja), intent(out)  SFC_Z0M,
real(rp), dimension (ia,ja), intent(out)  SFC_Z0H,
real(rp), dimension (ia,ja), intent(out)  SFC_Z0E,
real(rp), dimension (ia,ja), intent(out)  SFLX_MW,
real(rp), dimension (ia,ja), intent(out)  SFLX_MU,
real(rp), dimension (ia,ja), intent(out)  SFLX_MV,
real(rp), dimension (ia,ja), intent(out)  SFLX_SH,
real(rp), dimension (ia,ja), intent(out)  SFLX_LH,
real(rp), dimension (ia,ja), intent(out)  SFLX_GH,
real(rp), dimension (ia,ja,qa), intent(out)  SFLX_QTRC,
real(rp), dimension (ia,ja), intent(out)  U10,
real(rp), dimension (ia,ja), intent(out)  V10,
real(rp), dimension (ia,ja), intent(out)  T2,
real(rp), dimension (ia,ja), intent(out)  Q2 
)

Definition at line 816 of file mod_cpl_vars.f90.

References cnt_putlnd, cnt_putocn, cnt_puturb, scale_tracer::i_qv, scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, scale_landuse::landuse_fact_land, scale_landuse::landuse_fact_ocean, scale_landuse::landuse_fact_urban, lnd_q2, lnd_sfc_albedo, lnd_sfc_temp, lnd_sfc_z0e, lnd_sfc_z0h, lnd_sfc_z0m, lnd_sflx_evap, lnd_sflx_gh, lnd_sflx_lh, lnd_sflx_mu, lnd_sflx_mv, lnd_sflx_mw, lnd_sflx_sh, lnd_t2, lnd_u10, lnd_v10, ocn_q2, ocn_sfc_albedo, ocn_sfc_temp, ocn_sfc_z0e, ocn_sfc_z0h, ocn_sfc_z0m, ocn_sflx_evap, ocn_sflx_lh, ocn_sflx_mu, ocn_sflx_mv, ocn_sflx_mw, ocn_sflx_sh, ocn_sflx_wh, ocn_t2, ocn_u10, ocn_v10, scale_tracer::qa, urb_q2, urb_sfc_albedo, urb_sfc_temp, urb_sfc_z0e, urb_sfc_z0h, urb_sfc_z0m, urb_sflx_evap, urb_sflx_gh, urb_sflx_lh, urb_sflx_mu, urb_sflx_mv, urb_sflx_mw, urb_sflx_sh, urb_t2, urb_u10, and urb_v10.

Referenced by mod_atmos_driver::atmos_surface_get().

816  use scale_landuse, only: &
817  fact_ocean => landuse_fact_ocean, &
818  fact_land => landuse_fact_land, &
819  fact_urban => landuse_fact_urban
820  implicit none
821 
822  real(RP), intent(out) :: sfc_temp (ia,ja)
823  real(RP), intent(out) :: sfc_albedo(ia,ja,2)
824  real(RP), intent(out) :: sfc_z0m (ia,ja)
825  real(RP), intent(out) :: sfc_z0h (ia,ja)
826  real(RP), intent(out) :: sfc_z0e (ia,ja)
827  real(RP), intent(out) :: sflx_mw (ia,ja)
828  real(RP), intent(out) :: sflx_mu (ia,ja)
829  real(RP), intent(out) :: sflx_mv (ia,ja)
830  real(RP), intent(out) :: sflx_sh (ia,ja)
831  real(RP), intent(out) :: sflx_lh (ia,ja)
832  real(RP), intent(out) :: sflx_gh (ia,ja)
833  real(RP), intent(out) :: sflx_qtrc (ia,ja,qa)
834  real(RP), intent(out) :: u10 (ia,ja)
835  real(RP), intent(out) :: v10 (ia,ja)
836  real(RP), intent(out) :: t2 (ia,ja)
837  real(RP), intent(out) :: q2 (ia,ja)
838 
839  integer :: i, j, iq
840  !---------------------------------------------------------------------------
841 
842  do j = js, je
843  do i = is, ie
844  do iq = 1, qa
845  sflx_qtrc(i,j,iq) = 0.0_rp ! tentative
846  enddo
847 
848  sfc_temp(i,j) = fact_ocean(i,j) * ocn_sfc_temp(i,j) &
849  + fact_land(i,j) * lnd_sfc_temp(i,j) &
850  + fact_urban(i,j) * urb_sfc_temp(i,j)
851 
852  sfc_albedo(i,j,i_lw) = fact_ocean(i,j) * ocn_sfc_albedo(i,j,i_lw) &
853  + fact_land(i,j) * lnd_sfc_albedo(i,j,i_lw) &
854  + fact_urban(i,j) * urb_sfc_albedo(i,j,i_lw)
855 
856  sfc_albedo(i,j,i_sw) = fact_ocean(i,j) * ocn_sfc_albedo(i,j,i_sw) &
857  + fact_land(i,j) * lnd_sfc_albedo(i,j,i_sw) &
858  + fact_urban(i,j) * urb_sfc_albedo(i,j,i_sw)
859 
860  sfc_z0m(i,j) = fact_ocean(i,j) * ocn_sfc_z0m(i,j) &
861  + fact_land(i,j) * lnd_sfc_z0m(i,j) &
862  + fact_urban(i,j) * urb_sfc_z0m(i,j)
863 
864  sfc_z0h(i,j) = fact_ocean(i,j) * ocn_sfc_z0h(i,j) &
865  + fact_land(i,j) * lnd_sfc_z0h(i,j) &
866  + fact_urban(i,j) * urb_sfc_z0h(i,j)
867 
868  sfc_z0e(i,j) = fact_ocean(i,j) * ocn_sfc_z0e(i,j) &
869  + fact_land(i,j) * lnd_sfc_z0e(i,j) &
870  + fact_urban(i,j) * urb_sfc_z0e(i,j)
871 
872  sflx_mw(i,j) = fact_ocean(i,j) * ocn_sflx_mw(i,j) &
873  + fact_land(i,j) * lnd_sflx_mw(i,j) &
874  + fact_urban(i,j) * urb_sflx_mw(i,j)
875 
876  sflx_mu(i,j) = fact_ocean(i,j) * ocn_sflx_mu(i,j) &
877  + fact_land(i,j) * lnd_sflx_mu(i,j) &
878  + fact_urban(i,j) * urb_sflx_mu(i,j)
879 
880  sflx_mv(i,j) = fact_ocean(i,j) * ocn_sflx_mv(i,j) &
881  + fact_land(i,j) * lnd_sflx_mv(i,j) &
882  + fact_urban(i,j) * urb_sflx_mv(i,j)
883 
884  sflx_sh(i,j) = fact_ocean(i,j) * ocn_sflx_sh(i,j) &
885  + fact_land(i,j) * lnd_sflx_sh(i,j) &
886  + fact_urban(i,j) * urb_sflx_sh(i,j)
887 
888  sflx_lh(i,j) = fact_ocean(i,j) * ocn_sflx_lh(i,j) &
889  + fact_land(i,j) * lnd_sflx_lh(i,j) &
890  + fact_urban(i,j) * urb_sflx_lh(i,j)
891 
892  sflx_gh(i,j) = fact_ocean(i,j) * ocn_sflx_wh(i,j) &
893  + fact_land(i,j) * lnd_sflx_gh(i,j) &
894  + fact_urban(i,j) * urb_sflx_gh(i,j)
895 
896  sflx_qtrc(i,j,i_qv) = fact_ocean(i,j) * ocn_sflx_evap(i,j) &
897  + fact_land(i,j) * lnd_sflx_evap(i,j) &
898  + fact_urban(i,j) * urb_sflx_evap(i,j)
899 
900  u10(i,j) = fact_ocean(i,j) * ocn_u10(i,j) &
901  + fact_land(i,j) * lnd_u10(i,j) &
902  + fact_urban(i,j) * urb_u10(i,j)
903 
904  v10(i,j) = fact_ocean(i,j) * ocn_v10(i,j) &
905  + fact_land(i,j) * lnd_v10(i,j) &
906  + fact_urban(i,j) * urb_v10(i,j)
907 
908  t2(i,j) = fact_ocean(i,j) * ocn_t2(i,j) &
909  + fact_land(i,j) * lnd_t2(i,j) &
910  + fact_urban(i,j) * urb_t2(i,j)
911 
912  q2(i,j) = fact_ocean(i,j) * ocn_q2(i,j) &
913  + fact_land(i,j) * lnd_q2(i,j) &
914  + fact_urban(i,j) * urb_q2(i,j)
915  enddo
916  enddo
917 
918  cnt_putocn = 0.0_rp
919  cnt_putlnd = 0.0_rp
920  cnt_puturb = 0.0_rp
921 
922  return
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
real(rp), dimension(:,:), allocatable, public landuse_fact_urban
urban factor
integer, public qa
integer, parameter, public i_lw
integer, parameter, public i_sw
integer, public ia
of x whole cells (local, with HALO)
module LANDUSE
integer, public i_qv
real(rp), dimension(:,:), allocatable, public landuse_fact_ocean
ocean factor
integer, public js
start point of inner domain: y, local
integer, public ie
end point of inner domain: x, local
real(rp), dimension(:,:), allocatable, public landuse_fact_land
land factor
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

◆ cpl_getatm_ocn()

subroutine, public mod_cpl_vars::cpl_getatm_ocn ( real(rp), dimension (ia,ja), intent(out)  TEMP,
real(rp), dimension (ia,ja), intent(out)  PRES,
real(rp), dimension (ia,ja), intent(out)  W,
real(rp), dimension (ia,ja), intent(out)  U,
real(rp), dimension (ia,ja), intent(out)  V,
real(rp), dimension (ia,ja), intent(out)  DENS,
real(rp), dimension (ia,ja), intent(out)  QV,
real(rp), dimension (ia,ja), intent(out)  PBL,
real(rp), dimension (ia,ja), intent(out)  SFC_PRES,
real(rp), dimension(ia,ja,2,2), intent(out)  SFLX_rad_dn,
real(rp), dimension (ia,ja), intent(out)  cosSZA,
real(rp), dimension (ia,ja), intent(out)  SFLX_rain,
real(rp), dimension (ia,ja), intent(out)  SFLX_snow 
)

Definition at line 940 of file mod_cpl_vars.f90.

References cnt_putatm_ocn, scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, ocn_atm_cossza, ocn_atm_dens, ocn_atm_pbl, ocn_atm_pres, ocn_atm_qv, ocn_atm_sfc_pres, ocn_atm_sflx_rad_dn, ocn_atm_sflx_rain, ocn_atm_sflx_snow, ocn_atm_temp, ocn_atm_u, ocn_atm_v, and ocn_atm_w.

Referenced by mod_ocean_driver::ocean_surface_get().

940  implicit none
941 
942  real(RP), intent(out) :: temp (ia,ja)
943  real(RP), intent(out) :: pres (ia,ja)
944  real(RP), intent(out) :: w (ia,ja)
945  real(RP), intent(out) :: u (ia,ja)
946  real(RP), intent(out) :: v (ia,ja)
947  real(RP), intent(out) :: dens (ia,ja)
948  real(RP), intent(out) :: qv (ia,ja)
949  real(RP), intent(out) :: pbl (ia,ja)
950  real(RP), intent(out) :: sfc_pres (ia,ja)
951  real(RP), intent(out) :: sflx_rad_dn(ia,ja,2,2)
952  real(RP), intent(out) :: cossza (ia,ja)
953  real(RP), intent(out) :: sflx_rain (ia,ja)
954  real(RP), intent(out) :: sflx_snow (ia,ja)
955 
956  integer :: i, j
957  !---------------------------------------------------------------------------
958 
959 !OCL XFILL
960  do j = js, je
961  do i = is, ie
962  temp(i,j) = ocn_atm_temp(i,j)
963  pres(i,j) = ocn_atm_pres(i,j)
964  w(i,j) = ocn_atm_w(i,j)
965  u(i,j) = ocn_atm_u(i,j)
966  v(i,j) = ocn_atm_v(i,j)
967  dens(i,j) = ocn_atm_dens(i,j)
968  qv(i,j) = ocn_atm_qv(i,j)
969  pbl(i,j) = ocn_atm_pbl(i,j)
970  sfc_pres(i,j) = ocn_atm_sfc_pres(i,j)
971  sflx_rad_dn(i,j,:,:) = ocn_atm_sflx_rad_dn(i,j,:,:)
972  cossza(i,j) = ocn_atm_cossza(i,j)
973  sflx_rain(i,j) = ocn_atm_sflx_rain(i,j)
974  sflx_snow(i,j) = ocn_atm_sflx_snow(i,j)
975  enddo
976  enddo
977 
978  cnt_putatm_ocn = 0.0_rp
979 
980  return
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
real(rp), dimension(:,:,:), allocatable, target, public dens
integer, public ia
of x whole cells (local, with HALO)
integer, public js
start point of inner domain: y, local
integer, public ie
end point of inner domain: x, local
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

◆ cpl_getatm_lnd()

subroutine, public mod_cpl_vars::cpl_getatm_lnd ( real(rp), dimension (ia,ja), intent(out)  TEMP,
real(rp), dimension (ia,ja), intent(out)  PRES,
real(rp), dimension (ia,ja), intent(out)  W,
real(rp), dimension (ia,ja), intent(out)  U,
real(rp), dimension (ia,ja), intent(out)  V,
real(rp), dimension (ia,ja), intent(out)  DENS,
real(rp), dimension (ia,ja), intent(out)  QV,
real(rp), dimension (ia,ja), intent(out)  PBL,
real(rp), dimension (ia,ja), intent(out)  SFC_PRES,
real(rp), dimension(ia,ja,2,2), intent(out)  SFLX_rad_dn,
real(rp), dimension (ia,ja), intent(out)  cosSZA,
real(rp), dimension (ia,ja), intent(out)  SFLX_rain,
real(rp), dimension (ia,ja), intent(out)  SFLX_snow 
)

Definition at line 998 of file mod_cpl_vars.f90.

References cnt_putatm_lnd, scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, lnd_atm_cossza, lnd_atm_dens, lnd_atm_pbl, lnd_atm_pres, lnd_atm_qv, lnd_atm_sfc_pres, lnd_atm_sflx_rad_dn, lnd_atm_sflx_rain, lnd_atm_sflx_snow, lnd_atm_temp, lnd_atm_u, lnd_atm_v, and lnd_atm_w.

Referenced by mod_land_driver::land_surface_get().

998  implicit none
999 
1000  real(RP), intent(out) :: temp (ia,ja)
1001  real(RP), intent(out) :: pres (ia,ja)
1002  real(RP), intent(out) :: w (ia,ja)
1003  real(RP), intent(out) :: u (ia,ja)
1004  real(RP), intent(out) :: v (ia,ja)
1005  real(RP), intent(out) :: dens (ia,ja)
1006  real(RP), intent(out) :: qv (ia,ja)
1007  real(RP), intent(out) :: pbl (ia,ja)
1008  real(RP), intent(out) :: sfc_pres (ia,ja)
1009  real(RP), intent(out) :: sflx_rad_dn(ia,ja,2,2)
1010  real(RP), intent(out) :: cossza (ia,ja)
1011  real(RP), intent(out) :: sflx_rain (ia,ja)
1012  real(RP), intent(out) :: sflx_snow (ia,ja)
1013 
1014  integer :: i, j
1015  !---------------------------------------------------------------------------
1016 
1017 !OCL XFILL
1018  do j = js, je
1019  do i = is, ie
1020  temp(i,j) = lnd_atm_temp(i,j)
1021  pres(i,j) = lnd_atm_pres(i,j)
1022  w(i,j) = lnd_atm_w(i,j)
1023  u(i,j) = lnd_atm_u(i,j)
1024  v(i,j) = lnd_atm_v(i,j)
1025  dens(i,j) = lnd_atm_dens(i,j)
1026  qv(i,j) = lnd_atm_qv(i,j)
1027  pbl(i,j) = lnd_atm_pbl(i,j)
1028  sfc_pres(i,j) = lnd_atm_sfc_pres(i,j)
1029  sflx_rad_dn(i,j,:,:) = lnd_atm_sflx_rad_dn(i,j,:,:)
1030  cossza(i,j) = lnd_atm_cossza(i,j)
1031  sflx_rain(i,j) = lnd_atm_sflx_rain(i,j)
1032  sflx_snow(i,j) = lnd_atm_sflx_snow(i,j)
1033  enddo
1034  enddo
1035 
1036  cnt_putatm_lnd = 0.0_rp
1037 
1038  return
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
real(rp), dimension(:,:,:), allocatable, target, public dens
integer, public ia
of x whole cells (local, with HALO)
integer, public js
start point of inner domain: y, local
integer, public ie
end point of inner domain: x, local
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

◆ cpl_getatm_urb()

subroutine, public mod_cpl_vars::cpl_getatm_urb ( real(rp), dimension (ia,ja), intent(out)  TEMP,
real(rp), dimension (ia,ja), intent(out)  PRES,
real(rp), dimension (ia,ja), intent(out)  W,
real(rp), dimension (ia,ja), intent(out)  U,
real(rp), dimension (ia,ja), intent(out)  V,
real(rp), dimension (ia,ja), intent(out)  DENS,
real(rp), dimension (ia,ja), intent(out)  QV,
real(rp), dimension (ia,ja), intent(out)  PBL,
real(rp), dimension (ia,ja), intent(out)  SFC_PRES,
real(rp), dimension(ia,ja,2,2), intent(out)  SFLX_rad_dn,
real(rp), dimension (ia,ja), intent(out)  cosSZA,
real(rp), dimension (ia,ja), intent(out)  SFLX_rain,
real(rp), dimension (ia,ja), intent(out)  SFLX_snow 
)

Definition at line 1056 of file mod_cpl_vars.f90.

References cnt_putatm_urb, scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, urb_atm_cossza, urb_atm_dens, urb_atm_pbl, urb_atm_pres, urb_atm_qv, urb_atm_sfc_pres, urb_atm_sflx_rad_dn, urb_atm_sflx_rain, urb_atm_sflx_snow, urb_atm_temp, urb_atm_u, urb_atm_v, and urb_atm_w.

Referenced by mod_urban_driver::urban_surface_get().

1056  implicit none
1057 
1058  real(RP), intent(out) :: temp (ia,ja)
1059  real(RP), intent(out) :: pres (ia,ja)
1060  real(RP), intent(out) :: w (ia,ja)
1061  real(RP), intent(out) :: u (ia,ja)
1062  real(RP), intent(out) :: v (ia,ja)
1063  real(RP), intent(out) :: dens (ia,ja)
1064  real(RP), intent(out) :: qv (ia,ja)
1065  real(RP), intent(out) :: pbl (ia,ja)
1066  real(RP), intent(out) :: sfc_pres (ia,ja)
1067  real(RP), intent(out) :: sflx_rad_dn(ia,ja,2,2)
1068  real(RP), intent(out) :: cossza (ia,ja)
1069  real(RP), intent(out) :: sflx_rain (ia,ja)
1070  real(RP), intent(out) :: sflx_snow (ia,ja)
1071 
1072  integer :: i, j
1073  !---------------------------------------------------------------------------
1074 
1075 !OCL XFILL
1076  do j = js, je
1077  do i = is, ie
1078  temp(i,j) = urb_atm_temp(i,j)
1079  pres(i,j) = urb_atm_pres(i,j)
1080  w(i,j) = urb_atm_w(i,j)
1081  u(i,j) = urb_atm_u(i,j)
1082  v(i,j) = urb_atm_v(i,j)
1083  dens(i,j) = urb_atm_dens(i,j)
1084  qv(i,j) = urb_atm_qv(i,j)
1085  pbl(i,j) = urb_atm_pbl(i,j)
1086  sfc_pres(i,j) = urb_atm_sfc_pres(i,j)
1087  sflx_rad_dn(i,j,:,:) = urb_atm_sflx_rad_dn(i,j,:,:)
1088  cossza(i,j) = urb_atm_cossza(i,j)
1089  sflx_rain(i,j) = urb_atm_sflx_rain(i,j)
1090  sflx_snow(i,j) = urb_atm_sflx_snow(i,j)
1091  enddo
1092  enddo
1093 
1094  cnt_putatm_urb = 0.0_rp
1095 
1096  return
integer, public is
start point of inner domain: x, local
integer, public je
end point of inner domain: y, local
real(rp), dimension(:,:,:), allocatable, target, public dens
integer, public ia
of x whole cells (local, with HALO)
integer, public js
start point of inner domain: y, local
integer, public ie
end point of inner domain: x, local
integer, public ja
of y whole cells (local, with HALO)
Here is the caller graph for this function:

Variable Documentation

◆ ocn_sfc_temp

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sfc_temp

Definition at line 50 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

50  real(RP), public, allocatable :: ocn_sfc_temp (:,:) ! ocean surface skin temperature [K]

◆ ocn_sfc_albedo

real(rp), dimension(:,:,:), allocatable, public mod_cpl_vars::ocn_sfc_albedo

Definition at line 51 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

51  real(RP), public, allocatable :: ocn_sfc_albedo(:,:,:) ! ocean surface albedo [0-1]

◆ ocn_sfc_z0m

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sfc_z0m

Definition at line 52 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

52  real(RP), public, allocatable :: ocn_sfc_z0m (:,:) ! ocean surface roughness length for momemtum [m]

◆ ocn_sfc_z0h

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sfc_z0h

Definition at line 53 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

53  real(RP), public, allocatable :: ocn_sfc_z0h (:,:) ! ocean surface roughness length for heat [m]

◆ ocn_sfc_z0e

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sfc_z0e

Definition at line 54 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

54  real(RP), public, allocatable :: ocn_sfc_z0e (:,:) ! ocean surface roughness length for vapor [m]

◆ ocn_sflx_mw

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sflx_mw

Definition at line 55 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

55  real(RP), public, allocatable :: ocn_sflx_mw (:,:) ! ocean surface w-momentum flux [kg/m2/s]

◆ ocn_sflx_mu

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sflx_mu

Definition at line 56 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

56  real(RP), public, allocatable :: ocn_sflx_mu (:,:) ! ocean surface u-momentum flux [kg/m2/s]

◆ ocn_sflx_mv

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sflx_mv

Definition at line 57 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

57  real(RP), public, allocatable :: ocn_sflx_mv (:,:) ! ocean surface v-momentum flux [kg/m2/s]

◆ ocn_sflx_sh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sflx_sh

Definition at line 58 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

58  real(RP), public, allocatable :: ocn_sflx_sh (:,:) ! ocean surface sensible heat flux [J/m2/s]

◆ ocn_sflx_lh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sflx_lh

Definition at line 59 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

59  real(RP), public, allocatable :: ocn_sflx_lh (:,:) ! ocean surface latent heat flux [J/m2/s]

◆ ocn_sflx_wh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sflx_wh

Definition at line 60 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

60  real(RP), public, allocatable :: ocn_sflx_wh (:,:) ! ocean surface water heat flux [J/m2/s]

◆ ocn_sflx_evap

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_sflx_evap

Definition at line 61 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

61  real(RP), public, allocatable :: ocn_sflx_evap (:,:) ! ocean surface water vapor flux [kg/m2/s]

◆ ocn_u10

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_u10

Definition at line 62 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

62  real(RP), public, allocatable :: ocn_u10 (:,:) ! ocean velocity u at 10m [m/s]

◆ ocn_v10

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_v10

Definition at line 63 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

63  real(RP), public, allocatable :: ocn_v10 (:,:) ! ocean velocity v at 10m [m/s]

◆ ocn_t2

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_t2

Definition at line 64 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

64  real(RP), public, allocatable :: ocn_t2 (:,:) ! ocean temperature at 2m [K]

◆ ocn_q2

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_q2

Definition at line 65 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

65  real(RP), public, allocatable :: ocn_q2 (:,:) ! ocean water vapor at 2m [kg/kg]

◆ lnd_sfc_temp

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sfc_temp

Definition at line 68 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

68  real(RP), public, allocatable :: lnd_sfc_temp (:,:) ! land surface skin temperature [K]

◆ lnd_sfc_albedo

real(rp), dimension(:,:,:), allocatable, public mod_cpl_vars::lnd_sfc_albedo

Definition at line 69 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

69  real(RP), public, allocatable :: lnd_sfc_albedo(:,:,:) ! land surface albedo [0-1]

◆ lnd_sfc_z0m

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sfc_z0m

Definition at line 70 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

70  real(RP), public, allocatable :: lnd_sfc_z0m (:,:) ! land surface roughness length for momemtum [m]

◆ lnd_sfc_z0h

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sfc_z0h

Definition at line 71 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

71  real(RP), public, allocatable :: lnd_sfc_z0h (:,:) ! land surface roughness length for heat [m]

◆ lnd_sfc_z0e

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sfc_z0e

Definition at line 72 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

72  real(RP), public, allocatable :: lnd_sfc_z0e (:,:) ! land surface roughness length for vapor [m]

◆ lnd_sflx_mw

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sflx_mw

Definition at line 73 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

73  real(RP), public, allocatable :: lnd_sflx_mw (:,:) ! land surface w-momentum flux [kg/m2/s]

◆ lnd_sflx_mu

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sflx_mu

Definition at line 74 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

74  real(RP), public, allocatable :: lnd_sflx_mu (:,:) ! land surface u-momentum flux [kg/m2/s]

◆ lnd_sflx_mv

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sflx_mv

Definition at line 75 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

75  real(RP), public, allocatable :: lnd_sflx_mv (:,:) ! land surface v-momentum flux [kg/m2/s]

◆ lnd_sflx_sh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sflx_sh

Definition at line 76 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

76  real(RP), public, allocatable :: lnd_sflx_sh (:,:) ! land surface sensible heat flux [J/m2/s]

◆ lnd_sflx_lh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sflx_lh

Definition at line 77 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

77  real(RP), public, allocatable :: lnd_sflx_lh (:,:) ! land surface latent heat flux [J/m2/s]

◆ lnd_sflx_gh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sflx_gh

Definition at line 78 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

78  real(RP), public, allocatable :: lnd_sflx_gh (:,:) ! land surface ground heat flux [J/m2/s]

◆ lnd_sflx_evap

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_sflx_evap

Definition at line 79 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

79  real(RP), public, allocatable :: lnd_sflx_evap (:,:) ! land surface water vapor flux [kg/m2/s]

◆ lnd_u10

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_u10

Definition at line 80 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

80  real(RP), public, allocatable :: lnd_u10 (:,:) ! land velocity u at 10m [m/s]

◆ lnd_v10

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_v10

Definition at line 81 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

81  real(RP), public, allocatable :: lnd_v10 (:,:) ! land velocity v at 10m [m/s]

◆ lnd_t2

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_t2

Definition at line 82 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

82  real(RP), public, allocatable :: lnd_t2 (:,:) ! land temperature at 2m [K]

◆ lnd_q2

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_q2

Definition at line 83 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

83  real(RP), public, allocatable :: lnd_q2 (:,:) ! land water vapor at 2m [kg/kg]

◆ urb_sfc_temp

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sfc_temp

Definition at line 86 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

86  real(RP), public, allocatable :: urb_sfc_temp (:,:) ! urban surface skin temperature [K]

◆ urb_sfc_albedo

real(rp), dimension(:,:,:), allocatable, public mod_cpl_vars::urb_sfc_albedo

Definition at line 87 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

87  real(RP), public, allocatable :: urb_sfc_albedo(:,:,:) ! urban surface albedo [0-1]

◆ urb_sfc_z0m

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sfc_z0m

Definition at line 88 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

88  real(RP), public, allocatable :: urb_sfc_z0m (:,:) ! urban surface roughness length for momemtum [m]

◆ urb_sfc_z0h

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sfc_z0h

Definition at line 89 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

89  real(RP), public, allocatable :: urb_sfc_z0h (:,:) ! urban surface roughness length for heat [m]

◆ urb_sfc_z0e

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sfc_z0e

Definition at line 90 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

90  real(RP), public, allocatable :: urb_sfc_z0e (:,:) ! urban surface roughness length for vapor [m]

◆ urb_sflx_mw

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sflx_mw

Definition at line 91 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

91  real(RP), public, allocatable :: urb_sflx_mw (:,:) ! urban surface w-momentum flux [kg/m2/s]

◆ urb_sflx_mu

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sflx_mu

Definition at line 92 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

92  real(RP), public, allocatable :: urb_sflx_mu (:,:) ! urban surface u-momentum flux [kg/m2/s]

◆ urb_sflx_mv

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sflx_mv

Definition at line 93 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

93  real(RP), public, allocatable :: urb_sflx_mv (:,:) ! urban surface v-momentum flux [kg/m2/s]

◆ urb_sflx_sh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sflx_sh

Definition at line 94 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

94  real(RP), public, allocatable :: urb_sflx_sh (:,:) ! urban surface sensible heat flux [J/m2/s]

◆ urb_sflx_lh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sflx_lh

Definition at line 95 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

95  real(RP), public, allocatable :: urb_sflx_lh (:,:) ! urban surface latent heat flux [J/m2/s]

◆ urb_sflx_gh

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sflx_gh

Definition at line 96 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

96  real(RP), public, allocatable :: urb_sflx_gh (:,:) ! urban surface ground heat flux [J/m2/s]

◆ urb_sflx_evap

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_sflx_evap

Definition at line 97 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

97  real(RP), public, allocatable :: urb_sflx_evap (:,:) ! urban surface water vapor flux [kg/m2/s]

◆ urb_u10

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_u10

Definition at line 98 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

98  real(RP), public, allocatable :: urb_u10 (:,:) ! urban velocity u at 10m [m/s]

◆ urb_v10

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_v10

Definition at line 99 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

99  real(RP), public, allocatable :: urb_v10 (:,:) ! urban velocity v at 10m [m/s]

◆ urb_t2

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_t2

Definition at line 100 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

100  real(RP), public, allocatable :: urb_t2 (:,:) ! urban temperature at 2m [K]

◆ urb_q2

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_q2

Definition at line 101 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

101  real(RP), public, allocatable :: urb_q2 (:,:) ! urban water vapor at 2m [kg/kg]

◆ ocn_atm_temp

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_temp

Definition at line 104 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

104  real(RP), public, allocatable :: ocn_atm_temp (:,:) ! temperature at the lowermost atmosphere layer [K]

◆ ocn_atm_pres

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_pres

Definition at line 105 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

105  real(RP), public, allocatable :: ocn_atm_pres (:,:) ! pressure at the lowermost atmosphere layer [Pa]

◆ ocn_atm_w

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_w

Definition at line 106 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

106  real(RP), public, allocatable :: ocn_atm_w (:,:) ! velocity w at the lowermost atmosphere layer [m/s]

◆ ocn_atm_u

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_u

Definition at line 107 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

107  real(RP), public, allocatable :: ocn_atm_u (:,:) ! velocity u at the lowermost atmosphere layer [m/s]

◆ ocn_atm_v

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_v

Definition at line 108 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

108  real(RP), public, allocatable :: ocn_atm_v (:,:) ! velocity v at the lowermost atmosphere layer [m/s]

◆ ocn_atm_dens

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_dens

Definition at line 109 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

109  real(RP), public, allocatable :: ocn_atm_dens (:,:) ! density at the lowermost atmosphere layer [kg/m3]

◆ ocn_atm_qv

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_qv

Definition at line 110 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

110  real(RP), public, allocatable :: ocn_atm_qv (:,:) ! water vapor at the lowermost atmosphere layer [kg/kg]

◆ ocn_atm_pbl

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_pbl

Definition at line 111 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

111  real(RP), public, allocatable :: ocn_atm_pbl (:,:) ! the top of atmospheric mixing layer [m]

◆ ocn_atm_sfc_pres

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_sfc_pres

Definition at line 112 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

112  real(RP), public, allocatable :: ocn_atm_sfc_pres (:,:) ! surface pressure [Pa]

◆ ocn_atm_sflx_rad_dn

real(rp), dimension(:,:,:,:), allocatable, public mod_cpl_vars::ocn_atm_sflx_rad_dn

Definition at line 113 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

113  real(RP), public, allocatable :: ocn_atm_sflx_rad_dn(:,:,:,:) ! downward radiation flux (SW/LW,direct/diffuse) [J/m2/s]

◆ ocn_atm_cossza

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_cossza

Definition at line 114 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

114  real(RP), public, allocatable :: ocn_atm_cossza (:,:) ! cos(solar zenith angle) [0-1]

◆ ocn_atm_sflx_rain

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_sflx_rain

Definition at line 115 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

115  real(RP), public, allocatable :: ocn_atm_sflx_rain (:,:) ! liquid water flux [kg/m2/s]

◆ ocn_atm_sflx_snow

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::ocn_atm_sflx_snow

Definition at line 116 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

116  real(RP), public, allocatable :: ocn_atm_sflx_snow (:,:) ! ice water flux [kg/m2/s]

◆ lnd_atm_temp

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_temp

Definition at line 119 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

119  real(RP), public, allocatable :: lnd_atm_temp (:,:) ! temperature at the lowermost atmosphere layer [K]

◆ lnd_atm_pres

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_pres

Definition at line 120 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

120  real(RP), public, allocatable :: lnd_atm_pres (:,:) ! pressure at the lowermost atmosphere layer [Pa]

◆ lnd_atm_w

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_w

Definition at line 121 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

121  real(RP), public, allocatable :: lnd_atm_w (:,:) ! velocity w at the lowermost atmosphere layer [m/s]

◆ lnd_atm_u

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_u

Definition at line 122 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

122  real(RP), public, allocatable :: lnd_atm_u (:,:) ! velocity u at the lowermost atmosphere layer [m/s]

◆ lnd_atm_v

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_v

Definition at line 123 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

123  real(RP), public, allocatable :: lnd_atm_v (:,:) ! velocity v at the lowermost atmosphere layer [m/s]

◆ lnd_atm_dens

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_dens

Definition at line 124 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

124  real(RP), public, allocatable :: lnd_atm_dens (:,:) ! density at the lowermost atmosphere layer [kg/m3]

◆ lnd_atm_qv

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_qv

Definition at line 125 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

125  real(RP), public, allocatable :: lnd_atm_qv (:,:) ! water vapor at the lowermost atmosphere layer [kg/kg]

◆ lnd_atm_pbl

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_pbl

Definition at line 126 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

126  real(RP), public, allocatable :: lnd_atm_pbl (:,:) ! the top of atmospheric mixing layer [m]

◆ lnd_atm_sfc_pres

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_sfc_pres

Definition at line 127 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

127  real(RP), public, allocatable :: lnd_atm_sfc_pres (:,:) ! surface pressure [Pa]

◆ lnd_atm_sflx_rad_dn

real(rp), dimension(:,:,:,:), allocatable, public mod_cpl_vars::lnd_atm_sflx_rad_dn

Definition at line 128 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

128  real(RP), public, allocatable :: lnd_atm_sflx_rad_dn(:,:,:,:) ! downward radiation flux (SW/LW,direct/diffuse) [J/m2/s]

◆ lnd_atm_cossza

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_cossza

Definition at line 129 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

129  real(RP), public, allocatable :: lnd_atm_cossza (:,:) ! cos(solar zenith angle) [0-1]

◆ lnd_atm_sflx_rain

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_sflx_rain

Definition at line 130 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

130  real(RP), public, allocatable :: lnd_atm_sflx_rain (:,:) ! liquid water flux [kg/m2/s]

◆ lnd_atm_sflx_snow

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::lnd_atm_sflx_snow

Definition at line 131 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

131  real(RP), public, allocatable :: lnd_atm_sflx_snow (:,:) ! ice water flux [kg/m2/s]

◆ urb_atm_temp

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_temp

Definition at line 134 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

134  real(RP), public, allocatable :: urb_atm_temp (:,:) ! temperature at the lowermost atmosphere layer [K]

◆ urb_atm_pres

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_pres

Definition at line 135 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

135  real(RP), public, allocatable :: urb_atm_pres (:,:) ! pressure at the lowermost atmosphere layer [Pa]

◆ urb_atm_w

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_w

Definition at line 136 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

136  real(RP), public, allocatable :: urb_atm_w (:,:) ! velocity w at the lowermost atmosphere layer [m/s]

◆ urb_atm_u

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_u

Definition at line 137 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

137  real(RP), public, allocatable :: urb_atm_u (:,:) ! velocity u at the lowermost atmosphere layer [m/s]

◆ urb_atm_v

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_v

Definition at line 138 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

138  real(RP), public, allocatable :: urb_atm_v (:,:) ! velocity v at the lowermost atmosphere layer [m/s]

◆ urb_atm_dens

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_dens

Definition at line 139 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

139  real(RP), public, allocatable :: urb_atm_dens (:,:) ! density at the lowermost atmosphere layer [kg/m3]

◆ urb_atm_qv

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_qv

Definition at line 140 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

140  real(RP), public, allocatable :: urb_atm_qv (:,:) ! water vapor at the lowermost atmosphere layer [kg/kg]

◆ urb_atm_pbl

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_pbl

Definition at line 141 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

141  real(RP), public, allocatable :: urb_atm_pbl (:,:) ! the top of atmospheric mixing layer [m]

◆ urb_atm_sfc_pres

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_sfc_pres

Definition at line 142 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

142  real(RP), public, allocatable :: urb_atm_sfc_pres (:,:) ! surface pressure [Pa]

◆ urb_atm_sflx_rad_dn

real(rp), dimension(:,:,:,:), allocatable, public mod_cpl_vars::urb_atm_sflx_rad_dn

Definition at line 143 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

143  real(RP), public, allocatable :: urb_atm_sflx_rad_dn(:,:,:,:) ! downward radiation flux (SW/LW,direct/diffuse) [J/m2/s]

◆ urb_atm_cossza

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_cossza

Definition at line 144 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

144  real(RP), public, allocatable :: urb_atm_cossza (:,:) ! cos(solar zenith angle) [0-1]

◆ urb_atm_sflx_rain

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_sflx_rain

Definition at line 145 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

145  real(RP), public, allocatable :: urb_atm_sflx_rain (:,:) ! liquid water flux [kg/m2/s]

◆ urb_atm_sflx_snow

real(rp), dimension (:,:), allocatable, public mod_cpl_vars::urb_atm_sflx_snow

Definition at line 146 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

146  real(RP), public, allocatable :: urb_atm_sflx_snow (:,:) ! ice water flux [kg/m2/s]

◆ cnt_putatm_ocn

real(rp), public mod_cpl_vars::cnt_putatm_ocn

Definition at line 149 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_ocn(), cpl_putatm(), and cpl_vars_setup().

149  real(RP), public :: cnt_putatm_ocn ! put counter for atmos to ocean

◆ cnt_putatm_lnd

real(rp), public mod_cpl_vars::cnt_putatm_lnd

Definition at line 150 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_lnd(), cpl_putatm(), and cpl_vars_setup().

150  real(RP), public :: cnt_putatm_lnd ! put counter for atmos to land

◆ cnt_putatm_urb

real(rp), public mod_cpl_vars::cnt_putatm_urb

Definition at line 151 of file mod_cpl_vars.f90.

Referenced by cpl_getatm_urb(), cpl_putatm(), and cpl_vars_setup().

151  real(RP), public :: cnt_putatm_urb ! put counter for atmos to urban

◆ cnt_putocn

real(rp), public mod_cpl_vars::cnt_putocn

Definition at line 152 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putocn(), and cpl_vars_setup().

152  real(RP), public :: cnt_putocn ! put counter for ocean

◆ cnt_putlnd

real(rp), public mod_cpl_vars::cnt_putlnd

Definition at line 153 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_putlnd(), and cpl_vars_setup().

153  real(RP), public :: cnt_putlnd ! put counter for land

◆ cnt_puturb

real(rp), public mod_cpl_vars::cnt_puturb

Definition at line 154 of file mod_cpl_vars.f90.

Referenced by cpl_getsfc_atm(), cpl_puturb(), and cpl_vars_setup().

154  real(RP), public :: cnt_puturb ! put counter for urban