SURFEX v8.1
General documentation of Surfex
rttov_const.F90
Go to the documentation of this file.
1 !
2 MODULE rttov_const
3  ! Description:
4  ! Definition of all parameters (constants) for RTTOV
5  !
6  ! Copyright:
7  ! This software was developed within the context of
8  ! the EUMETSAT Satellite Application Facility on
9  ! Numerical Weather Prediction (NWP SAF), under the
10  ! Cooperation Agreement dated 25 November 1998, between
11  ! EUMETSAT and the Met Office, UK, by one or more partners
12  ! within the NWP SAF. The partners in the NWP SAF are
13  ! the Met Office, ECMWF, KNMI and MeteoFrance.
14  !
15  ! Copyright 2002, EUMETSAT, All Rights Reserved.
16  !
17  ! History:
18  ! Version Date Comment
19  ! ------- ---- -------
20  ! 1.0 01/12/2002 New F90 code with structures (P Brunel A Smith)
21  ! 1.1 29/01/2003 New platforms and instruments (P Brunel)
22  ! Hard limits for input profiles
23  ! 1.2 19/02/2003 Some changes to limits and comments (R Saunders)
24  ! 1.3 06/05/2003 Change version number to 7.3.1
25  ! and add references for physical constants (P Brunel)
26  ! 1.4 08/2003 Added variables for MW scattering (F Chevallier)
27  ! 1.5 18/09/2003 Added coefficients for cloud absorption properties (P Francis)
28  ! 1.6 15/10/2003 Added new sections in parameter files for scatt (F Chevallier)
29  ! 1.7 23/11/2003 Added new definitions of polarisations 2.1 (S English)
30  ! 1.8 25/08/2005 Made inst_name a parameter (R Saunders)
31  ! 1.9 11/01/2006 Added logical flag for surface humidity use (R Saunders)
32  ! 1.10 12/01/2006 Marco Matricardi (ECMWF):
33  ! -- Added variables for CO2,CO,N2O and CH4 molecules.
34  ! -- Added parameters for the computation of the refractive index
35  ! -- of air.
36  ! 1.11 06/02/2006 Added logical flag for linear in tau approx (R Saunders)
37  ! 1.12 06/04/2006 Added Meghatropiques (R. Saunders)
38  ! 1.13 14/03/2007 Added units conversion constants
39  ! 1.14 16/05/2007 Added polarimetric sensor type (R Saunders)
40  ! 1.15 25/09/2007 Added maximum number of warnings for checkinput (P Brunel)
41  ! 1.16 11/10/2007 Remove zhusta* and zice* constants ( P.Marguinaud )
42  ! 1.17 07/12/2007 Remove maximum number of warnings for checkinput (P Brunel)
43  ! 1.18 12/12/2007 Added hard limits for trace gases (R Saunders)
44  ! 1.19 13/12/2007 Renamed linear_tau (R Saunders)
45  ! 1.20 01/11/2007 Added parameters for section length and AD/K code (A. Geer)
46  ! 1.21 16/01/2008 Facility to apply regression limits (N. Bormann)
47  ! 1.22 04/03/2008 Made min hard limit > zero (R Saunders)
48  ! 1.23 14/04/2008 Added SSM/T2 (R Saunders)
49  ! 1.24 02/06/2008 Changed mixing ratio for CO (R Saunders)
50  ! 1.25 12/08/2008 Added SSMISZ for SSMIS chan19-22 - Zeeman (P. Rayer)
51  ! 1.26 29/01/2009 Add Kalpana and FY-3 (R Saunders)
52  ! 1.27 26/05/2009 Add more platforms and sensors (R Saunders)
53  ! 1.28 02/12/2009 Add principal component capability (Marco matricardi)
54  ! 1.29 15/01/2010 Add rttov9 intervals constants (P Marguinaud)
55  ! 1.30 05/07/2010 Add maximum solar zenith angle constant (J Hocking)
56  ! 1.31 01/02/2011 Updates to platform and sensor lists (J Hocking)
57  ! 1.32 09/11/2012 Add theta_eff for Lambertian refl (R SAunders)
58  ! 1.33 07/05/2013 Add ice crystal diameter and ice water content hard limits (J Vidot)
59  ! 1.34 28/04/2015 Add GMI sensor, backphasing from RRTTOV 11.2 (P Chambon)
60  !
61  ! 2010/03 Code cleaning Pascal Brunel, Philippe Marguinaud
62  !
63 
64  USE parkind1, ONLY : jpim ,jprb
65  IMPLICIT NONE
66 
67  !1.0 Precision and numerical constants
68  ! Try to ensure this is large enough to avoid overflows in reciprocals but small enough to not affect the calculations.
69  ! these parameters are defined at bottom of module (because they use
70  REAL(JPRB), PARAMETER :: max_exp_exponent = 50._jprb ! approx 1e22 which should be sufficiently big for most purposes
71  REAL(JPRB), PARAMETER :: min_exponent = 1e-16_jprb ! approx log_10(1+2^-52) - anything raised to this power or smaller
72  ! should be approx equal to 1
73 ! small_val is defined in rttov_transmit to avoid compiler incompatibility
74 ! ! small_val is used in rttov_transmit to ensure small values do not result in underflows. In subsequent calculations
75 ! ! these values are multiplied together hence the exponent of 1/3.
76 ! Real(jprb) :: small_val = (tiny(min_exponent)) ** (0.333333_jprb) ! XLF doesn't like 1/3
77 
78  !1.1 general
79  !-----------
80  ! Version number of the current code
81 
82  INTEGER(KIND=JPIM), PARAMETER :: version = 11
83  INTEGER(KIND=JPIM), PARAMETER :: release = 2
84  INTEGER(KIND=JPIM), PARAMETER :: minor_version = 0
85 
86  INTEGER(KIND=JPIM), PARAMETER :: version_compatible_min = 10 ! minimum version number
87  INTEGER(KIND=JPIM), PARAMETER :: version_compatible_max = 11 ! maximum version number
88  ! compatible for coefficients.
89  ! coef files with "id_comp_lvl" outside range will be rejected
90 
91  CHARACTER (LEN=16), PARAMETER :: rttov_magic_string = '%RTTOV_COEFF '
92  REAL(KIND=JPRB), PARAMETER :: rttov_magic_number = 1.2345e+12_jprb
93 
94  INTEGER(KIND=JPIM), PARAMETER :: default_err_unit = 0 ! standard error unit number
95  ! standard error unit number is 7 for HPUX
96 
97  INTEGER(KIND=JPIM), PARAMETER :: max_fastem_version = 6 ! Highest FASTEM version number available
98 
99  !1.2 physical constants
100  !----------------------
101  ! Molecular weights (g/mole) are calculated by adding NIST Standard Atomic Weights
102  ! Molecular weight of dry air refers to US standard atmosphere 1976
103  ! NIST Standard Atomic Weight are:
104  ! H 1.00794 (7)
105  ! C 12.0107 (8)
106  ! N 14.0067 (2)
107  ! O 15.9994 (3)
108  REAL(KIND=JPRB), PARAMETER :: mair = 28.9644_jprb
109  REAL(KIND=JPRB), PARAMETER :: mh2o = 18.01528_jprb
110  REAL(KIND=JPRB), PARAMETER :: mo3 = 47.9982_jprb
111  REAL(KIND=JPRB), PARAMETER :: mco2 = 44.0095_jprb
112  REAL(KIND=JPRB), PARAMETER :: mch4 = 16.04246_jprb
113  REAL(KIND=JPRB), PARAMETER :: mn2o = 44.0128_jprb
114  REAL(KIND=JPRB), PARAMETER :: mco = 28.0101_jprb
115 
116  ! Avogadro constant from NIST (mol-1)
117  REAL(KIND=JPRB), PARAMETER :: na = 6.02214129e23_jprb
118 
119  ! Gravity from NIST 9.80665 ms-1 (exact)
120  REAL(KIND=JPRB), PARAMETER :: gravity = 9.80665_jprb
121 
122  ! Fundamental constants taken from http://physics.nist.gov/cuu/index.html
123  ! Barry N. Taylor (Fundamental Constants Data Center of NIST) and Peter J.
124  ! Mohr (Atomic Physics Division of NIST). Values as of 01/12/2010.
125  ! c1 = 2hc**2; c2 = hc/k; units are consistent with those used within RTTOV.
126  ! NB Planck fn constant values (c1, c2) in core code are still taken from coef files.
127  ! Newer values are available from NIST: we will update in a future version.
128  Real(KIND=JPRB), Parameter :: c1 = .00001191042722_jprb ! * mW/(m2 sr cm-4)
129  Real(KIND=JPRB), Parameter :: c2 = 1.4387752_jprb ! cm K
130  Real(KIND=JPRB), Parameter :: speedl = 29979245800.0_jprb ! Speed of light cm s-1
131 
132  !
133  ! Kaye & Laby latest library edition is 16e 1995, and gives
134  ! * standard value g = 9.80665 ms-1 exactly (p.191)
135  ! * earth mean radius r= 6371.00 km (p191)
136  ! [defined as [(r_equator)^2 (r_pole)]^1/3]
137  REAL(KIND=JPRB), PARAMETER :: pi = 3.1415926535_jprb
138  REAL(KIND=JPRB), PARAMETER :: deg2rad = pi/180.0_jprb
139  REAL(KIND=JPRB), PARAMETER :: earthradius = 6371.00_jprb
140  REAL(KIND=JPRB), PARAMETER :: flatt = 3.3528107e-3_jprb
141  REAL(KIND=JPRB), PARAMETER :: omega = 7292115e-11_jprb
142  REAL(KIND=JPRB), PARAMETER :: eqrad = 6378.137_jprb
143  REAL(KIND=JPRB), PARAMETER :: grave = 9.7803267715_jprb
144  REAL(KIND=JPRB), PARAMETER :: z4pi_r = 0.0795774715_jprb
145  REAL(KIND=JPRB), PARAMETER :: pi_r = 0.3183098862_jprb
146  REAL(KIND=JPRB), PARAMETER :: theta_eff = 55.0_jprb
147  REAL(KIND=JPRB), PARAMETER :: sec_theta_eff = 1.743446796_jprb
148 
149  ! The Cosmic Microwave Background Spectrum from the Full COBE FIRAS Data Set
150  ! Fixsen D.J. et all
151  ! Astrophysical Journal v.473, p.576 December 1996
152  ! CMBR = 2.728 +- 0.004K
153  REAL(KIND=JPRB), PARAMETER :: tcosmic = 2.728_jprb
154  ! Real(Kind=jprb), Parameter :: tcosmic = 0.1_JPRB !used for ECMWF tests
155 
156  ! Universal gas constant R = 8.314510 J/mol/K
157  REAL(KIND=JPRB), PARAMETER :: rgp = 8.314510_jprb
158  REAL(KIND=JPRB), PARAMETER :: rgc = 8.314472_jprb
159 
160  ! mean molar mass of dry air rm = 0.0289644 kg.mol^-1
161  REAL(KIND=JPRB), PARAMETER :: rm = 0.0289644_jprb
162 
163  ! units conversion from mixing ratio to ppmv
164  REAL(KIND=JPRB), PARAMETER :: q_mixratio_to_ppmv = 1.60771704e+6_jprb
165  REAL(KIND=JPRB), PARAMETER :: o3_mixratio_to_ppmv = 6.03504e+5_jprb
166  REAL(KIND=JPRB), PARAMETER :: co2_mixratio_to_ppmv= 6.58114e+5_jprb
167  REAL(KIND=JPRB), PARAMETER :: co_mixratio_to_ppmv = 1.0340699e+6_jprb
168  REAL(KIND=JPRB), PARAMETER :: n2o_mixratio_to_ppmv= 6.58090e+5_jprb
169  REAL(KIND=JPRB), PARAMETER :: ch4_mixratio_to_ppmv= 1.80548e+6_jprb
170 
171  ! zero temperature(K)
172  REAL(KIND=JPRB), PARAMETER :: t0 = 273.15_jprb
173  ! standard pressure
174  REAL(KIND=JPRB), PARAMETER :: p0 = 1013.25_jprb
175 
176  !1.3 satellite and instrument information
177  !----------------------------------------
178 
179  !platform id codes
180  INTEGER(KIND=JPIM), PARAMETER :: nplatforms = 41
181  INTEGER(KIND=JPIM), PARAMETER :: &
182  & PLATFORM_ID_NOAA = 1, &
183  & PLATFORM_ID_DMSP = 2, &
184  & PLATFORM_ID_METEOSAT = 3, &
185  & PLATFORM_ID_GOES = 4, &
186  & PLATFORM_ID_GMS = 5, &
187  & PLATFORM_ID_FY2 = 6, &
188  & PLATFORM_ID_TRMM = 7, &
189  & PLATFORM_ID_ERS = 8, &
190  & PLATFORM_ID_EOS = 9, &
191  & PLATFORM_ID_METOP = 10, &
192  & PLATFORM_ID_ENVISAT = 11, &
193  & PLATFORM_ID_MSG = 12, &
194  & PLATFORM_ID_FY1 = 13, &
195  & PLATFORM_ID_ADEOS = 14, &
196  & PLATFORM_ID_MTSAT = 15, &
197  & PLATFORM_ID_CORIOLIS = 16, &
198  & PLATFORM_ID_JPSS = 17, &
199  & PLATFORM_ID_GIFTS = 18, &
200  & PLATFORM_ID_SENTINEL3 = 19, &
201  & PLATFORM_ID_MEGHATR = 20, &
202  & PLATFORM_ID_KALPANA = 21, &
203  & PLATFORM_ID_INSAT_3D = 22, & ! This is spare - use ID 40 below for INSAT3
204  & platform_id_fy3 = 23, &
205  & platform_id_coms = 24, &
206  & platform_id_meteorm = 25, &
207  & platform_id_gosat = 26, &
208  & platform_id_calipso = 27, &
209  & platform_id_dummy = 28, &
210  & platform_id_gcomw = 29, &
211  & platform_id_nimbus = 30, &
212  & platform_id_himawari = 31, &
213  & platform_id_mtg = 32, &
214  & platform_id_saral = 33, &
215  & platform_id_metopsg = 34, &
216  & platform_id_landsat = 35, &
217  & platform_id_jason = 36, &
218  & platform_id_gpm = 37, &
219  & platform_id_insat1 = 38, &
220  & platform_id_insat2 = 39, &
221  & platform_id_insat3 = 40, &
222  & platform_id_ground = 41 ! For ground-based sensors
223 
224  !platform names
225  CHARACTER (LEN=9), PARAMETER :: platform_name(nplatforms) = &
226  & (/ 'noaa ', 'dmsp ', 'meteosat ', 'goes ', 'gms ', &
227  & 'fy2 ', 'trmm ', 'ers ', 'eos ', 'metop ', &
228  & 'envisat ', 'msg ', 'fy1 ', 'adeos ', 'mtsat ', &
229  & 'coriolis ', 'jpss ', 'gifts ', 'sentinel3', 'meghatr ', &
230  & 'kalpana ', 'insat_3d ', 'fy3 ', 'coms ', 'meteor-m ', &
231  & 'gosat ', 'calipso ', 'dummy ', 'gcom-w ', 'nimbus ', &
232  & 'himawari ', 'mtg ', 'saral ', 'metopsg ', 'landsat ', &
233  & 'jason ', 'gpm ', 'insat1 ', 'insat2 ', 'insat3 ', &
234  & 'ground ' /)
235 
236  !instrument id codes
237  INTEGER(KIND=JPIM), PARAMETER :: &
238  & INST_ID_HIRS = 0, INST_ID_MSU = 1, INST_ID_SSU = 2, INST_ID_AMSUA = 3, &
239  & INST_ID_AMSUB = 4, INST_ID_AVHRR = 5, INST_ID_SSMI = 6, INST_ID_VTPR1 = 7, &
240  & INST_ID_VTPR2 = 8, INST_ID_TMI = 9, INST_ID_SSMIS = 10, INST_ID_AIRS = 11, &
241  & INST_ID_HSB = 12, INST_ID_MODIS = 13, INST_ID_ATSR = 14, INST_ID_MHS = 15, &
242  & INST_ID_IASI = 16, INST_ID_AMSRE = 17, INST_ID_GMSIM = 18, INST_ID_ATMS = 19, &
243  & INST_ID_MVIRI = 20, INST_ID_SEVIRI = 21, INST_ID_GOESIM = 22, INST_ID_GOESSD = 23, &
244  & INST_ID_MTSATIM= 24, INST_ID_VISSR = 25, INST_ID_MVISR = 26, INST_ID_CRIS = 27, &
245  & INST_ID_CMIS = 28, INST_ID_VIIRS = 29, INST_ID_WINDSAT= 30, INST_ID_GIFTS = 31, &
246  & INST_ID_SSMT1 = 32, INST_ID_SSMT2 = 33, INST_ID_SAPHIR = 34, INST_ID_MADRAS = 35, &
247  & INST_ID_SSMISZ = 36, INST_ID_VHRR = 37, INST_ID_INSATIM= 38, INST_ID_INSATSD = 39, &
248  & INST_ID_MWTS = 40, INST_ID_MWHS = 41, INST_ID_IRAS = 42, INST_ID_MWRI = 43, &
249  & INST_ID_ABI = 44, INST_ID_MI = 45, INST_ID_MSUMR = 46, INST_ID_TANSOFTS= 47, &
250  & INST_ID_IIR = 48, INST_ID_MWR = 49, INST_ID_DUMMYIR= 50, INST_ID_DUMMYMW = 51, &
251  & INST_ID_DUMMYHI= 52, INST_ID_DUMMYPO= 53, INST_ID_SCAMS = 54, INST_ID_SMMR = 55, &
252  & INST_ID_AHI = 56, INST_ID_IRS = 57, INST_ID_ALTIKA = 58, INST_ID_IASING = 59, &
253  & INST_ID_TM = 60, INST_ID_FCI = 61, INST_ID_AMSR1 = 62, INST_ID_AMSR2 = 63, &
254  & INST_ID_VISSR2 = 64, INST_ID_SLSTR = 65, INST_ID_TIRS = 66, INST_ID_AMR = 67, &
255  & INST_ID_OLI = 68, INST_ID_IRIS = 69, INST_ID_ICI = 70, INST_ID_GMI = 71, &
256  & INST_ID_MWTS2 = 72, INST_ID_MWHS2 = 73, INST_ID_ASTER = 74, INST_ID_HATPRO = 75
257 
258  INTEGER(KIND=JPIM), PARAMETER :: ninst = 76
259  ! List of instruments !!!! HIRS is number 0
260  CHARACTER (LEN=8), DIMENSION(0:NINST-1),PARAMETER :: inst_name = &
261  & (/ 'hirs ', 'msu ', 'ssu ', 'amsua ', 'amsub ', &
262  & 'avhrr ', 'ssmi ', 'vtpr1 ', 'vtpr2 ', 'tmi ', &
263  & 'ssmis ', 'airs ', 'hsb ', 'modis ', 'atsr ', &
264  & 'mhs ', 'iasi ', 'amsre ', 'imager ', 'atms ', &
265  & 'mviri ', 'seviri ', 'imager ', 'sounder ', 'imager ', &
266  & 'vissr ', 'mvisr ', 'cris ', 'cmis ', 'viirs ', &
267  & 'windsat ', 'gifts ', 'ssmt1 ', 'ssmt2 ', 'saphir ', &
268  & 'madras ', 'ssmisz ', 'vhrr ', 'imager ', 'sounder ', &
269  & 'mwts ', 'mwhs ', 'iras ', 'mwri ', 'abi ', &
270  & 'mi ', 'msumr ', 'tansofts', 'iir ', 'mwr ', &
271  & 'dummyir ', 'dummymw ', 'dummyhi ', 'dummypo ', 'scams ', &
272  & 'smmr ', 'ahi ', 'irs ', 'altika ', 'iasing ', &
273  & 'tm ', 'fci ', 'amsr ', 'amsr2 ', 'vissr ', &
274  & 'slstr ', 'tirs ', 'amr ', 'oli ', 'iris ', &
275  & 'ici ', 'gmi ', 'mwts2 ', 'mwhs2 ', 'aster ', &
276  & 'hatpro ' /)
277 
278 
279  !1.4 Coefficient file Section names
280  !----------------------------------
281  INTEGER(KIND=JPIM), PARAMETER :: nsections = 43
282  INTEGER(KIND=JPIM), PARAMETER :: lensection = 34
283  CHARACTER(LEN=LENSECTION), PARAMETER :: section_types(nsections) = &
284  & (/ 'IDENTIFICATION ', 'LINE-BY-LINE ', &
285  & 'FAST_MODEL_VARIABLES ', 'FILTER_FUNCTIONS ', &
286  & 'FUNDAMENTAL_CONSTANTS ', 'SSIREM ', &
287  & 'FASTEM ', 'REFERENCE_PROFILE ', &
288  & 'PROFILE_LIMITS ', 'FAST_COEFFICIENTS ', &
289  & 'COEF_SUB_FILES ', 'GAZ_UNITS ', &
290  & 'DIMENSIONS ', 'FREQUENCIES ', &
291  & 'HYDROMETEOR ', 'CONVERSIONS ', &
292  & 'EXTINCTION ', 'ALBEDO ', &
293  & 'ASYMMETRY ', 'GAS_SPECTRAL_INTERVAL ', &
294  & 'TRANSMITTANCE_TRESHOLD ', 'SOLAR_SPECTRUM ', &
295  & 'WATER_OPTICAL_CONSTANT ', 'WAVE_SPECTRUM ', &
296  & 'AEROSOLS_PARAMETERS ', 'AEROSOLS_COMPONENTS ', &
297  & 'WATERCLOUD_TYPES ', 'WATERCLOUD_PARAMETERS ', &
298  & 'ICECLOUD_TYPES ', 'HEXAGONAL_PARAMETERS ', &
299  & 'AGGREGATE_PARAMETERS ', 'PRINCOMP_PREDICTORS ', &
300  & 'PRINCOMP_EIGENVECTORS ', 'PRINCOMP_COEFFICIENTS ', &
301  & 'EMISSIVITY_COEFFICIENTS ', 'PC_REFERENCE_PROFILE ', &
302  & 'PC_PROFILE_LIMITS ', 'INSTRUMENT_NOISE ', &
303  & 'PLANCK_WEIGHTED ', 'SOLAR_FAST_COEFFICIENTS ', &
304  & 'README_SPECTRAL_RESPONSE_FUNCTION ', 'NLTE_RADIANCE_COEFS ', &
305  & 'PRESSURE_MODULATED_CELL '/)
306 
307  !sensors id codes
308  INTEGER(KIND=JPIM), PARAMETER :: nsensors = 4
309  INTEGER(KIND=JPIM), PARAMETER :: &
310  & SENSOR_ID_IR = 1, &
311  & SENSOR_ID_MW = 2, &
312  & SENSOR_ID_HI = 3, &
313  & SENSOR_ID_PO = 4
314 
315  !sensors names
316  CHARACTER (LEN=2), PARAMETER :: sensor_name(nsensors) = &
317  & (/ 'ir', 'mw', 'hi', 'po' /)
318 
319  ! these codes are for the instrument from the inst_name array
320  INTEGER(KIND=JPIM), PARAMETER :: sensor_id(0:ninst-1) = (/ &
336  sensor_id_mw /)
337 
338  !gas id codes
339  INTEGER(KIND=JPIM), PARAMETER :: ngases_max = 8
340  INTEGER(KIND=JPIM), PARAMETER :: &
341  & GAS_ID_MIXED = 1, &
342  & GAS_ID_WATERVAPOUR = 2, &
343  & GAS_ID_OZONE = 3, &
344  & GAS_ID_WVCONT = 4, &
345  & GAS_ID_CO2 = 5, &
346  & GAS_ID_N2O = 6, &
347  & GAS_ID_CO = 7, &
348  & GAS_ID_CH4 = 8
349 
350  !gas names
351  CHARACTER (LEN=12), PARAMETER :: gas_name(ngases_max) = &
352  & (/ 'Mixed_gases ', &
353  & 'Water_vapour', &
354  & 'Ozone ', &
355  & 'WV_Continuum', &
356  & 'CO2 ', &
357  & 'N2O ', &
358  & 'CO ', &
359  & 'CH4 ' /)
360 
361  !gas units
362  INTEGER(KIND=JPIM), PARAMETER :: ngases_unit = 2
363  INTEGER(KIND=JPIM), PARAMETER :: &
364  & GAS_UNIT_SPECCONC = 1, &
365  & GAS_UNIT_PPMV = 2
366  CHARACTER (LEN=12), PARAMETER :: gas_unit_name(ngases_unit) = &
367  & (/ 'spec. concen', &
368  & 'ppmv ' /)
369 
370 
371  !1.5 error reporting
372  !-------------------
373  !error status values
374  INTEGER(KIND=JPIM), PARAMETER :: errorstatus_success = 0
375  INTEGER(KIND=JPIM), PARAMETER :: errorstatus_fatal = 1
376 
377 
378  !1.6 surface types
379  !-----------------
380  INTEGER(KIND=JPIM), PARAMETER :: nsurftype = 2
381  INTEGER(KIND=JPIM), PARAMETER :: surftype_land = 0
382  INTEGER(KIND=JPIM), PARAMETER :: surftype_sea = 1
383  INTEGER(KIND=JPIM), PARAMETER :: surftype_seaice = 2
384 
385  !1.7 water types
386  !---------------
387  INTEGER(KIND=JPIM), PARAMETER :: nwatertype = 1
388  INTEGER(KIND=JPIM), PARAMETER :: watertype_fresh_water = 0
389  INTEGER(KIND=JPIM), PARAMETER :: watertype_ocean_water = 1
390 
391  !1.8 ice cloud parameterisations
392  !-------------------------------
393  INTEGER(KIND=JPIM), PARAMETER :: nish = 4 ! Max valid value for ish
394  INTEGER(KIND=JPIM), PARAMETER :: nidg = 4 ! Max valid value for idg
395 
396  !
397  !1.9 Hard limits for control of input profile
398  !--------------------------------------------
399  ! Temperature
400  REAL(KIND=JPRB), PARAMETER :: tmax = 400.0_jprb ! degK
401  REAL(KIND=JPRB), PARAMETER :: tmin = 90.0_jprb ! degK
402  ! Water Vapour
403  REAL(KIND=JPRB), PARAMETER :: qmax = 0.60e+06_jprb ! ppmv 0.373_JPRB kg/kg
404  REAL(KIND=JPRB), PARAMETER :: qmin = 0.1e-10_jprb ! ppmv
405  ! Ozone
406  REAL(KIND=JPRB), PARAMETER :: o3max = 1000.0_jprb ! ppmv 1.657E-3_JPRB kg/kg
407  REAL(KIND=JPRB), PARAMETER :: o3min = 0.1e-10_jprb ! ppmv
408  ! CO2
409  REAL(KIND=JPRB), PARAMETER :: co2max = 1000.0_jprb ! ppmv
410  REAL(KIND=JPRB), PARAMETER :: co2min = 0.1e-10_jprb ! ppmv
411  ! CO
412  REAL(KIND=JPRB), PARAMETER :: comax = 10.0_jprb ! ppmv
413  REAL(KIND=JPRB), PARAMETER :: comin = 0.1e-10_jprb ! ppmv
414  ! N2O
415  REAL(KIND=JPRB), PARAMETER :: n2omax = 10.0_jprb ! ppmv
416  REAL(KIND=JPRB), PARAMETER :: n2omin = 0.1e-10_jprb ! ppmv
417  ! CH4
418  REAL(KIND=JPRB), PARAMETER :: ch4max = 50.0_jprb ! ppmv
419  REAL(KIND=JPRB), PARAMETER :: ch4min = 0.1e-10_jprb ! ppmv
420  ! Cloud Liquid Water
421  REAL(KIND=JPRB), PARAMETER :: clwmax = 1.0_jprb ! kg/kg
422  REAL(KIND=JPRB), PARAMETER :: clwmin = 0.0_jprb ! kg/kg
423  ! Surface Pressure
424  REAL(KIND=JPRB), PARAMETER :: pmax = 1200.0_jprb ! surface pressure hPa
425  REAL(KIND=JPRB), PARAMETER :: pmin = 400.0_jprb ! hPa
426  ! Surface Wind
427  REAL(KIND=JPRB), PARAMETER :: wmax = 100.0_jprb ! surface wind speed (m/s)
428  ! Zenith Angle
429  REAL(KIND=JPRB), PARAMETER :: zenmax = 75.0_jprb ! zenith angle (Deg) = secant 3.86_JPRB
430  REAL(KIND=JPRB), PARAMETER :: zenmaxv9 = 84.0_jprb ! larger zenmax for v9 predictors
431  ! Cloud Top Pressure
432  REAL(KIND=JPRB), PARAMETER :: ctpmax = 1100.0_jprb ! (hPa)
433  REAL(KIND=JPRB), PARAMETER :: ctpmin = 50.0_jprb ! (hPa)
434  ! Magnetic field strength
435  REAL(KIND=JPRB), PARAMETER :: bemax = 0.7_jprb ! (Gauss)
436  REAL(KIND=JPRB), PARAMETER :: bemin = 0.2_jprb ! (Guass)
437  ! Ice Crystal Diameter
438  REAL(KIND=JPRB), PARAMETER :: dgmin_hex = 12.2_jprb ! (micron)
439  REAL(KIND=JPRB), PARAMETER :: dgmax_hex = 118.29_jprb ! (micron)
440  REAL(KIND=JPRB), PARAMETER :: dgmin_agg = 5.61_jprb ! (micron)
441  REAL(KIND=JPRB), PARAMETER :: dgmax_agg = 166.46_jprb ! (micron)
442  ! Ice Water Content
443  REAL(KIND=JPRB), PARAMETER :: iwcmin_hex = 0.000608_jprb ! (g.m-3)
444  REAL(KIND=JPRB), PARAMETER :: iwcmax_hex = 0.254639_jprb ! (g.m-3)
445  REAL(KIND=JPRB), PARAMETER :: iwcmin_agg = 0.000235_jprb ! (g.m-3)
446  REAL(KIND=JPRB), PARAMETER :: iwcmax_agg = 0.489046_jprb ! (g.m-3)
447 
448 
449  !1.10 Maximum Optical Depth
450  !--------------------------
451  ! maximum value of optical depth for transmittance calculation
452  ! e(-30) -> 10**-14
453  ! e(-50) -> 10**-22
454  REAL(KIND=JPRB), PARAMETER :: max_optical_depth = 50._jprb
455 
456  !1.11 Maximum solar zenith angle for which to apply solar calculation
457  !---------------------------------------------------------------------
458  REAL(KIND=JPRB), PARAMETER :: max_sol_zen = 84._jprb
459 
460 
461  !2 RTTOV7 aux parameters
462  !-------------------------
463  INTEGER(KIND=JPIM), PARAMETER :: fastem_sp = 5 ! max. number of fastem surface parameters
464  REAL(KIND=JPRB), PARAMETER :: mwcldtp = 322.0_jprb ! Upper pressure level (HPa) for lwp calcs
465  REAL(KIND=JPRB), PARAMETER :: pressure_top = 0.004985_jprb ! Pressure of top level for
466  ! Line/Line calculations (hPa)
467  REAL(KIND=JPRB) , DIMENSION(8), PARAMETER :: dcoeff = &! Debye coefs
468  & (/ 17.1252_JPRB, 134.2450_JPRB, 310.2125_JPRB, 5.667_JPRB, &
469  & 188.7979_JPRB, 80.5419_JPRB, 0.1157_JPRB, 4.8417_JPRB/)
470 
471  !2.1 Polarisation definitions
472  !----------------------------
473  ! == pol_id +1
474  ! 1 average of vertical and horizontal
475  ! 2 nominal vertical at nadir, rotating
476  ! with view angle
477  ! 3 nominal horizontal at nadir, rotating
478  ! with view angle
479  ! 4 vertical
480  ! 5 horizontal
481  ! 6 + 45 minus -45 (3rd stokes vector)
482  ! 7 left circular - right circular (4th stokes vector)
483  INTEGER(KIND=JPIM), DIMENSION(7), PARAMETER :: npolar_compute = &
484  & (/ 2, 2, 2, 1, 1, 2, 4/)
485  integer(kind=jpim), DIMENSION(7), PARAMETER :: npolar_return = &
486  & (/ 1, 1, 1, 1, 1, 2, 4/)
487 
488  ! pol_v and pol_h give proportion of v and h pol to use in emissivity calculation
489  ! pol_s3 adds the 3rd/4th stokes vectors
490  REAL(KIND=JPRB), PARAMETER :: pol_v(3,7) = reshape( &
491  & (/ 0.5_jprb, 0.0_jprb, 0.0_jprb, &
492  & 0.0_jprb, 0.0_jprb, 1.0_jprb, &
493  & 0.0_jprb, 1.0_jprb, 0.0_jprb, &
494  & 1.0_jprb, 0.0_jprb, 0.0_jprb, &
495  & 0.0_jprb, 0.0_jprb, 0.0_jprb, &
496  & 0.0_jprb, 0.0_jprb, 0.0_jprb, &
497  & 0.0_jprb, 0.0_jprb, 0.0_jprb /), (/3,7/) )
498  REAL(KIND=JPRB), PARAMETER :: pol_h(3,7) = reshape( &
499  & (/ 0.5_jprb, 0.0_jprb, 0.0_jprb, &
500  & 0.0_jprb, 1.0_jprb, 0.0_jprb, &
501  & 0.0_jprb, 0.0_jprb, 1.0_jprb, &
502  & 0.0_jprb, 0.0_jprb, 0.0_jprb, &
503  & 1.0_jprb, 0.0_jprb, 0.0_jprb, &
504  & 0.0_jprb, 0.0_jprb, 0.0_jprb, &
505  & 0.0_jprb, 0.0_jprb, 0.0_jprb /), (/3,7/) )
506  REAL(KIND=JPRB), PARAMETER :: pol_s3(0:1,7) = reshape( &
507  & (/ 0.0_jprb, 0.0_jprb, &
508  & 0.0_jprb, 0.0_jprb, &
509  & 0.0_jprb, 0.0_jprb, &
510  & 0.0_jprb, 0.0_jprb, &
511  & 0.0_jprb, 0.0_jprb, &
512  & 1.0_jprb, 0.0_jprb, &
513  & 0.0_jprb, 1.0_jprb /), (/2,7/) )
514 
515  !3 RTTOVSCATT aux parameters
516  !---------------------------
517  ! Minimum cloud cover processed by rttov_scatt
518  REAL(KIND=JPRB), PARAMETER :: ccthres = 0.05_jprb
519  ! Minimum single scattering albedo processed by rttov_scatt
520  REAL(KIND=JPRB), PARAMETER :: min_ssa = 1.0e-03_jprb
521  ! Rain density (g.cm-3)
522  REAL(KIND=JPRB), PARAMETER :: rho_rain = 1.0_jprb
523  ! Snow density (g.cm-3)
524  REAL(KIND=JPRB), PARAMETER :: rho_snow = 0.1_jprb
525 
526  ! Flags to identify function in shared K/Adjoint routines
527  INTEGER(KIND=JPIM), PARAMETER :: adk_adjoint = 0
528  INTEGER(KIND=JPIM), PARAMETER :: adk_k = 1
529 
530  !4 Parameters to compute refractive index of air
531  !--------------------------------------------------------
532  REAL(KIND=JPRB), PARAMETER :: d1 =8341.87_jprb
533  REAL(KIND=JPRB), PARAMETER :: d2 =2405955.0_jprb
534  REAL(KIND=JPRB), PARAMETER :: d3 =130.0_jprb
535  REAL(KIND=JPRB), PARAMETER :: d4 =15996.0_jprb
536  REAL(KIND=JPRB), PARAMETER :: d5 =38.9_jprb
537  REAL(KIND=JPRB), PARAMETER :: dco2 =0.540_jprb
538  REAL(KIND=JPRB), PARAMETER :: ed1 =96095.43_jprb
539  REAL(KIND=JPRB), PARAMETER :: ed2 =0.601_jprb
540  REAL(KIND=JPRB), PARAMETER :: ed3 =0.00972_jprb
541  REAL(KIND=JPRB), PARAMETER :: ed4 =0.003661_jprb
542  REAL(KIND=JPRB), PARAMETER :: ew1 =3.7345_jprb
543  REAL(KIND=JPRB), PARAMETER :: ew2 =0.0401_jprb
544  REAL(KIND=JPRB), PARAMETER :: htop =100.0_jprb
545  REAL(KIND=JPRB), PARAMETER :: ctom =1.0e-4_jprb
546  REAL(KIND=JPRB), PARAMETER :: waver=1700.0_jprb
547 
548  !5 RTTOV8_M_SCATT
549  !--------------------------------------------------------
550  INTEGER(KIND=JPIM), PARAMETER :: naer_max = 13
551 
552  INTEGER(KIND=JPIM), PARAMETER :: &
553  & AER_ID_INSO = 1, &
554  & AER_ID_WASO = 2, &
555  & AER_ID_SOOT = 3, &
556  & AER_ID_SSAM = 4, &
557  & AER_ID_SSCM = 5, &
558  & AER_ID_MINM = 6, &
559  & AER_ID_MIAM = 7, &
560  & AER_ID_MICM = 8, &
561  & AER_ID_MITR = 9, &
562  & AER_ID_SUSO =10, &
563  & AER_ID_VOLA =11, &
564  & AER_ID_VAPO =12, &
565  & AER_ID_ASDU =13
566 
567  CHARACTER (LEN=4), PARAMETER :: aer_name(naer_max) = &
568  & (/ 'inso', &
569  & 'waso', &
570  & 'soot', &
571  & 'ssam', &
572  & 'sscm', &
573  & 'minm', &
574  & 'miam', &
575  & 'micm', &
576  & 'mitr', &
577  & 'suso', &
578  & 'vola', &
579  & 'vapo', &
580  & 'asdu' /)
581 
582  INTEGER(KIND=JPIM), PARAMETER :: nphangle = 208
583 
584  REAL(KIND=JPRB), PARAMETER :: phangle(nphangle) = &
585  (/ 0.0_jprb, 0.1_jprb, 0.2_jprb, 0.3_jprb, 0.4_jprb, 0.5_jprb, 0.6_jprb, &
586  & 0.7_jprb, 0.8_jprb, 0.9_jprb, 1.0_jprb, 1.1_jprb, 1.2_jprb, 1.3_jprb, &
587  & 1.4_jprb, 1.5_jprb, 1.6_jprb, 1.7_jprb, 1.8_jprb, 1.9_jprb, 2.0_jprb, &
588  & 2.1_jprb, 2.2_jprb, 2.3_jprb, 2.4_jprb, 2.5_jprb, 2.6_jprb, 2.7_jprb, &
589  & 2.8_jprb, 2.9_jprb, 3.0_jprb, 4.0_jprb, 5.0_jprb, 6.0_jprb, 7.0_jprb, &
590  & 8.0_jprb, 9.0_jprb, 10.0_jprb, 11.0_jprb, 12.0_jprb, 13.0_jprb, 14.0_jprb, &
591  & 15.0_jprb, 16.0_jprb, 17.0_jprb, 18.0_jprb, 19.0_jprb, 20.0_jprb, 21.0_jprb, &
592  & 22.0_jprb, 23.0_jprb, 24.0_jprb, 25.0_jprb, 26.0_jprb, 27.0_jprb, 28.0_jprb, &
593  & 29.0_jprb, 30.0_jprb, 31.0_jprb, 32.0_jprb, 33.0_jprb, 34.0_jprb, 35.0_jprb, &
594  & 36.0_jprb, 37.0_jprb, 38.0_jprb, 39.0_jprb, 40.0_jprb, 41.0_jprb, 42.0_jprb, &
595  & 43.0_jprb, 44.0_jprb, 45.0_jprb, 46.0_jprb, 47.0_jprb, 48.0_jprb, 49.0_jprb, &
596  & 50.0_jprb, 51.0_jprb, 52.0_jprb, 53.0_jprb, 54.0_jprb, 55.0_jprb, 56.0_jprb, &
597  & 57.0_jprb, 58.0_jprb, 59.0_jprb, 60.0_jprb, 61.0_jprb, 62.0_jprb, 63.0_jprb, &
598  & 64.0_jprb, 65.0_jprb, 66.0_jprb, 67.0_jprb, 68.0_jprb, 69.0_jprb, 70.0_jprb, &
599  & 71.0_jprb, 72.0_jprb, 73.0_jprb, 74.0_jprb, 75.0_jprb, 76.0_jprb, 77.0_jprb, &
600  & 78.0_jprb, 79.0_jprb, 80.0_jprb, 81.0_jprb, 82.0_jprb, 83.0_jprb, 84.0_jprb, &
601  & 85.0_jprb, 86.0_jprb, 87.0_jprb, 88.0_jprb, 89.0_jprb, 90.0_jprb, 91.0_jprb, &
602  & 92.0_jprb, 93.0_jprb, 94.0_jprb, 95.0_jprb, 96.0_jprb, 97.0_jprb, 98.0_jprb, &
603  & 99.0_jprb, 100.0_jprb, 101.0_jprb, 102.0_jprb, 103.0_jprb, 104.0_jprb, 105.0_jprb, &
604  & 106.0_jprb, 107.0_jprb, 108.0_jprb, 109.0_jprb, 110.0_jprb, 111.0_jprb, 112.0_jprb, &
605  & 113.0_jprb, 114.0_jprb, 115.0_jprb, 116.0_jprb, 117.0_jprb, 118.0_jprb, 119.0_jprb, &
606  & 120.0_jprb, 121.0_jprb, 122.0_jprb, 123.0_jprb, 124.0_jprb, 125.0_jprb, 126.0_jprb, &
607  & 127.0_jprb, 128.0_jprb, 129.0_jprb, 130.0_jprb, 131.0_jprb, 132.0_jprb, 133.0_jprb, &
608  & 134.0_jprb, 135.0_jprb, 136.0_jprb, 137.0_jprb, 138.0_jprb, 139.0_jprb, 140.0_jprb, &
609  & 141.0_jprb, 142.0_jprb, 143.0_jprb, 144.0_jprb, 145.0_jprb, 146.0_jprb, 147.0_jprb, &
610  & 148.0_jprb, 149.0_jprb, 150.0_jprb, 151.0_jprb, 152.0_jprb, 153.0_jprb, 154.0_jprb, &
611  & 155.0_jprb, 156.0_jprb, 157.0_jprb, 158.0_jprb, 159.0_jprb, 160.0_jprb, 161.0_jprb, &
612  & 162.0_jprb, 163.0_jprb, 164.0_jprb, 165.0_jprb, 166.0_jprb, 167.0_jprb, 168.0_jprb, &
613  & 169.0_jprb, 170.0_jprb, 171.0_jprb, 172.0_jprb, 173.0_jprb, 174.0_jprb, 175.0_jprb, &
614  & 176.0_jprb, 177.0_jprb, 178.0_jprb, 179.0_jprb, 180.0_jprb /)
615 
616  INTEGER(KIND=JPIM), PARAMETER :: nwcl_max = 5
617 
618  INTEGER(KIND=JPIM), PARAMETER :: &
619  & WCL_ID_STCO = 1, &
620  & WCL_ID_STMA = 2, &
621  & WCL_ID_CUCC = 3, &
622  & WCL_ID_CUCP = 4, &
623  & WCL_ID_CUMA = 5
624 
625  CHARACTER (LEN=4), PARAMETER :: wcl_name(nwcl_max) = &
626  & (/ 'stco', &
627  & 'stma', &
628  & 'cucc', &
629  & 'cucp', &
630  & 'cuma' /)
631 
632  INTEGER(KIND=JPIM), PARAMETER:: ncldtyp = 6
633 
634  REAL(KIND=JPRB), PARAMETER :: e00 = 611.21_jprb
635  REAL(KIND=JPRB), PARAMETER :: t00 = 273.16_jprb
636  REAL(KIND=JPRB), PARAMETER :: ti = t00 - 23.0_jprb
637 
638  REAL(KIND=JPRB), PARAMETER :: min_tau = 1.0e-8_jprb
639  REAL(KIND=JPRB), PARAMETER :: min_od = 1.0e-5_jprb
640 
641 !
642 ! These are the RTTOV9 wavenumbers that make intervals
643 !
644  REAL(KIND=JPRB), PARAMETER :: rttov9_wv0690_50 = 690.50_jprb, &
645  rttov9_wv1050_00 = 1050.00_jprb, &
646  rttov9_wv1095_25 = 1095.25_jprb, &
647  rttov9_wv1100_25 = 1100.25_jprb, &
648  rttov9_wv1350_25 = 1350.25_jprb, &
649  rttov9_wv1750_25 = 1750.25_jprb, &
650  rttov9_wv1900_25 = 1900.25_jprb, &
651  rttov9_wv1995_00 = 1995.00_jprb, &
652  rttov9_wv2000_00 = 2000.00_jprb, &
653  rttov9_wv2250_00 = 2250.00_jprb, &
654  rttov9_wv2295_25 = 2295.25_jprb, &
655  rttov9_wv2360_00 = 2360.00_jprb, &
656  rttov9_wv2380_25 = 2380.25_jprb, &
657  rttov9_wv2660_25 = 2660.25_jprb, &
658  rttov9_wv2760_25 = 2760.25_jprb
659 
660 !
661 ! Parameters for solar overcast radiance calculation
662 !
663 
664 REAL(KIND=JPRB), PARAMETER :: overcast_albedo_wvn = 10000._jprb ! Wavenumber (cm-1) at which albedo changes
665 REAL(KIND=JPRB), PARAMETER :: overcast_albedo1 = 0.7_jprb ! Overcast albedo for wvn > limit
666 REAL(KIND=JPRB), PARAMETER :: overcast_albedo2 = 0.6_jprb ! Overcast albedo for wvn <= limit
667 
668 !
669 ! Parameters for Rayleigh cross-section parameterization taken from Bucholzt 1995.
670 !
671 REAL(KIND=JPRB), PARAMETER :: ray_min_wvn = 5000.0_jprb, & ! Min wavenumber (cm-1) for which Rayleigh is calculated
672  ray_scs_wlm = 0.5_jprb, & ! Wavelength limit: below 0.5um the
673  ray_scs_a1 = 3.01577e-28_jprb, & ! first set of parameters a1-d1 are used
674  ray_scs_b1 = -3.55212_jprb, & ! while above this a2-d2 are used.
675  ray_scs_c1 = -1.35579_jprb, &
676  ray_scs_d1 = -0.11563_jprb, &
677  ray_scs_a2 = 4.01061e-28_jprb, &
678  ray_scs_b2 = -3.99668_jprb, &
679  ray_scs_c2 = -1.10298e-3_jprb, &
680  ray_scs_d2 = -2.71393e-2_jprb
681 
682 !
683 ! Interpolation modes
684 ! MODE USER->COEF LEVEL COEF->USER LEVEL
685 ! (profile interpolation) (optical depth/weighting fn interpolation)
686 ! interp_rochon: Rochon Rochon, op dep
687 ! interp_loglinear: Log-linear Log-linear, op dep
688 ! interp_rochon_loglinear: Rochon Log-linear, op dep
689 ! interp_rochon_wfn: Rochon Rochon, weighting fns
690 ! interp_rochon_loglinear_wfn: Rochon Log-linear, weighting fns
691 INTEGER(KIND=JPIM), PARAMETER :: ninterp_modes = 5_jpim ! Number of valid interpolation options
692 INTEGER(KIND=JPIM), PARAMETER :: interp_rochon = 1_jpim
693 INTEGER(KIND=JPIM), PARAMETER :: interp_loglinear = 2_jpim
694 INTEGER(KIND=JPIM), PARAMETER :: interp_rochon_loglinear = 3_jpim
695 INTEGER(KIND=JPIM), PARAMETER :: interp_rochon_wfn = 4_jpim
696 INTEGER(KIND=JPIM), PARAMETER :: interp_rochon_loglinear_wfn = 5_jpim
697 
698 END MODULE rttov_const
integer(kind=jpim), parameter sensor_id_hi
real(kind=jprb), parameter overcast_albedo2
real(kind=jprb), parameter rttov9_wv1050_00
real(kind=jprb), parameter n2omax
integer(kind=jpim), parameter surftype_land
real(kind=jprb), parameter o3max
real(jprb), parameter max_exp_exponent
Definition: rttov_const.F90:70
real(kind=jprb), parameter earthradius
integer(kind=jpim), parameter naer_max
character(len=4), dimension(naer_max), parameter aer_name
integer(kind=jpim), parameter nphangle
real(kind=jprb), parameter gravity
integer(kind=jpim), parameter nwatertype
real(kind=jprb), parameter ed4
real(kind=jprb), parameter co2_mixratio_to_ppmv
real(kind=jprb), parameter ti
integer, parameter jpim
Definition: parkind1.F90:13
real(kind=jprb), parameter t0
integer(kind=jpim), dimension(7), parameter npolar_compute
real(kind=jprb), parameter min_od
real(kind=jprb), parameter comax
character(len=2), dimension(nsensors), parameter sensor_name
real(kind=jprb), parameter waver
real(kind=jprb), parameter comin
real(kind=jprb), parameter rttov9_wv2760_25
character(len=12), dimension(ngases_max), parameter gas_name
real(kind=jprb), parameter dgmax_hex
real(kind=jprb), parameter tmax
real(kind=jprb), parameter bemin
real(kind=jprb), parameter dco2
real(kind=jprb), parameter ch4_mixratio_to_ppmv
real(kind=jprb), parameter flatt
real(kind=jprb), parameter mwcldtp
real(kind=jprb), parameter rttov9_wv2250_00
real(kind=jprb), parameter rttov_magic_number
Definition: rttov_const.F90:92
real(kind=jprb), parameter ray_scs_c2
real(kind=jprb), parameter co2min
real(kind=jprb), parameter ray_scs_a1
real(kind=jprb), parameter co2max
real(kind=jprb), parameter o3min
real(kind=jprb), parameter rho_snow
integer(kind=jpim), parameter sensor_id_mw
integer(kind=jpim), parameter nsurftype
real(kind=jprb), parameter rttov9_wv1095_25
integer(kind=jpim), parameter interp_rochon_wfn
integer(kind=jpim), parameter max_fastem_version
Definition: rttov_const.F90:97
integer(kind=jpim), dimension(7), parameter npolar_return
integer(kind=jpim), parameter release
Definition: rttov_const.F90:83
integer(kind=jpim), parameter nwcl_max
real(kind=jprb), parameter omega
real(kind=jprb), parameter ch4min
integer(kind=jpim), parameter watertype_ocean_water
real(kind=jprb), parameter deg2rad
real(kind=jprb), dimension(3, 7), parameter pol_v
real(kind=jprb), parameter ray_scs_c1
real(kind=jprb), parameter rttov9_wv1995_00
integer(kind=jpim), parameter ninst
real(kind=jprb), parameter mh2o
character(len=8), dimension(0:ninst-1), parameter inst_name
real(kind=jprb), dimension(8), parameter dcoeff
real(kind=jprb), parameter zenmaxv9
integer(kind=jpim), parameter interp_rochon_loglinear
real(kind=jprb), parameter rttov9_wv0690_50
real(kind=jprb), parameter theta_eff
real(kind=jprb), parameter z4pi_r
integer(kind=jpim), parameter fastem_sp
real(kind=jprb), parameter c1
real(kind=jprb), parameter bemax
integer(kind=jpim), parameter errorstatus_success
real(kind=jprb), parameter d2
integer(kind=jpim), parameter watertype_fresh_water
real(kind=jprb), parameter pi_r
integer(kind=jpim), parameter default_err_unit
Definition: rttov_const.F90:94
real(kind=jprb), parameter ray_scs_wlm
real(kind=jprb), dimension(3, 7), parameter pol_h
integer4 integer
Definition: privpub.h:351
real(kind=jprb), parameter d3
integer(kind=jpim), parameter interp_rochon
real(kind=jprb), parameter p0
character(len=16), parameter rttov_magic_string
Definition: rttov_const.F90:91
real(kind=jprb), parameter iwcmax_hex
real(kind=jprb), parameter ed3
real(kind=jprb), parameter overcast_albedo_wvn
real(kind=jprb), dimension(nphangle), parameter phangle
real(kind=jprb), parameter n2omin
real(kind=jprb), parameter ew1
real(kind=jprb), parameter ctpmin
real(kind=jprb), parameter n2o_mixratio_to_ppmv
real(kind=jprb), parameter ctom
real(kind=jprb), parameter rho_rain
integer, parameter jprb
Definition: parkind1.F90:32
real(kind=jprb), parameter co_mixratio_to_ppmv
character(len=lensection), dimension(nsections), parameter section_types
real(kind=jprb), parameter sec_theta_eff
character(len=4), dimension(nwcl_max), parameter wcl_name
integer(kind=jpim), parameter nsections
real(kind=jprb), parameter qmax
integer(kind=jpim), parameter surftype_sea
real(kind=jprb), parameter na
integer(kind=jpim), parameter ngases_max
character(len=12), dimension(ngases_unit), parameter gas_unit_name
real(kind=jprb), parameter c2
real(kind=jprb), parameter rttov9_wv1350_25
integer(kind=jpim), parameter ngases_unit
real(kind=jprb), parameter tcosmic
real(kind=jprb), parameter dgmin_hex
real(jprb), parameter min_exponent
Definition: rttov_const.F90:71
real(kind=jprb), parameter rttov9_wv2360_00
integer(kind=jpim), parameter interp_rochon_loglinear_wfn
integer(kind=jpim), parameter nplatforms
real(kind=jprb), parameter iwcmin_hex
real(kind=jprb), parameter tmin
integer(kind=jpim), parameter minor_version
Definition: rttov_const.F90:84
real(kind=jprb), parameter e00
real(kind=jprb), parameter q_mixratio_to_ppmv
integer(kind=jpim), parameter interp_loglinear
integer(kind=jpim), parameter version
Definition: rttov_const.F90:82
real(kind=jprb), parameter ray_min_wvn
real(kind=jprb), parameter mch4
real(kind=jprb), parameter max_sol_zen
real(kind=jprb), parameter mair
real(kind=jprb), dimension(0:1, 7), parameter pol_s3
real(kind=jprb), parameter min_tau
real(kind=jprb), parameter pmax
integer(kind=jpim), parameter ninterp_modes
integer(kind=jpim), parameter ncldtyp
real(kind=jprb), parameter ed2
integer(kind=jpim), parameter version_compatible_max
Definition: rttov_const.F90:87
integer(kind=jpim), parameter nsensors
real(kind=jprb), parameter min_ssa
integer(kind=jpim), parameter lensection
integer(kind=jpim), dimension(0:ninst-1), parameter sensor_id
real(kind=jprb), parameter clwmin
real(kind=jprb), parameter pressure_top
real(kind=jprb), parameter mo3
real(kind=jprb), parameter rgp
real(kind=jprb), parameter ray_scs_d2
integer(kind=jpim), parameter surftype_seaice
real(kind=jprb), parameter mco
real(kind=jprb), parameter d4
real(kind=jprb), parameter grave
integer(kind=jpim), parameter nidg
real(kind=jprb), parameter d5
integer(kind=jpim), parameter sensor_id_ir
real(kind=jprb), parameter t00
real(kind=jprb), parameter ew2
real(kind=jprb), parameter zenmax
real(kind=jprb), parameter ccthres
real(kind=jprb), parameter rttov9_wv1100_25
real(kind=jprb), parameter rttov9_wv2660_25
real(kind=jprb), parameter ed1
real(kind=jprb), parameter rttov9_wv1900_25
real(kind=jprb), parameter rttov9_wv2000_00
integer(kind=jpim), parameter version_compatible_min
Definition: rttov_const.F90:86
integer(kind=jpim), parameter nish
real(kind=jprb), parameter ch4max
real(kind=jprb), parameter eqrad
real(kind=jprb), parameter rm
real(kind=jprb), parameter dgmax_agg
real(kind=jprb), parameter d1
integer(kind=jpim), parameter adk_adjoint
real(kind=jprb), parameter dgmin_agg
real(kind=jprb), parameter o3_mixratio_to_ppmv
real(kind=jprb), parameter rttov9_wv1750_25
integer(kind=jpim), parameter sensor_id_po
real(kind=jprb), parameter ctpmax
real(kind=jprb), parameter overcast_albedo1
real(kind=jprb), parameter rttov9_wv2295_25
real(kind=jprb), parameter mco2
real(kind=jprb), parameter clwmax
integer(kind=jpim), parameter errorstatus_fatal
real(kind=jprb), parameter mn2o
real(kind=jprb), parameter ray_scs_d1
real(kind=jprb), parameter rttov9_wv2380_25
real(kind=jprb), parameter speedl
real(kind=jprb), parameter rgc
integer(kind=jpim), parameter adk_k
real(kind=jprb), parameter iwcmin_agg
real(kind=jprb), parameter ray_scs_b1
real(kind=jprb), parameter qmin
real(kind=jprb), parameter ray_scs_b2
real(kind=jprb), parameter pmin
character(len=9), dimension(nplatforms), parameter platform_name
real(kind=jprb), parameter wmax
real(kind=jprb), parameter iwcmax_agg
real(kind=jprb), parameter ray_scs_a2
real(kind=jprb), parameter pi
real(kind=jprb), parameter max_optical_depth
real(kind=jprb), parameter htop