3 use iso_c_binding,
only : c_int, c_float, c_double, c_bool
13 real (c_double),
parameter ::
degc_per_degf = 0.55555555555555555555556_c_double
20 real (c_float),
intent(inout) :: potential_snowmelt
21 real (c_float),
intent(in) :: tmin
22 real (c_float),
intent(in) :: tmax
23 logical ( c_bool),
intent(in) :: imperial_units
25 if ( imperial_units )
then
34 if ( ( ( tmin + tmax ) / 2.0_c_double ) >
freezing_f )
then
40 potential_snowmelt = 0.0_c_float
48 if ( ( ( tmin + tmax ) / 2.0_c_double ) >
freezing_c )
then
54 potential_snowmelt = 0.0_c_float
elemental subroutine, public snowmelt_original_calculate(potential_snowmelt, tmin, tmax, imperial_units)
real(c_double), parameter degc_per_degf
real(c_double), parameter melt_index
real(c_double), parameter freezing_c
real(c_double), parameter freezing_f
real(c_double), parameter mm_per_inch