INTERFACE:
subroutine init_domain(input_dir,runtype)
IMPLICIT NONE
DESCRIPTION:
This routine is responsible for setting up the bathymetry and
the grid information.
The following steps are done in
:
| 1: | partition of the calculation domain - important for parallel runs |
| 2: | reading bathymetry and grid information through the
generic subroutine
|
| 3: | optionally set minimum depth in regions |
| 4: | optionally adjust the depth in regions |
| 5: | optionally adjust the depth in regions |
| 6: | calculate the mask for T-points |
| 7: | optionally adjust the mask in regions |
| 8: | read boundary information and adjust masks |
| 9: | calculate masks for U-, V- and X-points |
| 10: | calculate additional grid-information - like |
| 11: | calculate metrics - i.e. all necessary grid-spacings |
| 12: | calculate Coriolis parameter - can be constant or spatially varying |
character(len=*) :: input_dir
integer, intent(in) :: runtype
REVISION HISTORY:
LOCAL VARIABLES:
integer :: rc
integer :: np,sz
integer :: i,j,n
integer :: kdum
character(len=PATH_MAX) :: bathymetry = 'topo.nc'
integer :: vel_depth_method=0
character(len=PATH_MAX) :: bdyinfofile = 'bdyinfo.dat'
character(len=PATH_MAX) :: min_depth_file = 'minimum_depth.dat'
character(len=PATH_MAX) :: bathymetry_adjust_file = 'bathymetry.adjust'
character(len=PATH_MAX) :: mask_adjust_file = 'mask.adjust'
namelist /domain/ &
vert_cord,maxdepth, &
bathy_format,bathymetry,vel_depth_method, &
longitude,latitude,f_plane,openbdy,bdyinfofile, &
crit_depth,min_depth,kdum,ddu,ddl, &
d_gamma,gamma_surf,il,ih,jl,jh,z0_method,z0_const,&
check_cfl