40 real(
double),
intent(in) :: elev
41 real(
double),
intent(in),
optional :: press0
45 if(
present(press0)) press00 = press0
66 real(
double),
intent(in) :: press, temp
90 real,
intent(in) :: press, temp
110 real(
double),
intent(in) :: speed
113 speed_kmh = ceiling(abs(speed)*3.6d0)
114 select case(speed_kmh)
118 if(abs(speed)*3.6d0.le.5.5d0)
then
162 real(
double),
intent(in) :: tempc, rh
167 gam = tempfac * tempc/(temp0+tempc) + log(rh)
196 real(
double),
intent(in) :: tempc
200 1.89345d-4 * tempc**3 + 1.09606d-6 * tempc**4 + 1.83396d-8 * tempc**5
Provides kinds and related constants/routines.
integer, parameter double
Double-precision float. Precision = 15, range = 307.
Procedures to deal with weather.
elemental real(double) function water_vapor_saturated_density(tempc)
Compute the saturated water-vapor density in air for a given temperature.
elemental real(double) function dew_point(tempc, rh)
Compute the dew point from the temperature and relative humidity.
elemental real(double) function air_pressure(elev, press0)
Compute the air pressure for a given elevation and pressure at sea level.
elemental real function air_density_sp(press, temp)
Compute the air density for the given temperature and pressure, single-precision wrapper for air_dens...
elemental real(double) function air_density(press, temp)
Compute the air density for the given temperature and pressure.
elemental integer function beaufort(speed)
Derive wind "force" on Beaufort scale from wind speed in m/s.