source: palm/trunk/UTIL/inifor/src/inifor_defs.f90 @ 3719

Last change on this file since 3719 was 3716, checked in by eckhard, 6 years ago

inifor: bugfix: removed dependency on soilmoisture input files; added netcdf preprocessor flag

  • Property svn:keywords set to Id
File size: 5.9 KB
Line 
1!> @file src/inifor_defs.f90
2!------------------------------------------------------------------------------!
3! This file is part of the PALM model system.
4!
5! PALM is free software: you can redistribute it and/or modify it under the
6! terms of the GNU General Public License as published by the Free Software
7! Foundation, either version 3 of the License, or (at your option) any later
8! version.
9!
10! PALM is distributed in the hope that it will be useful, but WITHOUT ANY
11! WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12! A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
13!
14! You should have received a copy of the GNU General Public License along with
15! PALM. If not, see <http://www.gnu.org/licenses/>.
16!
17! Copyright 2017-2018 Leibniz Universitaet Hannover
18! Copyright 2017-2018 Deutscher Wetterdienst Offenbach
19!------------------------------------------------------------------------------!
20!
21! Current revisions:
22! -----------------
23!
24!
25! Former revisions:
26! -----------------
27! $Id: inifor_defs.f90 3716 2019-02-05 17:02:38Z kanani $
28! Bumped version number
29!
30!
31! 3618 2018-12-10 13:25:22Z eckhard
32! Prefixed module with inifor_
33!
34!
35! 3613 2018-12-07 18:20:37Z eckhard
36! Bumped version number
37!
38!
39! 3557 2018-11-22 16:01:22Z eckhard
40! Updated documentation
41!
42!
43! 3537 2018-11-20 10:53:14Z eckhard
44! Bumped version number
45!
46!
47! 3534 2018-11-19 15:35:16Z raasch
48! NEW_LINE intrinsic replaced by ACHAR to avoid compile time error
49!
50! 3456 2018-10-30 14:29:54Z eckhard
51! Bumped version number
52!
53!
54! 3447 2018-10-29 15:52:54Z eckhard
55! Renamed source files for compatibilty with PALM build system
56!
57!
58! 3395 2018-10-22 17:32:49Z eckhard
59! New parameters for computation of geostrophic winds
60! Bumped INIFOR version number
61!
62!
63! 3183 2018-07-27 14:25:55Z suehring
64! Updated defaults for soil extrapolation steps and nudging time-scale
65! Improved handling of the start date string
66! Added gas constant for water vapor
67! Bumped INIFOR version number
68!
69!
70! 3182 2018-07-27 13:36:03Z suehring
71! Initial revision
72!
73!
74!
75! Authors:
76! --------
77!> @author Eckhard Kadasch (Deutscher Wetterdienst, Offenbach)
78!
79! Description:
80! ------------
81!> The defs module provides global constants used in INIFOR.
82!------------------------------------------------------------------------------!
83#if defined ( __netcdf )
84 MODULE inifor_defs
85 
86 IMPLICIT NONE
87
88!
89!-- Parameters for type definitions
90 INTEGER, PARAMETER  ::  dp    = 8   !< double precision (8 bytes = 64 bits)
91 INTEGER, PARAMETER  ::  sp    = 4   !< single precision (4 bytes = 32 bits)
92 INTEGER, PARAMETER  ::  hp    = 2   !< half precision (2 bytes = 16 bits)
93 INTEGER, PARAMETER  ::  PATH  = 140 !< length of file path strings
94 INTEGER, PARAMETER  ::  LNAME = 150 !< length of long name strings
95 INTEGER, PARAMETER  ::  SNAME = 40  !< length of short name strings
96 INTEGER, PARAMETER  ::  DATE  = 10  !< length of date strings
97
98!
99!-- Trigonomentry
100 REAL(dp), PARAMETER ::  PI = 3.14159265358979323846264338_dp !< Ratio of a circle's circumference to its diamter [-]
101 REAL(dp), PARAMETER ::  TO_RADIANS = PI / 180.0_dp           !< Conversion factor from degrees to radiant [-]
102 REAL(dp), PARAMETER ::  TO_DEGREES = 180.0_dp / PI           !< Conversion factor from radians to degrees [-]
103
104!
105!-- COSMO-DE parameters
106 INTEGER, PARAMETER  ::  WATER_ID = 9                !< Integer corresponding to the water soil type in COSMO-DE [-]
107 REAL(dp), PARAMETER ::  EARTH_RADIUS = 6371229.0_dp !< Earth radius used in COSMO-DE [m]
108 REAL(dp), PARAMETER ::  P_SL = 1e5_dp               !< Reference pressure for computation of COSMO-DE's basic state pressure [Pa]
109 REAL(dp), PARAMETER ::  T_SL = 288.15_dp            !< Reference temperature for computation of COSMO-DE's basic state pressure [K]
110 REAL(dp), PARAMETER ::  BETA = 42.0_dp              !< logarithmic lapse rate, dT / d ln(p), for computation of COSMO-DE's basic
111                                                     !< state pressure [K]
112 REAL(dp), PARAMETER ::  RD   = 287.05_dp            !< specific gas constant of dry air, used in computation of COSMO-DE's basic
113                                                     !< state [J/kg/K]
114 REAL(dp), PARAMETER ::  RV   = 461.51_dp            !< specific gas constant of water vapor [J/kg/K]
115 REAL(dp), PARAMETER ::  G    = 9.80665_dp           !< acceleration of Earth's gravity, used in computation of COSMO-DE's basic
116                                                     !< state [m/s/s]
117 REAL(dp), PARAMETER ::  RHO_L = 1e3_dp              !< density of liquid water, used to convert W_SO from [kg/m^2] to [m^3/m^3],
118                                                     !< in [kg/m^3]
119 REAL(dp), PARAMETER ::  HECTO = 100_dp              !< unit conversion factor from hPa to Pa
120
121!
122!-- PALM-4U parameters
123 REAL(dp), PARAMETER ::  OMEGA   = 7.29e-5_dp !< angular velocity of Earth's rotation [s^-1]
124 REAL(dp), PARAMETER ::  P_REF   = 1e5_dp     !< Reference pressure for potential temperature [Pa]
125 REAL(dp), PARAMETER ::  RD_PALM = 287.0_dp   !< specific gas constant of dry air, used in computation of PALM-4U's potential temperature [J/kg/K]
126 REAL(dp), PARAMETER ::  CP_PALM = 1005.0_dp  !< heat capacity of dry air at constant pressure, used in computation of PALM-4U's potential temperature [J/kg/K]
127
128!
129!-- INIFOR parameters
130 INTEGER, PARAMETER          ::  FILL_ITERATIONS = 5          !< Number of iterations for extrapolating soil data into COSMO-DE
131                                                              !< water cells [-]
132 INTEGER, PARAMETER          ::  FORCING_STEP = 1             !< Number of hours between forcing time steps [h]
133 REAL(dp), PARAMETER         ::  NUDGING_TAU = 21600.0_dp     !< Nudging relaxation time scale [s]
134 CHARACTER(LEN=*), PARAMETER ::  VERSION = '1.4.5'            !< INIFOR version number
135 CHARACTER(LEN=*), PARAMETER ::  COPYRIGHT = 'Copyright 2017-2018 Leibniz Universitaet Hannover' // &
136     ACHAR( 10 ) // ' Copyright 2017-2018 Deutscher Wetterdienst Offenbach' !< Copyright notice
137
138 END MODULE inifor_defs
139#endif
Note: See TracBrowser for help on using the repository browser.