MODULE ldftra_crs !!====================================================================== !! *** MODULE ldftra *** !! Ocean physics: lateral diffusivity coefficient !!===================================================================== !! History : ! 1997-07 (G. Madec) from inimix.F split in 2 routines !! NEMO 1.0 ! 2002-09 (G. Madec) F90: Free form and module !! 2.0 ! 2005-11 (G. Madec) !!---------------------------------------------------------------------- !!---------------------------------------------------------------------- !! ldf_tra_init : initialization, namelist read, and parameters control !! ldf_tra_c3d : 3D eddy viscosity coefficient initialization !! ldf_tra_c2d : 2D eddy viscosity coefficient initialization !! ldf_tra_c1d : 1D eddy viscosity coefficient initialization !!---------------------------------------------------------------------- ! USE oce ! ocean dynamics and tracers ! USE dom_oce ! ocean space and time domain ! USE phycst ! physical constants USE ldftra_oce,ONLY : lk_traldf_eiv,ln_traldf_lap,ln_traldf_bilap ! ocean tracer lateral physics ! USE ldfslp ! ??? ! USE in_out_manager ! I/O manager ! USE ioipsl ! USE lib_mpp ! distribued memory computing library ! USE lbclnk ! ocean lateral boundary conditions (or mpp link) USE oce_trc USE crslbclnk , ONLY : crs_lbc_lnk IMPLICIT NONE PRIVATE PUBLIC ldf_tra_crs_init ! called by opa.F90 !! * Substitutions # include "domzgr_substitute.h90" # include "vectopt_loop_substitute.h90" !!---------------------------------------------------------------------- !! NEMO/OPA 3.3 , NEMO Consortium (2010) !! $Id: ldftra.F90 4624 2014-04-28 12:09:03Z acc $ !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) !!---------------------------------------------------------------------- CONTAINS SUBROUTINE ldf_tra_crs_init !!---------------------------------------------------------------------- !! *** ROUTINE ldf_tra_init *** !! !! ** Purpose : initializations of the tracer lateral mixing coeff. !! !! ** Method : the Eddy diffusivity and eddy induced velocity ceoff. !! are defined as follows: !! default option : constant coef. aht0, aeiv0 (namelist) !! 'key_traldf_c1d': depth dependent coef. defined in !! in ldf_tra_c1d routine !! 'key_traldf_c2d': latitude and longitude dependent coef. !! defined in ldf_tra_c2d routine !! 'key_traldf_c3d': latitude, longitude, depth dependent coef. !! defined in ldf_tra_c3d routine !! !! N.B. User defined include files. By default, 3d and 2d coef. !! are set to a constant value given in the namelist and the 1d !! coefficients are initialized to a hyperbolic tangent vertical !! profile. !!---------------------------------------------------------------------- INTEGER :: ioptio ! temporary integer INTEGER :: ios ! temporary integer LOGICAL :: ll_print = .FALSE. ! =T print eddy coef. in numout !!---------------------------------------------------------------------- !#if defined key_traldf_c3d ! CALL ldf_tra_c3d( ll_print ) ! aht = 3D coef. = F( longitude, latitude, depth ) !#elif defined key_traldf_c2d CALL ldf_tra_c2d_crs( ll_print ) ! aht = 2D coef. = F( longitude, latitude ) !#elif defined key_traldf_c1d ! CALL ldf_tra_c1d( ll_print ) ! aht = 1D coef. = F( depth ) !#endif ! Constant coefficients ! END SUBROUTINE ldf_tra_crs_init !#if defined key_traldf_c3d !# include "ldftra_c3d.h90" !#elif defined key_traldf_c2d # include "ldftra_c2d_crs.h90" !#elif defined key_traldf_c1d !# include "ldftra_c1d.h90" !#endif !!====================================================================== END MODULE ldftra_crs