SUBROUTINE user_init_grid( gls, nzb_local ) !------------------------------------------------------------------------------! ! Actual revisions: ! ----------------- ! add 'single_street_canyon' as standard topography case ! ! Former revisions: ! ----------------- ! $Id: user_init_grid.f90 240 2009-02-18 17:50:38Z heinze $ ! ! 217 2008-12-09 18:00:48Z letzel ! +topography_grid_convention ! Former file user_interface.f90 split into one file per subroutine ! ! Description: ! ------------ ! Execution of user-defined grid initializing actions ! First argument gls contains the number of ghost layers, which is > 1 if the ! multigrid method for the pressure solver is used !------------------------------------------------------------------------------! USE control_parameters USE indices USE user IMPLICIT NONE INTEGER :: gls INTEGER, DIMENSION(-gls:ny+gls,-gls:nx+gls) :: nzb_local ! !-- Here the user-defined grid initializing actions follow: ! !-- Set the index array nzb_local for non-flat topography. !-- Here consistency checks concerning domain size and periodicity are necessary SELECT CASE ( TRIM( topography ) ) CASE ( 'flat', 'single_building', 'single_street_canyon' ) ! !-- Not allowed here since these are the standard cases used in init_grid. CASE ( 'user_defined_topography_1' ) ! !-- Here the user can define his own topography. ! !-- For each user-defined topography, the topography grid convention has !-- to be explicitly set to either 'cell_edge' or 'cell_center'. !-- topography_grid_convention = 'cell_edge' ! OR: !-- topography_grid_convention = 'cell_center' ! !-- After definition, please remove the following three lines! PRINT*, '+++ user_init_grid: topography "', & topography, '" not available yet' CALL local_stop CASE DEFAULT ! !-- The DEFAULT case is reached if the parameter topography contains a !-- wrong character string that is neither recognized in init_grid nor !-- here in user_init_grid. PRINT*, '+++ (user_)init_grid: unknown topography "', & topography, '"' CALL local_stop END SELECT END SUBROUTINE user_init_grid