--- MITgcm_contrib/submesoscale/code/GMREDI.h 2008/05/30 22:13:42 1.2 +++ MITgcm_contrib/submesoscale/code/GMREDI.h 2010/03/12 18:31:00 1.4 @@ -1,22 +1,45 @@ -C $Header: /home/ubuntu/mnt/e9_copy/MITgcm_contrib/submesoscale/code/GMREDI.h,v 1.2 2008/05/30 22:13:42 dimitri Exp $ +C $Header: /home/ubuntu/mnt/e9_copy/MITgcm_contrib/submesoscale/code/GMREDI.h,v 1.4 2010/03/12 18:31:00 zhc Exp $ C $Name: $ #ifdef ALLOW_GMREDI -C Package flag - logical GMREDIisON - logical GM_AdvForm - logical GM_AdvSeparate - logical GM_ExtraDiag - logical GM_MNC - logical GM_MDSIO - COMMON /GM_PACKAGE/ GMREDIisON, - & GM_AdvForm, GM_AdvSeparate, - & GM_ExtraDiag, GM_MNC, GM_MDSIO +C--- GM/Redi package parameters -C GM/Redi parameters -C GM_Small_Number :: epsilon used in computing the slope +C-- Numerical Constant + _RL op5 + _RL op25 + PARAMETER( op5 = 0.5 _d 0 ) + PARAMETER( op25 = 0.25 _d 0 ) + +C-- GM/Redi Logical-type parameters + LOGICAL GM_AdvForm + LOGICAL GM_AdvSeparate + LOGICAL GM_ExtraDiag + LOGICAL GM_InMomAsStress + LOGICAL GM_MNC + LOGICAL GM_MDSIO + COMMON /GM_PARAMS_L/ + & GM_AdvForm, GM_AdvSeparate, + & GM_ExtraDiag, GM_MNC, GM_MDSIO, + & GM_InMomAsStress + +C-- GM/Redi Character-type parameters +C GM_taper_scheme :: select which tapering/clipping scheme to use + CHARACTER*(40) GM_taper_scheme + COMMON /GM_PARAMS_C/ + & GM_taper_scheme + +C-- GM/Redi real-type parameters +C GM_isopycK :: Isopycnal diffusivity [m^2/s] (Redi-tensor) +C GM_background_K :: Thickness diffusivity [m^2/s] (GM bolus transport) +C GM_maxSlope :: maximum slope (tapering/clipping) [-] +C GM_Kmin_horiz :: minimum horizontal diffusivity [m^2/s] +C GM_Small_Number :: epsilon used in computing the slope C GM_slopeSqCutoff :: slope^2 cut-off value +C- transition layer thickness definition: +C GM_facTrL2dz :: minimum Trans. Layer Thick. as a factor of local dz +C GM_facTrL2ML :: maximum Trans. Layer Thick. as a factor of Mix-Layer Depth +C GM_maxTransLay :: maximum Trans. Layer Thick. [m] _RL GM_isopycK _RL GM_background_K _RL GM_maxSlope @@ -26,44 +49,50 @@ _RL GM_Visbeck_alpha _RL GM_Visbeck_length _RL GM_Visbeck_depth - _RL GM_Visbeck_maxval_K - CHARACTER*(40) GM_taper_scheme + _RL GM_Visbeck_minDepth + _RL GM_Visbeck_maxSlope + _RL GM_Visbeck_minVal_K + _RL GM_Visbeck_maxVal_K + _RL GM_facTrL2dz + _RL GM_facTrL2ML + _RL GM_maxTransLay _RL GM_Scrit _RL GM_Sd +C SM (4) _RL GM_SM_Ce _RL GM_SM_Lf _RL GM_SM_Lmax _RL GM_SM_tau - COMMON /GM_PARAMS/ GM_isopycK, GM_background_K, + + COMMON /GM_PARAMS_R/ + & GM_isopycK, GM_background_K, & GM_maxSlope, & GM_Kmin_horiz, & GM_Small_Number, GM_slopeSqCutoff, - & GM_Visbeck_alpha, - & GM_Visbeck_length, + & GM_Visbeck_alpha, GM_Visbeck_length, & GM_Visbeck_depth, - & GM_Visbeck_maxval_K, - & GM_taper_scheme, - & GM_Scrit, - & GM_Sd, - & GM_SM_Ce, - & GM_SM_Lf, - & GM_SM_Lmax, - & GM_SM_tau - - _RL op5 - _RL op25 - PARAMETER( op5 = 0.5D0 ) - PARAMETER( op25 = 0.25D0 ) + & GM_Visbeck_minDepth, GM_Visbeck_maxSlope, + & GM_Visbeck_minVal_K, GM_Visbeck_maxVal_K, + & GM_facTrL2dz, GM_facTrL2ML, GM_maxTransLay, + & GM_Scrit, GM_Sd +C SM (4) + & ,GM_SM_Ce, + & GM_SM_Lf, + & GM_SM_Lmax, + & GM_SM_tau + -C More GM/Redi parameters diagnosed from previous block +C-- More GM/Redi parameters derived from previous block C (not directly user configured) _RL GM_rMaxSlope _RL GM_skewflx _RL GM_advect - COMMON /GM_PARAMS2/ GM_rMaxSlope, - & GM_skewflx, GM_advect + COMMON /GM_DERIVED_PAR/ + & GM_rMaxSlope, + & GM_skewflx, GM_advect -C GM/Redi tensor elements +C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| +C--- GM/Redi tensor elements C Bottom row of tensor corresponds to W points C Kwx is K_31 element, X direction at W point @@ -75,7 +104,7 @@ COMMON /GM_Wtensor/ Kwx,Kwy,Kwz #ifdef GM_NON_UNITY_DIAGONAL -C Horizontal part of the tensor +C Horizontal part of the tensor C Kux is K_11 element, X direction at U point C Kvy is K_22 element, Y direction at V point _RL Kux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) @@ -99,8 +128,8 @@ #endif #ifdef GM_BOLUS_ADVEC -C GM advection formulation: bolus velocities are derived from 2 -C streamfunctions PsiX and PsiY : +C GM advection formulation: bolus velocities are derived from 2 +C streamfunctions PsiX and PsiY : _RL GM_PsiX(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) _RL GM_PsiY(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) COMMON /GM_BOLUS/ GM_PsiX,GM_PsiY