[Dart-dev] DART/branches Revision: 11543

dart at ucar.edu dart at ucar.edu
Thu Apr 27 11:40:42 MDT 2017


nancy at ucar.edu
2017-04-27 11:40:42 -0600 (Thu, 27 Apr 2017)
200
update the forced L96 model mod and quickbuild.
add option for integer global attribute.
settle on 'delta_t' as the global variable name.
half the low order models used deltat and half
used delta_t.




Modified: DART/branches/model_mod_changes/assimilation_code/modules/utilities/netcdf_utilities_mod.f90
===================================================================
--- DART/branches/model_mod_changes/assimilation_code/modules/utilities/netcdf_utilities_mod.f90	2017-04-27 17:16:14 UTC (rev 11542)
+++ DART/branches/model_mod_changes/assimilation_code/modules/utilities/netcdf_utilities_mod.f90	2017-04-27 17:40:42 UTC (rev 11543)
@@ -29,6 +29,7 @@
 
 interface nc_add_global_attribute
    module procedure nc_add_global_char_att
+   module procedure nc_add_global_int_att
    module procedure nc_add_global_real_att
    module procedure nc_add_global_real_array_att
 end interface
@@ -98,6 +99,22 @@
 
 !--------------------------------------------------------------------
 
+subroutine nc_add_global_int_att(ncid, name, val, context)
+
+integer,          intent(in) :: ncid
+character(len=*), intent(in) :: name
+integer,          intent(in) :: val
+character(len=*), intent(in), optional :: context
+
+integer :: ret
+
+ret = nf90_put_att(ncid, NF90_GLOBAL, name, val)
+call nc_check(ret, 'put_global_char_att', 'adding the global attribute: '//trim(name))
+
+end subroutine nc_add_global_int_att
+
+!--------------------------------------------------------------------
+
 subroutine nc_add_global_real_att(ncid, name, val, context)
 
 integer,          intent(in) :: ncid

Modified: DART/branches/model_mod_changes/models/forced_lorenz_96/model_mod.f90
===================================================================
--- DART/branches/model_mod_changes/models/forced_lorenz_96/model_mod.f90	2017-04-27 17:16:14 UTC (rev 11542)
+++ DART/branches/model_mod_changes/models/forced_lorenz_96/model_mod.f90	2017-04-27 17:40:42 UTC (rev 11543)
@@ -11,15 +11,22 @@
 use   random_seq_mod, only : random_seq_type, init_random_seq, random_gaussian
 use time_manager_mod,      only : time_type, set_time
 
-use location_mod,          only : location_type, set_location, get_location,  &
-                                  LocationDims, LocationName, LocationLName,  &
-                                  get_close_maxdist_init, get_close_obs_init, &
-                                  get_close_type, loc_get_close_obs => get_close_obs
+use     location_mod,      only : location_type, set_location, get_location, &
+                                  get_close_obs, get_close_state, &
+                                  convert_vertical_obs, convert_vertical_state
 
 use utilities_mod,         only : register_module, do_nml_file, do_nml_term,    &
                                   nmlfileunit, find_namelist_in_file, E_ERR,    &
                                   check_namelist_read, nc_check, error_handler
 
+use netcdf_utilities_mod, only : nc_add_global_attribute, nc_sync, &
+                                 nc_add_global_creation_time, nc_redef, nc_enddef
+
+use location_io_mod,      only :  nc_write_location_atts, nc_get_location_varids, &
+                                  nc_write_location
+
+use default_model_mod,     only : end_model, pert_model_copies, nc_write_model_vars
+
 use         obs_kind_mod,  only : RAW_STATE_VARIABLE
 
 use ensemble_manager_mod,  only : ensemble_type
@@ -33,24 +40,32 @@
 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, &
-          get_model_time_step, &
-          end_model, &
+          get_state_meta_data,  &
+          model_interpolate, &
+          shortest_time_between_assimilations, &
           static_init_model, &
+          init_conditions,    &
           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, &
-          get_close_maxdist_init, get_close_obs_init, get_close_obs, &
-          model_interpolate, &
-          query_vert_localization_coord, &
-          vert_convert, &
-          pert_model_copies, &
+          get_close_obs, &
+          get_close_state, &


More information about the Dart-dev mailing list