[Dart-dev] DART/branches Revision: 11880

dart at ucar.edu dart at ucar.edu
Fri Aug 4 15:27:38 MDT 2017


nancy at ucar.edu
2017-08-04 15:27:38 -0600 (Fri, 04 Aug 2017)
145
do the minor conversion work of making the ikeda model
compatible with manhattan.  this was contributed by
greg lawson while he was at caltech.




Modified: DART/branches/rma_trunk/models/ikeda/model_mod.f90
===================================================================
--- DART/branches/rma_trunk/models/ikeda/model_mod.f90	2017-08-04 21:07:07 UTC (rev 11879)
+++ DART/branches/rma_trunk/models/ikeda/model_mod.f90	2017-08-04 21:27:38 UTC (rev 11880)
@@ -4,51 +4,71 @@
 !
 ! $Id$
 
+!> Ikeda model interfaces to DART
+
 module model_mod
 
-! This is a template showing the interfaces required for a model to be compliant
-! with the DART data assimilation infrastructure. The public interfaces listed
-! must all be supported with the argument lists as indicated. Many of the interfaces
-! are not required for minimal implementation (see the discussion of each
-! interface and look for NULL INTERFACE). 
+! Original implementation by W. Greg Lawson, Caltech, Wednesday 14 March 2007
+! Updated for the Manhattan release, 2017
 
-! THIS IS BEING MODIFIED FROM THE TEMPLATE TO ENABLE USE OF THE IKEDA SYSTEM
-! WGL, Caltech, Wednesday 14 March 2007
-! I'm sure much can be cleaned-up here as far as comments -- really this is just
-!   an adaptation of the lorenz_63 model_mod.f90 for a new simple system.
+use        types_mod,      only : r8, i8, i4
 
-! Modules that are absolutely required for use are listed
-use        types_mod, only : r8, MISSING_R8
-use time_manager_mod, only : time_type, set_time
-use     location_mod, only : location_type,      get_close_maxdist_init, &
-                             get_close_obs_init, get_close_obs, set_location, &
-                             get_location, &
-                             LocationDims, LocationName, LocationLName
 use    utilities_mod, only : register_module, error_handler, E_ERR, E_MSG, &
-                             do_output, nmlfileunit, &
-                             find_namelist_in_file, check_namelist_read, &
-                             do_nml_file, do_nml_term
+                                  nmlfileunit, do_output, find_namelist_in_file, &
+                                  check_namelist_read, do_nml_file, do_nml_term
 
+use netcdf_utilities_mod, only : nc_add_global_attribute, nc_sync, &
+                                 nc_add_global_creation_time, nc_redef, nc_enddef
 
+use time_manager_mod,      only : time_type, set_time
+
+use distributed_state_mod, only : get_state
+
+use state_structure_mod,   only : add_domain
+
+use     location_mod,      only : location_type, set_location, get_location, &
+                                  get_close_obs, get_close_state, &
+                                  convert_vertical_obs, convert_vertical_state
+
+use location_io_mod,      only :  nc_write_location_atts, nc_get_location_varids, &
+                                  nc_write_location
+
+use         obs_kind_mod,  only : QTY_STATE_VARIABLE
+
+use ensemble_manager_mod,  only : ensemble_type
+
+use dart_time_io_mod,      only : read_model_time, write_model_time
+
+use default_model_mod,     only : end_model, pert_model_copies, nc_write_model_vars, &
+                                  init_time
+
 implicit none
 private
 
+! these routines must be public and you cannot change the
+! arguments because they will be called *from* other DART code.
+
+!> required routines with code in this module
 public :: get_model_size,         &
-          adv_1step,              &
           get_state_meta_data,    &
           model_interpolate,      &
-          get_model_time_step,    &
-          end_model,              &
+          shortest_time_between_assimilations, &
           static_init_model,      &
-          init_time,              &
           init_conditions,        &
-          nc_write_model_atts,    &
+          adv_1step, &
+          nc_write_model_atts
+
+!> required routines where code is in other modules
+public :: pert_model_copies, &
           nc_write_model_vars,    &
-          pert_model_state,       &
-          get_close_maxdist_init, &
-          get_close_obs_init,     &
+          init_time, &
           get_close_obs,          &
-          ens_mean_for_model
+          get_close_state, &
+          end_model, &
+          convert_vertical_obs, &
+          convert_vertical_state, &
+          read_model_time, &
+          write_model_time


More information about the Dart-dev mailing list