SCALE-RM
Functions/Subroutines | Variables
mod_ocean_vars Module Reference

module OCEAN Variables More...

Functions/Subroutines

subroutine, public ocean_vars_setup
 Setup. More...
 
subroutine, public ocean_vars_restart_read
 Read ocean restart. More...
 
subroutine, public ocean_vars_restart_write
 Write ocean restart. More...
 
subroutine, public ocean_vars_history
 History output set for ocean variables. More...
 
subroutine, public ocean_vars_total
 Budget monitor for ocean. More...
 
subroutine, public ocean_vars_external_in (OCEAN_TEMP_in, OCEAN_SFC_TEMP_in, OCEAN_SFC_albedo_in, OCEAN_SFC_Z0M_in, OCEAN_SFC_Z0H_in, OCEAN_SFC_Z0E_in)
 Input from External I/O. More...
 

Variables

logical, public ocean_restart_output = .false.
 output restart file? More...
 
character(len=h_long), public ocean_restart_in_basename = ''
 basename of the input file More...
 
character(len=h_long), public ocean_restart_out_basename = ''
 basename of the output file More...
 
character(len=h_mid), public ocean_restart_out_title = 'OCEAN restart'
 title of the output file More...
 
character(len=h_mid), public ocean_restart_out_dtype = 'DEFAULT'
 REAL4 or REAL8. More...
 
real(rp), dimension(:,:), allocatable, public ocean_temp
 temperature at uppermost ocean layer [K] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
 ocean surface skin temperature [K] More...
 
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo
 ocean surface albedo [0-1] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
 ocean surface roughness length for momentum [m] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
 ocean surface roughness length for heat [m] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
 ocean surface roughness length for vapor [m] More...
 
real(rp), dimension(:,:), allocatable, public ocean_temp_t
 tendency of OCEAN_TEMP More...
 
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp_t
 tendency of OCEAN_SFC_TEMP More...
 
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo_t
 tendency of OCEAN_SFC_alebdo More...
 
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m_t
 tendency of OCEAN_SFC_Z0M More...
 
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h_t
 tendency of OCEAN_SFC_Z0H More...
 
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e_t
 tendency of OCEAN_SFC_Z0E More...
 
