19 |
#include "PARAMS.h" |
#include "PARAMS.h" |
20 |
#include "STREAMICE.h" |
#include "STREAMICE.h" |
21 |
#include "STREAMICE_BDRY.h" |
#include "STREAMICE_BDRY.h" |
22 |
#ifdef ALLOW_STREAMICE_FLUX_CONTROL |
!#ifdef ALLOW_STREAMICE_FLUX_CONTROL |
23 |
#include "STREAMICE_CTRL_FLUX.h" |
!#include "STREAMICE_CTRL_FLUX.h" |
24 |
#endif |
!#endif |
25 |
|
|
26 |
C !INPUT PARAMETERS: |
C !INPUT PARAMETERS: |
27 |
INTEGER myThid |
INTEGER myThid |
83 |
& STREAMICEvNormalTimeDepFile, |
& STREAMICEvNormalTimeDepFile, |
84 |
& STREAMICEuShearTimeDepFile, |
& STREAMICEuShearTimeDepFile, |
85 |
& STREAMICEvShearTimeDepFile, |
& STREAMICEvShearTimeDepFile, |
86 |
|
& STREAMICEuFluxTimeDepFile, STREAMICEvFluxTimeDepFile, |
87 |
& STREAMICEGlenConstFile, STREAMICEGlenConstConfig, |
& STREAMICEGlenConstFile, STREAMICEGlenConstConfig, |
88 |
& STREAMICE_ppm_driving_stress, |
& STREAMICE_ppm_driving_stress, |
89 |
& STREAMICE_h_ctrl_const_surf, |
& STREAMICE_h_ctrl_const_surf, |
109 |
& PETSC_PRECOND_TYPE, PETSC_SOLVER_TYPE |
& PETSC_PRECOND_TYPE, PETSC_SOLVER_TYPE |
110 |
#endif |
#endif |
111 |
|
|
112 |
#ifdef ALLOW_STREAMICE_FLUX_CONTROL |
!#ifdef ALLOW_STREAMICE_FLUX_CONTROL |
113 |
NAMELIST /STREAMICE_PARMFLUXCTRL/ |
! NAMELIST /STREAMICE_PARMFLUXCTRL/ |
114 |
& n_fluxes, n_epochs, |
! & n_fluxes, n_epochs, |
115 |
& streamice_ctrl_flux_id, |
! & streamice_ctrl_flux_id, |
116 |
& streamice_ctrl_flux_scaleVel |
! & streamice_ctrl_flux_scaleVel |
117 |
#endif |
!#endif |
118 |
|
|
119 |
NAMELIST /STREAMICE_PARM02/ |
NAMELIST /STREAMICE_PARM02/ |
120 |
& shelf_max_draft, |
& shelf_max_draft, |
226 |
STREAMICEvNormalTimeDepFile = ' ' |
STREAMICEvNormalTimeDepFile = ' ' |
227 |
STREAMICEuShearTimeDepFile = ' ' |
STREAMICEuShearTimeDepFile = ' ' |
228 |
STREAMICEvShearTimeDepFile = ' ' |
STREAMICEvShearTimeDepFile = ' ' |
229 |
|
STREAMICEuFluxTimeDepFile = ' ' |
230 |
|
STREAMICEvFluxTimeDepFile = ' ' |
231 |
|
|
232 |
#ifdef ALLOW_STREAMICE_2DTRACER |
#ifdef ALLOW_STREAMICE_2DTRACER |
233 |
STREAMICETrac2DBCxFile = '' |
STREAMICETrac2DBCxFile = '' |
249 |
#endif |
#endif |
250 |
STREAMICE_ADV_SCHEME = '' |
STREAMICE_ADV_SCHEME = '' |
251 |
|
|
252 |
#ifdef ALLOW_STREAMICE_FLUX_CONTROL |
!#ifdef ALLOW_STREAMICE_FLUX_CONTROL |
253 |
n_fluxes = 0 |
! n_fluxes = 0 |
254 |
n_epochs = 0 |
! n_epochs = 0 |
255 |
DO iarr=1,n_fluxes_max |
! DO iarr=1,n_fluxes_max |
256 |
streamice_ctrl_flux_id(iarr) = 0 |
! streamice_ctrl_flux_id(iarr) = 0 |
257 |
DO tarr=1,n_epochs_max |
! DO tarr=1,n_epochs_max |
258 |
streamice_ctrl_flux_scaleVel(iarr,tarr) = 0. _d 0 |
! streamice_ctrl_flux_scaleVel(iarr,tarr) = 0. _d 0 |
259 |
ENDDO |
! ENDDO |
260 |
ENDDO |
! ENDDO |
261 |
#endif |
!#endif |
262 |
|
|
263 |
STREAMICE_tave_mdsio = .TRUE. |
STREAMICE_tave_mdsio = .TRUE. |
264 |
STREAMICE_dump_mdsio = .TRUE. |
STREAMICE_dump_mdsio = .TRUE. |
368 |
& SQUEEZE_RIGHT , 1) |
& SQUEEZE_RIGHT , 1) |
369 |
CLOSE(iUnit) |
CLOSE(iUnit) |
370 |
|
|
371 |
#ifdef ALLOW_STREAMICE_FLUX_CONTROL |
!#ifdef ALLOW_STREAMICE_FLUX_CONTROL |
372 |
|
! |
373 |
CALL OPEN_COPY_DATA_FILE( |
! CALL OPEN_COPY_DATA_FILE( |
374 |
I 'data.strmctrlflux', 'STREAMICE_READPARMS', |
! I 'data.strmctrlflux', 'STREAMICE_READPARMS', |
375 |
O iUnit, |
! O iUnit, |
376 |
I myThid ) |
! I myThid ) |
377 |
|
! |
378 |
READ(UNIT=iUnit,NML=STREAMICE_PARMFLUXCTRL) |
! READ(UNIT=iUnit,NML=STREAMICE_PARMFLUXCTRL) |
379 |
WRITE(msgBuf,'(A)') |
! WRITE(msgBuf,'(A)') |
380 |
& 'STREAMICE_READPARMS: read flux_ctrl param block' |
! & 'STREAMICE_READPARMS: read flux_ctrl param block' |
381 |
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
! CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
382 |
& SQUEEZE_RIGHT , 1) |
! & SQUEEZE_RIGHT , 1) |
383 |
CLOSE(iUnit) |
! CLOSE(iUnit) |
384 |
#endif |
!#endif |
385 |
|
|
386 |
streamice_nstep_velocity = NINT (streamice_vel_update / deltaT) |
streamice_nstep_velocity = NINT (streamice_vel_update / deltaT) |
387 |
|
|