[Dart-dev] DART/branches Revision: 12230

dart at ucar.edu dart at ucar.edu
Wed Dec 20 16:53:10 MST 2017


nancy at ucar.edu
2017-12-20 16:53:08 -0700 (Wed, 20 Dec 2017)
96
change the name of the new namelist var to inf_sd_max_change.
update the filter.html to match.




Modified: DART/branches/enhanced_inflation/assimilation_code/modules/assimilation/adaptive_inflate_mod.f90
===================================================================
--- DART/branches/enhanced_inflation/assimilation_code/modules/assimilation/adaptive_inflate_mod.f90	2017-12-20 16:42:48 UTC (rev 12229)
+++ DART/branches/enhanced_inflation/assimilation_code/modules/assimilation/adaptive_inflate_mod.f90	2017-12-20 23:53:08 UTC (rev 12230)
@@ -55,14 +55,14 @@
 type adaptive_inflate_type
    private
    ! Flavor can be 0:none, 1:obs_inflate, 2:varying_ss_inflate, 3:single_ss_inflate
-   ! Deprecating 1:obs_inflate, there is concerns how the observation space inflation
-   ! is happening. JPH., 4 = RTPS, 5 = enhanced ss, modification of 2
+   !  4 = RTPS, 5 = enhanced ss, modification of 2
+   ! 1:obs_inflate is currently deprecated.
    integer               :: inflation_flavor
    integer               :: inflation_sub_flavor
    logical               :: output_restart = .false.
    logical               :: deterministic
    real(r8)              :: inflate, sd, sd_lower_bound, inf_lower_bound, inf_upper_bound
-   real(r8)              :: sd_size_change
+   real(r8)              :: sd_max_change
    ! Include a random sequence type in case non-deterministic inflation is used
    type(random_seq_type) :: ran_seq
    logical               :: allow_missing_in_clm
@@ -78,7 +78,6 @@
 ! types for updating the inflation
 integer, parameter :: GHA2017 = 1
 integer, parameter :: AND2009 = 2
-integer, parameter :: AND2007 = 3
 
 ! Module storage for writing error messages
 character(len=512) :: msgstring, msgstring2
@@ -191,7 +190,7 @@
 subroutine adaptive_inflate_init(inflate_handle, inf_flavor, mean_from_restart, &
    sd_from_restart, output_inflation, deterministic, & 
    inf_initial, sd_initial, inf_lower_bound, inf_upper_bound, &
-   sd_lower_bound, sd_size_change, ens_handle, missing_ok, label)
+   sd_lower_bound, sd_max_change, ens_handle, missing_ok, label)
 
 type(adaptive_inflate_type), intent(inout) :: inflate_handle
 integer,                     intent(in)    :: inf_flavor
@@ -202,7 +201,7 @@
 real(r8),                    intent(in)    :: inf_initial, sd_initial
 real(r8),                    intent(in)    :: inf_lower_bound, inf_upper_bound
 real(r8),                    intent(in)    :: sd_lower_bound
-real(r8),                    intent(in)    :: sd_size_change
+real(r8),                    intent(in)    :: sd_max_change
 type(ensemble_type),         intent(inout) :: ens_handle
 logical,                     intent(in)    :: missing_ok
 character(len = *),          intent(in)    :: label
@@ -230,7 +229,7 @@
 inflate_handle%inf_lower_bound    = inf_lower_bound
 inflate_handle%inf_upper_bound    = inf_upper_bound
 inflate_handle%sd_lower_bound     = sd_lower_bound
-inflate_handle%sd_size_change     = sd_size_change
+inflate_handle%sd_max_change      = sd_max_change
 inflate_handle%allow_missing_in_clm = missing_ok
 inflate_handle%mean_from_restart  = mean_from_restart
 inflate_handle%sd_from_restart    = sd_from_restart
@@ -238,9 +237,9 @@
 if (trim(label)=='Prior') inflate_handle%prior = .true.
 if (trim(label)=='Posterior') inflate_handle%posterior = .true.
 
-! inf type 5 is a subset of type 2. modify the type here.
+! inf type 5 is a subset of type 2. modify the main type here.
 if (inf_flavor == 5) then
-   inflate_handle%inflation_flavor   = 2
+   inflate_handle%inflation_flavor = 2
 endif
 
 ! Cannot support non-determistic inflation and an inf_lower_bound < 1
@@ -358,7 +357,7 @@
 !> Make sure the combination of inflation options are legal
 
 subroutine validate_inflate_options(inf_flavor, inf_damping, inf_initial_from_restart, &
-                                    inf_sd_initial_from_restart, inf_deterministic, inf_sd_size_change,  &
+                                    inf_sd_initial_from_restart, inf_deterministic, inf_sd_max_change,  &
                                     do_prior_inflate, do_posterior_inflate, output_inflation)
 
 integer,  intent(in)    :: inf_flavor(2)
@@ -366,7 +365,7 @@
 logical,  intent(inout) :: inf_initial_from_restart(2)
 logical,  intent(inout) :: inf_sd_initial_from_restart(2)
 logical,  intent(inout) :: inf_deterministic(2)
-real(r8), intent(in)    :: inf_sd_size_change(2)
+real(r8), intent(in)    :: inf_sd_max_change(2)
 logical,  intent(out)   :: do_prior_inflate
 logical,  intent(out)   :: do_posterior_inflate
 logical,  intent(out)   :: output_inflation 
@@ -428,14 +427,14 @@
    inf_damping(2) = 1.0_r8  ! no damping
 endif
 
-! enhanced inflation checks
+! enhanced inflation checks - this is before we set the subflavor in the structure.
 if (inf_flavor(1) == 5 .or. inf_flavor(2) == 5) then
-   ! check inf_sd_size_change() for valid range
+   ! check inf_sd_max_change() for valid range
    do i=1, 2
-      if (inf_sd_size_change(i) < 1.0_r8 .or. inf_sd_size_change(i) > 2.0_r8) then
-         write(msgstring, *) 'inf_sd_size_change=', inf_sd_size_change(i), ' Must be 1.0 <= X <= 2.0'
+      if (inf_sd_max_change(i) < 1.0_r8 .or. inf_sd_max_change(i) > 2.0_r8) then
+         write(msgstring, *) 'inf_sd_max_change=', inf_sd_max_change(i), ' Must be 1.0 <= X <= 2.0'


More information about the Dart-dev mailing list