57 |
C useImportFW :: True => use the Imported Fresh Water flux fr cpl |
C useImportFW :: True => use the Imported Fresh Water flux fr cpl |
58 |
C useImportTau :: True => use the Imported Wind-Stress from couler |
C useImportTau :: True => use the Imported Wind-Stress from couler |
59 |
C useImportSLP :: True => use the Imported Sea-level Atmos. Pressure |
C useImportSLP :: True => use the Imported Sea-level Atmos. Pressure |
60 |
|
C useImportSIce :: True => use the Imported Sea-Ice loading |
61 |
C cpl_taveFreq :: Frequency^-1 for time-Aver. output (s) |
C cpl_taveFreq :: Frequency^-1 for time-Aver. output (s) |
62 |
NAMELIST /CPL_OCN_PARAM/ |
NAMELIST /CPL_OCN_PARAM/ |
63 |
& cpl_earlyExpImpCall, |
& cpl_earlyExpImpCall, |
64 |
& useImportHFlx, useImportFW, useImportTau, useImportSLP, |
& useImportHFlx, useImportFW, useImportTau, |
65 |
|
& useImportSLP, useImportSIce, |
66 |
& cpl_taveFreq |
& cpl_taveFreq |
67 |
|
|
68 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
69 |
|
|
70 |
C- Set default value: |
C- Set default value: |
71 |
cpl_earlyExpImpCall = .FALSE. |
cpl_earlyExpImpCall = .TRUE. |
72 |
useImportHFlx = .TRUE. |
useImportHFlx = .TRUE. |
73 |
useImportFW = .TRUE. |
useImportFW = .TRUE. |
74 |
useImportTau = .TRUE. |
useImportTau = .TRUE. |
75 |
useImportSLP = .TRUE. |
useImportSLP = .TRUE. |
76 |
|
useImportSIce = .TRUE. |
77 |
cpl_taveFreq = taveFreq |
cpl_taveFreq = taveFreq |
78 |
|
|
79 |
_BEGIN_MASTER(myThid) |
_BEGIN_MASTER(myThid) |
103 |
#ifndef ALLOW_TIMEAVE |
#ifndef ALLOW_TIMEAVE |
104 |
IF (cpl_taveFreq.GT.0.) THEN |
IF (cpl_taveFreq.GT.0.) THEN |
105 |
WRITE(msgBuf,'(A)') |
WRITE(msgBuf,'(A)') |
106 |
& 'CPL_READPARMS: cpl_taveFreq > 0 but ALLOW_TIMEAVE undefined' |
& 'CPL_READPARMS: cpl_taveFreq > 0 but not compiled pkg/timeave' |
107 |
CALL PRINT_ERROR( msgBuf, myThid) |
CALL PRINT_ERROR( msgBuf, myThid) |
108 |
WRITE(msgBuf,'(2A)') |
WRITE(msgBuf,'(A)') |
109 |
& 'Re-compile with: #define ALLOW_TIMEAVE', |
& 'Re-compile with pkg "timeave" in packages.conf' |
|
& ' or -DALLOW_TIMEAVE' |
|
110 |
CALL PRINT_ERROR( msgBuf, myThid) |
CALL PRINT_ERROR( msgBuf, myThid) |
111 |
STOP 'ABNORMAL END: S/R CPL_READPARMS' |
STOP 'ABNORMAL END: S/R CPL_READPARMS' |
112 |
ENDIF |
ENDIF |
113 |
#endif /* ALLOW_TIMEAVE */ |
#endif /* ALLOW_TIMEAVE */ |
114 |
|
|
115 |
|
#ifndef ATMOSPHERIC_LOADING |
116 |
|
IF ( useImportSLP ) THEN |
117 |
|
WRITE(msgBuf,'(A)') |
118 |
|
& 'CPL_READPARMS: useImportSLP is set but' |
119 |
|
CALL PRINT_ERROR( msgBuf , myThid) |
120 |
|
ELSEIF ( useImportSIce ) THEN |
121 |
|
WRITE(msgBuf,'(A)') |
122 |
|
& 'CPL_READPARMS: useImportSIce is set but' |
123 |
|
CALL PRINT_ERROR( msgBuf , myThid) |
124 |
|
ENDIF |
125 |
|
IF ( useImportSLP .OR. useImportSIce ) THEN |
126 |
|
WRITE(msgBuf,'(A)') |
127 |
|
& 'CPL_READPARMS: pressure loading code is not compiled.' |
128 |
|
CALL PRINT_ERROR( msgBuf , myThid) |
129 |
|
WRITE(msgBuf,'(A)') |
130 |
|
& 'Re-compile with: #define ATMOSPHERIC_LOADING', |
131 |
|
CALL PRINT_ERROR( msgBuf , myThid) |
132 |
|
STOP 'ABNORMAL END: S/R CPL_READPARMS' |
133 |
|
ENDIF |
134 |
|
#endif |
135 |
|
|
136 |
|
IF ( .NOT.cpl_earlyExpImpCall .AND. staggerTimeStep ) THEN |
137 |
|
WRITE(msgBuf,'(A,L5,A,L5)') |
138 |
|
& 'CPL_READPARMS: staggerTimeStep=',staggerTimeStep, |
139 |
|
& ' ; cpl_earlyExpImpCall=', cpl_earlyExpImpCall |
140 |
|
CALL PRINT_ERROR( msgBuf, myThid) |
141 |
|
WRITE(msgBuf,'(A)') |
142 |
|
& 'CPL_READPARMS: taggerTimeStep requires cpl_earlyExpImpCall' |
143 |
|
CALL PRINT_ERROR( msgBuf, myThid) |
144 |
|
STOP 'ABNORMAL END: S/R CPL_READPARMS' |
145 |
|
ENDIF |
146 |
|
|
147 |
C- derive other parameters: |
C- derive other parameters: |
148 |
|
|
149 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
175 |
CALL WRITE_0D_L( useImportSLP , INDEX_NONE, |
CALL WRITE_0D_L( useImportSLP , INDEX_NONE, |
176 |
& 'useImportSLP =', |
& 'useImportSLP =', |
177 |
& ' /* use Imported Sea-level Atm Press on/off flag */') |
& ' /* use Imported Sea-level Atm Press on/off flag */') |
178 |
|
CALL WRITE_0D_L( useImportSIce , INDEX_NONE, |
179 |
|
& 'useImportSIce=', |
180 |
|
& ' /* use Imported Sea-Ice loading on/off flag */') |
181 |
CALL WRITE_0D_R8( cpl_taveFreq, INDEX_NONE, 'cpl_taveFreq =', |
CALL WRITE_0D_R8( cpl_taveFreq, INDEX_NONE, 'cpl_taveFreq =', |
182 |
& ' /* Frequency^-1 for time-Aver. output (s) */') |
& ' /* Frequency^-1 for time-Aver. output (s) */') |
183 |
|
|