/[MITgcm]/MITgcm_contrib/ksnow/press_release/code/set_defaults.F
ViewVC logotype

Annotation of /MITgcm_contrib/ksnow/press_release/code/set_defaults.F

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


Revision 1.3 - (hide annotations) (download)
Sat Mar 4 11:57:16 2017 UTC (8 years, 4 months ago) by dgoldberg
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +6 -1 lines
further changes

1 dgoldberg 1.3 C $Header: /u/gcmpack/MITgcm_contrib/ksnow/press_release/code/set_defaults.F,v 1.2 2017/01/30 16:32:18 ksnow Exp $
2 ksnow 1.1 C $Name: $
3    
4     #include "PACKAGES_CONFIG.h"
5     #include "CPP_OPTIONS.h"
6    
7     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
8     CBOP
9     C !ROUTINE: SET_DEFAULTS
10     C !INTERFACE:
11     SUBROUTINE SET_DEFAULTS(
12     O viscArDefault, diffKrTDefault, diffKrSDefault,
13     O hFacMinDrDefault, delRdefault,
14     I myThid )
15    
16     C !DESCRIPTION:
17     C Routine to set model "parameter defaults".
18    
19     C !USES:
20     IMPLICIT NONE
21     #include "SIZE.h"
22     #include "EEPARAMS.h"
23     #include "PARAMS.h"
24     #ifdef ALLOW_EXCH2
25     # include "W2_EXCH2_SIZE.h"
26     #endif /* ALLOW_EXCH2 */
27     #include "SET_GRID.h"
28    
29     C !INPUT/OUTPUT PARAMETERS:
30     C myThid :: my Thread Id. Number
31     INTEGER myThid
32     _RL viscArDefault
33     _RL diffKrTDefault
34     _RL diffKrSDefault
35     _RL hFacMinDrDefault
36     _RL delRDefault(Nr)
37    
38     C !LOCAL VARIABLES:
39     C i, j, k :: Loop counters
40     INTEGER i, j, k
41     CEOP
42    
43     C-- Grid parameters
44     C- Vertical gridding
45     delRFile = ' '
46     delRcFile = ' '
47     hybSigmFile = ' '
48     seaLev_Z = UNSET_RL
49     top_Pres = UNSET_RL
50     rSigmaBnd = UNSET_RL
51     selectSigmaCoord = 0
52     DO k=1,Nr
53     delRdefault(k) = 0.
54     ENDDO
55     DO k=1,Nr+1
56     delRc(k) = UNSET_RL
57     ENDDO
58     C- vertical profile
59     tRefFile = ' '
60     sRefFile = ' '
61     rhoRefFile = ' '
62     gravityFile = ' '
63     thetaConst = UNSET_RL
64     DO k=1,Nr
65     tRef(k) = UNSET_RL
66     sRef(k) = UNSET_RL
67     ENDDO
68    
69     C- Horizontal gridding
70     delXFile = ' '
71     delYFile = ' '
72     horizGridFile = ' '
73     deepAtmosphere = .FALSE.
74     xgOrigin = UNSET_RL
75     ygOrigin = UNSET_RL
76     DO i=1,grid_maxNx
77     delX(i) = UNSET_RL
78     ENDDO
79     DO j=1,grid_maxNy
80     delY(j) = UNSET_RL
81     ENDDO
82     C In cartesian coords distances are in metres
83     usingCartesianGrid = .FALSE.
84     C In spherical polar distances are in degrees
85     usingSphericalPolarGrid = .FALSE.
86     rSphere = UNSET_RL
87     C General curvilinear coordinate system
88     usingCurvilinearGrid= .FALSE.
89     radius_fromHorizGrid= UNSET_RL
90     hasWetCSCorners = .FALSE.
91     C General cylindrical coordinate system
92     usingCylindricalGrid= .FALSE.
93     C Coriolis map:
94     selectCoriMap = -1
95     use3dCoriolis = .TRUE.
96     C grid rotation
97     rotateGrid = .FALSE.
98     phiEuler = 0. _d 0
99     thetaEuler = 0. _d 0
100     psiEuler = 0. _d 0
101    
102     C-- Set default "physical" parameters
103     nh_Am2 = 1. _d 0
104     gravity = 9.81 _d 0
105     gBaro = UNSET_RL
106     rhoNil = 999.8 _d 0
107     rhoConst = UNSET_RL
108     C-- jmc : the default is to set rhoConstFresh to rhoConst (=rhoNil by default)
109     C (so that the default produces same results as before)
110     c rhoConstFresh = 999.8 _d 0
111     rhoConstFresh = UNSET_RL
112     convertFW2Salt = UNSET_RL
113     f0 = 1. _d -4
114     beta = 1. _d -11
115     fPrime = 0. _d 0
116     C- Earth rotation period is 86400*365.25/366.25 (use to be 1.day)
117     rotationPeriod = 86164. _d 0
118     omega = UNSET_RL
119     C- viscosity and diffusivity default value:
120     viscAh = 0. _d 3
121     smag3D_coeff = 1. _d -2
122     viscAhGrid = 0. _d 0
123     viscAhGridMin = 0. _d 0
124     viscAhGridMax = 1. _d 21
125     viscAhMax = 1. _d 21
126     viscAhReMax = 0. _d 0
127     viscC2leith = 0. _d 0
128     viscC2leithD = 0. _d 0
129     viscC2smag = 0. _d 0
130     viscArDefault = 0. _d -3
131     viscFacAdj = 1. _d 0
132     no_slip_sides = .TRUE.
133     no_slip_bottom = .TRUE.
134     bottomVisc_pCell = .FALSE.
135     sideDragFactor = 2. _d 0
136     bottomDragLinear = 0.
137     bottomDragQuadratic = 0.
138     selectBotDragQuadr = -1
139     viscA4 = 0. _d 11
140     viscA4Grid = 0. _d 0
141     viscA4GridMax = 1. _d 21
142     viscA4GridMin = 0. _d 0
143     viscA4Max = 1. _d 21
144     viscA4ReMax = 0. _d 0
145     viscC4leith = 0. _d 0
146     viscC4leithD = 0. _d 0
147     viscC4smag = 0. _d 0
148     DO k=1,Nr
149     viscArNr(k) = UNSET_RL
150     ENDDO
151     cosPower = 0.
152     diffKhT = 0. _d 3
153     diffKhS = 0. _d 3
154     diffK4T = 0. _d 11
155     diffK4S = 0. _d 11
156     diffKrTDefault = 0. _d -3
157     diffKrSDefault = 0. _d -3
158     diffKrBL79surf = 0. _d 0
159     diffKrBL79deep = 0. _d 0
160     diffKrBL79scl = 200. _d 0
161     diffKrBL79Ho = -2000. _d 0
162     BL79LatVary = 30.
163     diffKrBLEQsurf = UNSET_RL
164     diffKrBLEQdeep = UNSET_RL
165     diffKrBLEQscl = UNSET_RL
166     diffKrBLEQHo = UNSET_RL
167     DO k=1,Nr
168     diffKrNrT(k) = UNSET_RL
169     diffKrNrS(k) = UNSET_RL
170     diffKr4T(k) = 0.
171     diffKr4S(k) = 0.
172     ENDDO
173     HeatCapacity_Cp = 3994. _d 0
174     eosType = 'LINEAR'
175     buoyancyRelation = 'OCEANIC'
176     selectP_inEOS_Zc = UNSET_I
177     smoothAbsFuncRange = 0. _d 0
178     hFacMin = 1. _d 0
179     hFacMinDrDefault = 0. _d 0
180     implicitIntGravWave = .FALSE.
181     staggerTimeStep = .FALSE.
182     applyExchUV_early = .FALSE.
183     doResetHFactors = .FALSE.
184     momViscosity = .TRUE.
185     momAdvection = .TRUE.
186     momForcing = .TRUE.
187     useCoriolis = .TRUE.
188     momPressureForcing = .TRUE.
189     momStepping = .TRUE.
190     vectorInvariantMomentum = .FALSE.
191     tempStepping = .TRUE.
192     tempAdvection = .TRUE.
193     tempForcing = .TRUE.
194     saltStepping = .TRUE.
195     saltAdvection = .TRUE.
196     saltForcing = .TRUE.
197     addFrictionHeating = .FALSE.
198     metricTerms = .TRUE.
199     useNHMTerms = .FALSE.
200     useSmag3D = .FALSE.
201     useFullLeith = .FALSE.
202     useAreaViscLength = .FALSE.
203     useStrainTensionVisc= .FALSE.
204     implicitDiffusion = .FALSE.
205     implicitViscosity = .FALSE.
206 ksnow 1.2 selectImplicitDrag = 0
207 ksnow 1.1 momImplVertAdv = .FALSE.
208     tempImplVertAdv = .FALSE.
209     saltImplVertAdv = .FALSE.
210     nonHydrostatic = .FALSE.
211     quasiHydrostatic = .FALSE.
212     globalFiles = .FALSE.
213     useSingleCpuIO = .FALSE.
214     useSingleCpuInput = .FALSE.
215     allowFreezing = .FALSE.
216     ivdc_kappa = 0. _d 0
217     hMixCriteria = -.8 _d 0
218     dRhoSmall = 1. _d -6
219     hMixSmooth = 0. _d 0
220     usePickupBeforeC54 = .FALSE.
221     tempAdvScheme = 2
222     saltAdvScheme = 2
223     multiDimAdvection = .TRUE.
224     useMultiDimAdvec = .FALSE.
225     useCDscheme = .FALSE.
226     useEnergyConservingCoriolis = .FALSE.
227     useJamartWetPoints = .FALSE.
228     useJamartMomAdv = .FALSE.
229     selectVortScheme = UNSET_I
230     upwindVorticity = .FALSE.
231     highOrderVorticity = .FALSE.
232     useAbsVorticity = .FALSE.
233     upwindShear = .FALSE.
234     selectKEscheme = 0
235     IF ( debugMode ) THEN
236     debugLevel = debLevD
237     ELSE
238     debugLevel = debLevB
239     #ifdef ALLOW_AUTODIFF
240     debugLevel = debLevA
241     #endif
242     ENDIF
243    
244     C-- Set (free)surface-related parameters
245     implicitFreeSurface = .FALSE.
246     rigidLid = .FALSE.
247     implicSurfPress = 1. _d 0
248 ksnow 1.2 implicDiv2DFlow = 1. _d 0
249 ksnow 1.1 exactConserv = .FALSE.
250     linFSConserveTr = .FALSE.
251     uniformLin_PhiSurf = .TRUE.
252     nonlinFreeSurf = 0
253     hFacInf = 0.2 _d 0
254     hFacSup = 2.0 _d 0
255     select_rStar = 0
256     selectNHfreeSurf = 0
257     selectAddFluid = 0
258     useRealFreshWaterFlux = .FALSE.
259     temp_EvPrRn = UNSET_RL
260     salt_EvPrRn = 0.
261     temp_addMass = UNSET_RL
262     salt_addMass = UNSET_RL
263     balanceEmPmR = .FALSE.
264     balanceQnet = .FALSE.
265     balancePrintMean = .FALSE.
266     balanceThetaClimRelax = .FALSE.
267     balanceSaltClimRelax = .FALSE.
268    
269     C-- Atmospheric physical parameters (e.g.: EOS)
270     celsius2K = 273.15 _d 0
271     atm_Po = 1. _d 5
272     atm_Cp = 1004. _d 0
273     atm_Rd = UNSET_RL
274     atm_kappa = 2. _d 0 / 7. _d 0
275     atm_Rq = 0. _d 0
276     integr_GeoPot = 2
277     selectFindRoSurf = 0
278    
279     C-- Elliptic solver parameters
280     cg2dMaxIters = 150
281     cg2dTargetResidual = 1. _d -7
282     cg2dTargetResWunit = -1.
283     cg2dChkResFreq = 1
284     cg2dUseMinResSol = UNSET_I
285     cg2dpcOffDFac = 0.51 _d 0
286     cg2dPreCondFreq = 1
287 dgoldberg 1.3 #ifdef ALLOW_PRESSURE_RELEASE_CODE
288     cg2dMinColumnEps = 0. _d 0
289     pReleaseVisc = 0. _d 0
290     pReleaseDamp = 0. _d 0
291     #endif
292 ksnow 1.1 cg3dMaxIters = 150
293     cg3dTargetResidual = 1. _d -7
294     cg3dChkResFreq = 1
295     useSRCGSolver = .FALSE.
296    
297     C-- Time stepping parameters
298     deltaT = 0. _d 0
299     deltaTMom = 0. _d 0
300     deltaTFreeSurf = 0. _d 0
301     DO k=1,Nr
302     dTtracerLev(k) = 0. _d 0
303     ENDDO
304     baseTime = 0. _d 0
305     nIter0 = -1
306     startTime = UNSET_RL
307     pickupSuff = ' '
308     pickupStrictlyMatch = .TRUE.
309     nTimeSteps = 0
310     nTimeSteps_l2 = 0
311     nEndIter = 0
312     endTime = 0. _d 0
313     momForcingOutAB = UNSET_I
314     tracForcingOutAB = UNSET_I
315     momDissip_In_AB = .TRUE.
316     doAB_onGtGs = .TRUE.
317     abEps = 0.01 _d 0
318     #ifdef ALLOW_ADAMSBASHFORTH_3
319     alph_AB = 0.5 _d 0
320     beta_AB = 5. _d 0 / 12. _d 0
321     startFromPickupAB2= .FALSE.
322     #else
323     alph_AB = UNSET_RL
324     beta_AB = UNSET_RL
325     startFromPickupAB2= .TRUE.
326     #endif
327     pChkPtFreq = deltaT*0
328     chkPtFreq = deltaT*0
329     outputTypesInclusive = .FALSE.
330     pickup_read_mdsio = .TRUE.
331     pickup_write_mdsio= .TRUE.
332     pickup_write_immed= .FALSE.
333     writePickupAtEnd = .TRUE.
334     dumpFreq = deltaT*0
335     adjDumpFreq = deltaT*0
336     diagFreq = deltaT*0
337     dumpInitAndLast = .TRUE.
338     snapshot_mdsio = .TRUE.
339     monitorFreq = -1.
340     adjMonitorFreq = 0.
341     monitorSelect = UNSET_I
342     monitor_stdio = .TRUE.
343     taveFreq = deltaT*0
344     timeave_mdsio = .TRUE.
345     tave_lastIter = 0.5 _d 0
346     writeStatePrec = precFloat64
347     writeBinaryPrec = precFloat32
348     readBinaryPrec = precFloat32
349     cAdjFreq = 0. _d 0
350     tauCD = 0. _d 0
351     tauThetaClimRelax = 0. _d 0
352     tauSaltClimRelax = 0. _d 0
353     periodicExternalForcing = .FALSE.
354     externForcingPeriod = 0.
355     externForcingCycle = 0.
356     tCylIn = 0.
357     tCylOut = 20.
358    
359     C-- Input files
360     bathyFile = ' '
361     topoFile = ' '
362     addWwallFile = ' '
363     addSwallFile = ' '
364     hydrogSaltFile = ' '
365     hydrogThetaFile = ' '
366     maskIniTemp = .TRUE.
367     maskIniSalt = .TRUE.
368     checkIniTemp = .TRUE.
369     checkIniSalt = .TRUE.
370     diffKrFile = ' '
371     viscAhDfile = ' '
372     viscAhZfile = ' '
373     viscA4Dfile = ' '
374     viscA4Zfile = ' '
375     zonalWindFile = ' '
376     meridWindFile = ' '
377     thetaClimFile = ' '
378     saltClimFile = ' '
379     EmPmRfile = ' '
380     saltFluxFile = ' '
381     surfQfile = ' '
382     surfQnetFile = ' '
383     surfQswFile = ' '
384     uVelInitFile = ' '
385     vVelInitFile = ' '
386     pSurfInitFile = ' '
387     pLoadFile = ' '
388     addMassFile = ' '
389     eddyPsiXFile = ' '
390     eddyPsiYFile = ' '
391     geothermalFile = ' '
392     lambdaThetaFile = ' '
393     lambdaSaltFile = ' '
394     mdsioLocalDir = ' '
395     adTapeDir = ' '
396     the_run_name = ' '
397    
398     RETURN
399     END

  ViewVC Help
Powered by ViewVC 1.1.22