real(rp), dimension(:,:), allocatable, public ocean_sflx_mw
 ocean surface w-momentum flux [kg/m2/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sflx_mu
 ocean surface u-momentum flux [kg/m2/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sflx_mv
 ocean surface v-momentum flux [kg/m2/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sflx_sh
 ocean surface sensible heat flux [J/m2/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sflx_lh
 ocean surface latent heat flux [J/m2/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sflx_wh
 ocean surface water heat flux [J/m2/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_sflx_evap
 ocean surface water vapor flux [kg/m2/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_u10
 ocean surface velocity u at 10m [m/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_v10
 ocean surface velocity v at 10m [m/s] More...
 
real(rp), dimension(:,:), allocatable, public ocean_t2
 ocean surface temperature at 2m [K] More...
 
real(rp), dimension(:,:), allocatable, public ocean_q2
 ocean surface water vapor at 2m [kg/kg] More...
 
real(rp), dimension(:,:), allocatable, public atmos_temp
 
real(rp), dimension(:,:), allocatable, public atmos_pres
 
real(rp), dimension(:,:), allocatable, public atmos_w
 
real(rp), dimension(:,:), allocatable, public atmos_u
 
real(rp), dimension(:,:), allocatable, public atmos_v
 
real(rp), dimension(:,:), allocatable, public atmos_dens
 
real(rp), dimension(:,:), allocatable, public atmos_qv
 
real(rp), dimension(:,:), allocatable, public atmos_pbl
 
real(rp), dimension(:,:), allocatable, public atmos_sfc_pres
 
real(rp), dimension(:,:), allocatable, public atmos_sflx_lw
 
real(rp), dimension(:,:), allocatable, public atmos_sflx_sw
 
real(rp), dimension(:,:), allocatable, public atmos_cossza
 
real(rp), dimension(:,:), allocatable, public atmos_sflx_prec
 

Detailed Description

module OCEAN Variables

Description
Container for ocean variables
Author
Team SCALE
  • 2013-08-31 (T.Yamaura) [new]
NAMELIST
  • PARAM_OCEAN_VARS
    nametypedefault valuecomment
    OCEAN_RESTART_IN_BASENAME character(len=H_LONG) '' basename of the input file
    OCEAN_RESTART_OUTPUT logical .false. output restart file?
    OCEAN_RESTART_OUT_BASENAME character(len=H_LONG) '' basename of the output file
    OCEAN_RESTART_OUT_TITLE character(len=H_MID) 'OCEAN restart' title of the output file
    OCEAN_VARS_CHECKRANGE logical .false.

History Output
namedescriptionunitvariable
OCEAN_ALB_LW ocean surface albedo (longwave) 0-1 OCEAN_SFC_albedo
OCEAN_ALB_SW ocean surface albedo (shortwave) 0-1 OCEAN_SFC_albedo
OCEAN_SFC_TEMP ocean surface skin temperature K OCEAN_SFC_TEMP
OCEAN_SFC_Z0E ocean surface roughness length (vapor) m OCEAN_SFC_Z0E
OCEAN_SFC_Z0H ocean surface roughness length (heat) m OCEAN_SFC_Z0H
OCEAN_SFC_Z0M ocean surface roughness length (momentum) m OCEAN_SFC_Z0M
OCEAN_SFLX_LH ocean surface latent heat flux J/m2/s OCEAN_SFLX_LH
OCEAN_SFLX_MU ocean surface u-momentum flux kg/m2/s OCEAN_SFLX_MU
OCEAN_SFLX_MV ocean surface v-momentum flux kg/m2/s OCEAN_SFLX_MV
OCEAN_SFLX_MW ocean surface w-momentum flux kg/m2/s OCEAN_SFLX_MW
OCEAN_SFLX_SH ocean surface sensible heat flux J/m2/s OCEAN_SFLX_SH
OCEAN_SFLX_WH ocean surface water heat flux J/m2/s OCEAN_SFLX_WH
OCEAN_SFLX_evap ocean surface water vapor flux kg/m2/s OCEAN_SFLX_evap
OCEAN_TEMP temperature at uppermost ocean layer K OCEAN_TEMP

Function/Subroutine Documentation

◆ ocean_vars_setup()

subroutine, public mod_ocean_vars::ocean_vars_setup ( )

Setup.

Definition at line 174 of file mod_ocean_vars.f90.

References atmos_cossza, atmos_dens, atmos_pbl, atmos_pres, atmos_qv, atmos_sfc_pres, atmos_sflx_lw, atmos_sflx_prec, atmos_sflx_sw, atmos_temp, atmos_u, atmos_v, atmos_w, scale_const::const_undef, scale_grid_index::ia, scale_stdio::io_fid_conf, scale_stdio::io_fid_log, scale_stdio::io_l, scale_stdio::io_lnml, scale_grid_index::ja, ocean_q2, ocean_restart_in_basename, ocean_restart_out_basename, ocean_restart_out_title, ocean_restart_output, ocean_sfc_albedo, ocean_sfc_albedo_t, ocean_sfc_temp, ocean_sfc_temp_t, ocean_sfc_z0e, ocean_sfc_z0e_t, ocean_sfc_z0h, ocean_sfc_z0h_t, ocean_sfc_z0m, ocean_sfc_z0m_t, ocean_sflx_evap, ocean_sflx_lh, ocean_sflx_mu, ocean_sflx_mv, ocean_sflx_mw, ocean_sflx_sh, ocean_sflx_wh, ocean_t2, ocean_temp, ocean_temp_t, ocean_u10, ocean_v10, and scale_process::prc_mpistop().

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

174  use scale_process, only: &
176  use scale_const, only: &
177  undef => const_undef
178  implicit none
179 
180  namelist / param_ocean_vars / &
181  ocean_restart_in_basename, &
182  ocean_restart_output, &
183  ocean_restart_out_basename, &
184  ocean_restart_out_title, &
185  ocean_vars_checkrange
186 
187  integer :: ierr
188  integer :: iv
189  !---------------------------------------------------------------------------
190 
191  if( io_l ) write(io_fid_log,*)
192  if( io_l ) write(io_fid_log,*) '++++++ Module[VARS] / Categ[OCEAN] / Origin[SCALE-RM]'
193 
194  allocate( ocean_temp(ia,ja) )
195  allocate( ocean_sfc_temp(ia,ja) )
196  allocate( ocean_sfc_albedo(ia,ja,2) )
197  allocate( ocean_sfc_z0m(ia,ja) )
198  allocate( ocean_sfc_z0h(ia,ja) )
199  allocate( ocean_sfc_z0e(ia,ja) )
200  ocean_temp(:,:) = undef
201  ocean_sfc_temp(:,:) = undef
202  ocean_sfc_albedo(:,:,:) = undef
203  ocean_sfc_z0m(:,:) = undef
204  ocean_sfc_z0h(:,:) = undef
205  ocean_sfc_z0e(:,:) = undef
206 
207  allocate( ocean_temp_t(ia,ja) )
208  allocate( ocean_sfc_temp_t(ia,ja) )
209  allocate( ocean_sfc_albedo_t(ia,ja,2) )
210  allocate( ocean_sfc_z0m_t(ia,ja) )
211  allocate( ocean_sfc_z0h_t(ia,ja) )
212  allocate( ocean_sfc_z0e_t(ia,ja) )
213  ocean_temp_t(:,:) = undef
214  ocean_sfc_temp_t(:,:) = undef
215  ocean_sfc_albedo_t(:,:,:) = undef
216  ocean_sfc_z0m_t(:,:) = undef
217  ocean_sfc_z0h_t(:,:) = undef
218  ocean_sfc_z0e_t(:,:) = undef
219 
220  allocate( ocean_sflx_mw(ia,ja) )
221  allocate( ocean_sflx_mu(ia,ja) )
222  allocate( ocean_sflx_mv(ia,ja) )
223  allocate( ocean_sflx_sh(ia,ja) )
224  allocate( ocean_sflx_lh(ia,ja) )
225  allocate( ocean_sflx_wh(ia,ja) )
226  allocate( ocean_sflx_evap(ia,ja) )
227  ocean_sflx_mw(:,:) = undef
228  ocean_sflx_mu(:,:) = undef
229  ocean_sflx_mv(:,:) = undef
230  ocean_sflx_sh(:,:) = undef
231  ocean_sflx_lh(:,:) = undef
232  ocean_sflx_wh(:,:) = undef
233  ocean_sflx_evap(:,:) = undef
234 
235  allocate( ocean_u10(ia,ja) )
236  allocate( ocean_v10(ia,ja) )
237  allocate( ocean_t2(ia,ja) )
238  allocate( ocean_q2(ia,ja) )
239  ocean_u10(:,:) = undef
240  ocean_v10(:,:) = undef
241  ocean_t2(:,:) = undef
242  ocean_q2(:,:) = undef
243 
244  allocate( atmos_temp(ia,ja) )
245  allocate( atmos_pres(ia,ja) )
246  allocate( atmos_w(ia,ja) )
247  allocate( atmos_u(ia,ja) )
248  allocate( atmos_v(ia,ja) )
249  allocate( atmos_dens(ia,ja) )
250  allocate( atmos_qv(ia,ja) )
251  allocate( atmos_pbl(ia,ja) )
252  allocate( atmos_sfc_pres(ia,ja) )
253  allocate( atmos_sflx_lw(ia,ja) )
254  allocate( atmos_sflx_sw(ia,ja) )
255  allocate( atmos_cossza(ia,ja) )
256  allocate( atmos_sflx_prec(ia,ja) )
257  atmos_temp(:,:) = undef
258  atmos_pres(:,:) = undef
259  atmos_w(:,:) = undef
260  atmos_u(:,:) = undef
261  atmos_v(:,:) = undef
262  atmos_dens(:,:) = undef
263  atmos_qv(:,:) = undef
264  atmos_pbl(:,:) = undef
265  atmos_sfc_pres(:,:) = undef
266  atmos_sflx_lw(:,:) = undef
267  atmos_sflx_sw(:,:) = undef
268  atmos_cossza(:,:) = undef
269  atmos_sflx_prec(:,:) = undef
270 
271  !--- read namelist
272  rewind(io_fid_conf)
273  read(io_fid_conf,nml=param_ocean_vars,iostat=ierr)
274  if( ierr < 0 ) then !--- missing
275  if( io_l ) write(io_fid_log,*) '*** Not found namelist. Default used.'
276  elseif( ierr > 0 ) then !--- fatal error
277  write(*,*) 'xxx Not appropriate names in namelist PARAM_OCEAN_VARS. Check!'
278  call prc_mpistop
279  endif
280  if( io_lnml ) write(io_fid_log,nml=param_ocean_vars)
281 
282  if( io_l ) write(io_fid_log,*)
283  if( io_l ) write(io_fid_log,*) '*** List of prognostic variables (OCEAN) ***'
284  if( io_l ) write(io_fid_log,'(1x,A,A15,A,A32,3(A))') &
285  '*** |','VARNAME ','|', 'DESCRIPTION ','[', 'UNIT ',']'
286  do iv = 1, vmax
287  if( io_l ) write(io_fid_log,'(1x,A,i3,A,A15,A,A32,3(A))') &
288  '*** NO.',iv,'|',var_name(iv),'|',var_desc(iv),'[',var_unit(iv),']'
289 
290  enddo
291 
292  if( io_l ) write(io_fid_log,*)
293  if ( ocean_restart_in_basename /= '' ) then
294  if( io_l ) write(io_fid_log,*) '*** Restart input? : ', trim(ocean_restart_in_basename)
295  else
296  if( io_l ) write(io_fid_log,*) '*** Restart input? : NO'
297  endif
298  if ( ocean_restart_output &
299  .AND. ocean_restart_out_basename /= '' ) then
300  if( io_l ) write(io_fid_log,*) '*** Restart output? : ', trim(ocean_restart_out_basename)
301  else
302  if( io_l ) write(io_fid_log,*) '*** Restart output? : NO'
303  ocean_restart_output = .false.
304  endif
305 
306  return
real(rp), dimension(:,:), allocatable, public ocean_v10
ocean surface velocity v at 10m [m/s]
real(rp), dimension(:,:), allocatable, public atmos_w
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp_t
tendency of OCEAN_SFC_TEMP
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e_t
tendency of OCEAN_SFC_Z0E
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo
ocean surface albedo [0-1]
real(rp), dimension(:,:), allocatable, public atmos_dens
subroutine, public prc_mpistop
Abort MPI.
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo_t
tendency of OCEAN_SFC_alebdo
logical, public io_l
output log or not? (this process)
Definition: scale_stdio.F90:59
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
ocean surface roughness length for vapor [m]
real(rp), dimension(:,:), allocatable, public ocean_temp
temperature at uppermost ocean layer [K]
real(rp), dimension(:,:), allocatable, public atmos_v
real(rp), dimension(:,:), allocatable, public ocean_sflx_wh
ocean surface water heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public atmos_sflx_lw
real(rp), dimension(:,:), allocatable, public ocean_temp_t
tendency of OCEAN_TEMP
real(rp), public const_undef
Definition: scale_const.F90:43
real(rp), dimension(:,:), allocatable, public atmos_cossza
integer, public ia
of x whole cells (local, with HALO)
real(rp), dimension(:,:), allocatable, public ocean_sflx_mv
ocean surface v-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public atmos_sfc_pres
real(rp), dimension(:,:), allocatable, public atmos_qv
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h_t
tendency of OCEAN_SFC_Z0H
module PROCESS
real(rp), dimension(:,:), allocatable, public atmos_sflx_prec
real(rp), dimension(:,:), allocatable, public atmos_temp
real(rp), dimension(:,:), allocatable, public ocean_sflx_mw
ocean surface w-momentum flux [kg/m2/s]
module CONSTANT
Definition: scale_const.F90:14
real(rp), dimension(:,:), allocatable, public ocean_sflx_mu
ocean surface u-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_q2
ocean surface water vapor at 2m [kg/kg]
real(rp), dimension(:,:), allocatable, public atmos_u
real(rp), dimension(:,:), allocatable, public atmos_sflx_sw
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
ocean surface roughness length for momentum [m]
real(rp), dimension(:,:), allocatable, public atmos_pbl
logical, public io_lnml
output log or not? (for namelist, this process)
Definition: scale_stdio.F90:60
real(rp), dimension(:,:), allocatable, public ocean_sflx_sh
ocean surface sensible heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
ocean surface skin temperature [K]
integer, public io_fid_conf
Config file ID.
Definition: scale_stdio.F90:55
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m_t
tendency of OCEAN_SFC_Z0M
integer, public io_fid_log
Log file ID.
Definition: scale_stdio.F90:56
real(rp), dimension(:,:), allocatable, public atmos_pres
real(rp), dimension(:,:), allocatable, public ocean_sflx_lh
ocean surface latent heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_u10
ocean surface velocity u at 10m [m/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_evap
ocean surface water vapor flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
ocean surface roughness length for heat [m]
real(rp), dimension(:,:), allocatable, public ocean_t2
ocean surface temperature at 2m [K]
integer, public ja
of y whole cells (local, with HALO)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ocean_vars_restart_read()

subroutine, public mod_ocean_vars::ocean_vars_restart_read ( )

Read ocean restart.

Definition at line 312 of file mod_ocean_vars.f90.

References scale_stdio::io_fid_log, scale_stdio::io_l, ocean_restart_in_basename, ocean_sfc_albedo, ocean_sfc_temp, ocean_sfc_z0e, ocean_sfc_z0h, ocean_sfc_z0m, ocean_sflx_evap, ocean_sflx_lh, ocean_sflx_mu, ocean_sflx_mv, ocean_sflx_mw, ocean_sflx_sh, ocean_sflx_wh, mod_ocean_admin::ocean_sw, ocean_temp, and ocean_vars_total().

Referenced by mod_rm_driver::resume_state().

312  use scale_fileio, only: &
313  fileio_read
314  use mod_ocean_admin, only: &
315  ocean_sw
316  implicit none
317  !---------------------------------------------------------------------------
318 
319  if( io_l ) write(io_fid_log,*)
320  if( io_l ) write(io_fid_log,*) '*** Input restart file (OCEAN) ***'
321 
322  if ( ocean_sw .and. ocean_restart_in_basename /= '' ) then
323  if( io_l ) write(io_fid_log,*) '*** basename: ', trim(ocean_restart_in_basename)
324 
325  call fileio_read( ocean_temp(:,:), & ! [OUT]
326  ocean_restart_in_basename, var_name(i_temp), 'XY', step=1 ) ! [IN]
327  call fileio_read( ocean_sfc_temp(:,:), & ! [OUT]
328  ocean_restart_in_basename, var_name(i_sfc_temp), 'XY', step=1 ) ! [IN]
329  call fileio_read( ocean_sfc_albedo(:,:,i_lw), & ! [OUT]
330  ocean_restart_in_basename, var_name(i_alb_lw), 'XY', step=1 ) ! [IN]
331  call fileio_read( ocean_sfc_albedo(:,:,i_sw), & ! [OUT]
332  ocean_restart_in_basename, var_name(i_alb_sw), 'XY', step=1 ) ! [IN]
333  call fileio_read( ocean_sfc_z0m(:,:), & ! [OUT]
334  ocean_restart_in_basename, var_name(i_sfc_z0m), 'XY', step=1 ) ! [IN]
335  call fileio_read( ocean_sfc_z0h(:,:), & ! [OUT]
336  ocean_restart_in_basename, var_name(i_sfc_z0h), 'XY', step=1 ) ! [IN]
337  call fileio_read( ocean_sfc_z0e(:,:), & ! [OUT]
338  ocean_restart_in_basename, var_name(i_sfc_z0e), 'XY', step=1 ) ! [IN]
339 
340  call fileio_read( ocean_sflx_mw(:,:), & ! [OUT]
341  ocean_restart_in_basename, var_name(i_sflx_mw), 'XY', step=1 ) ! [IN]
342  call fileio_read( ocean_sflx_mu(:,:), & ! [OUT]
343  ocean_restart_in_basename, var_name(i_sflx_mu), 'XY', step=1 ) ! [IN]
344  call fileio_read( ocean_sflx_mv(:,:), & ! [OUT]
345  ocean_restart_in_basename, var_name(i_sflx_mv), 'XY', step=1 ) ! [IN]
346  call fileio_read( ocean_sflx_sh(:,:), & ! [OUT]
347  ocean_restart_in_basename, var_name(i_sflx_sh), 'XY', step=1 ) ! [IN]
348  call fileio_read( ocean_sflx_lh(:,:), & ! [OUT]
349  ocean_restart_in_basename, var_name(i_sflx_lh), 'XY', step=1 ) ! [IN]
350  call fileio_read( ocean_sflx_wh(:,:), & ! [OUT]
351  ocean_restart_in_basename, var_name(i_sflx_wh), 'XY', step=1 ) ! [IN]
352  call fileio_read( ocean_sflx_evap(:,:), & ! [OUT]
353  ocean_restart_in_basename, var_name(i_sflx_evap), 'XY', step=1 ) ! [IN]
354 
355  call ocean_vars_total
356  else
357  if( io_l ) write(io_fid_log,*) '*** restart file for ocean is not specified.'
358  endif
359 
360  return
logical, public ocean_sw
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo
ocean surface albedo [0-1]
logical, public io_l
output log or not? (this process)
Definition: scale_stdio.F90:59
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
ocean surface roughness length for vapor [m]
real(rp), dimension(:,:), allocatable, public ocean_temp
temperature at uppermost ocean layer [K]
real(rp), dimension(:,:), allocatable, public ocean_sflx_wh
ocean surface water heat flux [J/m2/s]
module FILE I/O (netcdf)
integer, parameter, public i_lw
integer, parameter, public i_sw
real(rp), dimension(:,:), allocatable, public ocean_sflx_mv
ocean surface v-momentum flux [kg/m2/s]
module Ocean admin
real(rp), dimension(:,:), allocatable, public ocean_sflx_mw
ocean surface w-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_mu
ocean surface u-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
ocean surface roughness length for momentum [m]
real(rp), dimension(:,:), allocatable, public ocean_sflx_sh
ocean surface sensible heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
ocean surface skin temperature [K]
integer, public io_fid_log
Log file ID.
Definition: scale_stdio.F90:56
real(rp), dimension(:,:), allocatable, public ocean_sflx_lh
ocean surface latent heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_evap
ocean surface water vapor flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
ocean surface roughness length for heat [m]
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ocean_vars_restart_write()

subroutine, public mod_ocean_vars::ocean_vars_restart_write ( )

Write ocean restart.

Definition at line 366 of file mod_ocean_vars.f90.

References scale_stdio::io_fid_log, scale_stdio::io_l, ocean_restart_out_basename, ocean_restart_out_dtype, ocean_restart_out_title, ocean_sfc_albedo, ocean_sfc_temp, ocean_sfc_z0e, ocean_sfc_z0h, ocean_sfc_z0m, ocean_sflx_evap, ocean_sflx_lh, ocean_sflx_mu, ocean_sflx_mv, ocean_sflx_mw, ocean_sflx_sh, ocean_sflx_wh, mod_ocean_admin::ocean_sw, ocean_temp, ocean_vars_total(), and scale_time::time_gettimelabel().

Referenced by mod_mkinit::mkinit(), and mod_rm_driver::scalerm().

366  use scale_time, only: &
368  use scale_fileio, only: &
369  fileio_write
370  use mod_ocean_admin, only: &
371  ocean_sw
372  implicit none
373 
374  character(len=20) :: timelabel
375  character(len=H_LONG) :: basename
376  !---------------------------------------------------------------------------
377 
378  if ( ocean_sw .and. ocean_restart_out_basename /= '' ) then
379 
380  call time_gettimelabel( timelabel )
381  write(basename,'(A,A,A)') trim(ocean_restart_out_basename), '_', trim(timelabel)
382 
383  if( io_l ) write(io_fid_log,*)
384  if( io_l ) write(io_fid_log,*) '*** Output restart file (OCEAN) ***'
385  if( io_l ) write(io_fid_log,*) '*** basename: ', trim(basename)
386 
387  call ocean_vars_total
388 
389  call fileio_write( ocean_temp(:,:), basename, ocean_restart_out_title, & ! [IN]
390  var_name(i_temp), var_desc(i_temp), var_unit(i_temp), & ! [IN]
391  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
392  call fileio_write( ocean_sfc_temp(:,:), basename, ocean_restart_out_title, & ! [IN]
393  var_name(i_sfc_temp), var_desc(i_sfc_temp), var_unit(i_sfc_temp), & ! [IN]
394  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
395  call fileio_write( ocean_sfc_albedo(:,:,i_lw), basename, ocean_restart_out_title, & ! [IN]
396  var_name(i_alb_lw), var_desc(i_alb_lw), var_unit(i_alb_lw), & ! [IN]
397  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
398  call fileio_write( ocean_sfc_albedo(:,:,i_sw), basename, ocean_restart_out_title, & ! [IN]
399  var_name(i_alb_sw), var_desc(i_alb_sw), var_unit(i_alb_sw), & ! [IN]
400  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
401  call fileio_write( ocean_sfc_z0m(:,:), basename, ocean_restart_out_title, & ! [IN]
402  var_name(i_sfc_z0m), var_desc(i_sfc_z0m), var_unit(i_sfc_z0m), & ! [IN]
403  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
404  call fileio_write( ocean_sfc_z0h(:,:), basename, ocean_restart_out_title, & ! [IN]
405  var_name(i_sfc_z0h), var_desc(i_sfc_z0h), var_unit(i_sfc_z0h), & ! [IN]
406  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
407  call fileio_write( ocean_sfc_z0e(:,:), basename, ocean_restart_out_title, & ! [IN]
408  var_name(i_sfc_z0e), var_desc(i_sfc_z0e), var_unit(i_sfc_z0e), & ! [IN]
409  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
410  call fileio_write( ocean_sflx_mw(:,:), basename, ocean_restart_out_title, & ! [IN]
411  var_name(i_sflx_mw), var_desc(i_sflx_mw), var_unit(i_sflx_mw), & ! [IN]
412  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
413  call fileio_write( ocean_sflx_mu(:,:), basename, ocean_restart_out_title, & ! [IN]
414  var_name(i_sflx_mu), var_desc(i_sflx_mu), var_unit(i_sflx_mu), & ! [IN]
415  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
416  call fileio_write( ocean_sflx_mv(:,:), basename, ocean_restart_out_title, & ! [IN]
417  var_name(i_sflx_mv), var_desc(i_sflx_mv), var_unit(i_sflx_mv), & ! [IN]
418  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
419  call fileio_write( ocean_sflx_sh(:,:), basename, ocean_restart_out_title, & ! [IN]
420  var_name(i_sflx_sh), var_desc(i_sflx_sh), var_unit(i_sflx_sh), & ! [IN]
421  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
422  call fileio_write( ocean_sflx_lh(:,:), basename, ocean_restart_out_title, & ! [IN]
423  var_name(i_sflx_lh), var_desc(i_sflx_lh), var_unit(i_sflx_lh), & ! [IN]
424  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
425  call fileio_write( ocean_sflx_wh(:,:), basename, ocean_restart_out_title, & ! [IN]
426  var_name(i_sflx_wh), var_desc(i_sflx_wh), var_unit(i_sflx_wh), & ! [IN]
427  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
428  call fileio_write( ocean_sflx_evap(:,:), basename, ocean_restart_out_title, & ! [IN]
429  var_name(i_sflx_evap), var_desc(i_sflx_evap), var_unit(i_sflx_evap), & ! [IN]
430  'XY', ocean_restart_out_dtype, nohalo=.true. ) ! [IN]
431 
432  endif
433 
434  return
logical, public ocean_sw
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo
ocean surface albedo [0-1]
logical, public io_l
output log or not? (this process)
Definition: scale_stdio.F90:59
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
ocean surface roughness length for vapor [m]
real(rp), dimension(:,:), allocatable, public ocean_temp
temperature at uppermost ocean layer [K]
real(rp), dimension(:,:), allocatable, public ocean_sflx_wh
ocean surface water heat flux [J/m2/s]
module FILE I/O (netcdf)
integer, parameter, public i_lw
integer, parameter, public i_sw
real(rp), dimension(:,:), allocatable, public ocean_sflx_mv
ocean surface v-momentum flux [kg/m2/s]
subroutine, public time_gettimelabel(timelabel)
generate time label
Definition: scale_time.F90:90
module TIME
Definition: scale_time.F90:15
module Ocean admin
real(rp), dimension(:,:), allocatable, public ocean_sflx_mw
ocean surface w-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_mu
ocean surface u-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
ocean surface roughness length for momentum [m]
real(rp), dimension(:,:), allocatable, public ocean_sflx_sh
ocean surface sensible heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
ocean surface skin temperature [K]
integer, public io_fid_log
Log file ID.
Definition: scale_stdio.F90:56
real(rp), dimension(:,:), allocatable, public ocean_sflx_lh
ocean surface latent heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_evap
ocean surface water vapor flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
ocean surface roughness length for heat [m]
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ocean_vars_history()

subroutine, public mod_ocean_vars::ocean_vars_history ( )

History output set for ocean variables.

Definition at line 440 of file mod_ocean_vars.f90.

References scale_grid_index::ie, scale_grid_index::is, scale_grid_index::je, scale_grid_index::js, ocean_sfc_albedo, ocean_sfc_temp, ocean_sfc_z0e, ocean_sfc_z0h, ocean_sfc_z0m, ocean_sflx_evap, ocean_sflx_lh, ocean_sflx_mu, ocean_sflx_mv, ocean_sflx_mw, ocean_sflx_sh, ocean_sflx_wh, and ocean_temp.

Referenced by mod_ocean_driver::ocean_driver(), and mod_ocean_driver::ocean_driver_resume().

440  use scale_history, only: &
441  hist_in
442  implicit none
443  !---------------------------------------------------------------------------
444 
445  if ( ocean_vars_checkrange ) then
446  call valcheck( ocean_temp(is:ie,js:je), 0.0_rp, 1000.0_rp, var_name(i_temp), &
447  __file__, __line__ )
448  call valcheck( ocean_sfc_temp(is:ie,js:je), 0.0_rp, 1000.0_rp, var_name(i_sfc_temp), &
449  __file__, __line__ )
450  call valcheck( ocean_sfc_albedo(is:ie,js:je,i_lw), 0.0_rp, 2.0_rp, var_name(i_alb_lw), &
451  __file__, __line__ )
452  call valcheck( ocean_sfc_albedo(is:ie,js:je,i_sw), 0.0_rp, 2.0_rp, var_name(i_alb_sw), &
453  __file__, __line__ )
454  call valcheck( ocean_sfc_z0m(is:ie,js:je), 0.0_rp, 1000.0_rp, var_name(i_sfc_z0m), &
455  __file__, __line__ )
456  call valcheck( ocean_sfc_z0h(is:ie,js:je), 0.0_rp, 1000.0_rp, var_name(i_sfc_z0h), &
457  __file__, __line__ )
458  call valcheck( ocean_sfc_z0e(is:ie,js:je), 0.0_rp, 1000.0_rp, var_name(i_sfc_z0e), &
459  __file__, __line__ )
460  endif
461 
462  call hist_in( ocean_temp(:,:), var_name(i_temp), var_desc(i_temp), var_unit(i_temp) )
463  call hist_in( ocean_sfc_temp(:,:), var_name(i_sfc_temp), var_desc(i_sfc_temp), var_unit(i_sfc_temp) )
464  call hist_in( ocean_sfc_albedo(:,:,i_lw), var_name(i_alb_lw), var_desc(i_alb_lw), var_unit(i_alb_lw) )
465  call hist_in( ocean_sfc_albedo(:,:,i_sw), var_name(i_alb_sw), var_desc(i_alb_sw), var_unit(i_alb_sw) )
466  call hist_in( ocean_sfc_z0m(:,:), var_name(i_sfc_z0m), var_desc(i_sfc_z0m), var_unit(i_sfc_z0m) )
467  call hist_in( ocean_sfc_z0h(:,:), var_name(i_sfc_z0h), var_desc(i_sfc_z0h), var_unit(i_sfc_z0h) )
468  call hist_in( ocean_sfc_z0e(:,:), var_name(i_sfc_z0e), var_desc(i_sfc_z0e), var_unit(i_sfc_z0e) )
469 
470  call hist_in( ocean_sflx_mw(:,:), var_name(i_sflx_mw), var_desc(i_sflx_mw), var_unit(i_sflx_mw) )
471  call hist_in( ocean_sflx_mu(:,:), var_name(i_sflx_mu), var_desc(i_sflx_mu), var_unit(i_sflx_mu) )
472  call hist_in( ocean_sflx_mv(:,:), var_name(i_sflx_mv), var_desc(i_sflx_mv), var_unit(i_sflx_mv) )
473  call hist_in( ocean_sflx_sh(:,:), var_name(i_sflx_sh), var_desc(i_sflx_sh), var_unit(i_sflx_sh) )
474  call hist_in( ocean_sflx_lh(:,:), var_name(i_sflx_lh), var_desc(i_sflx_lh), var_unit(i_sflx_lh) )
475  call hist_in( ocean_sflx_wh(:,:), var_name(i_sflx_wh), var_desc(i_sflx_wh), var_unit(i_sflx_wh) )
476  call hist_in( ocean_sflx_evap(:,:), var_name(i_sflx_evap), var_desc(i_sflx_evap), var_unit(i_sflx_evap) )
477 
478  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 ocean_sfc_albedo
ocean surface albedo [0-1]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
ocean surface roughness length for vapor [m]
real(rp), dimension(:,:), allocatable, public ocean_temp
temperature at uppermost ocean layer [K]
real(rp), dimension(:,:), allocatable, public ocean_sflx_wh
ocean surface water heat flux [J/m2/s]
integer, parameter, public i_lw
integer, parameter, public i_sw
real(rp), dimension(:,:), allocatable, public ocean_sflx_mv
ocean surface v-momentum flux [kg/m2/s]
integer, public js
start point of inner domain: y, local
real(rp), dimension(:,:), allocatable, public ocean_sflx_mw
ocean surface w-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_mu
ocean surface u-momentum flux [kg/m2/s]
integer, public ie
end point of inner domain: x, local
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
ocean surface roughness length for momentum [m]
real(rp), dimension(:,:), allocatable, public ocean_sflx_sh
ocean surface sensible heat flux [J/m2/s]
module HISTORY
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
ocean surface skin temperature [K]
real(rp), dimension(:,:), allocatable, public ocean_sflx_lh
ocean surface latent heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_evap
ocean surface water vapor flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
ocean surface roughness length for heat [m]
Here is the caller graph for this function:

◆ ocean_vars_total()

subroutine, public mod_ocean_vars::ocean_vars_total ( )

Budget monitor for ocean.

Definition at line 484 of file mod_ocean_vars.f90.

References ocean_sfc_albedo, ocean_sfc_temp, ocean_sfc_z0e, ocean_sfc_z0h, ocean_sfc_z0m, ocean_sflx_evap, ocean_sflx_lh, ocean_sflx_mu, ocean_sflx_mv, ocean_sflx_mw, ocean_sflx_sh, ocean_sflx_wh, ocean_temp, and scale_rm_statistics::statistics_checktotal.

Referenced by mod_ocean_driver::ocean_driver(), ocean_vars_external_in(), ocean_vars_restart_read(), and ocean_vars_restart_write().

484  use scale_rm_statistics, only: &
486  stat_total
487  implicit none
488 
489  real(RP) :: total
490  !---------------------------------------------------------------------------
491 
492  if ( statistics_checktotal ) then
493 
494  call stat_total( total, ocean_temp(:,:), var_name(i_temp) )
495  call stat_total( total, ocean_sfc_temp(:,:), var_name(i_sfc_temp) )
496  call stat_total( total, ocean_sfc_albedo(:,:,i_lw), var_name(i_alb_lw) )
497  call stat_total( total, ocean_sfc_albedo(:,:,i_sw), var_name(i_alb_sw) )
498  call stat_total( total, ocean_sfc_z0m(:,:), var_name(i_sfc_z0m) )
499  call stat_total( total, ocean_sfc_z0h(:,:), var_name(i_sfc_z0h) )
500  call stat_total( total, ocean_sfc_z0e(:,:), var_name(i_sfc_z0e) )
501 
502  call stat_total( total, ocean_sflx_mw(:,:), var_name(i_sflx_mw) )
503  call stat_total( total, ocean_sflx_mu(:,:), var_name(i_sflx_mu) )
504  call stat_total( total, ocean_sflx_mv(:,:), var_name(i_sflx_mv) )
505  call stat_total( total, ocean_sflx_sh(:,:), var_name(i_sflx_sh) )
506  call stat_total( total, ocean_sflx_lh(:,:), var_name(i_sflx_lh) )
507  call stat_total( total, ocean_sflx_wh(:,:), var_name(i_sflx_wh) )
508  call stat_total( total, ocean_sflx_evap(:,:), var_name(i_sflx_evap) )
509 
510  endif
511 
512  return
logical, public statistics_checktotal
calc&report variable totals to logfile?
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo
ocean surface albedo [0-1]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
ocean surface roughness length for vapor [m]
real(rp), dimension(:,:), allocatable, public ocean_temp
temperature at uppermost ocean layer [K]
real(rp), dimension(:,:), allocatable, public ocean_sflx_wh
ocean surface water heat flux [J/m2/s]
integer, parameter, public i_lw
module Statistics
integer, parameter, public i_sw
real(rp), dimension(:,:), allocatable, public ocean_sflx_mv
ocean surface v-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_mw
ocean surface w-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_mu
ocean surface u-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
ocean surface roughness length for momentum [m]
real(rp), dimension(:,:), allocatable, public ocean_sflx_sh
ocean surface sensible heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
ocean surface skin temperature [K]
real(rp), dimension(:,:), allocatable, public ocean_sflx_lh
ocean surface latent heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_evap
ocean surface water vapor flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
ocean surface roughness length for heat [m]
Here is the caller graph for this function:

◆ ocean_vars_external_in()

subroutine, public mod_ocean_vars::ocean_vars_external_in ( real(rp), dimension (ia,ja), intent(in)  OCEAN_TEMP_in,
real(rp), dimension (ia,ja), intent(in)  OCEAN_SFC_TEMP_in,
real(rp), dimension(ia,ja,2), intent(in)  OCEAN_SFC_albedo_in,
real(rp), dimension (ia,ja), intent(in)  OCEAN_SFC_Z0M_in,
real(rp), dimension (ia,ja), intent(in)  OCEAN_SFC_Z0H_in,
real(rp), dimension (ia,ja), intent(in)  OCEAN_SFC_Z0E_in 
)

Input from External I/O.

Definition at line 524 of file mod_ocean_vars.f90.

References scale_stdio::io_fid_log, scale_stdio::io_l, ocean_sfc_albedo, ocean_sfc_temp, ocean_sfc_z0e, ocean_sfc_z0h, ocean_sfc_z0m, ocean_sflx_evap, ocean_sflx_lh, ocean_sflx_mu, ocean_sflx_mv, ocean_sflx_mw, ocean_sflx_sh, ocean_sflx_wh, ocean_temp, and ocean_vars_total().

524  implicit none
525 
526  real(RP), intent(in) :: ocean_temp_in (ia,ja)
527  real(RP), intent(in) :: ocean_sfc_temp_in (ia,ja)
528  real(RP), intent(in) :: ocean_sfc_albedo_in(ia,ja,2)
529  real(RP), intent(in) :: ocean_sfc_z0m_in (ia,ja)
530  real(RP), intent(in) :: ocean_sfc_z0h_in (ia,ja)
531  real(RP), intent(in) :: ocean_sfc_z0e_in (ia,ja)
532  !---------------------------------------------------------------------------
533 
534  if( io_l ) write(io_fid_log,*)
535  if( io_l ) write(io_fid_log,*) '*** External Input file (ocean) ***'
536 
537  ocean_temp(:,:) = ocean_temp_in(:,:)
538  ocean_sfc_temp(:,:) = ocean_sfc_temp_in(:,:)
539  ocean_sfc_albedo(:,:,:) = ocean_sfc_albedo_in(:,:,:)
540  ocean_sfc_z0m(:,:) = ocean_sfc_z0m_in(:,:)
541  ocean_sfc_z0h(:,:) = ocean_sfc_z0h_in(:,:)
542  ocean_sfc_z0e(:,:) = ocean_sfc_z0e_in(:,:)
543 
544  ocean_sflx_mw(:,:) = 0.0_rp
545  ocean_sflx_mu(:,:) = 0.0_rp
546  ocean_sflx_mv(:,:) = 0.0_rp
547  ocean_sflx_sh(:,:) = 0.0_rp
548  ocean_sflx_lh(:,:) = 0.0_rp
549  ocean_sflx_wh(:,:) = 0.0_rp
550  ocean_sflx_evap(:,:) = 0.0_rp
551 
552  call ocean_vars_total
553 
554  return
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo
ocean surface albedo [0-1]
logical, public io_l
output log or not? (this process)
Definition: scale_stdio.F90:59
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
ocean surface roughness length for vapor [m]
real(rp), dimension(:,:), allocatable, public ocean_temp
temperature at uppermost ocean layer [K]
real(rp), dimension(:,:), allocatable, public ocean_sflx_wh
ocean surface water heat flux [J/m2/s]
integer, public ia
of x whole cells (local, with HALO)
real(rp), dimension(:,:), allocatable, public ocean_sflx_mv
ocean surface v-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_mw
ocean surface w-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_mu
ocean surface u-momentum flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
ocean surface roughness length for momentum [m]
real(rp), dimension(:,:), allocatable, public ocean_sflx_sh
ocean surface sensible heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
ocean surface skin temperature [K]
integer, public io_fid_log
Log file ID.
Definition: scale_stdio.F90:56
real(rp), dimension(:,:), allocatable, public ocean_sflx_lh
ocean surface latent heat flux [J/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sflx_evap
ocean surface water vapor flux [kg/m2/s]
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
ocean surface roughness length for heat [m]
integer, public ja
of y whole cells (local, with HALO)
Here is the call graph for this function:

Variable Documentation

◆ ocean_restart_output

logical, public mod_ocean_vars::ocean_restart_output = .false.

output restart file?

Definition at line 43 of file mod_ocean_vars.f90.

Referenced by mod_admin_restart::admin_restart_setup(), mod_mkinit::mkinit(), ocean_vars_setup(), and mod_rm_driver::scalerm().

43  logical, public :: ocean_restart_output = .false.

◆ ocean_restart_in_basename

character(len=h_long), public mod_ocean_vars::ocean_restart_in_basename = ''

basename of the input file

Definition at line 45 of file mod_ocean_vars.f90.

Referenced by mod_admin_restart::admin_restart_setup(), ocean_vars_restart_read(), and ocean_vars_setup().

45  character(len=H_LONG), public :: ocean_restart_in_basename = ''

◆ ocean_restart_out_basename

character(len=h_long), public mod_ocean_vars::ocean_restart_out_basename = ''

basename of the output file

Definition at line 46 of file mod_ocean_vars.f90.

Referenced by mod_admin_restart::admin_restart_setup(), ocean_vars_restart_write(), and ocean_vars_setup().

46  character(len=H_LONG), public :: ocean_restart_out_basename = ''

◆ ocean_restart_out_title

character(len=h_mid), public mod_ocean_vars::ocean_restart_out_title = 'OCEAN restart'

title of the output file

Definition at line 47 of file mod_ocean_vars.f90.

Referenced by mod_admin_restart::admin_restart_setup(), ocean_vars_restart_write(), and ocean_vars_setup().

47  character(len=H_MID), public :: ocean_restart_out_title = 'OCEAN restart'

◆ ocean_restart_out_dtype

character(len=h_mid), public mod_ocean_vars::ocean_restart_out_dtype = 'DEFAULT'

REAL4 or REAL8.

Definition at line 48 of file mod_ocean_vars.f90.

Referenced by mod_admin_restart::admin_restart_setup(), and ocean_vars_restart_write().

48  character(len=H_MID), public :: ocean_restart_out_dtype = 'DEFAULT'

◆ ocean_temp

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_temp

temperature at uppermost ocean layer [K]

Definition at line 51 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), mod_mkinit::ocean_setup(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), ocean_vars_total(), and mod_realinput::realinput_surface().

51  real(RP), public, allocatable :: ocean_temp (:,:)
real(rp), dimension(:,:), allocatable, public ocean_temp
temperature at uppermost ocean layer [K]

◆ ocean_sfc_temp

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sfc_temp

ocean surface skin temperature [K]

Definition at line 52 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), mod_mkinit::ocean_setup(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), ocean_vars_total(), and mod_realinput::realinput_surface().

52  real(RP), public, allocatable :: ocean_sfc_temp (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
ocean surface skin temperature [K]

◆ ocean_sfc_albedo

real(rp), dimension(:,:,:), allocatable, public mod_ocean_vars::ocean_sfc_albedo

◆ ocean_sfc_z0m

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sfc_z0m

ocean surface roughness length for momentum [m]

Definition at line 54 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), mod_mkinit::ocean_setup(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), ocean_vars_total(), and mod_realinput::realinput_surface().

54  real(RP), public, allocatable :: ocean_sfc_z0m (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
ocean surface roughness length for momentum [m]

◆ ocean_sfc_z0h

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sfc_z0h

ocean surface roughness length for heat [m]

Definition at line 55 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), mod_mkinit::ocean_setup(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), ocean_vars_total(), and mod_realinput::realinput_surface().

55  real(RP), public, allocatable :: ocean_sfc_z0h (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
ocean surface roughness length for heat [m]

◆ ocean_sfc_z0e

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sfc_z0e

ocean surface roughness length for vapor [m]

Definition at line 56 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), mod_mkinit::ocean_setup(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), ocean_vars_total(), and mod_realinput::realinput_surface().

56  real(RP), public, allocatable :: ocean_sfc_z0e (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
ocean surface roughness length for vapor [m]

◆ ocean_temp_t

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_temp_t

tendency of OCEAN_TEMP

Definition at line 59 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), and ocean_vars_setup().

59  real(RP), public, allocatable :: ocean_temp_t (:,:)
real(rp), dimension(:,:), allocatable, public ocean_temp_t
tendency of OCEAN_TEMP

◆ ocean_sfc_temp_t

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sfc_temp_t

tendency of OCEAN_SFC_TEMP

Definition at line 60 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), and ocean_vars_setup().

60  real(RP), public, allocatable :: ocean_sfc_temp_t (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp_t
tendency of OCEAN_SFC_TEMP

◆ ocean_sfc_albedo_t

real(rp), dimension(:,:,:), allocatable, public mod_ocean_vars::ocean_sfc_albedo_t

tendency of OCEAN_SFC_alebdo

Definition at line 61 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), and ocean_vars_setup().

61  real(RP), public, allocatable :: ocean_sfc_albedo_t(:,:,:)
real(rp), dimension(:,:,:), allocatable, public ocean_sfc_albedo_t
tendency of OCEAN_SFC_alebdo

◆ ocean_sfc_z0m_t

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sfc_z0m_t

tendency of OCEAN_SFC_Z0M

Definition at line 62 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), and ocean_vars_setup().

62  real(RP), public, allocatable :: ocean_sfc_z0m_t (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m_t
tendency of OCEAN_SFC_Z0M

◆ ocean_sfc_z0h_t

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sfc_z0h_t

tendency of OCEAN_SFC_Z0H

Definition at line 63 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), and ocean_vars_setup().

63  real(RP), public, allocatable :: ocean_sfc_z0h_t (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h_t
tendency of OCEAN_SFC_Z0H

◆ ocean_sfc_z0e_t

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sfc_z0e_t

tendency of OCEAN_SFC_Z0E

Definition at line 64 of file mod_ocean_vars.f90.

Referenced by mod_ocean_driver::ocean_driver(), mod_ocean_phy_driver::ocean_phy_driver(), and ocean_vars_setup().

64  real(RP), public, allocatable :: ocean_sfc_z0e_t (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e_t
tendency of OCEAN_SFC_Z0E

◆ ocean_sflx_mw

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sflx_mw

ocean surface w-momentum flux [kg/m2/s]

Definition at line 67 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), and ocean_vars_total().

67  real(RP), public, allocatable :: ocean_sflx_mw (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sflx_mw
ocean surface w-momentum flux [kg/m2/s]

◆ ocean_sflx_mu

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sflx_mu

ocean surface u-momentum flux [kg/m2/s]

Definition at line 68 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), and ocean_vars_total().

68  real(RP), public, allocatable :: ocean_sflx_mu (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sflx_mu
ocean surface u-momentum flux [kg/m2/s]

◆ ocean_sflx_mv

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sflx_mv

ocean surface v-momentum flux [kg/m2/s]

Definition at line 69 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), and ocean_vars_total().

69  real(RP), public, allocatable :: ocean_sflx_mv (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sflx_mv
ocean surface v-momentum flux [kg/m2/s]

◆ ocean_sflx_sh

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sflx_sh

ocean surface sensible heat flux [J/m2/s]

Definition at line 70 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), and ocean_vars_total().

70  real(RP), public, allocatable :: ocean_sflx_sh (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sflx_sh
ocean surface sensible heat flux [J/m2/s]

◆ ocean_sflx_lh

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sflx_lh

ocean surface latent heat flux [J/m2/s]

Definition at line 71 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), and ocean_vars_total().

71  real(RP), public, allocatable :: ocean_sflx_lh (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sflx_lh
ocean surface latent heat flux [J/m2/s]

◆ ocean_sflx_wh

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_sflx_wh

ocean surface water heat flux [J/m2/s]

Definition at line 72 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), and ocean_vars_total().

72  real(RP), public, allocatable :: ocean_sflx_wh (:,:)
real(rp), dimension(:,:), allocatable, public ocean_sflx_wh
ocean surface water heat flux [J/m2/s]

◆ ocean_sflx_evap

real(rp), dimension(:,:), allocatable, public mod_ocean_vars::ocean_sflx_evap

ocean surface water vapor flux [kg/m2/s]

Definition at line 73 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), ocean_vars_external_in(), ocean_vars_history(), ocean_vars_restart_read(), ocean_vars_restart_write(), ocean_vars_setup(), and ocean_vars_total().

73  real(RP), public, allocatable :: ocean_sflx_evap(:,:)
real(rp), dimension(:,:), allocatable, public ocean_sflx_evap
ocean surface water vapor flux [kg/m2/s]

◆ ocean_u10

real(rp), dimension(:,:), allocatable, public mod_ocean_vars::ocean_u10

ocean surface velocity u at 10m [m/s]

Definition at line 76 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), and ocean_vars_setup().

76  real(RP), public, allocatable :: ocean_u10(:,:)
real(rp), dimension(:,:), allocatable, public ocean_u10
ocean surface velocity u at 10m [m/s]

◆ ocean_v10

real(rp), dimension(:,:), allocatable, public mod_ocean_vars::ocean_v10

ocean surface velocity v at 10m [m/s]

Definition at line 77 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), and ocean_vars_setup().

77  real(RP), public, allocatable :: ocean_v10(:,:)
real(rp), dimension(:,:), allocatable, public ocean_v10
ocean surface velocity v at 10m [m/s]

◆ ocean_t2

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_t2

ocean surface temperature at 2m [K]

Definition at line 78 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), and ocean_vars_setup().

78  real(RP), public, allocatable :: ocean_t2 (:,:)
real(rp), dimension(:,:), allocatable, public ocean_t2
ocean surface temperature at 2m [K]

◆ ocean_q2

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::ocean_q2

ocean surface water vapor at 2m [kg/kg]

Definition at line 79 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_set(), and ocean_vars_setup().

79  real(RP), public, allocatable :: ocean_q2 (:,:)
real(rp), dimension(:,:), allocatable, public ocean_q2
ocean surface water vapor at 2m [kg/kg]

◆ atmos_temp

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_temp

Definition at line 82 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

82  real(RP), public, allocatable :: atmos_temp (:,:)
real(rp), dimension(:,:), allocatable, public atmos_temp

◆ atmos_pres

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_pres

Definition at line 83 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

83  real(RP), public, allocatable :: atmos_pres (:,:)
real(rp), dimension(:,:), allocatable, public atmos_pres

◆ atmos_w

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_w

Definition at line 84 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

84  real(RP), public, allocatable :: atmos_w (:,:)
real(rp), dimension(:,:), allocatable, public atmos_w

◆ atmos_u

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_u

Definition at line 85 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

85  real(RP), public, allocatable :: atmos_u (:,:)
real(rp), dimension(:,:), allocatable, public atmos_u

◆ atmos_v

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_v

Definition at line 86 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

86  real(RP), public, allocatable :: atmos_v (:,:)
real(rp), dimension(:,:), allocatable, public atmos_v

◆ atmos_dens

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_dens

Definition at line 87 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

87  real(RP), public, allocatable :: atmos_dens (:,:)
real(rp), dimension(:,:), allocatable, public atmos_dens

◆ atmos_qv

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_qv

Definition at line 88 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

88  real(RP), public, allocatable :: atmos_qv (:,:)
real(rp), dimension(:,:), allocatable, public atmos_qv

◆ atmos_pbl

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_pbl

Definition at line 89 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

89  real(RP), public, allocatable :: atmos_pbl (:,:)
real(rp), dimension(:,:), allocatable, public atmos_pbl

◆ atmos_sfc_pres

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_sfc_pres

Definition at line 90 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

90  real(RP), public, allocatable :: atmos_sfc_pres (:,:)
real(rp), dimension(:,:), allocatable, public atmos_sfc_pres

◆ atmos_sflx_lw

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_sflx_lw

Definition at line 91 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

91  real(RP), public, allocatable :: atmos_sflx_lw (:,:)
real(rp), dimension(:,:), allocatable, public atmos_sflx_lw

◆ atmos_sflx_sw

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_sflx_sw

Definition at line 92 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

92  real(RP), public, allocatable :: atmos_sflx_sw (:,:)
real(rp), dimension(:,:), allocatable, public atmos_sflx_sw

◆ atmos_cossza

real(rp), dimension (:,:), allocatable, public mod_ocean_vars::atmos_cossza

Definition at line 93 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

93  real(RP), public, allocatable :: atmos_cossza (:,:)
real(rp), dimension(:,:), allocatable, public atmos_cossza

◆ atmos_sflx_prec

real(rp), dimension(:,:), allocatable, public mod_ocean_vars::atmos_sflx_prec

Definition at line 94 of file mod_ocean_vars.f90.

Referenced by mod_ocean_phy_driver::ocean_phy_driver(), mod_ocean_driver::ocean_surface_get(), and ocean_vars_setup().

94  real(RP), public, allocatable :: atmos_sflx_prec(:,:)
real(rp), dimension(:,:), allocatable, public atmos_sflx_prec