[Dart-dev] DART/branches Revision: 12930

dart at ucar.edu dart at ucar.edu
Thu Nov 15 16:50:08 MST 2018


thoar at ucar.edu
2018-11-15 16:50:08 -0700 (Thu, 15 Nov 2018)
34
Updating to match the rma_trunk.




Index: DART/branches/cesm_clm
===================================================================
--- DART/branches/cesm_clm	2018-11-15 23:42:23 UTC (rev 12929)
+++ DART/branches/cesm_clm	2018-11-15 23:50:08 UTC (rev 12930)

Property changes on: DART/branches/cesm_clm
___________________________________________________________________
Modified: svn:mergeinfo
## -42,7 +42,7 ##
 /DART/branches/rma_sprint:8095-8166
 /DART/branches/rma_state_structure_test_dir:9472-9676
 /DART/branches/rma_state_structure_unit_test:9691-10268
-/DART/branches/rma_trunk:12108-12897
+/DART/branches/rma_trunk:12108-12929
 /DART/branches/rma_trunk_clamping:8786-8801
 /DART/branches/rma_trunk_filename:8011-8157
 /DART/branches/rma_trunk_get_state_fun:8568-8596
Modified: DART/branches/cesm_clm/CHANGELOG
===================================================================
--- DART/branches/cesm_clm/CHANGELOG	2018-11-15 23:42:23 UTC (rev 12929)
+++ DART/branches/cesm_clm/CHANGELOG	2018-11-15 23:50:08 UTC (rev 12930)
@@ -790,7 +790,7 @@
 "convert_all_state_verticals_first = .true.' can also be set.
 
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-+ XXX YY 2018 :: WRF Polar, CICE, obs_diag files             $Revision: 12778$
++ Aug 31 2018 :: WRF Polar, CICE, obs_diag files               Revision: 12807
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
 - fix for WRF's wind direction vectors when using the Polar Stereographic 
@@ -813,15 +813,31 @@
   files to be concatinated along the unlimited dimension more easily.  Also
   conforms to the netCDF convention for coordinate dimensions.
 
-- (ADD MORE CHANGES HERE)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++ Nov 01 2018 :: summary of changes in Manhattan update       $Revision$
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
+- Updated dewpoint equation to avoid dividing by zero given a very unlikely
+  scenario (r12832)
 
+- More efficient implementation of adaptive inflation 
+
+- Removed test files from cice
+
+- Updated the developer_tests to include more cases.
+
+- Updated oned/obs_diag.f90 to support 'obs_seq.out' files.
+
+- Better error and informational messages in various routines.
+
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 + MMM DD YYYY :: summary of changes in Manhattan update   $Revision$
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
 
+- (ADD MORE CHANGES HERE)
 
+
 # <next few lines under version control, do not edit>
 # $URL$
 # $Revision$

Modified: DART/branches/cesm_clm/assimilation_code/modules/assimilation/adaptive_inflate_mod.f90
===================================================================
--- DART/branches/cesm_clm/assimilation_code/modules/assimilation/adaptive_inflate_mod.f90	2018-11-15 23:42:23 UTC (rev 12929)
+++ DART/branches/cesm_clm/assimilation_code/modules/assimilation/adaptive_inflate_mod.f90	2018-11-15 23:50:08 UTC (rev 12930)
@@ -669,45 +669,53 @@
    call linear_bayes(dist_2, sigma_p_2, sigma_o_2, lambda_mean, lambda_sd_2, gamma_corr, &
       new_cov_inflate)
 
-! Bail out to save cost when lower bound is reached on lambda standard deviation
-if(lambda_sd <= sd_lower_bound_in) then
-   new_cov_inflate_sd = lambda_sd
-else
-   ! Compute by forcing a Gaussian fit at one positive SD
-! First compute the new_max value for normalization purposes
-   new_max = compute_new_density(dist_2, sigma_p_2, sigma_o_2, lambda_mean, lambda_sd, &
-                                    gamma_corr, new_cov_inflate)
-
-! Find value at a point one OLD sd above new mean value
+   ! Bail out to save cost when lower bound is reached on lambda standard deviation
+   ! The original test to see if lambda_sd was less than the lower bound
+   ! would sometimes return false because of roundoff error and the computation
+   ! would go through the expensive part of the code when the minimum was
+   ! really reached.  (sd_lower_bound comes from a namelist and precision
+   ! errors may be because of the conversion between ascii, single precision
+   ! and double precision.)  In any case, the test was changed to return if
+   ! the value is within TINY of the limit.
+   if(abs(lambda_sd - sd_lower_bound_in) <= TINY(0.0_r8)) then
+      new_cov_inflate_sd = lambda_sd
+      return
+   else
+      ! Compute by forcing a Gaussian fit at one positive SD
+      ! First compute the new_max value for normalization purposes
+      new_max = compute_new_density(dist_2, sigma_p_2, sigma_o_2, lambda_mean, lambda_sd, &
+                                       gamma_corr, new_cov_inflate)
+   
+      ! Find value at a point one OLD sd above new mean value
       new_1_sd = compute_new_density(dist_2, sigma_p_2, sigma_o_2, lambda_mean, lambda_sd, gamma_corr, &


More information about the Dart-dev mailing list