[Dart-dev] DART/branches Revision: 11479
dart at ucar.edu
dart at ucar.edu
Thu Apr 13 15:20:31 MDT 2017
hendric at ucar.edu
2017-04-13 15:20:31 -0600 (Thu, 13 Apr 2017)
164
fixed writting out input_{mean,sd}.nc when writting all stages
at the end. before nothing would be output if you were
trying to write multiple files at the end.
Modified: DART/branches/rma_output_files/assimilation_code/modules/assimilation/filter_mod.f90
===================================================================
--- DART/branches/rma_output_files/assimilation_code/modules/assimilation/filter_mod.f90 2017-04-13 19:36:56 UTC (rev 11478)
+++ DART/branches/rma_output_files/assimilation_code/modules/assimilation/filter_mod.f90 2017-04-13 21:20:31 UTC (rev 11479)
@@ -70,7 +70,7 @@
set_member_file_metadata, &
set_io_copy_flag, check_file_info_variable_shape, &
query_copy_present, COPY_NOT_PRESENT, &
- READ_COPY, WRITE_COPY, READ_WRITE_COPY, file_info_dump
+ READ_COPY, WRITE_COPY, READ_WRITE_COPY
use forward_operator_mod, only : get_obs_ens_distrib_state
@@ -487,12 +487,6 @@
file_info_postassim, file_info_analysis, &
file_info_output)
-call file_info_dump(file_info_input, 'file_info_input')
-call file_info_dump(file_info_mean_sd, 'file_info_mean_sd')
-call file_info_dump(file_info_forecast, 'file_info_forecast')
-call file_info_dump(file_info_preassim, 'file_info_preassim')
-call file_info_dump(file_info_postassim, 'file_info_postassim')
-
call check_file_info_variable_shape(file_info_output, state_ens_handle)
call set_inflation_mean_copy( prior_inflate, PRIOR_INF_COPY )
@@ -1053,8 +1047,9 @@
call trace_message('Before writing all state restart files at end')
call timestamp_message('Before writing all state restart files at end')
- file_info_all = combine_file_info( (/file_info_input, file_info_mean_sd, file_info_forecast, file_info_preassim, &
- file_info_postassim, file_info_analysis, file_info_output/) )
+ file_info_all = combine_file_info( (/file_info_input, file_info_mean_sd, file_info_forecast, &
+ file_info_preassim, file_info_postassim, file_info_analysis, &
+ file_info_output/) )
call write_state(state_ens_handle, file_info_all)
@@ -1956,17 +1951,20 @@
if( output_sd ) then
- if (query_copy_present( INPUT_COPIES(ENS_SD)) ) &
+ if (query_copy_present( INPUT_COPIES(ENS_SD)) ) then
ens_handle%copies( INPUT_COPIES(ENS_SD), :) = ens_handle%copies(ENS_SD_COPY, :)
+ endif
if ( do_prior_inflate .and. sd_from_restart(prior_inflate) ) then
- if (query_copy_present( INPUT_COPIES(PRIORINF_SD)) ) &
+ if (query_copy_present( INPUT_COPIES(PRIORINF_SD)) ) then
ens_handle%copies( INPUT_COPIES(PRIORINF_SD), :) = ens_handle%copies(PRIOR_INF_SD_COPY, :)
+ endif
endif
if ( do_posterior_inflate .and. sd_from_restart(post_inflate) ) then
- if (query_copy_present( INPUT_COPIES(POSTINF_SD)) ) &
+ if (query_copy_present( INPUT_COPIES(POSTINF_SD)) ) then
ens_handle%copies( INPUT_COPIES(POSTINF_SD), :) = ens_handle%copies(POST_INF_SD_COPY, :)
+ endif
endif
endif
@@ -1995,7 +1993,7 @@
ens_handle%copies( STAGE_COPIES(PRIORINF_MEAN), :) = ens_handle%copies(PRIOR_INF_COPY, :)
if (query_copy_present( STAGE_COPIES(PRIORINF_SD)) ) &
- ens_handle%copies( STAGE_COPIES(PRIORINF_SD), :) = ens_handle%copies(PRIOR_INF_SD_COPY, :)
+ ens_handle%copies( STAGE_COPIES(PRIORINF_SD), :) = ens_handle%copies(PRIOR_INF_SD_COPY, :)
if (query_copy_present( STAGE_COPIES(POSTINF_MEAN)) ) &
ens_handle%copies( STAGE_COPIES(POSTINF_MEAN), :) = ens_handle%copies(POST_INF_COPY, :)
@@ -2111,9 +2109,6 @@
endif
endif
- CURRENT_COPIES = (/ ENS_MEM_START, ENS_MEM_END, ENS_MEAN_COPY, ENS_SD_COPY, &
- PRIOR_INF_COPY, PRIOR_INF_SD_COPY, POST_INF_COPY, POST_INF_SD_COPY /)
-
FORECAST_COPIES = (/ ENS_MEM_START, ENS_MEM_END, ENS_MEAN_COPY, ENS_SD_COPY, &
PRIOR_INF_COPY, PRIOR_INF_SD_COPY, POST_INF_COPY, POST_INF_SD_COPY /)
@@ -2128,6 +2123,9 @@
endif
+CURRENT_COPIES = (/ ENS_MEM_START, ENS_MEM_END, ENS_MEAN_COPY, ENS_SD_COPY, &
+ PRIOR_INF_COPY, PRIOR_INF_SD_COPY, POST_INF_COPY, POST_INF_SD_COPY /)
+
! CSS If Whitaker/Hamill (2012) relaxation-to-prior-spread (rpts) inflation (inf_flavor = 4)
! then we need an extra copy to hold (save) the prior ensemble spread
! ENS_SD_COPY will be overwritten with the posterior spread before
@@ -2343,7 +2341,7 @@
call set_filename_info(file_info_input, 'input', ens_size, CURRENT_COPIES )
! Output Files
-call set_filename_info(file_info_mean_sd, 'input', 0, INPUT_COPIES )
+call set_filename_info(file_info_mean_sd, 'input', 0, INPUT_COPIES )
call set_filename_info(file_info_forecast, 'forecast', num_output_state_members, FORECAST_COPIES )
call set_filename_info(file_info_preassim, 'preassim', num_output_state_members, PREASSIM_COPIES )
call set_filename_info(file_info_postassim,'postassim', num_output_state_members, POSTASSIM_COPIES )
@@ -2355,7 +2353,7 @@
More information about the Dart-dev
mailing list