/[MITgcm]/MITgcm/pkg/aim_v23/aim_readparms.F
ViewVC logotype

Contents of /MITgcm/pkg/aim_v23/aim_readparms.F

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


Revision 1.10 - (show annotations) (download)
Sun Sep 11 04:35:31 2005 UTC (18 years, 7 months ago) by edhill
Branch: MAIN
CVS Tags: checkpoint57s_post, checkpoint58b_post, checkpoint57y_post, checkpoint58, checkpoint58f_post, checkpoint58d_post, checkpoint58a_post, checkpoint57z_post, checkpoint58m_post, checkpoint57t_post, checkpoint57v_post, checkpoint57y_pre, checkpoint58e_post, checkpint57u_post, checkpoint58k_post, checkpoint58l_post, checkpoint58g_post, checkpoint58h_post, checkpoint58j_post, checkpoint57w_post, checkpoint58i_post, checkpoint57x_post, checkpoint58c_post
Changes since 1.9: +33 -10 lines
 o mnc-ify the aim state vars -- requested by Daniel
   - units attributes need to be fleshed out

1 C $Header: /u/gcmpack/MITgcm/pkg/aim_v23/aim_readparms.F,v 1.9 2005/06/23 20:02:50 edhill Exp $
2 C $Name: $
3
4 #include "AIM_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: AIM_READPARMS
8 C !INTERFACE:
9 SUBROUTINE AIM_READPARMS( myThid )
10
11 C !DESCRIPTION: \bv
12 C *==========================================================*
13 C | S/R AIM_READPARMS
14 C | o Read AIM physics package parameters
15 C *==========================================================*
16 C | Initialized parameter in common blocks:
17 C | FORCON, SFLCON, CNVCON, LSCCON, RADCON, VDICON
18 C *==========================================================*
19 C \ev
20
21 C !USES:
22 IMPLICIT NONE
23
24 C == Global variables ===
25 #include "AIM_SIZE.h"
26 #include "EEPARAMS.h"
27 #include "PARAMS.h"
28 #include "AIM_PARAMS.h"
29
30 C- Physical constants + functions of sigma and latitude
31 c #include "com_physcon.h"
32 C- Constants for sub-grid-scale physics
33 #include "com_forcon.h"
34 #include "com_sflcon.h"
35 #include "com_cnvcon.h"
36 #include "com_lsccon.h"
37 #include "com_radcon.h"
38 #include "com_vdicon.h"
39
40 C !INPUT/OUTPUT PARAMETERS:
41 C == Routine Arguments ==
42 C myThid - Number of this instance
43 INTEGER myThid
44 CEOP
45
46 #ifdef ALLOW_AIM
47
48 C == Local Variables ==
49 C msgBuf - Informational/error meesage buffer
50 C iUnit - Work variable for IO unit number
51 CHARACTER*(MAX_LEN_MBUF) msgBuf
52 INTEGER iUnit
53
54 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
55
56 C-- AIM interface parameter (common AIM_PARM_?):
57 C aim_useFMsurfBC :: select surface B.C. from Franco Molteni
58 C aim_useMMsurfFc :: select Monthly Mean surface forcing (e.g., NCEP)
59 C aim_surfPotTemp :: surf.Temp input file is in Pot.Temp (aim_useMMsurfFc)
60 C aim_energPrecip :: account for energy of precipitation (snow & rain temp)
61 C aim_splitSIOsFx :: compute separately Sea-Ice & Ocean surf. Flux
62 C (also land SW & LW) ; default=F as in original version
63 C aim_MMsufx :: sufix for all Monthly Mean surface forcing files
64 C aim_MMsufxLength :: Length of sufix (Monthly Mean surf. forc. files)
65 C aim_LandFile :: file name for Land fraction (F.M. surfBC)
66 C aim_albFile :: file name for Albedo input file (F.M. surfBC)
67 C aim_vegFile :: file name for vegetation fraction (F.M. surfBC)
68 C aim_sstFile :: file name for Sea.Surf.Temp (F.M. surfBC)
69 C aim_lstFile :: file name for Land.Surf.Temp (F.M. surfBC)
70 C aim_oiceFile :: file name for Sea Ice fraction (F.M. surfBC)
71 C aim_snowFile :: file name for Snow depth (F.M. surfBC)
72 C aim_swcFile :: file name for Soil Water content (F.M. surfBC)
73 C aim_dragStrato :: stratospheric-drag damping time scale (s)
74 C aim_clrSkyDiag :: compute clear-sky radiation for diagnostics
75 C aim_taveFreq :: Frequency^-1 for time-average output (s)
76 C aim_diagFreq :: Frequency^-1 for diagnostic output (s)
77 C aim_tendFreq :: Frequency^-1 for tendencies output (s)
78 NAMELIST /AIM_PARAMS/
79 & aim_useFMsurfBC, aim_useMMsurfFc,
80 & aim_surfPotTemp, aim_energPrecip, aim_splitSIOsFx,
81 & aim_MMsufx, aim_MMsufxLength,
82 & aim_LandFile, aim_albFile, aim_vegFile,
83 & aim_sstFile, aim_lstFile, aim_oiceFile, aim_snowFile,
84 & aim_swcFile,
85 & aim_dragStrato,
86 & aim_clrSkyDiag, aim_taveFreq, aim_diagFreq, aim_tendFreq,
87 & aim_timeave_mnc, aim_snapshot_mnc,
88 & aim_pickup_write_mnc, aim_pickup_read_mnc
89
90 C-- Physical constants (common PHYCON) :
91 C P0 = reference pressure [Pa=N/m2]
92 C GG = gravity accel. [m/s2]
93 C RD = gas constant for dry air [J/kg/K]
94 C CP = specific heat at constant pressure [J/kg/K]
95 C ALHC = latent heat of condensation [J/g]
96 C ALHF = latent heat of freezing [J/g]
97 C SBC = Stefan-Boltzmann constant
98 C rainCP = heat capacity of liquid water [J/g/K]
99 C tFreeze = freezing temperature of pure water [K]
100
101 C-- Constants for forcing fields (common FORCON) :
102 C SOLC = Solar constant (area averaged) in W/m^2
103 C ALBSEA = Albedo over sea
104 C ALBICE = Albedo over sea ice (for ice fraction = 1)
105 C ALBSN = Albedo over snow (for snow depth > SDALB)
106 C SDALB = Snow depth (mm water) corresponding to maximum albedo
107 C SWCAP = Soil wetness at field capacity (volume fraction)
108 C SWWIL = Soil wetness at wilting point (volume fraction)
109 C hSnowWetness :: snow depth (m) corresponding to maximum wetness
110 NAMELIST /AIM_PAR_FOR/
111 & SOLC, ALBSEA, ALBICE, ALBSN,
112 & SDALB, SWCAP, SWWIL, hSnowWetness
113
114 C-- Constants for surface fluxes (common SFLCON) :
115 C FWIND0 = ratio of near-sfc wind to lowest-level wind
116 C FTEMP0 = weight for near-sfc temperature extrapolation (0-1) :
117 C 1 : linear extrapolation from two lowest levels
118 C 0 : constant potential temperature ( = lowest level)
119 C FHUM0 = weight for near-sfc specific humidity extrapolation (0-1) :
120 C 1 : extrap. with constant relative hum. ( = lowest level)
121 C 0 : constant specific hum. ( = lowest level)
122 C CDL = drag coefficient for momentum over land
123 C CDS = drag coefficient for momentum over sea
124 C CHL = heat exchange coefficient over land
125 C CHS = heat exchange coefficient over sea
126 C VGUST = wind speed for sub-grid-scale gusts
127 C CTDAY = daily-cycle correction (dTskin/dSSRad)
128 C DTHETA = Potential temp. gradient for stability correction
129 C dTstab = potential temp. increment for stability function derivative
130 C FSTAB = Amplitude of stability correction (fraction)
131 C HDRAG = Height scale for orographic correction
132 C FHDRAG = Amplitude of orographic correction (fraction)
133 NAMELIST /AIM_PAR_SFL/
134 & FWIND0, FTEMP0, FHUM0,
135 & CDL, CDS, CHL, CHS, VGUST, CTDAY,
136 & DTHETA, dTstab, FSTAB, HDRAG, FHDRAG
137
138 C-- Convection constants (common CNVCON) :
139 C PSMIN = minimum (norm.) sfc. pressure for the occurrence of convection
140 C TRCNV = time of relaxation (in hours) towards reference state
141 C QBL = specific hum. threshold in the boundary layer
142 C RHBL = relative hum. threshold in the boundary layer
143 C RHIL = rel. hum. threshold in intermed. layers for secondary mass flux
144 C ENTMAX = max. entrainment as a fraction of cloud-base mass flux
145 C SMF = ratio between secondary and primary mass flux at cloud-base
146 NAMELIST /AIM_PAR_CNV/
147 & PSMIN, TRCNV, QBL, RHBL, RHIL, ENTMAX, SMF
148
149
150 C-- Constants for large-scale condendation (common LSCCON) :
151 C TRLSC = Relaxation time (in hours) for specific humidity
152 C RHLSC = Maximum relative humidity threshold (at sigma=1)
153 C DRHLSC = Vertical range of relative humidity threshold
154 C QSMAX = used to define the maximum latent heat release
155 NAMELIST /AIM_PAR_LSC/
156 & TRLSC, RHLSC, DRHLSC, QSMAX
157
158 C-- Radiation constants (common RADCON) :
159 C RHCL1 = relative hum. corresponding to cloud cover = 0
160 C RHCL2 = relative hum. corresponding to cloud cover = 1
161 C QACL1 = specific hum. threshold for cloud cover in the upper troposphere
162 C QACL2 = specific hum. threshold for cloud cover in the upper troposphere
163 C ALBCL = cloud albedo (for cloud cover = 1)
164 C EPSSW = fraction of incoming solar radiation absorbed by ozone
165 C EPSLW = fraction of surface LW radiation emitted directly to space
166 C EMISFC = longwave surface emissivity
167 C--: shortwave absorptivities (for dp = 10^5 Pa) :
168 C ABSDRY = abs. of dry air (visible band)
169 C ABSAER = abs. of aerosols (visible band)
170 C ABSWV1 = abs. of water vapour (visible band, for dq = 1 g/kg)
171 C ABSWV2 = abs. of water vapour (near IR band, for dq = 1 g/kg)
172 C ABSCL1 = abs. of clouds (visible band, constant term)
173 C ABSCL2 = abs. of clouds (visible band, for dw = 1 g/kg)
174 C--: longwave absorptivities (per dp = 10^5 Pa) :
175 C ABLWIN = abs. of air in "window" band
176 C ABLCO2 = abs. of air in CO2 band
177 C ABLWV1 = abs. of water vapour in H2O band 1 (weak), for dq = 1 g/kg
178 C ABLWV2 = abs. of water vapour in H2O band 2 (strong), for dq = 1 g/kg
179 C ABLCL1 = abs. of clouds in "window" band, constant term
180 C ABLCL2 = abs. of clouds in "window" band, for dw = 1 g/kg
181 NAMELIST /AIM_PAR_RAD/
182 & RHCL1, RHCL2, QACL1, QACL2, ALBCL,
183 & EPSSW, EPSLW, EMISFC,
184 & ABSDRY, ABSAER, ABSWV1, ABSWV2, ABSCL1, ABSCL2,
185 & ABLWIN, ABLCO2, ABLWV1, ABLWV2, ABLCL1, ABLCL2
186
187 C-- Constants for vertical dif. and sh. conv. (common VDICON) :
188 C TRSHC = relaxation time (in hours) for shallow convection
189 C TRVDI = relaxation time (in hours) for moisture diffusion
190 C TRVDS = relaxation time (in hours) for super-adiab. conditions
191 C RHGRAD = maximum gradient of relative humidity (d_RH/d_sigma)
192 C SEGRAD = minimum gradient of dry static energy (d_DSE/d_phi)
193 NAMELIST /AIM_PAR_VDI/
194 & TRSHC, TRVDI, TRVDS, RHGRAD, SEGRAD
195
196 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
197
198 _BEGIN_MASTER(myThid)
199
200 WRITE(msgBuf,'(A)') ' AIM_READ_PHYSPARMS: opening data.aimphys'
201 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
202
203 CALL OPEN_COPY_DATA_FILE( 'data.aimphys', 'AIM_READ_PHYSPARMS',
204 O iUnit, myThid )
205
206 C-- Read parameters from open data file:
207
208 C- Parameters for AIM interface code:
209 READ(UNIT=iUnit,NML=AIM_PARAMS)
210
211 C- Constants for boundary forcing
212 READ(UNIT=iUnit,NML=AIM_PAR_FOR)
213
214 C- Constants for surface fluxes
215 READ(UNIT=iUnit,NML=AIM_PAR_SFL)
216
217 C- Constants for convection
218 READ(UNIT=iUnit,NML=AIM_PAR_CNV)
219
220 C- Constants for large-scale condensation
221 READ(UNIT=iUnit,NML=AIM_PAR_LSC)
222
223 C- Constants for radiation
224 READ(UNIT=iUnit,NML=AIM_PAR_RAD)
225
226 C- Constants for vertical diffusion and sh. conv.
227 READ(UNIT=iUnit,NML=AIM_PAR_VDI)
228
229 WRITE(msgBuf,'(A)')
230 & ' AIM_READ_PHYSPARMS: finished reading data.aimphys'
231 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
232
233 C-- Close the open data file
234 CLOSE(iUnit)
235
236 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
237 C-- Check parameters and model configuration
238
239 #ifndef ALLOW_CLR_SKY_DIAG
240 C- If aim_clrSkyDiag is set, then must compile the Clear-Sky Diagnostic code
241 IF ( aim_clrSkyDiag ) THEN
242 WRITE(msgBuf,'(A)')
243 & 'AIM_READPARMS: aim_clrSkyDiag=T but ALLOW_CLR_SKY_DIAG undef'
244 CALL PRINT_ERROR( msgBuf, myThid)
245 WRITE(msgBuf,'(2A)')
246 & 'Re-compile with: #define ALLOW_CLR_SKY_DIAG (AIM_OPTIONS.h)'
247 CALL PRINT_ERROR( msgBuf, myThid)
248 STOP 'ABNORMAL END: S/R AIM_READPARMS'
249 ENDIF
250 #endif
251
252 C- If aim_taveFreq is positive, then must compile the aim-diagnostics code
253 #ifndef ALLOW_AIM_TAVE
254 IF (aim_taveFreq.GT.0.) THEN
255 WRITE(msgBuf,'(A)')
256 & 'AIM_READPARMS: aim_taveFreq > 0 but ALLOW_AIM_TAVE undefined'
257 CALL PRINT_ERROR( msgBuf, myThid)
258 WRITE(msgBuf,'(2A)')
259 & 'Re-compile with: #define ALLOW_AIM_TAVE (AIM_OPTIONS.h)'
260 CALL PRINT_ERROR( msgBuf, myThid)
261 STOP 'ABNORMAL END: S/R AIM_READPARMS'
262 ENDIF
263 #endif /* ALLOW_AIM_TAVE */
264
265 #ifdef ALLOW_MNC
266 aim_timeave_mnc =
267 & aim_timeave_mnc .AND. useMNC
268 aim_snapshot_mnc =
269 & aim_snapshot_mnc .AND. useMNC
270 aim_pickup_write_mnc =
271 & aim_pickup_write_mnc .AND. useMNC
272 aim_pickup_read_mnc =
273 & aim_pickup_read_mnc .AND. useMNC
274
275 aim_timeave_mdsio = (.NOT. aim_timeave_mnc)
276 & .OR. outputTypesInclusive
277 aim_snapshot_mdsio = (.NOT. aim_snapshot_mnc)
278 & .OR. outputTypesInclusive
279 aim_pickup_write_mdsio = (.NOT. aim_pickup_write_mnc)
280 & .OR. outputTypesInclusive
281 aim_pickup_read_mdsio = (.NOT. aim_pickup_read_mnc)
282 & .OR. outputTypesInclusive
283 #else
284 C Stop if MNC is not compiled-in and aim_*_mnc=.TRUE.
285 IF ( aim_timeave_mnc .OR. aim_snapshot_mnc
286 & .OR. aim_pickup_write_mnc .OR. aim_pickup_read_mnc ) THEN
287 WRITE(msgBuf,'(2A)')
288 & 'AIM_READPARMS: one or more aim_*_mnc vars is .TRUE. ',
289 & 'but ALLOW_MNC is undefined'
290 CALL PRINT_ERROR( msgBuf, myThid)
291 WRITE(msgBuf,'(2A)') 'Please re-compile with the MNC ',
292 & 'package enabled'
293 CALL PRINT_ERROR( msgBuf, myThid)
294 STOP 'ABNORMAL END: S/R AIM_READPARMS'
295 ENDIF
296 aim_timeave_mnc = .FALSE.
297 aim_snapshot_mnc = .FALSE.
298 aim_pickup_write_mnc = .FALSE.
299 aim_pickup_read_mnc = .FALSE.
300 aim_timeave_mdsio = .TRUE.
301 aim_snapshot_mdsio = .TRUE.
302 aim_pickup_write_mdsio = .TRUE.
303 aim_pickup_read_mdsio = .TRUE.
304 #endif /* ALLOW_MNC */
305
306
307 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
308 C-- Print out parameter values :
309
310 WRITE(msgBuf,'(A)') ' '
311 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
312 WRITE(msgBuf,'(A)') '// ==================================='
313 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
314 WRITE(msgBuf,'(A)') '// AIM physics parameters :'
315 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
316 WRITE(msgBuf,'(A)') '// ==================================='
317 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
318
319 CALL WRITE_0D_L( useLand, INDEX_NONE,
320 & 'useLand =',
321 &' /* use Land package for surf.BC over land */')
322
323 C- namelist AIM_PARAMS:
324 CALL WRITE_0D_L( aim_useFMsurfBC, INDEX_NONE,
325 & 'aim_useFMsurfBC =',
326 &' /* F.Molteni surf. BC scheme on/off flag */')
327 CALL WRITE_0D_L( aim_useMMsurfFc, INDEX_NONE,
328 & 'aim_useMMsurfFc =',
329 &' /* Monthly Mean surf. Forcing on/off flag */')
330 CALL WRITE_0D_L( aim_surfPotTemp, INDEX_NONE,
331 & 'aim_surfPotTemp =',
332 &' /* Surf Temp file in Pot.Temp on/off flag */')
333 CALL WRITE_0D_L( aim_energPrecip, INDEX_NONE,
334 & 'aim_energPrecip =',
335 & ' /* account for energy of precip. on/off flag */')
336 CALL WRITE_0D_L( aim_splitSIOsFx, INDEX_NONE,
337 & 'aim_splitSIOsFx =',
338 & ' /* separate Sea-Ice & Ocean Flux on/off flag */')
339 CALL WRITE_0D_R8(aim_dragStrato,INDEX_NONE,'aim_dragStrato=',
340 & ' /* stratospheric-drag damping time scale (s) */')
341 CALL WRITE_0D_L( aim_clrSkyDiag, INDEX_NONE,
342 & 'aim_clrSkyDiag =',
343 & ' /* do clear-sky radiation diagnostics */')
344 CALL WRITE_0D_R8( aim_taveFreq, INDEX_NONE,'aim_taveFreq =',
345 & ' /* Frequency^-1 for time-Aver. output (s) */')
346 CALL WRITE_0D_R8( aim_diagFreq, INDEX_NONE,'aim_diagFreq =',
347 & ' /* Frequency^-1 for diagnostic output (s) */')
348 CALL WRITE_0D_R8( aim_tendFreq, INDEX_NONE,'aim_tendFreq =',
349 & ' /* Frequency^-1 for tendencies output (s) */')
350
351 C- namelist AIM_PAR_FOR:
352 CALL WRITE_0D_R8( SOLC, INDEX_NONE,'AIM_FOR: SOLC =',
353 & ' /* Solar constant (area averaged) in W/m2 */')
354 CALL WRITE_0D_R8( ALBSEA,INDEX_NONE,'AIM_FOR: ALBSEA =',
355 & ' /* Albedo over sea [0-1] */')
356 CALL WRITE_0D_R8( ALBICE,INDEX_NONE,'AIM_FOR: ALBICE =',
357 & ' /* Albedo over sea ice (for ice fraction =1) */')
358 CALL WRITE_0D_R8( ALBSN, INDEX_NONE,'AIM_FOR: ALBSN =',
359 & ' /* Albedo over snow (for snow depth > SDALB) */')
360 CALL WRITE_0D_R8( SDALB, INDEX_NONE,'AIM_FOR: SDALB =',
361 & ' /* Snow depth (mm H2O) corresp. maximum albedo */')
362 CALL WRITE_0D_R8( SWCAP, INDEX_NONE,'AIM_FOR: SWCAP =',
363 & ' /* Soil wetness at field capacity (Vol.fract.) */')
364 CALL WRITE_0D_R8( SWWIL, INDEX_NONE,'AIM_FOR: SWWIL =',
365 & ' /* Soil wetness at wilting point (Vol.fract.) */')
366 CALL WRITE_0D_R8( hSnowWetness, INDEX_NONE,
367 & 'AIM_FOR: hSnowWetness=',
368 & ' /* snow depth corresp. maximum wetness (m) */')
369
370 C- namelist AIM_PAR_SFL:
371 CALL WRITE_0D_R8( FWIND0,INDEX_NONE,'AIM_SFL: FWIND0 =',
372 & ' /* ratio of near-sfc wind to lowest-level wind */')
373 CALL WRITE_0D_R8( FTEMP0,INDEX_NONE,'AIM_SFL: FTEMP0 =',
374 & ' /* weight for near-sfc temp. extrapolation (0-1)*/')
375 CALL WRITE_0D_R8( FHUM0, INDEX_NONE,'AIM_SFL: FHUM0 =',
376 & ' /* weight for near-sfc spec.humid. extrap. (0-1)*/')
377 CALL WRITE_0D_R8( CDL, INDEX_NONE,'AIM_SFL: CDL =',
378 & ' /* drag coefficient for momentum over land */')
379 CALL WRITE_0D_R8( CDS, INDEX_NONE,'AIM_SFL: CDS =',
380 & ' /* drag coefficient for momentum over sea */')
381 CALL WRITE_0D_R8( CHL, INDEX_NONE,'AIM_SFL: CHL =',
382 & ' /* heat exchange coefficient over land */')
383 CALL WRITE_0D_R8( CHS, INDEX_NONE,'AIM_SFL: CHS =',
384 & ' /* heat exchange coefficient over sea */')
385 CALL WRITE_0D_R8( VGUST, INDEX_NONE,'AIM_SFL: VGUST =',
386 & ' /* wind speed [m/s] for sub-grid-scale gusts */')
387 CALL WRITE_0D_R8( CTDAY, INDEX_NONE,'AIM_SFL: CTDAY =',
388 & ' /* daily-cycle correction (dTskin/dSSRad) */')
389 CALL WRITE_0D_R8( DTHETA,INDEX_NONE,'AIM_SFL: DTHETA =',
390 & ' /* Pot.Temp. gradient for stability correction */')
391 CALL WRITE_0D_R8( dTstab,INDEX_NONE,'AIM_SFL: dTstab =',
392 & ' /* Pot.Temp. increment for stab.funct. derivative */')
393 CALL WRITE_0D_R8( FSTAB, INDEX_NONE,'AIM_SFL: FSTAB =',
394 & ' /* Amplitude of stability correction (fract.) */')
395 CALL WRITE_0D_R8( HDRAG, INDEX_NONE,'AIM_SFL: HDRAG =',
396 & ' /* Height scale for orographic correction */')
397 CALL WRITE_0D_R8( FHDRAG,INDEX_NONE,'AIM_SFL: FHDRAG =',
398 & ' /* Amplitude of orographic correction (fract.)*/')
399
400 C- namelist AIM_PAR_CNV:
401 CALL WRITE_0D_R8( PSMIN, INDEX_NONE,'AIM_CNV: PSMIN =',
402 & ' /* min norm.sfc.P. for occurrence of convect. */')
403 CALL WRITE_0D_R8( TRCNV, INDEX_NONE,'AIM_CNV: TRCNV =',
404 & ' /* time of relaxation [h] towards ref state */')
405 CALL WRITE_0D_R8( QBL, INDEX_NONE,'AIM_CNV: QBL =',
406 & ' /* specific hum. threshold in the Bound.layer */')
407 CALL WRITE_0D_R8( RHBL, INDEX_NONE,'AIM_CNV: RHBL =',
408 & ' /* relative hum. threshold in the Bound.layer */')
409 CALL WRITE_0D_R8( RHIL, INDEX_NONE,'AIM_CNV: RHIL =',
410 & ' /* rel.hum. threshold (intern) for 2nd mass.Flx*/')
411 CALL WRITE_0D_R8( ENTMAX,INDEX_NONE,'AIM_CNV: ENTMAX =',
412 & ' /* time of relaxation [h] towards neutral eq. */')
413 CALL WRITE_0D_R8( SMF, INDEX_NONE,'AIM_CNV: SMF =',
414 & ' /* ratio 2ndary/primary mass.Flx at cloud-base*/')
415
416 C- namelist AIM_PAR_LSC:
417 CALL WRITE_0D_R8( TRLSC, INDEX_NONE,'AIM_LSC: TRLSC =',
418 & ' /* relaxation time [h] for supersat. spec.hum. */')
419 CALL WRITE_0D_R8( RHLSC, INDEX_NONE,'AIM_LSC: RHLSC =',
420 & ' /* Max rel.humidity threshold (at sigma=1) */')
421 CALL WRITE_0D_R8( DRHLSC,INDEX_NONE,'AIM_LSC: DRHLSC =',
422 & ' /* Vertical range of rel.humidity threshold */')
423 CALL WRITE_0D_R8( QSMAX, INDEX_NONE,'AIM_LSC: QSMAX =',
424 & ' /* Define the maximum latent heat release */')
425
426 C- namelist AIM_PAR_RAD:
427 CALL WRITE_0D_R8( RHCL1, INDEX_NONE,'AIM_RAD: RHCL1 =',
428 & ' /* rel.hum. corresponding to cloud cover = 0 */')
429 CALL WRITE_0D_R8( RHCL2, INDEX_NONE,'AIM_RAD: RHCL2 =',
430 & ' /* rel.hum. corresponding to cloud cover = 1 */')
431 CALL WRITE_0D_R8( QACL1, INDEX_NONE,'AIM_RAD: QACL1 =',
432 & ' /* spec.hum. threshold for cloud, upper trop. */')
433 CALL WRITE_0D_R8( QACL2, INDEX_NONE,'AIM_RAD: QACL2 =',
434 & ' /* spec.hum. threshold for cloud, upper trop. */')
435 CALL WRITE_0D_R8( ALBCL, INDEX_NONE,'AIM_RAD: ALBCL =',
436 & ' /* cloud albedo (for cloud cover = 1) */')
437 CALL WRITE_0D_R8( EPSSW, INDEX_NONE,'AIM_RAD: EPSSW =',
438 & ' /* fract. of inc.solar rad. absorbed by ozone */')
439 CALL WRITE_0D_R8( EPSLW, INDEX_NONE,'AIM_RAD: EPSLW =',
440 & ' /* fract. of sfc LW emitted directly to space */')
441 CALL WRITE_0D_R8( EMISFC,INDEX_NONE,'AIM_RAD: EMISFC =',
442 & ' /* longwave surface emissivity */')
443
444 WRITE(msgBuf,'(A)')
445 & ' AIM_RAD : ShortWave absorptivities (for dp = 10^5 Pa) :'
446 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
447 CALL WRITE_0D_R8( ABSDRY,INDEX_NONE,'AIM_RAD: ABSDRY =',
448 & ' /* abs. of dry air (visible band) */')
449 CALL WRITE_0D_R8( ABSAER,INDEX_NONE,'AIM_RAD: ABSAER =',
450 & ' /* abs. of aerosols (visible band) */')
451 CALL WRITE_0D_R8( ABSWV1,INDEX_NONE,'AIM_RAD: ABSWV1 =',
452 & ' /* abs. of water vap. (vis. band)(/dq, 1g/kg) */')
453 CALL WRITE_0D_R8( ABSWV2,INDEX_NONE,'AIM_RAD: ABSWV2 =',
454 & ' /* abs. of water vap.(near IR bd)(/dq, 1g/kg) */')
455 CALL WRITE_0D_R8( ABSCL1,INDEX_NONE,'AIM_RAD: ABSCL1 =',
456 & ' /* abs. of clouds (vis.band)(constant term) */')
457 CALL WRITE_0D_R8( ABSCL2,INDEX_NONE,'AIM_RAD: ABSCL2 =',
458 & ' /* abs. of clouds (vis.band) (/dw, 1g/kg) */')
459
460 WRITE(msgBuf,'(A)')
461 & ' AIM_RAD : LongWave absorptivities (per dp = 10^5 Pa) :'
462 CALL WRITE_0D_R8( ABLWIN,INDEX_NONE,'AIM_RAD: ABLWIN =',
463 & ' /* abs. of air in "window" band */')
464 CALL WRITE_0D_R8( ABLCO2,INDEX_NONE,'AIM_RAD: ABLCO2 =',
465 & ' /* abs. of air in CO2 band */')
466 CALL WRITE_0D_R8( ABLWV1,INDEX_NONE,'AIM_RAD: ABLWV1 =',
467 & ' /* abs. of Water vap. H2O bd-1(weak)(/dq,1g/kg)*/')
468 CALL WRITE_0D_R8( ABLWV2,INDEX_NONE,'AIM_RAD: ABLWV2 =',
469 & ' /* abs. of W. vap., H2O bd-2(strong)(/dq,1g/kg)*/')
470 CALL WRITE_0D_R8( ABLCL1,INDEX_NONE,'AIM_RAD: ABLCL1 =',
471 & ' /* abs. of clouds in window band (const term) */')
472 CALL WRITE_0D_R8( ABLCL2,INDEX_NONE,'AIM_RAD: ABLCL2 =',
473 & ' /* abs. of clouds in window band (/dw, 1g/kg) */')
474
475 C- namelist AIM_PAR_VDI:
476 CALL WRITE_0D_R8( TRSHC, INDEX_NONE,'AIM_VDI: TRSHC =',
477 & ' /* relaxation time [h] for shallow convection */')
478 CALL WRITE_0D_R8( TRVDI, INDEX_NONE,'AIM_VDI: TRVDI =',
479 & ' /* relaxation time [h] for moisture diffusion */')
480 CALL WRITE_0D_R8( TRVDS, INDEX_NONE,'AIM_VDI: TRVDS =',
481 & ' /* relaxation time [h] for super-adiab. cond. */')
482 CALL WRITE_0D_R8( RHGRAD,INDEX_NONE,'AIM_VDI: RHGRAD =',
483 & ' /* max gradient of rel.humidity (d_RH/d_sigma)*/')
484 CALL WRITE_0D_R8( RHGRAD,INDEX_NONE,'AIM_VDI: RHGRAD =',
485 & ' /* max grad. of dry static Energy(d_DSE/d_phi)*/')
486
487 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
488
489 _END_MASTER(myThid)
490
491 C-- Everyone else must wait for the parameters to be loaded
492 _BARRIER
493
494 #endif /* ALLOW_AIM */
495
496 RETURN
497 END

  ViewVC Help
Powered by ViewVC 1.1.22