[Dart-dev] DART/releases Revision: 12938

dart at ucar.edu dart at ucar.edu
Mon Nov 26 16:32:23 MST 2018


nancy at ucar.edu
2018-11-26 16:32:23 -0700 (Mon, 26 Nov 2018)
159
barely updated from the closest_member_tool - hopefully
this is a good place to start for a parallel bounary cell
update program for the regional mpas grids.




Added: DART/releases/Manhattan/models/mpas_atm/update_bc.f90
===================================================================
--- DART/releases/Manhattan/models/mpas_atm/update_bc.f90	                        (rev 0)
+++ DART/releases/Manhattan/models/mpas_atm/update_bc.f90	2018-11-26 23:32:23 UTC (rev 12938)
@@ -0,0 +1,427 @@
+! DART software - Copyright UCAR. This open source software is provided
+! by UCAR, "as is", without charge, subject to all terms of use at
+! http://www.image.ucar.edu/DAReS/DART/DART_download
+!
+! $Id$
+
+!> @mainpage
+!> @{
+!> @brief  this program updates the boundary cells in a regional mpas domain
+!>
+!>
+!>  this program takes a global mpas file (or an initial boundary array?)
+!>  and blends the values in the boundary cells
+!> @}
+!>
+!>
+
+program update_bc
+
+use types_mod,            only : r8, i8, obstypelength, MAX_NUM_DOMS, MAX_FILES
+
+use time_manager_mod,     only : time_type, set_time_missing,               &
+                                 operator(/=), print_time
+ 
+use utilities_mod,        only : register_module, find_namelist_in_file,        &
+                                 error_handler, nmlfileunit, E_MSG, E_ERR,      &
+                                 check_namelist_read, do_nml_file, do_nml_term, &
+                                 open_file, close_file, set_multiple_filename_lists, &
+                                 get_next_filename
+
+use  location_mod,        only : location_type
+
+use  obs_kind_mod,        only : get_num_quantities, get_index_for_quantity, &
+                                 get_name_for_quantity
+
+use  sort_mod,            only : index_sort
+
+use assim_model_mod,      only : static_init_assim_model, get_model_size, &
+                                 get_state_meta_data
+
+use state_vector_io_mod,  only : read_state
+
+use io_filenames_mod,     only : file_info_type, io_filenames_init,        &
+                                 set_io_copy_flag, set_file_metadata,      &
+                                 set_member_file_metadata, file_info_dump, &
+                                 stage_metadata_type, get_stage_metadata,  &
+                                 get_restart_filename, READ_COPY
+
+use state_structure_mod,  only : get_num_domains
+
+use mpi_utilities_mod,    only : initialize_mpi_utilities, task_count, &
+                                 finalize_mpi_utilities, my_task_id,   &
+                                 send_sum_to, sum_across_tasks
+
+use ensemble_manager_mod, only : ensemble_type, init_ensemble_manager, compute_copy_mean, &
+                                 get_my_vars, get_my_num_vars, end_ensemble_manager
+
+implicit none
+
+! version controlled file description for error handling, do not edit
+character(len=256), parameter :: source   = &
+   "$URL$"
+character(len=32 ), parameter :: revision = "$Revision$"
+character(len=128), parameter :: revdate  = "$Date$"
+
+integer               :: iunit, io, ens, i, j, total_j, qtyindex
+integer               :: num_qtys, stype
+integer(i8)           :: ii, model_size
+integer, allocatable  :: index_list(:)
+integer, parameter    :: max_list_len = 500
+character(len=512)    :: msgstring, msgstring1
+logical               :: allqtys, done
+logical, allocatable  :: useqty(:), useindex(:)
+type(location_type)   :: loc
+type(time_type)       :: mean_time, member_time
+type(file_info_type)  :: ens_file_info
+
+
+character(len=64)     :: method_name(1) = (/     &
+   "Original             "  /)
+
+!----------------------------------------------------------------
+! These variables are namelist-controllable.
+!
+integer                        :: ens_size               = 1
+integer                        :: blending_method        = 4
+logical                        :: single_restart_file_in = .false.
+character(len=256)             :: input_restart_file_list(MAX_NUM_DOMS) = ''
+character(len=256)             :: input_restart_files(MAX_FILES)        = '' 
+character(len=256)             :: output_restart_file_list(MAX_NUM_DOMS) = ''
+character(len=256)             :: output_restart_files(MAX_FILES)        = '' 
+character(len=obstypelength)   :: use_only_qtys(max_list_len)           = ''
+
+!----------------------------------------------------------------
+! blending method - currently only 1
+!  1 = see notes


More information about the Dart-dev mailing list