[Dart-dev] DART/branches Revision: 11618
dart at ucar.edu
dart at ucar.edu
Wed May 10 11:43:18 MDT 2017
nancy at ucar.edu
2017-05-10 11:43:16 -0600 (Wed, 10 May 2017)
65
bring in sync with the filter_mod.
this worked in simple tests.
Modified: DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90 2017-05-10 15:37:28 UTC (rev 11617)
+++ DART/branches/rma_trunk/assimilation_code/modules/assimilation/filter_mod.dopplerfold.f90 2017-05-10 17:43:16 UTC (rev 11618)
@@ -47,7 +47,7 @@
all_copies_to_all_vars, allocate_single_copy, allocate_vars, &
get_single_copy, put_single_copy, deallocate_single_copy, &
print_ens_handle
-use adaptive_inflate_mod, only : do_varying_ss_inflate, &
+use adaptive_inflate_mod, only : do_varying_ss_inflate, mean_from_restart, sd_from_restart, &
do_single_ss_inflate, inflate_ens, adaptive_inflate_init, &
adaptive_inflate_type, set_inflation_mean_copy , &
log_inflation_info, set_inflation_sd_copy, &
@@ -76,7 +76,7 @@
use quality_control_mod, only : initialize_qc
-use single_file_io_mod, only : finalize_singlefile_output
+use single_file_io_mod, only : get_num_times_netcdf, write_augmented_state, finalize_singlefile_output
!------------------------------------------------------------------------------
@@ -106,39 +106,45 @@
! inflation restart files
logical :: output_inflation = .false.
+! Identifier for different copies for diagnostic files
+integer, parameter :: MEM_START = 1
+integer, parameter :: MEM_END = 2
+integer, parameter :: ENS_MEAN = 3
+integer, parameter :: ENS_SD = 4
+integer, parameter :: PRIORINF_MEAN = 5
+integer, parameter :: PRIORINF_SD = 6
+integer, parameter :: POSTINF_MEAN = 7
+integer, parameter :: POSTINF_SD = 8
+
+! Number of Stage Copies
+integer, parameter :: NUM_SCOPIES = 8
+
! Ensemble copy numbers
-integer :: ENS_MEM_START = COPY_NOT_PRESENT
-integer :: ENS_MEM_END = COPY_NOT_PRESENT
-integer :: ENS_MEAN_COPY = COPY_NOT_PRESENT
-integer :: ENS_SD_COPY = COPY_NOT_PRESENT
-integer :: PRIOR_INF_COPY = COPY_NOT_PRESENT
-integer :: PRIOR_INF_SD_COPY = COPY_NOT_PRESENT
-integer :: POST_INF_COPY = COPY_NOT_PRESENT
-integer :: POST_INF_SD_COPY = COPY_NOT_PRESENT
-integer :: INPUT_MEAN = COPY_NOT_PRESENT
-integer :: INPUT_SD = COPY_NOT_PRESENT
-integer :: PREASSIM_MEM_START = COPY_NOT_PRESENT
-integer :: PREASSIM_MEM_END = COPY_NOT_PRESENT
-integer :: PREASSIM_MEAN = COPY_NOT_PRESENT
-integer :: PREASSIM_SD = COPY_NOT_PRESENT
-integer :: PREASSIM_PRIORINF_MEAN = COPY_NOT_PRESENT
-integer :: PREASSIM_PRIORINF_SD = COPY_NOT_PRESENT
-integer :: PREASSIM_POSTINF_MEAN = COPY_NOT_PRESENT
-integer :: PREASSIM_POSTINF_SD = COPY_NOT_PRESENT
-integer :: POSTASSIM_MEM_START = COPY_NOT_PRESENT
-integer :: POSTASSIM_MEM_END = COPY_NOT_PRESENT
-integer :: POSTASSIM_MEAN = COPY_NOT_PRESENT
-integer :: POSTASSIM_SD = COPY_NOT_PRESENT
-integer :: POSTASSIM_PRIORINF_MEAN = COPY_NOT_PRESENT
-integer :: POSTASSIM_PRIORINF_SD = COPY_NOT_PRESENT
-integer :: POSTASSIM_POSTINF_MEAN = COPY_NOT_PRESENT
-integer :: POSTASSIM_POSTINF_SD = COPY_NOT_PRESENT
-integer :: SPARE_PRIOR_SPREAD = COPY_NOT_PRESENT
+integer :: ENS_MEM_START = COPY_NOT_PRESENT
+integer :: ENS_MEM_END = COPY_NOT_PRESENT
+integer :: ENS_MEAN_COPY = COPY_NOT_PRESENT
+integer :: ENS_SD_COPY = COPY_NOT_PRESENT
+integer :: PRIOR_INF_COPY = COPY_NOT_PRESENT
+integer :: PRIOR_INF_SD_COPY = COPY_NOT_PRESENT
+integer :: POST_INF_COPY = COPY_NOT_PRESENT
+integer :: POST_INF_SD_COPY = COPY_NOT_PRESENT
+integer :: INPUT_COPIES( NUM_SCOPIES ) = COPY_NOT_PRESENT
+
+integer :: CURRENT_COPIES( NUM_SCOPIES ) = COPY_NOT_PRESENT
+integer :: FORECAST_COPIES( NUM_SCOPIES ) = COPY_NOT_PRESENT
+integer :: PREASSIM_COPIES( NUM_SCOPIES ) = COPY_NOT_PRESENT
+integer :: POSTASSIM_COPIES( NUM_SCOPIES ) = COPY_NOT_PRESENT
+integer :: ANALYSIS_COPIES( NUM_SCOPIES ) = COPY_NOT_PRESENT
+
+integer :: SPARE_PRIOR_SPREAD = COPY_NOT_PRESENT
+
+! Module Global Variables for inflation
logical :: do_prior_inflate = .false.
logical :: do_posterior_inflate = .false.
+type(adaptive_inflate_type) :: prior_inflate, post_inflate
-logical :: has_cycling = .false. ! filter will advance the model
+logical :: has_cycling = .false. ! filter will advance the model
!----------------------------------------------------------------
! Namelist input with default values
@@ -185,10 +191,13 @@
! File options. Single vs. Multiple.
logical :: single_file_in = .false. ! all copies read from 1 file
logical :: single_file_out = .false. ! all copies written to 1 file
-! Stages to write. Valid values include:
More information about the Dart-dev
mailing list