[Dart-dev] [10619] DART/trunk/models/mpas_atm/model_mod.f90: don' t allow the interpolation to return negative moisture values.

nancy at ucar.edu nancy at ucar.edu
Mon Aug 15 15:33:59 MDT 2016


Revision: 10619
Author:   nancy
Date:     2016-08-15 15:33:59 -0600 (Mon, 15 Aug 2016)
Log Message:
-----------
don't allow the interpolation to return negative moisture values.
make a floor at 0.0

Modified Paths:
--------------
    DART/trunk/models/mpas_atm/model_mod.f90

-------------- next part --------------
Modified: DART/trunk/models/mpas_atm/model_mod.f90
===================================================================
--- DART/trunk/models/mpas_atm/model_mod.f90	2016-08-15 15:42:38 UTC (rev 10618)
+++ DART/trunk/models/mpas_atm/model_mod.f90	2016-08-15 21:33:59 UTC (rev 10619)
@@ -1095,6 +1095,14 @@
    endif
    interp_val = query_location(location_tmp, 'VLOC')
 
+else if (obs_kind == KIND_VAPOR_MIXING_RATIO) then
+   tvars(1) = get_progvar_index_from_kind(KIND_VAPOR_MIXING_RATIO)
+   call compute_scalar_with_barycentric(x, location, 1, tvars, values, istatus)
+   if (istatus /= 0) goto 100
+
+   ! Don't accept negative moisture
+   interp_val = max(values(1),0.0_r8)
+
 else if (obs_kind == KIND_SPECIFIC_HUMIDITY) then
    ! compute vapor pressure, then: sh = vp / (1.0 + vp)
    tvars(1) = get_progvar_index_from_kind(KIND_VAPOR_MIXING_RATIO)


More information about the Dart-dev mailing list