[Dart-dev] DART/branches Revision: 11032
dart at ucar.edu
dart at ucar.edu
Wed Feb 8 11:37:11 MST 2017
nancy at ucar.edu
2017-02-08 11:37:11 -0700 (Wed, 08 Feb 2017)
129
convert the model_mod to rma, and update the scripts
and path_names files to match. PMO runs fine; i'm still
debugging filter.
Modified: DART/branches/rma_single_file/models/forced_lorenz_96/model_mod.f90
===================================================================
--- DART/branches/rma_single_file/models/forced_lorenz_96/model_mod.f90 2017-02-08 18:24:18 UTC (rev 11031)
+++ DART/branches/rma_single_file/models/forced_lorenz_96/model_mod.f90 2017-02-08 18:37:11 UTC (rev 11032)
@@ -6,18 +6,30 @@
module model_mod
-use types_mod, only : r8
-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_obs
+use types_mod, only : r8, i8, i4
-use utilities_mod, only : register_module, error_handler, E_ERR, E_MSG, nmlfileunit, &
- do_output, find_namelist_in_file, check_namelist_read, &
- do_nml_file, do_nml_term
-
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 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 obs_kind_mod, only : RAW_STATE_VARIABLE
+
+use ensemble_manager_mod, only : ensemble_type
+
+use distributed_state_mod, only : get_state
+
+use state_structure_mod, only : add_domain
+
+use dart_time_io_mod, only : read_model_time, write_model_time
+
implicit none
private
@@ -24,7 +36,6 @@
public :: get_model_size, &
adv_1step, &
get_state_meta_data, &
- model_interpolate, &
get_model_time_step, &
end_model, &
static_init_model, &
@@ -32,8 +43,13 @@
init_conditions, &
nc_write_model_atts, &
nc_write_model_vars, &
- pert_model_state, &
- get_close_maxdist_init, get_close_obs_init, get_close_obs, ens_mean_for_model
+ get_close_maxdist_init, get_close_obs_init, get_close_obs, &
+ model_interpolate, &
+ query_vert_localization_coord, &
+ vert_convert, &
+ pert_model_copies, &
+ read_model_time, &
+ write_model_time
! version controlled file description for error handling, do not edit
character(len=256), parameter :: source = &
@@ -61,7 +77,7 @@
! Define the location of the state variables in module storage
type(location_type), allocatable :: state_loc(:)
type(time_type) :: time_step
-integer :: model_size
+integer(i8) :: model_size
! Adding random noise
type(random_seq_type) :: random
@@ -81,7 +97,7 @@
! the time type for the time stepping (is this general enough for time???)
real(r8) :: x_loc
-integer :: i, iunit, io
+integer :: i, iunit, io, dom_id
! Print module information to log file and stdout.
call register_module(source, revision, revdate)
@@ -117,6 +133,10 @@
! Initialize the random sequence
call init_random_seq(random)
+! Tell the DART I/O routines how large the model data is so they
+! can read/write it.
+dom_id = add_domain(model_size)
+
end subroutine static_init_model
@@ -238,7 +258,7 @@
!
! Returns size of model
More information about the Dart-dev
mailing list