3 |
|
|
4 |
#include "PACKAGES_CONFIG.h" |
#include "PACKAGES_CONFIG.h" |
5 |
#include "CPP_OPTIONS.h" |
#include "CPP_OPTIONS.h" |
6 |
|
#ifdef ALLOW_MOM_COMMON |
7 |
|
# include "MOM_COMMON_OPTIONS.h" |
8 |
|
#endif |
9 |
|
|
10 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
11 |
CBOP |
CBOP |
24 |
#include "EEPARAMS.h" |
#include "EEPARAMS.h" |
25 |
#include "PARAMS.h" |
#include "PARAMS.h" |
26 |
#include "EOS.h" |
#include "EOS.h" |
27 |
|
#ifdef ALLOW_MOM_COMMON |
28 |
|
# include "MOM_VISC.h" |
29 |
|
#endif |
30 |
|
|
31 |
C !INPUT/OUTPUT PARAMETERS: |
C !INPUT/OUTPUT PARAMETERS: |
32 |
C myThid :: My Thread Id number |
C myThid :: My Thread Id number |
69 |
use3Dsolver = nonHydrostatic.OR. implicitIntGravWave |
use3Dsolver = nonHydrostatic.OR. implicitIntGravWave |
70 |
calc_wVelocity = momStepping .OR. exactConserv |
calc_wVelocity = momStepping .OR. exactConserv |
71 |
|
|
72 |
|
#ifndef ALLOW_3D_VISCAH |
73 |
|
IF ( viscAhDfile.NE.' ' .OR. viscAhZfile.NE.' ' ) THEN |
74 |
|
WRITE(msgBuf,'(2A)') 'SET_PARAMS: ', |
75 |
|
& 'viscAhDfile and viscAhZfile cannot be used with' |
76 |
|
CALL PRINT_ERROR( msgBuf, myThid ) |
77 |
|
WRITE(msgBuf,'(2A)') 'SET_PARAMS: ', |
78 |
|
& '"#undef ALLOW_3D_VISCAH" in MOM_COMMON_OPTIONS.h' |
79 |
|
CALL PRINT_ERROR( msgBuf, myThid ) |
80 |
|
STOP 'ABNORMAL END: S/R SET_PARAMS' |
81 |
|
c errCount = errCount + 1 |
82 |
|
ENDIF |
83 |
|
#endif |
84 |
|
#ifndef ALLOW_3D_VISCA4 |
85 |
|
IF ( viscA4Dfile.NE.' ' .OR. viscA4Zfile.NE.' ' ) THEN |
86 |
|
WRITE(msgBuf,'(2A)') 'SET_PARAMS: ', |
87 |
|
& 'viscA4Dfile and viscA4Zfile cannot be used with' |
88 |
|
CALL PRINT_ERROR( msgBuf, myThid ) |
89 |
|
WRITE(msgBuf,'(2A)') 'SET_PARAMS: ', |
90 |
|
& '"#undef ALLOW_3D_VISCA4" in MOM_COMMON_OPTIONS.h' |
91 |
|
CALL PRINT_ERROR( msgBuf, myThid ) |
92 |
|
STOP 'ABNORMAL END: S/R SET_PARAMS' |
93 |
|
ENDIF |
94 |
|
#endif |
95 |
|
|
96 |
|
#ifdef ALLOW_MOM_COMMON |
97 |
|
C- On/Off flags for viscosity coefficients |
98 |
|
useVariableVisc = |
99 |
|
& viscAhGrid .NE.zeroRL .OR. viscA4Grid .NE.zeroRL |
100 |
|
& .OR. viscC2smag .NE.zeroRL .OR. viscC4smag .NE.zeroRL |
101 |
|
& .OR. viscC2leith.NE.zeroRL .OR. viscC2leithD.NE.zeroRL |
102 |
|
& .OR. viscC4leith.NE.zeroRL .OR. viscC4leithD.NE.zeroRL |
103 |
|
& .OR. viscAhDfile.NE.' ' .OR. viscAhZfile.NE.' ' |
104 |
|
& .OR. viscA4Dfile.NE.' ' .OR. viscA4Zfile.NE.' ' |
105 |
|
|
106 |
|
useHarmonicVisc = viscAh .NE.zeroRL |
107 |
|
& .OR. viscAhD .NE.zeroRL .OR. viscAhZ .NE.zeroRL |
108 |
|
& .OR. viscAhGrid .NE.zeroRL .OR. viscC2smag .NE.zeroRL |
109 |
|
& .OR. viscC2leith.NE.zeroRL .OR. viscC2leithD.NE.zeroRL |
110 |
|
& .OR. viscAhDfile.NE. ' ' .OR. viscAhZfile .NE. ' ' |
111 |
|
|
112 |
|
useBiharmonicVisc = viscA4.NE.zeroRL |
113 |
|
& .OR. viscA4D .NE.zeroRL .OR. viscA4Z .NE.zeroRL |
114 |
|
& .OR. viscA4Grid .NE.zeroRL .OR. viscC4smag .NE.zeroRL |
115 |
|
& .OR. viscC4leith.NE.zeroRL .OR. viscC4leithD.NE.zeroRL |
116 |
|
& .OR. viscA4Dfile.NE. ' ' .OR. viscA4Zfile .NE. ' ' |
117 |
|
|
118 |
|
useVariableVisc = momViscosity .AND. useVariableVisc |
119 |
|
useHarmonicVisc = momViscosity .AND. useHarmonicVisc |
120 |
|
useBiharmonicVisc = momViscosity .AND. useBiharmonicVisc |
121 |
|
#endif /* ALLOW_MOM_COMMON */ |
122 |
|
|
123 |
C-- Free-surface & pressure method |
C-- Free-surface & pressure method |
124 |
uniformFreeSurfLev = usingZCoords |
uniformFreeSurfLev = usingZCoords |
125 |
C- Note: comment line below to revert to full-cell hydrostatic-pressure |
C- Note: comment line below to revert to full-cell hydrostatic-pressure |