29 |
#include "EEPARAMS.h" |
#include "EEPARAMS.h" |
30 |
#include "PARAMS.h" |
#include "PARAMS.h" |
31 |
#include "CPL_PARAMS.h" |
#include "CPL_PARAMS.h" |
32 |
|
#include "OCNIDS.h" |
33 |
#ifdef ALLOW_MNC |
#ifdef ALLOW_MNC |
34 |
#include "MNC_PARAMS.h" |
#include "MNC_PARAMS.h" |
35 |
#endif |
#endif |
62 |
C useImportTau :: True => use the Imported Wind-Stress from couler |
C useImportTau :: True => use the Imported Wind-Stress from couler |
63 |
C useImportSLP :: True => use the Imported Sea-level Atmos. Pressure |
C useImportSLP :: True => use the Imported Sea-level Atmos. Pressure |
64 |
C useImportSIce :: True => use the Imported Sea-Ice loading |
C useImportSIce :: True => use the Imported Sea-Ice loading |
65 |
|
C useImportFIce :: True => use the Imported Sea-Ice fraction (DIC-only) |
66 |
|
C useImportCO2 :: True => use the Imported atmos. CO2 from coupler |
67 |
|
C useImportWSpd :: True => use the Imported surface Wind speed fr cpl |
68 |
C cpl_taveFreq :: Frequency^-1 for time-Aver. output (s) |
C cpl_taveFreq :: Frequency^-1 for time-Aver. output (s) |
69 |
NAMELIST /CPL_OCN_PARAM/ |
NAMELIST /CPL_OCN_PARAM/ |
70 |
& cpl_earlyExpImpCall, |
& cpl_earlyExpImpCall, |
71 |
& useImportHFlx, useImportFW, useImportTau, |
& useImportHFlx, useImportFW, useImportTau, |
72 |
& useImportSLP, useImportSIce, |
& useImportSLP, useImportSIce, useImportFIce, |
73 |
|
& useImportCO2, useImportWSpd, |
74 |
& cpl_taveFreq, cpl_snapshot_mnc, cpl_timeave_mnc |
& cpl_taveFreq, cpl_snapshot_mnc, cpl_timeave_mnc |
75 |
|
|
76 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
82 |
useImportTau = .TRUE. |
useImportTau = .TRUE. |
83 |
useImportSLP = .TRUE. |
useImportSLP = .TRUE. |
84 |
useImportSIce = .TRUE. |
useImportSIce = .TRUE. |
85 |
|
IF ( ocnCpl_exchange_DIC ) THEN |
86 |
|
useImportFIce = .TRUE. |
87 |
|
useImportCO2 = .TRUE. |
88 |
|
useImportWSpd = .TRUE. |
89 |
|
ELSE |
90 |
|
useImportFIce = .FALSE. |
91 |
|
useImportCO2 = .FALSE. |
92 |
|
useImportWSpd = .FALSE. |
93 |
|
ENDIF |
94 |
cpl_taveFreq = taveFreq |
cpl_taveFreq = taveFreq |
95 |
#ifdef ALLOW_MNC |
#ifdef ALLOW_MNC |
96 |
cpl_snapshot_mnc = snapshot_mnc |
cpl_snapshot_mnc = snapshot_mnc |
151 |
WRITE(msgBuf,'(2A)') '** WARNING ** CPL_READPARMS:', |
WRITE(msgBuf,'(2A)') '** WARNING ** CPL_READPARMS:', |
152 |
& ' pressure loading code is not active.' |
& ' pressure loading code is not active.' |
153 |
CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid) |
CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid) |
154 |
WRITE(msgBuf,'(2A)') '** WARNING **', |
C WRITE(msgBuf,'(2A)') '** WARNING **', |
155 |
& ' Re-compile with: #define ATMOSPHERIC_LOADING' |
C & ' Re-compile with: #define ATMOSPHERIC_LOADING' |
156 |
CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid) |
C CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid) |
157 |
ENDIF |
ENDIF |
158 |
#endif /* ATMOSPHERIC_LOADING */ |
#endif /* ATMOSPHERIC_LOADING */ |
159 |
|
|
168 |
STOP 'ABNORMAL END: S/R CPL_READPARMS' |
STOP 'ABNORMAL END: S/R CPL_READPARMS' |
169 |
ENDIF |
ENDIF |
170 |
|
|
171 |
|
IF ( ( useImportFice.OR.useImportCO2.OR.useImportWSpd ) .AND. |
172 |
|
& (.NOT.ocnCpl_exchange_DIC) ) THEN |
173 |
|
WRITE(msgBuf,'(2A)') 'CPL_READPARMS: useImport', |
174 |
|
& ' with DIC variables requires ocnCpl_exchange_DIC TRUE' |
175 |
|
CALL PRINT_ERROR( msgBuf, myThid) |
176 |
|
STOP 'ABNORMAL END: S/R CPL_READPARMS' |
177 |
|
ENDIF |
178 |
|
|
179 |
C Set IO flags |
C Set IO flags |
180 |
cpl_snapshot_mdsio = .TRUE. |
cpl_snapshot_mdsio = .TRUE. |
181 |
cpl_timeave_mdsio = .TRUE. |
cpl_timeave_mdsio = .TRUE. |
222 |
CALL WRITE_0D_L( useImportSIce , INDEX_NONE, |
CALL WRITE_0D_L( useImportSIce , INDEX_NONE, |
223 |
& 'useImportSIce=', |
& 'useImportSIce=', |
224 |
& ' /* use Imported Sea-Ice loading on/off flag */') |
& ' /* use Imported Sea-Ice loading on/off flag */') |
225 |
|
IF ( ocnCpl_exchange_DIC ) THEN |
226 |
|
CALL WRITE_0D_L( useImportFIce , INDEX_NONE, |
227 |
|
& 'useImportFIce=', |
228 |
|
& ' /* use Imported Sea-Ice Fract fr Cpl. on/off flag */') |
229 |
|
CALL WRITE_0D_L( useImportCO2 , INDEX_NONE, |
230 |
|
& 'useImportCO2 =', |
231 |
|
& ' /* use Imported Atmos. CO2 fr Cpl. on/off flag */') |
232 |
|
CALL WRITE_0D_L( useImportWSpd , INDEX_NONE, |
233 |
|
& 'useImportWSpd =', |
234 |
|
& ' /* use Imported Windspeed fr Cpl. on/off flag */') |
235 |
|
ENDIF |
236 |
CALL WRITE_0D_R8( cpl_taveFreq, INDEX_NONE, 'cpl_taveFreq =', |
CALL WRITE_0D_R8( cpl_taveFreq, INDEX_NONE, 'cpl_taveFreq =', |
237 |
& ' /* Frequency^-1 for time-Aver. output (s) */') |
& ' /* Frequency^-1 for time-Aver. output (s) */') |
238 |
CALL WRITE_0D_L( cpl_timeave_mnc , INDEX_NONE, |
CALL WRITE_0D_L( cpl_timeave_mnc , INDEX_NONE, |