INTERFACE:
module m3dDESCRIPTION:
This module contains declarations for all variables related to 3D hydrodynamical calculations. Information about the calculation domain is included from the domain module. The module contains public subroutines for initialisation, integration and clean up of the 3D model component. The m3d module is initialised in the routine init_3d, see section 8.4.1 described on page . The actual calculation routines are called in integrate_3d (see section 8.4.3 on page ). and are linked in from the library lib3d.a. After the simulation, the module is closed in clean_3d, see section 8.4.4 on page . USES:
use exceptions use parameters, only: avmmol use domain, only: openbdy,maxdepth,vert_cord,az use m2d, only: uv_advect,uv_diffusion use variables_2d, only: z,Uint,Vint,UEx,VEx #ifndef NO_BAROCLINIC use temperature,only: init_temperature, do_temperature, & init_temperature_field use salinity, only: init_salinity, do_salinity, init_salinity_field use eqstate, only: init_eqstate, do_eqstate use internal_pressure, only: init_internal_pressure, do_internal_pressure use internal_pressure, only: ip_method #endif use variables_3d use advection, only: NOADV use advection_3d, only: init_advection_3d,print_adv_settings_3d,adv_ver_iterations use bdy_3d, only: init_bdy_3d, do_bdy_3d use bdy_3d, only: bdy3d_tmrlx, bdy3d_tmrlx_ucut, bdy3d_tmrlx_max, bdy3d_tmrlx_min Necessary to use halo_zones because update_3d_halos() have been moved out temperature.F90 and salinity.F90 - should be changed at a later stage use halo_zones, only: update_3d_halo,wait_halo,D_TAG IMPLICIT NONEPUBLIC DATA MEMBERS:
integer :: M=1 REALTYPE :: cord_relax=_ZERO_ integer :: vel3d_adv_split=0 integer :: vel3d_adv_hor=1 integer :: vel3d_adv_ver=1 integer :: turb_adv_split=0 integer :: turb_adv_hor=0 integer :: turb_adv_ver=0 logical :: calc_temp=.true. logical :: calc_salt=.true. logical :: bdy3d=.false. integer :: bdyfmt_3d,bdy3d_ramp character(len=PATH_MAX) :: bdyfile_3d REALTYPE :: ip_fac=_ONE_ integer :: vel_check=0 REALTYPE :: min_vel=-4*_ONE_,max_vel=4*_ONE_REVISION HISTORY:
Original author(s): Karsten Bolding & Hans BurchardLOCAL VARIABLES:
logical :: advect_turbulence=.false. #ifdef NO_BAROCLINIC integer :: ip_method #endif integer :: ip_ramp=-1