81 |
CALL WRITE_0D_C( buoyancyRelation, -1, INDEX_NONE, |
CALL WRITE_0D_C( buoyancyRelation, -1, INDEX_NONE, |
82 |
& 'buoyancyRelation =', ' /* Type of relation to get Buoyancy */') |
& 'buoyancyRelation =', ' /* Type of relation to get Buoyancy */') |
83 |
CALL WRITE_0D_L( fluidIsAir, INDEX_NONE, |
CALL WRITE_0D_L( fluidIsAir, INDEX_NONE, |
84 |
& 'fluidIsAir =', ' /* fluid major constituent is Air */') |
& 'fluidIsAir =', ' /* fluid major constituent is Air */') |
85 |
CALL WRITE_0D_L( fluidIsWater, INDEX_NONE, |
CALL WRITE_0D_L( fluidIsWater, INDEX_NONE, |
86 |
& 'fluidIsWater=', ' /* fluid major constituent is Water */') |
& 'fluidIsWater =', ' /* fluid major constituent is Water */') |
87 |
CALL WRITE_0D_L( usingPCoords, INDEX_NONE, |
CALL WRITE_0D_L( usingPCoords, INDEX_NONE, |
88 |
& 'usingPCoords =', ' /* use p (or p*) vertical coordinate */') |
& 'usingPCoords =', ' /* use p (or p*) vertical coordinate */') |
89 |
CALL WRITE_0D_L( usingZCoords, INDEX_NONE, |
CALL WRITE_0D_L( usingZCoords, INDEX_NONE, |
90 |
& 'usingZCoords =', ' /* use z (or z*) vertical coordinate */') |
& 'usingZCoords =', ' /* use z (or z*) vertical coordinate */') |
91 |
CALL WRITE_1D_RL( tRef, Nr, INDEX_K, 'tRef =', |
CALL WRITE_1D_RL( tRef, Nr, INDEX_K, 'tRef =', |
92 |
&' /* Reference temperature profile ( oC or K ) */') |
& ' /* Reference temperature profile ( oC or K ) */') |
93 |
CALL WRITE_1D_RL( sRef, Nr, INDEX_K, 'sRef =', |
CALL WRITE_1D_RL( sRef, Nr, INDEX_K, 'sRef =', |
94 |
&' /* Reference salinity profile ( psu ) */') |
& ' /* Reference salinity profile ( psu ) */') |
95 |
CALL WRITE_0D_RL( viscAh, INDEX_NONE,'viscAh =', |
CALL WRITE_0D_RL( viscAh, INDEX_NONE, 'viscAh = ', |
96 |
&' /* Lateral eddy viscosity ( m^2/s ) */') |
& ' /* Lateral eddy viscosity ( m^2/s ) */') |
97 |
IF ( viscAhD.NE.viscAh ) |
IF ( viscAhD.NE.viscAh ) |
98 |
& CALL WRITE_0D_RL( viscAhD, INDEX_NONE,'viscAhD =', |
& CALL WRITE_0D_RL( viscAhD, INDEX_NONE, 'viscAhD = ', |
99 |
& ' /* Lateral eddy viscosity (Divergence)( m^2/s ) */') |
& ' /* Lateral eddy viscosity (Divergence)( m^2/s ) */') |
100 |
IF ( viscAhZ.NE.viscAh ) |
IF ( viscAhZ.NE.viscAh ) |
101 |
& CALL WRITE_0D_RL( viscAhZ, INDEX_NONE,'viscAhZ =', |
& CALL WRITE_0D_RL( viscAhZ, INDEX_NONE, 'viscAhZ = ', |
102 |
& ' /* Lateral eddy viscosity (Vorticity) ( m^2/s ) */') |
& ' /* Lateral eddy viscosity (Vorticity) ( m^2/s ) */') |
103 |
CALL WRITE_0D_RL( viscAhMax, INDEX_NONE,'viscAhMax =', |
CALL WRITE_0D_RL( viscAhMax, INDEX_NONE, 'viscAhMax =', |
104 |
&' /* Maximum lateral eddy viscosity ( m^2/s ) */') |
& ' /* Maximum lateral eddy viscosity ( m^2/s ) */') |
105 |
CALL WRITE_0D_RL( viscAhGrid, INDEX_NONE,'viscAhGrid =', |
CALL WRITE_0D_RL( viscAhGrid, INDEX_NONE, 'viscAhGrid =', |
106 |
&' /* Grid dependent lateral eddy viscosity ( non-dim. ) */') |
& ' /* Grid dependent lateral eddy viscosity ( non-dim. ) */') |
107 |
CALL WRITE_0D_L( useFullLeith, INDEX_NONE, |
CALL WRITE_0D_L( useFullLeith, INDEX_NONE, 'useFullLeith =', |
108 |
&'useFullLeith =', |
& ' /* Use Full Form of Leith Viscosity on/off flag*/') |
|
&' /* Use Full Form of Leith Viscosity on/off flag*/') |
|
109 |
CALL WRITE_0D_L( useStrainTensionVisc, INDEX_NONE, |
CALL WRITE_0D_L( useStrainTensionVisc, INDEX_NONE, |
110 |
&'useStrainTensionVisc =', |
& 'useStrainTensionVisc=', |
111 |
&' /* Use StrainTension Form of Viscous Operator on/off flag*/') |
& ' /* Use StrainTension Form of Viscous Operator flag*/') |
112 |
CALL WRITE_0D_L( useAreaViscLength, INDEX_NONE, |
CALL WRITE_0D_L( useAreaViscLength, INDEX_NONE, |
113 |
&'useAreaViscLength =', |
& 'useAreaViscLength =', |
114 |
&' /* Use area for visc length instead of geom. mean*/') |
& ' /* Use area for visc length instead of geom. mean*/') |
115 |
CALL WRITE_0D_RL( viscC2leith, INDEX_NONE,'viscC2leith =', |
CALL WRITE_0D_RL( viscC2leith, INDEX_NONE, 'viscC2leith =', |
116 |
&' /* Leith harmonic visc. factor (on grad(vort),non-dim.) */') |
& ' /* Leith harmonic visc. factor (on grad(vort),non-dim.) */') |
117 |
CALL WRITE_0D_RL( viscC2leithD, INDEX_NONE,'viscC2leithD =', |
CALL WRITE_0D_RL( viscC2leithD, INDEX_NONE, 'viscC2leithD =', |
118 |
&' /* Leith harmonic viscosity factor (on grad(div),non-dim.) */') |
& ' /* Leith harmonic viscosity factor (on grad(div),non-dim.)*/') |
119 |
CALL WRITE_0D_RL( viscC2smag, INDEX_NONE,'viscC2smag =', |
CALL WRITE_0D_RL( viscC2smag, INDEX_NONE, 'viscC2smag =', |
120 |
&' /* Smagorinsky harmonic viscosity factor (non-dim.) */') |
& ' /* Smagorinsky harmonic viscosity factor (non-dim.) */') |
121 |
CALL WRITE_0D_RL( viscA4, INDEX_NONE,'viscA4 =', |
CALL WRITE_0D_RL( viscA4, INDEX_NONE, 'viscA4 = ', |
122 |
&' /* Lateral biharmonic viscosity ( m^4/s ) */') |
& ' /* Lateral biharmonic viscosity ( m^4/s ) */') |
123 |
IF ( viscA4D.NE.viscA4 ) |
IF ( viscA4D.NE.viscA4 ) |
124 |
& CALL WRITE_0D_RL( viscA4D, INDEX_NONE,'viscA4D =', |
& CALL WRITE_0D_RL( viscA4D, INDEX_NONE, 'viscA4D = ', |
125 |
& ' /* Lateral biharmonic viscosity (Divergence)( m^4/s ) */') |
& ' /* Lateral biharmonic viscosity (Divergence)( m^4/s ) */') |
126 |
IF ( viscA4Z.NE.viscA4 ) |
IF ( viscA4Z.NE.viscA4 ) |
127 |
& CALL WRITE_0D_RL( viscA4Z, INDEX_NONE,'viscA4Z =', |
& CALL WRITE_0D_RL( viscA4Z, INDEX_NONE, 'viscA4Z = ', |
128 |
& ' /* Lateral biharmonic viscosity (Vorticity) ( m^4/s ) */') |
& ' /* Lateral biharmonic viscosity (Vorticity) ( m^4/s ) */') |
129 |
CALL WRITE_0D_RL( viscA4Max, INDEX_NONE,'viscA4Max =', |
CALL WRITE_0D_RL( viscA4Max, INDEX_NONE, 'viscA4Max =', |
130 |
&' /* Maximum biharmonic viscosity ( m^2/s ) */') |
& ' /* Maximum biharmonic viscosity ( m^2/s ) */') |
131 |
CALL WRITE_0D_RL( viscA4Grid, INDEX_NONE,'viscA4Grid =', |
CALL WRITE_0D_RL( viscA4Grid, INDEX_NONE, 'viscA4Grid =', |
132 |
&' /* Grid dependent biharmonic viscosity ( non-dim. ) */') |
& ' /* Grid dependent biharmonic viscosity ( non-dim. ) */') |
133 |
CALL WRITE_0D_RL( viscC4leith, INDEX_NONE,'viscC4leith =', |
CALL WRITE_0D_RL( viscC4leith, INDEX_NONE,'viscC4leith =', |
134 |
&' /* Leith biharm viscosity factor (on grad(vort), non-dim.) */') |
& ' /* Leith biharm viscosity factor (on grad(vort), non-dim.)*/') |
135 |
CALL WRITE_0D_RL( viscC4leithD, INDEX_NONE,'viscC4leithD =', |
CALL WRITE_0D_RL( viscC4leithD, INDEX_NONE,'viscC4leithD =', |
136 |
&' /* Leith biharm viscosity factor (on grad(div), non-dim.) */') |
& ' /* Leith biharm viscosity factor (on grad(div), non-dim.) */') |
137 |
CALL WRITE_0D_RL( viscC4Smag, INDEX_NONE,'viscC4Smag =', |
CALL WRITE_0D_RL( viscC4Smag, INDEX_NONE,'viscC4Smag =', |
138 |
&' /* Smagorinsky biharm viscosity factor (non-dim) */') |
& ' /* Smagorinsky biharm viscosity factor (non-dim) */') |
139 |
CALL WRITE_0D_L( no_slip_sides, INDEX_NONE, |
CALL WRITE_0D_L( no_slip_sides, INDEX_NONE, |
140 |
& 'no_slip_sides =', ' /* Viscous BCs: No-slip sides */') |
& 'no_slip_sides =', ' /* Viscous BCs: No-slip sides */') |
141 |
CALL WRITE_0D_RL( sideDragFactor, INDEX_NONE, 'sideDragFactor =', |
CALL WRITE_0D_RL( sideDragFactor, INDEX_NONE, 'sideDragFactor =', |
175 |
& ' /* Turning depth for Bryan and Lewis 1979 ( m ) */') |
& ' /* Turning depth for Bryan and Lewis 1979 ( m ) */') |
176 |
CALL WRITE_0D_RL( ivdc_kappa, INDEX_NONE,'ivdc_kappa =', |
CALL WRITE_0D_RL( ivdc_kappa, INDEX_NONE,'ivdc_kappa =', |
177 |
& ' /* Implicit Vertical Diffusivity for Convection (' |
& ' /* Implicit Vertical Diffusivity for Convection (' |
178 |
& //rUnits//'^2/s ) */') |
& //rUnits//'^2/s) */') |
179 |
CALL WRITE_0D_RL( hMixCriteria, INDEX_NONE,'hMixCriteria=', |
CALL WRITE_0D_RL( hMixCriteria, INDEX_NONE,'hMixCriteria=', |
180 |
& ' /* Criteria for mixed-layer diagnostic */') |
& ' /* Criteria for mixed-layer diagnostic */') |
181 |
CALL WRITE_0D_RL( dRhoSmall, INDEX_NONE,'dRhoSmall=', |
CALL WRITE_0D_RL( dRhoSmall, INDEX_NONE,'dRhoSmall =', |
182 |
& ' /* Parameter for mixed-layer diagnostic */') |
& ' /* Parameter for mixed-layer diagnostic */') |
183 |
CALL WRITE_0D_RL( hMixSmooth, INDEX_NONE,'hMixSmooth=', |
CALL WRITE_0D_RL( hMixSmooth, INDEX_NONE,'hMixSmooth=', |
184 |
& ' /* Smoothing parameter for mixed-layer diagnostic */') |
& ' /* Smoothing parameter for mixed-layer diagnostic */') |
236 |
&' /* Reference coriolis parameter ( 1/s ) */') |
&' /* Reference coriolis parameter ( 1/s ) */') |
237 |
CALL WRITE_0D_RL( beta, INDEX_NONE,'beta =', |
CALL WRITE_0D_RL( beta, INDEX_NONE,'beta =', |
238 |
&' /* Beta ( 1/(m.s) ) */') |
&' /* Beta ( 1/(m.s) ) */') |
239 |
CALL WRITE_0D_RL( freeSurfFac, INDEX_NONE,'freeSurfFac =', |
CALL WRITE_0D_L( rigidLid, INDEX_NONE, 'rigidLid =', |
240 |
&' /* Implicit free surface factor */') |
&' /* Rigid lid on/off flag */') |
241 |
CALL WRITE_0D_L( implicitFreeSurface, INDEX_NONE, |
CALL WRITE_0D_L( implicitFreeSurface, INDEX_NONE, |
242 |
& 'implicitFreeSurface =', |
& 'implicitFreeSurface =', |
243 |
&' /* Implicit free surface on/off flag */') |
&' /* Implicit free surface on/off flag */') |
244 |
CALL WRITE_0D_L( rigidLid, INDEX_NONE, |
CALL WRITE_0D_RL( freeSurfFac, INDEX_NONE,'freeSurfFac =', |
245 |
& 'rigidLid =', |
&' /* Implicit free surface factor */') |
|
&' /* Rigid lid on/off flag */') |
|
246 |
CALL WRITE_0D_RL( implicSurfPress, INDEX_NONE, |
CALL WRITE_0D_RL( implicSurfPress, INDEX_NONE, |
247 |
&'implicSurfPress =', |
& 'implicSurfPress =', |
248 |
&' /* Surface Pressure implicit factor (0-1)*/') |
& ' /* Surface Pressure implicit factor (0-1)*/') |
249 |
CALL WRITE_0D_RL( implicDiv2Dflow, INDEX_NONE, |
CALL WRITE_0D_RL( implicDiv2Dflow, INDEX_NONE, |
250 |
&'implicDiv2Dflow =', |
& 'implicDiv2Dflow =', |
251 |
&' /* Barot. Flow Div. implicit factor (0-1)*/') |
& ' /* Barot. Flow Div. implicit factor (0-1)*/') |
252 |
CALL WRITE_0D_L( exactConserv, INDEX_NONE, |
CALL WRITE_0D_L( exactConserv, INDEX_NONE, |
253 |
&'exactConserv =', |
& 'exactConserv =', |
254 |
&' /* Exact Volume Conservation on/off flag*/') |
& ' /* Exact Volume Conservation on/off flag*/') |
255 |
CALL WRITE_0D_L( linFSConserveTr, INDEX_NONE, |
CALL WRITE_0D_L( linFSConserveTr, INDEX_NONE, |
256 |
&'linFSConserveTr =', |
& 'linFSConserveTr =', |
257 |
&' /* Tracer correction for Lin Free Surface on/off flag*/') |
& ' /* Tracer correction for Lin Free Surface on/off flag*/') |
258 |
CALL WRITE_0D_L( uniformLin_PhiSurf, INDEX_NONE, |
CALL WRITE_0D_L( uniformLin_PhiSurf, INDEX_NONE, |
259 |
&'uniformLin_PhiSurf =', |
& 'uniformLin_PhiSurf =', |
260 |
&' /* use uniform Bo_surf on/off flag*/') |
& ' /* use uniform Bo_surf on/off flag*/') |
261 |
|
CALL WRITE_0D_RL( hFacMin, INDEX_NONE, 'hFacMin = ', |
262 |
|
& ' /* minimum partial cell factor (hFac) */') |
263 |
|
CALL WRITE_0D_RL( hFacMin, INDEX_NONE, 'hFacMinDr =', |
264 |
|
& ' /* minimum partial cell thickness ('//rUnits//') */') |
265 |
CALL WRITE_0D_I( nonlinFreeSurf, INDEX_NONE, |
CALL WRITE_0D_I( nonlinFreeSurf, INDEX_NONE, |
266 |
&'nonlinFreeSurf =', |
& 'nonlinFreeSurf =', |
267 |
&' /* Non-linear Free Surf. options (-1,0,1,2,3)*/') |
& ' /* Non-linear Free Surf. options (-1,0,1,2,3)*/') |
268 |
WRITE(msgBuf,'(2A)') ' -1,0= Off ; 1,2,3= On,', |
WRITE(msgBuf,'(2A)') ' -1,0= Off ; 1,2,3= On,', |
269 |
& ' 2=+rescale gU,gV, 3=+update cg2d solv.' |
& ' 2=+rescale gU,gV, 3=+update cg2d solv.' |
270 |
CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT, myThid ) |
CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT, myThid ) |
271 |
CALL WRITE_0D_RL( hFacInf, INDEX_NONE, |
CALL WRITE_0D_RL( hFacInf, INDEX_NONE, 'hFacInf = ', |
272 |
&'hFacInf =', |
& ' /* lower threshold for hFac (nonlinFreeSurf only)*/') |
273 |
&' /* lower threshold for hFac (nonlinFreeSurf only)*/') |
CALL WRITE_0D_RL( hFacSup, INDEX_NONE, 'hFacSup = ', |
274 |
CALL WRITE_0D_RL( hFacSup, INDEX_NONE, |
& ' /* upper threshold for hFac (nonlinFreeSurf only)*/') |
|
&'hFacSup =', |
|
|
&' /* upper threshold for hFac (nonlinFreeSurf only)*/') |
|
275 |
CALL WRITE_0D_I( select_rStar, INDEX_NONE, |
CALL WRITE_0D_I( select_rStar, INDEX_NONE, |
276 |
&'select_rStar =', |
& 'select_rStar =', |
277 |
&' /* r* Vertical coord. options (=0 r coord.; > 0 uses r*) */') |
& ' /* r* Vertical coord. options (=0 r coord.; >0 uses r*)*/') |
278 |
CALL WRITE_0D_I( selectAddFluid, INDEX_NONE, |
CALL WRITE_0D_I( selectAddFluid, INDEX_NONE, |
279 |
&'selectAddFluid =', |
& 'selectAddFluid =', |
280 |
&' /* option for mass source/sink of fluid (=0: off) */') |
& ' /* option for mass source/sink of fluid (=0: off) */') |
281 |
CALL WRITE_0D_L( useRealFreshWaterFlux, INDEX_NONE, |
CALL WRITE_0D_L( useRealFreshWaterFlux, INDEX_NONE, |
282 |
&'useRealFreshWaterFlux =', |
& 'useRealFreshWaterFlux =', |
283 |
&' /* Real Fresh Water Flux on/off flag*/') |
& ' /* Real Fresh Water Flux on/off flag*/') |
284 |
CALL WRITE_0D_RL( temp_EvPrRn, INDEX_NONE, |
CALL WRITE_0D_RL( temp_EvPrRn, INDEX_NONE, |
285 |
&'temp_EvPrRn =', |
& 'temp_EvPrRn =', |
286 |
&' /* Temp. of Evap/Prec/R (UNSET=use local T)(oC)*/') |
& ' /* Temp. of Evap/Prec/R (UNSET=use local T)(oC)*/') |
287 |
CALL WRITE_0D_RL( salt_EvPrRn, INDEX_NONE, |
CALL WRITE_0D_RL( salt_EvPrRn, INDEX_NONE, |
288 |
&'salt_EvPrRn =', |
& 'salt_EvPrRn =', |
289 |
&' /* Salin. of Evap/Prec/R (UNSET=use local S)(ppt)*/') |
& ' /* Salin. of Evap/Prec/R (UNSET=use local S)(psu)*/') |
290 |
CALL WRITE_0D_RL( temp_addMass, INDEX_NONE, |
CALL WRITE_0D_RL( temp_addMass, INDEX_NONE, |
291 |
&'temp_addMass =', |
& 'temp_addMass =', |
292 |
&' /* Temp. of addMass array (UNSET=use local T)(oC)*/') |
& ' /* Temp. of addMass array (UNSET=use local T)(oC)*/') |
293 |
CALL WRITE_0D_RL( salt_addMass, INDEX_NONE, |
CALL WRITE_0D_RL( salt_addMass, INDEX_NONE, |
294 |
&'salt_addMass =', |
& 'salt_addMass =', |
295 |
&' /* Salin. of addMass array (UNSET=use local S)(ppt)*/') |
& ' /* Salin. of addMass array (UNSET=use local S)(psu)*/') |
296 |
IF ( .NOT.useRealFreshWaterFlux .OR. selectAddFluid.EQ.-1 |
IF ( .NOT.useRealFreshWaterFlux .OR. selectAddFluid.EQ.-1 |
297 |
& .OR. nonlinFreeSurf.LE.0 ) THEN |
& .OR. nonlinFreeSurf.LE.0 ) THEN |
298 |
CALL WRITE_0D_RL( convertFW2Salt, INDEX_NONE, |
CALL WRITE_0D_RL( convertFW2Salt, INDEX_NONE, |
299 |
&'convertFW2Salt =', |
& 'convertFW2Salt =', |
300 |
&' /* convert F.W. Flux to Salt Flux (-1=use local S)(ppt)*/') |
& ' /* convert F.W. Flux to Salt Flux (-1=use local S)(psu)*/') |
301 |
ENDIF |
ENDIF |
302 |
|
|
303 |
CALL WRITE_0D_L( use3Dsolver, INDEX_NONE, |
CALL WRITE_0D_L( use3Dsolver, INDEX_NONE, |
323 |
& 'momAdvection =', ' /* Momentum advection on/off flag */') |
& 'momAdvection =', ' /* Momentum advection on/off flag */') |
324 |
CALL WRITE_0D_L( momViscosity, INDEX_NONE, |
CALL WRITE_0D_L( momViscosity, INDEX_NONE, |
325 |
& 'momViscosity =', ' /* Momentum viscosity on/off flag */') |
& 'momViscosity =', ' /* Momentum viscosity on/off flag */') |
326 |
CALL WRITE_0D_L( momImplVertAdv, INDEX_NONE, 'momImplVertAdv =', |
CALL WRITE_0D_L( momImplVertAdv, INDEX_NONE, 'momImplVertAdv=', |
327 |
& '/* Momentum implicit vert. advection on/off*/') |
& ' /* Momentum implicit vert. advection on/off*/') |
328 |
CALL WRITE_0D_L( implicitViscosity, INDEX_NONE, |
CALL WRITE_0D_L( implicitViscosity, INDEX_NONE, |
329 |
& 'implicitViscosity =', ' /* Implicit viscosity on/off flag */') |
& 'implicitViscosity =', ' /* Implicit viscosity on/off flag */') |
330 |
CALL WRITE_0D_L( metricTerms, INDEX_NONE, 'metricTerms =', |
CALL WRITE_0D_L( metricTerms, INDEX_NONE, 'metricTerms =', |
404 |
& 'useMultiDimAdvec =', |
& 'useMultiDimAdvec =', |
405 |
&' /* Multi-Dim Advection is/is-not used */') |
&' /* Multi-Dim Advection is/is-not used */') |
406 |
CALL WRITE_0D_L( implicitDiffusion, INDEX_NONE, |
CALL WRITE_0D_L( implicitDiffusion, INDEX_NONE, |
407 |
& 'implicitDiffusion =','/* Implicit Diffusion on/off flag */') |
& 'implicitDiffusion =',' /* Implicit Diffusion on/off flag */') |
408 |
CALL WRITE_0D_L( tempStepping, INDEX_NONE, |
CALL WRITE_0D_L( tempStepping, INDEX_NONE, |
409 |
& 'tempStepping =', ' /* Temperature equation on/off flag */') |
& 'tempStepping =', ' /* Temperature equation on/off flag */') |
410 |
CALL WRITE_0D_L( tempAdvection, INDEX_NONE, |
CALL WRITE_0D_L( tempAdvection, INDEX_NONE, |
411 |
& 'tempAdvection=', ' /* Temperature advection on/off flag */') |
& 'tempAdvection=', ' /* Temperature advection on/off flag */') |
412 |
CALL WRITE_0D_L( tempImplVertAdv,INDEX_NONE,'tempImplVertAdv =', |
CALL WRITE_0D_L( tempImplVertAdv,INDEX_NONE,'tempImplVertAdv =', |
413 |
& '/* Temp. implicit vert. advection on/off */') |
& ' /* Temp. implicit vert. advection on/off */') |
414 |
CALL WRITE_0D_L( tempForcing, INDEX_NONE, |
CALL WRITE_0D_L( tempForcing, INDEX_NONE, |
415 |
& 'tempForcing =', ' /* Temperature forcing on/off flag */') |
& 'tempForcing =', ' /* Temperature forcing on/off flag */') |
416 |
CALL WRITE_0D_L( tempIsActiveTr, INDEX_NONE, 'tempIsActiveTr =', |
CALL WRITE_0D_L( tempIsActiveTr, INDEX_NONE, 'tempIsActiveTr =', |
420 |
CALL WRITE_0D_L( saltAdvection, INDEX_NONE, |
CALL WRITE_0D_L( saltAdvection, INDEX_NONE, |
421 |
& 'saltAdvection=', ' /* Salinity advection on/off flag */') |
& 'saltAdvection=', ' /* Salinity advection on/off flag */') |
422 |
CALL WRITE_0D_L( saltImplVertAdv,INDEX_NONE,'saltImplVertAdv =', |
CALL WRITE_0D_L( saltImplVertAdv,INDEX_NONE,'saltImplVertAdv =', |
423 |
& '/* Sali. implicit vert. advection on/off */') |
& ' /* Sali. implicit vert. advection on/off */') |
424 |
CALL WRITE_0D_L( saltForcing, INDEX_NONE, |
CALL WRITE_0D_L( saltForcing, INDEX_NONE, |
425 |
& 'saltForcing =', ' /* Salinity forcing on/off flag */') |
& 'saltForcing =', ' /* Salinity forcing on/off flag */') |
426 |
CALL WRITE_0D_L( saltIsActiveTr, INDEX_NONE, 'saltIsActiveTr =', |
CALL WRITE_0D_L( saltIsActiveTr, INDEX_NONE, 'saltIsActiveTr =', |
441 |
& ' debLevB =', ' /* 2nd level of debugging */') |
& ' debLevB =', ' /* 2nd level of debugging */') |
442 |
CALL WRITE_0D_I( debugLevel, INDEX_NONE, |
CALL WRITE_0D_I( debugLevel, INDEX_NONE, |
443 |
& ' debugLevel =', ' /* select debugging level */') |
& ' debugLevel =', ' /* select debugging level */') |
444 |
|
|
445 |
WRITE(msgBuf,'(A)') '// ' |
WRITE(msgBuf,'(A)') '// ' |
446 |
CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT, myThid ) |
CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT, myThid ) |
|
|
|
447 |
WRITE(msgBuf,'(A)') |
WRITE(msgBuf,'(A)') |
448 |
& '// Elliptic solver(s) paramters ( PARM02 in namelist ) ' |
& '// Elliptic solver(s) paramters ( PARM02 in namelist ) ' |
449 |
CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT, myThid ) |
CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT, myThid ) |
574 |
& 'tauSaltClimRelax =', ' /* relaxation time scale (s) */') |
& 'tauSaltClimRelax =', ' /* relaxation time scale (s) */') |
575 |
CALL WRITE_0D_RL( latBandClimRelax, INDEX_NONE, |
CALL WRITE_0D_RL( latBandClimRelax, INDEX_NONE, |
576 |
& 'latBandClimRelax =', ' /* max. Lat. where relaxation */') |
& 'latBandClimRelax =', ' /* max. Lat. where relaxation */') |
577 |
|
|
578 |
WRITE(msgBuf,'(A)') '// ' |
WRITE(msgBuf,'(A)') '// ' |
579 |
CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT, myThid ) |
CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT, myThid ) |
580 |
WRITE(msgBuf,'(A)') |
WRITE(msgBuf,'(A)') |
594 |
CALL WRITE_0D_L( usingCurvilinearGrid, INDEX_NONE, |
CALL WRITE_0D_L( usingCurvilinearGrid, INDEX_NONE, |
595 |
& 'usingCurvilinearGrid =', |
& 'usingCurvilinearGrid =', |
596 |
& ' /* Curvilinear coordinates flag ( True/False ) */') |
& ' /* Curvilinear coordinates flag ( True/False ) */') |
597 |
|
CALL WRITE_0D_I( selectSigmaCoord, INDEX_NONE, |
598 |
|
& 'selectSigmaCoord =', |
599 |
|
& ' /* Hybrid-Sigma Vert. Coordinate option */') |
600 |
CALL WRITE_0D_RL( Ro_SeaLevel, INDEX_NONE,'Ro_SeaLevel =', |
CALL WRITE_0D_RL( Ro_SeaLevel, INDEX_NONE,'Ro_SeaLevel =', |
601 |
& ' /* r(1) ( units of r == '//rUnits//' ) */') |
& ' /* r(1) ( units of r == '//rUnits//' ) */') |
602 |
|
CALL WRITE_0D_RL( rSigmaBnd, INDEX_NONE, 'rSigmaBnd =', |
603 |
|
& ' /* r/sigma transition ( units of r == '//rUnits//' ) */') |
604 |
CALL WRITE_0D_RL( rkSign, INDEX_NONE,'rkSign =', |
CALL WRITE_0D_RL( rkSign, INDEX_NONE,'rkSign =', |
605 |
&' /* index orientation relative to vertical coordinate */') |
&' /* index orientation relative to vertical coordinate */') |
606 |
CALL WRITE_0D_RL( gravitySign, INDEX_NONE,'gravitySign =', |
CALL WRITE_0D_RL( gravitySign, INDEX_NONE,'gravitySign =', |
621 |
&' /* C spacing ( units of r ) */') |
&' /* C spacing ( units of r ) */') |
622 |
CALL WRITE_COPY1D_RS( bufRL, drF, Nr, INDEX_K, 'drF = ', |
CALL WRITE_COPY1D_RS( bufRL, drF, Nr, INDEX_K, 'drF = ', |
623 |
&' /* W spacing ( units of r ) */') |
&' /* W spacing ( units of r ) */') |
624 |
|
IF ( selectSigmaCoord.NE.0 ) THEN |
625 |
|
CALL WRITE_COPY1D_RS( bufRL,dAHybSigF,Nr,INDEX_K,'dAHybSigF =', |
626 |
|
& ' /* vertical increment of Hybrid-sigma Coeff. (-) */') |
627 |
|
CALL WRITE_COPY1D_RS( bufRL,dBHybSigF,Nr,INDEX_K,'dBHybSigF =', |
628 |
|
& ' /* vertical increment of Hybrid-sigma Coeff. (-) */') |
629 |
|
ENDIF |
630 |
IF ( .NOT.usingCurvilinearGrid ) THEN |
IF ( .NOT.usingCurvilinearGrid ) THEN |
631 |
CALL WRITE_1D_RL( delX, Nx, INDEX_I, 'delX = ', |
CALL WRITE_1D_RL( delX, Nx, INDEX_I, 'delX = ', |
632 |
& ' /* U spacing ( m - cartesian, degrees - spherical ) */') |
& ' /* U spacing ( m - cartesian, degrees - spherical ) */') |
651 |
& ' /* P-point R coordinate ( units of r ) */') |
& ' /* P-point R coordinate ( units of r ) */') |
652 |
CALL WRITE_COPY1D_RS( bufRL, rF,Nr+1,INDEX_K, 'rF = ', |
CALL WRITE_COPY1D_RS( bufRL, rF,Nr+1,INDEX_K, 'rF = ', |
653 |
&' /* W-Interf. R coordinate ( units of r ) */') |
&' /* W-Interf. R coordinate ( units of r ) */') |
654 |
|
IF ( selectSigmaCoord.NE.0 ) THEN |
655 |
|
CALL WRITE_COPY1D_RS(bufRL,aHybSigmF,Nr+1,INDEX_K,'aHybSigmF =', |
656 |
|
& ' /* Hybrid-sigma vert. Coord coeff. @ W-Interface (-) */') |
657 |
|
CALL WRITE_COPY1D_RS(bufRL,bHybSigmF,Nr+1,INDEX_K,'bHybSigmF =', |
658 |
|
& ' /* Hybrid-sigma vert. Coord coeff. @ W-Interface (-) */') |
659 |
|
ENDIF |
660 |
CALL WRITE_1D_RL( deepFacC, Nr, INDEX_K, 'deepFacC = ', |
CALL WRITE_1D_RL( deepFacC, Nr, INDEX_K, 'deepFacC = ', |
661 |
& ' /* deep-model grid factor @ cell-Center (-) */') |
& ' /* deep-model grid factor @ cell-Center (-) */') |
662 |
CALL WRITE_1D_RL( deepFacF, Nr+1, INDEX_K, 'deepFacF = ', |
CALL WRITE_1D_RL( deepFacF, Nr+1, INDEX_K, 'deepFacF = ', |