/[MITgcm]/MITgcm/pkg/thsice/thsice_readparms.F
ViewVC logotype

Diff of /MITgcm/pkg/thsice/thsice_readparms.F

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

revision 1.2 by jmc, Wed Dec 31 17:44:32 2003 UTC revision 1.6 by jmc, Fri Dec 17 04:59:48 2004 UTC
# Line 3  C $Name$ Line 3  C $Name$
3    
4  #include "THSICE_OPTIONS.h"  #include "THSICE_OPTIONS.h"
5    
6    CBOP
7    C     !ROUTINE: THSICE_READPARMS
8    C     !INTERFACE:
9        SUBROUTINE THSICE_READPARMS( myThid )        SUBROUTINE THSICE_READPARMS( myThid )
10  C     /==========================================================*  
11  C     | SUBROUTINE THSICE_READPARMS  C     !DESCRIPTION: \bv
12    C     *==========================================================*
13    C     | S/R THSICE_READPARMS
14  C     | o Routine to initialize THSICE parameters and constants  C     | o Routine to initialize THSICE parameters and constants
15  C     |==========================================================*  C     *==========================================================*
16  C     | Initialize Th-Sea-ICE parameters, read in data.ice  C     | Initialize Th-Sea-ICE parameters, read in data.ice
17  C     \==========================================================*  C     *==========================================================*
18    C     \ev
19    
20    C     !USES:
21        IMPLICIT NONE        IMPLICIT NONE
22    
23  C     === Global variables ===  C     === Global variables ===
# Line 18  C     === Global variables === Line 26  C     === Global variables ===
26  #include "PARAMS.h"  #include "PARAMS.h"
27  #include "GRID.h"  #include "GRID.h"
28  #include "THSICE_PARAMS.h"  #include "THSICE_PARAMS.h"
29  c #include "THSICE.h"  #ifdef ALLOW_MNC
30    #include "MNC_PARAMS.h"
31    #endif
32    
33    C     !INPUT/OUTPUT PARAMETERS:
34  C     === Routine arguments ===  C     === Routine arguments ===
35        INTEGER myThid        INTEGER myThid
36    CEOP
37    
38  #ifdef ALLOW_THSICE  #ifdef ALLOW_THSICE
39    
40  C     === Local variables ===  C     === Local variables ===
41  C     msgBuf      - Informational/error meesage buffer  C     msgBuf      - Informational/error message buffer
42  C     iUnit       - Work variable for IO unit number  C     iUnit       - Work variable for IO unit number
43        CHARACTER*(MAX_LEN_MBUF) msgBuf        CHARACTER*(MAX_LEN_MBUF) msgBuf
44        INTEGER iUnit        INTEGER iUnit
# Line 47  C--   Th-Sea-ICE parameter Line 59  C--   Th-Sea-ICE parameter
59       &  frac_energy, hihig       &  frac_energy, hihig
60    
61        NAMELIST /THSICE_PARM01/        NAMELIST /THSICE_PARM01/
62       &         startIceModel,       &         startIceModel, stepFwd_oceMxL,
63       &         thSIce_deltaT,       &         thSIce_deltaT, ocean_deltaT, tauRelax_MxL,
64         &         hMxL_default, sMxL_default, vMxL_default,
65       &         stressReduction,       &         stressReduction,
66       &         thSIce_taveFreq, thSIce_diagFreq, thSIce_monFreq       &         thSIce_taveFreq, thSIce_diagFreq, thSIce_monFreq,
67    c    &         thSIce_tave_mnc, thSIce_diag_mnc, thSIce_mon_mnc,
68         &                                           thSIce_mon_mnc,
69         &         thSIceFract_InitFile, thSIceThick_InitFile,
70         &         thSIceSnowH_InitFile, thSIceSnowA_InitFile,
71         &         thSIceEnthp_InitFile, thSIceTsurf_InitFile
72    
73        _BEGIN_MASTER(myThid)        _BEGIN_MASTER(myThid)
74    
# Line 101  C--   Default values (constants) Line 119  C--   Default values (constants)
119        hihig      = 2.5 _d 0        hihig      = 2.5 _d 0
120    
121  C--   Default values (parameters)  C--   Default values (parameters)
122        startIceModel  = 0        stepFwd_oceMxL  = .FALSE.
123        thSIce_deltaT   = deltaTtracer        startIceModel   = 0
124          thSIce_deltaT   = dTtracerLev(1)
125          ocean_deltaT    = dTtracerLev(1)
126          tauRelax_MxL    = 0. _d 0
127          hMxL_default    = 50. _d 0
128          sMxL_default    = 35. _d 0
129          vMxL_default    = 5. _d -2
130        stressReduction = 1. _d 0        stressReduction = 1. _d 0
131        thSIce_taveFreq = taveFreq        thSIce_taveFreq = taveFreq
132        thSIce_diagFreq = dumpFreq        thSIce_diagFreq = dumpFreq
133        thSIce_monFreq  = monitorFreq        thSIce_monFreq  = monitorFreq
134    #ifdef ALLOW_MNC
135          thSIce_tave_mnc = timeave_mnc
136          thSIce_diag_mnc = snapshot_mnc
137          thSIce_mon_mnc  = monitor_mnc
138    #else
139          thSIce_tave_mnc = .FALSE.
140          thSIce_diag_mnc = .FALSE.
141          thSIce_mon_mnc  = .FALSE.
142    #endif
143          thSIceFract_InitFile = ' '
144          thSIceThick_InitFile = ' '
145          thSIceSnowH_InitFile = ' '
146          thSIceSnowA_InitFile = ' '
147          thSIceEnthp_InitFile = ' '
148          thSIceTsurf_InitFile = ' '
149    
150    
151  C--   Read parameters from open data file  C--   Read parameters from open data file
152        READ(UNIT=iUnit,NML=THSICE_CONST)        READ(UNIT=iUnit,NML=THSICE_CONST)
# Line 126  C-    Define other constants (from previ Line 166  C-    Define other constants (from previ
166        Tmlt1=-mu_Tf*S_winton        Tmlt1=-mu_Tf*S_winton
167        rhoiw = rhosw - rhoi        rhoiw = rhosw - rhoi
168    
169    C-    Set other parameters (from previous ones):
170          thSIce_tave_mdsio = .TRUE.
171          thSIce_diag_mdsio = .TRUE.
172          thSIce_mon_stdio  = .TRUE.
173    #ifdef ALLOW_MNC
174          IF (useMNC) THEN
175    C-------
176    C-    MNC not yet available in this package => turn off MNC flags for now
177            thSIce_tave_mnc = .FALSE.
178            thSIce_diag_mnc = .FALSE.
179    C-------
180            IF ( .NOT.outputTypesInclusive
181         &       .AND. thSIce_tave_mnc ) thSIce_tave_mdsio = .FALSE.
182            IF ( .NOT.outputTypesInclusive
183         &       .AND. thSIce_diag_mnc ) thSIce_diag_mdsio = .FALSE.
184            IF ( .NOT.outputTypesInclusive
185         &       .AND. thSIce_mon_mnc  ) thSIce_mon_stdio  = .FALSE.
186          ENDIF
187    #endif
188    
189  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
190        iUnit = standardMessageUnit        iUnit = standardMessageUnit
191  c     iUnit = 88  c     CALL MDSFINDUNIT( iUnit, mythid )
192  c     OPEN(iUnit,file='thsice_check_params',status='unknown')  c     OPEN(iUnit,file='thsice_check_params',status='unknown')
193        WRITE(iUnit,*) 'ThSI: rhos    =',rhos        WRITE(iUnit,*) 'ThSI: rhos    =',rhos
194        WRITE(iUnit,*) 'ThSI: rhoi    =',rhoi        WRITE(iUnit,*) 'ThSI: rhoi    =',rhoi
# Line 168  c     OPEN(iUnit,file='thsice_check_para Line 228  c     OPEN(iUnit,file='thsice_check_para
228        WRITE(iUnit,*) 'ThSI: frac_energy',frac_energy        WRITE(iUnit,*) 'ThSI: frac_energy',frac_energy
229        WRITE(iUnit,*) 'ThSI: hihig   =',hihig        WRITE(iUnit,*) 'ThSI: hihig   =',hihig
230        WRITE(iUnit,*) 'ThSI: stressReduction =',stressReduction        WRITE(iUnit,*) 'ThSI: stressReduction =',stressReduction
231        WRITE(iUnit,*) 'ThSI: thSIce_deltaT  =',thSIce_deltaT        WRITE(iUnit,*) 'ThSI: thSIce_deltaT =',thSIce_deltaT
232          WRITE(iUnit,*) 'ThSI: ocean_deltaT  =',ocean_deltaT
233          WRITE(iUnit,*) 'ThSI: stepFwd_oceMxL=',stepFwd_oceMxL
234          WRITE(iUnit,*) 'ThSI: tauRelax_MxL  =',tauRelax_MxL
235          WRITE(iUnit,*) 'ThSI: hMxL_default  =',hMxL_default
236          WRITE(iUnit,*) 'ThSI: sMxL_default  =',sMxL_default
237          WRITE(iUnit,*) 'ThSI: vMxL_default  =',vMxL_default
238        WRITE(iUnit,*) 'ThSI: thSIce_taveFreq=',thSIce_taveFreq        WRITE(iUnit,*) 'ThSI: thSIce_taveFreq=',thSIce_taveFreq
239        WRITE(iUnit,*) 'ThSI: thSIce_diagFreq=',thSIce_diagFreq        WRITE(iUnit,*) 'ThSI: thSIce_diagFreq=',thSIce_diagFreq
240        WRITE(iUnit,*) 'ThSI: thSIce_monFreq =',thSIce_monFreq        WRITE(iUnit,*) 'ThSI: thSIce_monFreq =',thSIce_monFreq
241        WRITE(iUnit,*) 'ThSI: startIceModel =',startIceModel        WRITE(iUnit,*) 'ThSI: startIceModel =',startIceModel
242        IF (iUnit.EQ.88) CLOSE(iUnit)        IF (iUnit.NE.standardMessageUnit) CLOSE(iUnit)
243  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
244    
245        _END_MASTER(myThid)        _END_MASTER(myThid)

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.6

  ViewVC Help
Powered by ViewVC 1.1.22