[Dart-dev] DART/branches Revision: 11757

dart at ucar.edu dart at ucar.edu
Thu Jun 22 16:22:14 MDT 2017


hendric at ucar.edu
2017-06-22 16:22:13 -0600 (Thu, 22 Jun 2017)
523

Merging in the branch rma_mmc.  The code can now run with
oned, twod, threed_cartesian, and threed_sphere location
modules.

There is additional code to run model_mod_check with
the single_file option (all members in one file) in
the namelist 'single_file'.

restart_file_list has been renamed to input_state_files
and similarly for output_state_files.  

Moved model_mod_check to the programs directory and updated
the html and all model's path_names and nmls to be consistent 
with the location of model_mod_check.f90.




Index: DART/branches/rma_trunk
===================================================================
--- DART/branches/rma_trunk	2017-06-21 23:54:17 UTC (rev 11756)
+++ DART/branches/rma_trunk	2017-06-22 22:22:13 UTC (rev 11757)

Property changes on: DART/branches/rma_trunk
___________________________________________________________________
Modified: svn:mergeinfo
## -14,6 +14,7 ##
 /DART/branches/rma_fixed_filenames:10708-10901
 /DART/branches/rma_kinds_to_state_structure:8958-9437
 /DART/branches/rma_kinds_to_state_strucutre:8909-8957
+/DART/branches/rma_mmc:11731-11755
 /DART/branches/rma_model_mod_check:8965-9178
 /DART/branches/rma_mpas_fold_mean_fwd:9348-9458
 /DART/branches/rma_mpas_get_state_meta_data:8871-8890
\ No newline at end of property
Modified: DART/branches/rma_trunk/assimilation_code/location/column/location_mod.f90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/location/column/location_mod.f90	2017-06-21 23:54:17 UTC (rev 11756)
+++ DART/branches/rma_trunk/assimilation_code/location/column/location_mod.f90	2017-06-22 22:22:13 UTC (rev 11757)
@@ -8,9 +8,10 @@
 
 ! Implements location interfaces for a one dimensional column domain
 
-use      types_mod, only : r8, MISSING_R8, MISSING_I
-use  utilities_mod, only : register_module, error_handler, E_ERR, ascii_file_format, &
-                           nc_check
+use            types_mod, only : i8, r8, MISSING_R8, MISSING_I
+use ensemble_manager_mod, only : ensemble_type
+use        utilities_mod, only : register_module, error_handler, E_ERR, ascii_file_format, &
+                                 nc_check
 
 implicit none
 private

Modified: DART/branches/rma_trunk/assimilation_code/modules/io/dart_time_io_mod.f90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/modules/io/dart_time_io_mod.f90	2017-06-21 23:54:17 UTC (rev 11756)
+++ DART/branches/rma_trunk/assimilation_code/modules/io/dart_time_io_mod.f90	2017-06-22 22:22:13 UTC (rev 11757)
@@ -57,7 +57,6 @@
 real(digits12) :: model_time, time_array(1)
 
 integer, dimension(NF90_MAX_VAR_DIMS) :: dimIDs
-character(len=NF90_MAX_NAME)          :: varname,dimname
 character(len=256) :: file_calendar, dart_calendar
 character(len=256) :: unitstring
 
@@ -163,7 +162,7 @@
       endif
    
       ! This is the start of their calendar
-      base_time = set_date(year, month, day, hour, minute, second)
+      base_time  = set_date(year, month, day, hour, minute, second)
       delta_time = set_time(seconds)
 
       read_model_time = base_time + delta_time
@@ -208,8 +207,7 @@
 real(digits12) :: model_time
 
 integer, dimension(NF90_MAX_VAR_DIMS) :: dimIDs
-character(len=NF90_MAX_NAME)          :: varname,dimname
-character(len=NF90_MAX_NAME)          :: dart_calendar, file_calendar
+character     (len=NF90_MAX_NAME)     :: dart_calendar, file_calendar
 
 ! this is used in many error messages below.  set it here, and
 ! don't reuse string3 here, please.
@@ -227,6 +225,15 @@
    ios = nf90_Redef(ncid)
    call nc_check(ios, "write_model_time", "redef")
 
+   ! check to see if there is a time dimension
+   ios = nf90_inq_dimid(ncid, "time", dimIds(1))
+
+   ! if time dimension does not exist create it
+   if (ios /= NF90_NOERR) then
+      call nc_check(nf90_def_dim(ncid, "time", nf90_unlimited, dimIds(1)), &
+        "write_model_time def_var dimension time")
+   endif
+
    !>@todo NF90_UNLIMITED
    ios = nf90_def_var(ncid, name="time", xtype=nf90_int, varid=VarID)
    call nc_check(ios, "write_model_time", "time def_var")
@@ -295,7 +302,7 @@
 
 ! Since the time variable is known to have only 1 dimension, we know it is the first one.
 
-ios = nf90_inquire_dimension(ncid, dimids(1), len=ntimes)
+ios = nf90_inquire_dimension(ncid, dimIds(1), len=ntimes)
 call nc_check(ios, 'write_model_time', 'inquire_dimension for time dimension')
 
 ! convert time to something that netCDF can store, fractional days

Modified: DART/branches/rma_trunk/assimilation_code/modules/io/io_filenames_mod.f90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/modules/io/io_filenames_mod.f90	2017-06-21 23:54:17 UTC (rev 11756)
+++ DART/branches/rma_trunk/assimilation_code/modules/io/io_filenames_mod.f90	2017-06-22 22:22:13 UTC (rev 11757)
@@ -488,8 +488,8 @@
 
 ! check that the number of domains matches the size of file names provided
 if (get_num_domains() /= size(fnames(:),1)) then


More information about the Dart-dev mailing list