[Dart-dev] DART/branches Revision: 11665

dart at ucar.edu dart at ucar.edu
Fri May 26 08:49:15 MDT 2017


nancy at ucar.edu
2017-05-26 08:49:11 -0600 (Fri, 26 May 2017)
461
fix a serious bug in the fall velocity forward operator.
if the fall speed field is not in the state the test
for a bad istatus from the interpolate call was looking
at the wrong variable and returning ok even if interpolate
had set bad values.

removed p_istatus and pass the real istatus array into
the first call to interpolate().  if any succeed then
return with istatus set correctly.  otherwise continue
down to compute fall velocity in a different way.




Modified: DART/branches/rma_trunk/observations/forward_operators/obs_def_radar_mod.f90
===================================================================
--- DART/branches/rma_trunk/observations/forward_operators/obs_def_radar_mod.f90	2017-05-26 02:14:14 UTC (rev 11664)
+++ DART/branches/rma_trunk/observations/forward_operators/obs_def_radar_mod.f90	2017-05-26 14:49:11 UTC (rev 11665)
@@ -944,7 +944,7 @@
 ! Local vars
 logical, save :: first_time = .true.
 real(r8), dimension(ens_size) :: qr, qg, qs, rho, temp, refl
-integer,  dimension(ens_size) :: qr_istatus, qg_istatus, qs_istatus, rho_istatus, refl_istatus, p_istatus, temp_istatus
+integer,  dimension(ens_size) :: qr_istatus, qg_istatus, qs_istatus, rho_istatus, refl_istatus, temp_istatus
 integer               :: imem
 logical               :: return_now
 ! If the model can return the precipitation fall speed directly, let it do
@@ -958,7 +958,7 @@
 precip_fall_speed(:) = 0.0_r8
 
 call interpolate(state_handle, ens_size, location, QTY_POWER_WEIGHTED_FALL_SPEED, &
-         precip_fall_speed, p_istatus)
+         precip_fall_speed, istatus)
 
 ! If able to get value, QTY_POWER_WEIGHT_FALL_SPEED is the
 ! the state so you can return here.


More information about the Dart-dev mailing list