/[MITgcm]/MITgcm_contrib/submesoscale/code/gmredi_check.F
ViewVC logotype

Diff of /MITgcm_contrib/submesoscale/code/gmredi_check.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.1 by dimitri, Fri May 30 21:51:23 2008 UTC revision 1.4 by zhc, Fri Mar 12 18:31:00 2010 UTC
# Line 59  CEOP Line 59  CEOP
59    
60  C- print out some kee parameters :  C- print out some kee parameters :
61         CALL WRITE_0D_L( GM_AdvForm, INDEX_NONE,         CALL WRITE_0D_L( GM_AdvForm, INDEX_NONE,
62       &  'GM_AdvForm =', '  /* if FALSE => use SkewFlux Form */')       &  'GM_AdvForm =', '     /* if FALSE => use SkewFlux Form */')
63           CALL WRITE_0D_L( GM_InMomAsStress, INDEX_NONE,
64         &  'GM_InMomAsStress =', ' /* if TRUE => apply as Eddy Stress */')
65         CALL WRITE_0D_L( GM_AdvSeparate, INDEX_NONE,         CALL WRITE_0D_L( GM_AdvSeparate, INDEX_NONE,
66       & 'GM_AdvSeparate =',' /* Calc Bolus & Euler Adv. separately */')       & 'GM_AdvSeparate =',' /* Calc Bolus & Euler Adv. separately */')
67         CALL WRITE_0D_L( GM_ExtraDiag, INDEX_NONE,         CALL WRITE_0D_L( GM_ExtraDiag, INDEX_NONE,
68       &  'GM_ExtraDiag =','  /* Tensor Extra Diag (line 1&2) non 0 */')       &  'GM_ExtraDiag =','   /* Tensor Extra Diag (line 1&2) non 0 */')
69         CALL WRITE_0D_R8( GM_isopycK, INDEX_NONE, 'GM_isopycK =',         CALL WRITE_0D_RL( GM_isopycK, INDEX_NONE, 'GM_isopycK =',
70       &  '   /* Background Isopyc. Diffusivity ( m^2/s ) */')       &  '    /* Background Isopyc. Diffusivity [m^2/s] */')
71         CALL WRITE_0D_R8( GM_background_K*GM_skewflx, INDEX_NONE,         CALL WRITE_0D_RL( GM_background_K*GM_skewflx, INDEX_NONE,
72       &  ' GM_skewflx*K =',       &  'GM_skewflx*K =',
73       &  '   /* Background GM_SkewFlx Diffusivity ( m^2/s ) */')       &  '  /* Background GM_SkewFlx Diffusivity [m^2/s] */')
74         CALL WRITE_0D_R8( GM_background_K*GM_advect, INDEX_NONE,         CALL WRITE_0D_RL( GM_background_K*GM_advect, INDEX_NONE,
75       &  ' GM_advec*K =',       &  'GM_advec*K =',
76       &  '   /* Backg. GM-Advec(=Bolus) Diffusivity ( m^2/s ) */')       &  '    /* Backg. GM-Advec(=Bolus) Diffusivity [m^2/s]*/')
77         CALL WRITE_0D_R8( GM_Visbeck_alpha, INDEX_NONE,         CALL WRITE_0D_RL( GM_background_K*GM_advect, INDEX_NONE,
78       &  ' GM_Visbeck_alpha =','   /* Visbeck alpha coeff. ( ) */')       &  'GM_Kmin_horiz =',
79         WRITE(msgBuf,'(A,A40)')' Tapering/Cliping : ',GM_taper_scheme       &  ' /* Minimum Horizontal Diffusivity [m^2/s] */')
80         CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,         CALL WRITE_0D_RL( GM_Visbeck_alpha, INDEX_NONE,
81       &                     SQUEEZE_RIGHT, myThid )       &  'GM_Visbeck_alpha =', ' /* Visbeck alpha coeff. [-] */')
82         CALL WRITE_0D_R8( GM_Small_Number, INDEX_NONE,         CALL WRITE_0D_RL( GM_Small_Number, INDEX_NONE,
83       &  ' GM_Small_Number =','  /* epsilon used in slope calc */')       &  'GM_Small_Number =', '  /* epsilon used in slope calc */')
84         CALL WRITE_0D_R8( GM_slopeSqCutoff, INDEX_NONE,         CALL WRITE_0D_RL( GM_slopeSqCutoff, INDEX_NONE,
85       &  ' GM_slopeSqCutoff =', '  /* Slope^2 cut-off value */')       &  'GM_slopeSqCutoff =', ' /* Slope^2 cut-off value */')
86           CALL WRITE_0D_C( GM_taper_scheme, 0, INDEX_NONE,
87         &  'GM_taper_scheme =',
88         &  '  /* Type of Tapering/Clipping scheme */')
89           CALL WRITE_0D_RL( GM_maxSlope, INDEX_NONE,
90         &  'GM_maxSlope =', '  /* Maximum Slope (Tapering/Clipping) */')
91           CALL WRITE_0D_RL( GM_facTrL2dz, INDEX_NONE,
92         &  'GM_facTrL2dz =',
93         &  ' /* Minimum Trans.Layer Thick. (factor of dz) */')
94           CALL WRITE_0D_RL( GM_facTrL2ML, INDEX_NONE,
95         &  'GM_facTrL2ML =',
96         &  ' /* Max.Trans.Layer Thick. (factor of MxL Depth)*/')
97           CALL WRITE_0D_RL( GM_maxTransLay, INDEX_NONE,
98         &  'GM_maxTransLay =',
99         &  ' /* Maximum Transition Layer Thickness [m] */')
100    
101  C--  Check parameters:  C--  Check parameters:
102    
# Line 131  C     Make sure we are not trying to use Line 146  C     Make sure we are not trying to use
146        ENDIF        ENDIF
147  #endif  #endif
148    
149    #ifdef GM_SUBMESO
150          IF (GM_SM_Ce .gt. 0 _d 0) THEN
151    C     Make sure we are not trying to use some arrays that are unavailable
152           IF ((.not.GM_ExtraDiag ).and.(.not.GM_AdvForm)) THEN
153            WRITE(msgBuf,'(A)')
154         &   ' GMREDI: GM_SUBMESO needs GM_EXTRA_DIAGONAL or GM_BOLUS_ADVEC'
155            CALL PRINT_ERROR( msgBuf, myThid )
156            WRITE(msgBuf,'(A)')
157         &   ' GMREDI_CHECK: add #define GM_EXTRA_DIAGONAL'
158            CALL PRINT_ERROR( msgBuf, myThid )
159            STOP 'ABNORMAL END: S/R GMREDI_CHECK'
160           ENDIF
161          ENDIF
162    #endif
163                                                                                
164  #ifdef ALLOW_PTRACERS  #ifdef ALLOW_PTRACERS
165        IF ( GM_AdvForm .AND. .NOT.GM_AdvSeparate        IF ( GM_AdvForm .AND. .NOT.GM_AdvSeparate
166       &       .AND. usePTRACERS ) THEN       &       .AND. usePTRACERS ) THEN

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22