[Dart-dev] DART/branches Revision: 10830
dart at ucar.edu
dart at ucar.edu
Thu Dec 22 10:54:54 MST 2016
hendric at ucar.edu
2016-12-22 10:54:54 -0700 (Thu, 22 Dec 2016)
157
fixed pmo to work with new io conventions. defining
an explicit set filename routine for single restart
files so that pmo does not require a restart list.
Modified: DART/branches/rma_fixed_filenames/ensemble_manager/ensemble_manager_mod.f90
===================================================================
--- DART/branches/rma_fixed_filenames/ensemble_manager/ensemble_manager_mod.f90 2016-12-21 23:26:09 UTC (rev 10829)
+++ DART/branches/rma_fixed_filenames/ensemble_manager/ensemble_manager_mod.f90 2016-12-22 17:54:54 UTC (rev 10830)
@@ -115,7 +115,7 @@
! namelist with default values
! Complain if unneeded transposes are done
-logical :: flag_unneeded_transposes = .false.
+! logical :: flag_unneeded_transposes = .false.
! Communication configuration:
! 1 = usual default, 2 - 4 are valid and depend on the machine, ensemble count, and task count
integer :: communication_configuration = 1
@@ -126,7 +126,7 @@
namelist / ensemble_manager_nml / communication_configuration, &
layout, tasks_per_node, &
- debug, flag_unneeded_transposes
+ debug!, flag_unneeded_transposes
!-----------------------------------------------------------------
Modified: DART/branches/rma_fixed_filenames/io/io_filenames_mod.f90
===================================================================
--- DART/branches/rma_fixed_filenames/io/io_filenames_mod.f90 2016-12-21 23:26:09 UTC (rev 10829)
+++ DART/branches/rma_fixed_filenames/io/io_filenames_mod.f90 2016-12-22 17:54:54 UTC (rev 10830)
@@ -59,6 +59,11 @@
module procedure set_io_copy_flag_single
end interface
+interface set_file_metadata
+ module procedure set_explicit_file_metadata
+ module procedure set_stage_file_metadata
+end interface
+
private
! File_info_type initialization and assertions.
@@ -369,9 +374,42 @@
!-------------------------------------------------------
!> Write file name and description
-subroutine set_file_metadata(file_info, copy_number, stage, base_name, desc, offset)
+subroutine set_explicit_file_metadata(file_info, cnum, fname, desc)
! EXAMPLE: to construct a file name of 'input_mean_d01.nc'
+! cnum is ensemble copy number and is not used in the file name
+! stage_name is 'input'
+! base_name is 'mean'
+! desc is 'prior ensemble mean'
+
+type(file_info_type), intent(inout) :: file_info
+integer, intent(in) :: cnum
+character(len=*), intent(in) :: fname
+character(len=*), intent(in) :: desc
+
+character(len=256) :: string1
+character(len=32) :: stage_name
+character(len=32) :: dom_str
+integer :: idom, my_copy
+
+if (cnum <= 0) return
+
+! Assuming a single domain if setting a file explicitly
+file_info%stage_metadata%my_copy_number(cnum) = cnum
+file_info%stage_metadata%filenames(cnum,1) = trim(fname)
+file_info%stage_metadata%file_description(cnum,1) = trim(desc)
+
+file_info%stage_metadata%initialized = .true.
+
+end subroutine set_explicit_file_metadata
+
+
+!-------------------------------------------------------
+!> Write file name and description
+
+subroutine set_stage_file_metadata(file_info, copy_number, stage, base_name, desc, offset)
+
+! EXAMPLE: to construct a file name of 'input_mean_d01.nc'
! copy_number is ensemble copy number and is not used in the file name
! stage_name is 'input'
! base_name is 'mean'
@@ -403,9 +441,6 @@
stage_name = trim(file_info%root_name)
endif
-!#! write(*,'(3A,I4,2A)') 'STAGE_NAME = ', trim(stage_name), ', copy number [', my_copy, &
-!#! '] basename = ', trim(base_name)
-
if (my_copy <= 0) return
file_info%stage_metadata%my_copy_number(my_copy) = my_copy
@@ -429,7 +464,7 @@
file_info%stage_metadata%initialized = .true.
-end subroutine set_file_metadata
+end subroutine set_stage_file_metadata
More information about the Dart-dev
mailing list