PartMC  2.3.0
constants.F90
Go to the documentation of this file.
1 ! Copyright (C) 2005-2009, 2012 Nicole Riemer and Matthew West
2 ! Licensed under the GNU General Public License version 2 or (at your
3 ! option) any later version. See the file COPYING for details.
4 
5 !> \file
6 !> The pmc_constants module.
7 
8 !> Physical constants.
10 
11  !> Kind of a double precision real number.
12  integer, parameter :: dp = kind(0.d0)
13  !> Kind of a double precision complex number.
14  integer, parameter :: dc = dp
15 
16  !> Physical constants.
17  !!
18  !! These are all absolute constants. Environment parameters that in
19  !! principle could change should go in scenario.f90.
20  !!
21  !! To access a constant in a subroutine you should <tt>use
22  !! pmc_constants</tt> and then the constant value is accessed with
23  !! \c const%%pi or similar. Note that the type is called \c const_t
24  !! (with a trailing _t) but the single saved variable to access them
25  !! is just called \c const.
26  type const_t
27  !> Pi.
28  real(kind=dp) :: pi = 3.14159265358979323846d0
29  !> Boltzmann constant (J K^{-1}).
30  real(kind=dp) :: boltzmann = 1.3806505d-23
31  !> Avogadro's number (mole^{-1}).
32  real(kind=dp) :: avagadro = 6.02214179d23
33  !> Universal gas constant (J mole^{-1} K^{-1}).
34  real(kind=dp) :: univ_gas_const = 8.314472d0
35  !> Accomodation coefficient (have also used 0.045).
36  real(kind=dp) :: accom_coeff = 1d0
37 
38  !> Equilibrium water vapor pressure at 273 K (Pa).
39  real(kind=dp) :: water_eq_vap_press = 611d0
40  !> Freezing point of water (K).
41  real(kind=dp) :: water_freeze_temp = 273.15d0
42  !> Surface energy of water (J m^{-2}).
43  real(kind=dp) :: water_surf_eng = 0.073d0
44  !> Latent heat of water (J kg^{-1}).
45  real(kind=dp) :: water_latent_heat = 2.272d6
46  !> Specific heat of air (J kg^{-1} K^{-1}).
47  real(kind=dp) :: air_spec_heat = 1005d0
48  !> Molecular weight of water (kg mole^{-1}).
49  real(kind=dp) :: water_molec_weight = 18d-3
50  !> Density of water (kg m^{-3}).
51  real(kind=dp) :: water_density = 1d3
52 
53  !> Molecular weight of air (kg mole^{-1}).
54  real(kind=dp) :: air_molec_weight = 2.89644d-2
55  !> Atmospheric standard sea level pressure (Pa).
56  real(kind=dp) :: air_std_press = 101325d0
57  !> Dynamic viscosity of air (kg m^{-1} s^{-1}).
58  real(kind=dp) :: air_dyn_visc = 1.78d-5
59  end type const_t
60 
61  !> Fixed variable for accessing the constant's values.
62  !!
63  !! To access a constant in a subroutine you should <tt>use
64  !! pmc_constants</tt> and then the constant value is accessed with
65  !! \c const%%pi or similar. Note that the type is called \c const_t
66  !! (with a trailing _t) but the single saved variable to access them
67  !! is just called \c const.
68  type(const_t), save :: const
69 
70 end module pmc_constants
Physical constants.
Definition: constants.F90:26
Physical constants.
Definition: constants.F90:9