[Dart-dev] DART/branches Revision: 12090

dart at ucar.edu dart at ucar.edu
Fri Nov 10 11:51:12 MST 2017


hendric at ucar.edu
2017-11-10 11:51:09 -0700 (Fri, 10 Nov 2017)
59
convert_state_obs is mostly complete.  needs some testing




Modified: DART/branches/recam/models/cam-fv/model_mod.f90
===================================================================
--- DART/branches/recam/models/cam-fv/model_mod.f90	2017-11-10 17:06:46 UTC (rev 12089)
+++ DART/branches/recam/models/cam-fv/model_mod.f90	2017-11-10 18:51:09 UTC (rev 12090)
@@ -17,7 +17,12 @@
 
 use             types_mod
 use      time_manager_mod
-use          location_mod
+use          location_mod, only : location_type, set_vertical, set_location, &
+                                  get_location,get_close_obs, get_close_state, & 
+                                  query_location, &
+                                  VERTISUNDEF, VERTISSURFACE, VERTISLEVEL, &
+                                  VERTISPRESSURE, VERTISHEIGHT, &
+                                  VERTISSCALEHEIGHT
 use         utilities_mod
 use          obs_kind_mod
 use     mpi_utilities_mod
@@ -37,8 +42,7 @@
 use       location_io_mod
 use        quad_utils_mod
 use     default_model_mod,  only : adv_1step, init_time, init_conditions, &
-                                   nc_write_model_vars, pert_model_copies, &
-                                   convert_vertical_obs, convert_vertical_state
+                                   nc_write_model_vars, pert_model_copies
 
 implicit none
 private
@@ -64,7 +68,7 @@
           init_time,                     &
           init_conditions,               & 
           convert_vertical_obs,          & ! todo
-          convert_vertical_state,        & ! todo
+          convert_vertical_state,        & ! doing
           get_close_obs,                 & ! todo
           get_close_state                  ! todo
 
@@ -334,8 +338,8 @@
 !>
 !> 
 
-subroutine get_values_from_qty(state_handle, ens_size, qty, lon_index, lat_index, lev_index, vals, my_status)
-type(ensemble_type), intent(in) :: state_handle
+subroutine get_values_from_qty(ens_handle, ens_size, qty, lon_index, lat_index, lev_index, vals, my_status)
+type(ensemble_type), intent(in) :: ens_handle
 integer,             intent(in) :: ens_size
 integer,             intent(in) :: qty
 integer,             intent(in) :: lon_index
@@ -349,7 +353,7 @@
 
 varid      = get_varid_from_kind(domain_id, qty)
 state_indx = get_dart_vector_index(lon_index, lat_index, lev_index, domain_id, varid)
-vals(:)    = get_state(state_indx, state_handle)
+vals(:)    = get_state(state_indx, ens_handle)
 
 if (varid < 0) my_status = 12
 
@@ -360,9 +364,9 @@
 !>
 !> 
 
-subroutine get_values_from_varid(state_handle, ens_size, lon_index, lat_index, lev_index, &
+subroutine get_values_from_varid(ens_handle, ens_size, lon_index, lat_index, lev_index, &
                        varid, vals, my_status)
-type(ensemble_type), intent(in)  :: state_handle
+type(ensemble_type), intent(in)  :: ens_handle
 integer,  intent(in)  :: ens_size
 integer,  intent(in)  :: lon_index
 integer,  intent(in)  :: lat_index
@@ -378,7 +382,7 @@
 !>@todo FIXME find unique level indices here (see new wrf code)
 
 state_indx = get_dart_vector_index(lon_index, lat_index, lev_index(1), domain_id, varid)
-vals       = get_state(state_indx, state_handle)
+vals       = get_state(state_indx, ens_handle)
 
 my_status(:) = 0
 
@@ -760,9 +764,9 @@
 !>
 !> 
 
-subroutine find_vertical_levels(state_handle, ens_size, lon_index, lat_index, vert_val, &
+subroutine find_vertical_levels(ens_handle, ens_size, lon_index, lat_index, vert_val, &
                                 which_vert, obs_qty, bot_levs, top_levs, vert_fracts, my_status)
-type(ensemble_type), intent(in)  :: state_handle
+type(ensemble_type), intent(in)  :: ens_handle
 integer,             intent(in)  :: ens_size
 integer,             intent(in)  :: lon_index 
 integer,             intent(in)  :: lat_index
@@ -799,16 +803,20 @@
    case(VERTISPRESSURE)
       ! construct a pressure column here and find the model levels
       ! that enclose this value
-      call get_values_from_qty(state_handle, ens_size, QTY_SURFACE_PRESSURE, &
-                               lon_index, lat_index, level_one, surf_pressure, status1)
+      call get_values_from_qty(ens_handle, ens_size, QTY_SURFACE_PRESSURE, &
+                               lon_index, lat_index, level_one, &
+                               surf_pressure, status1)
 
       !>@todo FIXME: should we figure out now or later? how many unique levels we have?


More information about the Dart-dev mailing list