[Dart-dev] DART/branches Revision: 11838
dart at ucar.edu
dart at ucar.edu
Thu Jul 20 13:55:55 MDT 2017
thoar at ucar.edu
2017-07-20 13:55:54 -0600 (Thu, 20 Jul 2017)
236
Bringing the coamps branch up-to-date with respect to the rma_trunk.
Hopefully, this is the last fix for the mergeinfo.
--- Merging r11814 through r11837 into '.':
--- Recording mergeinfo for merge of r11712 through r11837 into '.':
Index: DART/branches/coamps
===================================================================
--- DART/branches/coamps 2017-07-20 17:15:57 UTC (rev 11837)
+++ DART/branches/coamps 2017-07-20 19:55:54 UTC (rev 11838)
Property changes on: DART/branches/coamps
___________________________________________________________________
Modified: svn:mergeinfo
## -32,7 +32,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:11712-11813
+/DART/branches/rma_trunk:11712-11837
/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/coamps/CHANGELOG
===================================================================
--- DART/branches/coamps/CHANGELOG 2017-07-20 17:15:57 UTC (rev 11837)
+++ DART/branches/coamps/CHANGELOG 2017-07-20 19:55:54 UTC (rev 11838)
@@ -476,10 +476,24 @@
in the repository. (Remove it from any private path_names_* files.)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-+ MMM DD 2017 :: next update. Revision:
++ July 18 2017 :: bug fixes, documentation updates. $Revision$
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+- fixed bug in obs_impact_tool when generating the run-time table. specifying
+ a generic quantity resulted in selecting the wrong specific obs types.
+- fixed a bug that would not allow filter to start from a single ensemble member
+ if single_file_in was true.
+
+- updates to HTML documentation especially for types/quantities (replacing kinds)
+
+- updates to input.nml namelists, code comments, and shell scripts where
+ names changed from 'restart' to 'state' for input and output files.
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++ MMMM DD 2017 :: next revision summary. Revision:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
# <next few lines under version control, do not edit>
# $URL$
# $Revision$
Modified: DART/branches/coamps/assimilation_code/modules/io/direct_netcdf_mod.f90
===================================================================
--- DART/branches/coamps/assimilation_code/modules/io/direct_netcdf_mod.f90 2017-07-20 17:15:57 UTC (rev 11837)
+++ DART/branches/coamps/assimilation_code/modules/io/direct_netcdf_mod.f90 2017-07-20 19:55:54 UTC (rev 11838)
@@ -494,7 +494,7 @@
integer :: ens_size, extra_size, time_size, var_size, elm_count, ndims
integer :: my_pe, recv_pe, recv_start, recv_end, start_rank
integer :: start_pos, end_pos, send_start, send_end, start_point
-logical :: do_perturb, is_sender, is_receiver, is_member_copy, is_extra_copy
+logical :: do_perturb, is_sender, is_receiver, is_extra_copy
real(r8), allocatable :: var_block(:)
@@ -545,6 +545,8 @@
! recv_* and send_* are PE's that variables are sent and received
call get_pe_loops(ens_size, recv_start, recv_end, send_start, send_end)
+call check_singlefile_member_info(my_ncid, fname, ens_size, do_perturb)
+
COPY_LOOP: do icopy = 1, ens_size+extra_size
! only SINGLE_IO_TASK_ID reads and distributes data
@@ -553,17 +555,15 @@
! {variable}_priorinf_{mean,sd}
! {variable}_postinf_{mean,sd}
+ if ( file_handle%stage_metadata%io_flag(icopy) /= READ_COPY ) cycle
+
is_extra_copy = (icopy > ens_size)
- is_member_copy = (icopy <= ens_size)
! check that copy infomation is valid
- if ( is_member_copy ) call check_singlefile_member_info(my_ncid, fname, ens_size, do_perturb)
! starting position in the copies array
start_pos = 1
- if ( file_handle%stage_metadata%io_flag(icopy) /= READ_COPY ) cycle
-
VAR_LOOP: do ivar = 1, get_num_variables(domain)
var_size = get_variable_size(domain, ivar)
@@ -2539,11 +2539,17 @@
ret = nf90_inquire_dimension(ncid, MemDimID, len=member_size)
call nc_check(ret, 'check_singlefile_member_info', 'inq_varid member : '//trim(fname))
- !>@todo FIXME : if there is a single file with a member dimension but only one member
- !> it is ok if we are perturbing.
+ ! are there enough members to start from this file? if you're perturbing a single member
+ ! to generate an ensemble it's ok to have 1. otherwise you have to have at least
+ ! 'ens_size' members (more is ok).
+ if (do_pert) then
+ if (member_size < 1) then
More information about the Dart-dev
mailing list