melt_m_per_yr_factor Function

public pure function melt_m_per_yr_factor() result(f)

The ISOMIP+ melt-rate conversion, kg m-2 s-1 → m yr-1 of ice-equivalent freshwater: f = SECONDS_PER_YEAR / rho_fw.

Asay-Davis et al. (2016), GMD 9, 2471–2497 §3.3. With rho_fw = 1000 kg/m^3 and a 365-day year, f = 31 536 000 / 1000 = 31 536 m yr-1 per kg m-2 s-1, i.e. a melt flux of 1e-3 kg/m^2/s is 31.536 m/yr — hand-checkable, and the test checks it by hand.

A function rather than a parameter so the test can assert the CONVERSION rather than re-typing the same two constants and asserting its own arithmetic.

Arguments

None

Return Value real(kind=wp)


Called by

proc~~melt_m_per_yr_factor~~CalledByGraph proc~melt_m_per_yr_factor melt_m_per_yr_factor proc~fill_melt_m_per_yr fill_melt_m_per_yr proc~fill_melt_m_per_yr->proc~melt_m_per_yr_factor

Source Code

   pure function melt_m_per_yr_factor() result(f)
      !! The ISOMIP+ melt-rate conversion, `kg m-2 s-1` → `m yr-1` of
      !! ice-equivalent freshwater: `f = SECONDS_PER_YEAR / rho_fw`.
      !!
      !! Asay-Davis et al. (2016), *GMD* **9**, 2471–2497 §3.3.  With
      !! `rho_fw = 1000 kg/m^3` and a 365-day year,
      !! `f = 31 536 000 / 1000 = 31 536 m yr-1 per kg m-2 s-1`, i.e. a
      !! melt flux of 1e-3 kg/m^2/s is 31.536 m/yr — hand-checkable, and
      !! the test checks it by hand.
      !!
      !! A function rather than a parameter so the test can assert the
      !! CONVERSION rather than re-typing the same two constants and
      !! asserting its own arithmetic.
      real(wp) :: f
      f = SECONDS_PER_YEAR/RHO_FRESHWATER_ISOMIP
   end function melt_m_per_yr_factor