[Dart-dev] [3773] DART/trunk/models/wrf/regression/CONUS-V2: moved the files specific to the continental us test case into

nancy at ucar.edu nancy at ucar.edu
Mon Feb 9 16:32:25 MST 2009


An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/dart-dev/attachments/20090209/bf541461/attachment.html 
-------------- next part --------------
Copied: DART/trunk/models/wrf/regression/CONUS-V2/README (from rev 3771, DART/trunk/models/wrf/regression/README)
===================================================================
--- DART/trunk/models/wrf/regression/CONUS-V2/README	                        (rev 0)
+++ DART/trunk/models/wrf/regression/CONUS-V2/README	2009-02-09 23:32:25 UTC (rev 3773)
@@ -0,0 +1,55 @@
+This is a WRF 2.2.1 regression test case, which can be used to test an initial setup as well.
+
+The domain is CONUS (the continental United States), 50 km resolution. 
+
+The observation files are the standard prepbufr NCEP observations, from 2007/04/26.
+
+The initial condition and boundary files are compatible with WRF version 2.2.1.
+The DART model_mod works fine with WRF 3.0 as well, and if anyone would like to
+contribute 3.0 compatible ic and boundary files, we'd be happy to take them.
+
+There are enough files to run with up to 50 ensemble members.
+
+The smaller files are here in this directory.
+
+The large data files (observations, initial conditions and boundary files) 
+are on the DART web server, at this http address:
+
+http://www.image.ucar.edu/pub/DART/WRF/regression/
+
+
+Input files you need to run the test:
+
+obs_seq.tar - 4 observation files      
+
+wrfinput_d01_148403_0.tar - wrf input files for 50 ensemble members
+
+wrfbdy_148403_21600.tar - wrf boundary condition files 
+wrfbdy_148403_43200.tar
+wrfbdy_148403_64800.tar
+wrfbdy_148404_0.tar
+
+input.nml - DART Fortran namelist
+namelist.input - WRF Fortran namelist
+
+
+Executables you will need to build from the DART/WRF distribution:
+
+dart_tf_wrf - translates from WRF netcdf files to DART restart, and back
+filter - the main DART assimilation program
+wakeup_filter - only needed if you must run WRF in parallel mode
+
+
+Shell scripts that come with the DART/WRF distribution:
+
+runme_filter - shell script that starts the job
+advance_model.csh - shell script that advances the WRF model
+
+
+Files which are there to validate your results:
+
+Posterior_Diag.nc
+Prior_Diag.nc
+regression_plots.tar.gz
+
+

Copied: DART/trunk/models/wrf/regression/CONUS-V2/input.nml (from rev 3771, DART/trunk/models/wrf/regression/input.nml)
===================================================================
--- DART/trunk/models/wrf/regression/CONUS-V2/input.nml	                        (rev 0)
+++ DART/trunk/models/wrf/regression/CONUS-V2/input.nml	2009-02-09 23:32:25 UTC (rev 3773)
@@ -0,0 +1,326 @@
+&filter_nml
+   async                    =  2,
+   adv_ens_command          = "./advance_model.csh",
+   ens_size                 =  50,
+   start_from_restart       = .true.,
+   output_restart           = .true.,
+   obs_sequence_in_name     = "obs_seq.processed",
+   obs_sequence_out_name    = "obs_seq.final",
+   restart_in_file_name     = "filter_ic_old",
+   restart_out_file_name    = "filter_ic_new", 
+   init_time_days           = -1,
+   init_time_seconds        = -1,
+   first_obs_days           = -1,
+   first_obs_seconds        = -1,
+   last_obs_days            = -1,
+   last_obs_seconds         = -1,
+   num_output_state_members = 2,
+   num_output_obs_members   = 0,
+   output_interval          = 1,
+   num_groups               = 1,
+   input_qc_threshold       = 4.0,
+   outlier_threshold        = 4.0,
+   output_forward_op_errors = .false.,
+   output_timestamps        = .false.,
+   output_inflation         = .true.,
+
+   inf_flavor                  = 2,                      0,
+   inf_initial_from_restart    = .false.,                .false.,
+   inf_sd_initial_from_restart = .false.,                .false.,
+   inf_output_restart          = .true.,                 .true.,
+   inf_deterministic           = .true.,                 .true.,
+   inf_in_file_name            = 'prior_inf_ic_old',     'post_inf_ic_old',
+   inf_out_file_name           = 'prior_inf_ic_new',     'post_inf_ic_new',
+   inf_diag_file_name          = 'prior_inf_diag',       'post_inf_diag',
+   inf_initial                 = 1.00,                   1.00,
+   inf_sd_initial              = 0.60,                   0.50,
+   inf_damping                 = 0.95,                   1.00, 
+   inf_lower_bound             = 0.50,                   1.0,
+   inf_upper_bound             = 1000000.0,              1000000.0,
+   inf_sd_lower_bound          = 0.60,                   0.10
+/
+
+&ensemble_manager_nml
+   single_restart_file_in  = .false.,
+   single_restart_file_out = .false. /
+
+&smoother_nml
+   num_lags              = 0
+   start_from_restart    = .false.
+   output_restart        = .false.
+   restart_in_file_name  = 'smoother_ics'
+   restart_out_file_name = 'smoother_restart' /
+
+&assim_tools_nml
+   filter_kind                     = 1,
+   cutoff                          = 0.16,
+   sort_obs_inc                    = .false.,
+   spread_restoration              = .false.,
+   sampling_error_correction       = .false.,         
+   print_every_nth_obs             = 1000,
+   adaptive_localization_threshold = -1 /             
+
+&cov_cutoff_nml
+   select_localization = 1  /
+
+&assim_model_nml
+   write_binary_restart_files = .true.  /
+
+&location_nml
+   horiz_dist_only = .false.,
+   vert_normalization_pressure = 187500.0
+   vert_normalization_height = 5000000.0,
+   vert_normalization_level = 2666.7,
+   approximate_distance = .false.,
+   nlon = 141,
+   nlat = 72  /
+
+# Notes for model_nml:
+# (1) vert_localization_coord must be one of:
+#     1 = model level
+#     2 = pressure
+#     3 = height
+
+&model_nml
+   output_state_vector = .false.,
+   num_moist_vars = 3,
+   num_domains = 1,
+   calendar_type = 3,
+   surf_obs = .true.,
+   soil_data = .false.,
+   h_diab = .false.,
+   assimilation_period_seconds = 21600,
+   adv_mod_command = "./wrf.exe",
+   vert_localization_coord = 2,
+   center_search_half_length = 400000.0,
+   center_spline_grid_scale = 10  /
+
+#  adv_mod_command = "mpirun.lsf -np 4 wrf.exe",
+
+&utilities_nml
+   TERMLEVEL = 1,
+   logfilename = 'dart_log.out',
+   module_details = .false.  /
+
+&reg_factor_nml
+   select_regression = 1,
+   input_reg_file = "time_mean_reg",
+   save_reg_diagnostics = .false.,
+   reg_diagnostics_file = 'reg_diagnostics'  /
+
+&obs_sequence_nml
+   write_binary_obs_sequence = .false.  /
+
+&preprocess_nml
+    input_obs_kind_mod_file = '../../../obs_kind/DEFAULT_obs_kind_mod.F90',
+   output_obs_kind_mod_file = '../../../obs_kind/obs_kind_mod.f90',
+     input_obs_def_mod_file = '../../../obs_def/DEFAULT_obs_def_mod.F90',
+    output_obs_def_mod_file = '../../../obs_def/obs_def_mod.f90',
+   input_files              = '../../../obs_def/obs_def_reanalysis_bufr_mod.f90',
+                              '../../../obs_def/obs_def_altimeter_mod.f90',
+                              '../../../obs_def/obs_def_radar_mod.f90',
+                              '../../../obs_def/obs_def_metar_mod.f90',
+                              '../../../obs_def/obs_def_dew_point_mod.f90',
+                              '../../../obs_def/obs_def_gps_mod.f90',
+                              '../../../obs_def/obs_def_gts_mod.f90',
+                              '../../../obs_def/obs_def_QuikSCAT_mod.f90',
+                              '../../../obs_def/obs_def_vortex_mod.f90'  /
+
+#   assimilate_these_obs_types = 'LAND_SFC_PRESSURE'
+
+&obs_kind_nml
+   assimilate_these_obs_types   = 'RADIOSONDE_TEMPERATURE',
+                                'RADIOSONDE_U_WIND_COMPONENT',
+                                'RADIOSONDE_V_WIND_COMPONENT',
+                                'RADIOSONDE_SURFACE_ALTIMETER',
+                                'RADIOSONDE_SPECIFIC_HUMIDITY',
+                                'LAND_SFC_U_WIND_COMPONENT',
+                                'LAND_SFC_V_WIND_COMPONENT',
+                                'LAND_SFC_TEMPERATURE',
+                                'LAND_SFC_SPECIFIC_HUMIDITY',
+                                'MARINE_SFC_U_WIND_COMPONENT',
+                                'MARINE_SFC_V_WIND_COMPONENT',
+                                'MARINE_SFC_TEMPERATURE',
+                                'MARINE_SFC_SPECIFIC_HUMIDITY' /
+
+# Notes for obs_def_radar_mod_nml:
+# (1) Reflectivity limit can be applied both to observations or state (forward operator).
+# (2) Default lowest_reflectivity values DART will use (if apply_reflectivity_limit = .true.)
+#     is missing_r8. If you want to use the default, delete the line of respective
+#     lowest_reflectivity.
+# (3) As it is not clear how to assimilate Z (for now), "convert_to_dbz" is reset to .true.
+#     even if you set it to .false. here in the namelist.
+
+&obs_def_radar_mod_nml
+   convert_to_dbz             =  .true. ,
+   dbz_threshold              =   0.001 ,
+   apply_ref_limit_to_obs     = .false. ,
+   reflectivity_limit_obs     =     0.0 ,
+   lowest_reflectivity_obs    =     0.0 ,
+   apply_ref_limit_to_state   = .false. ,
+   reflectivity_limit_state   =     0.0 ,
+   lowest_reflectivity_state  =     0.0 /
+
+# The times in the namelist for the obs_diag program are vectors
+# that follow the following sequence:
+# year   month   day   hour   minute   second
+# max_num_bins can be used to specify a fixed number of bins,
+# in which case last_bin_center should be safely in the future.
+#
+# Acceptable latitudes range from  [-90,  90]
+# Acceptable longitudes range from [  0, 360]
+
+&obs_diag_nml
+   obs_sequence_name = 'obs_seq.final',
+   first_bin_center =  2007, 4, 26, 00, 0, 0 ,
+   last_bin_center  =  2007, 4, 27, 00, 0, 0 ,
+   bin_separation   =     0, 0, 0, 6, 0, 0 ,
+   bin_width        =     0, 0, 0, 6, 0, 0 ,
+   time_to_skip     =     0, 0, 0, 0, 0, 0 ,
+   max_num_bins  = 1000,
+   Nregions   = 1,
+   rat_cri    = 5000.0,
+   lonlim1    = 0.0,
+   lonlim2    = 360.0,
+   latlim1    = -89.0,
+   latlim2    =  89.0, 
+   reg_names  = 'Full Domain',
+   print_mismatched_locs = .false.,
+   print_obs_locations = .false.,
+   verbose = .false.  /
+
+&merge_obs_seq_nml
+   num_input_files = 2,
+   filename_seq    = 'obs_seq.new_1', 'obs_seq.new_2'
+   filename_out    = 'obs_seq.final'   /
+
+&restart_file_utility_nml
+   input_file_name              = "restart_file_input",
+   output_file_name             = "restart_file_output",
+   ens_size                     = 1,
+   single_restart_file_in       = .true.,
+   single_restart_file_out      = .true.,
+   write_binary_restart_files   = .true.,
+   overwrite_data_time          = .false.,
+   new_data_days                = -1,
+   new_data_secs                = -1,
+   input_is_model_advance_file  = .false.,
+   output_is_model_advance_file = .true.,
+   overwrite_advance_time       = .true.,
+   new_advance_days             = _RESTART_DAYS_,
+   new_advance_secs             = _RESTART_SECONDS_
+/
+&obs_sequence_tool_nml
+   num_input_files    = 2,
+   filename_seq       = 'obs_seq2007042606','obs_seq2007042612',
+   filename_out       = 'obs_seq.processed',
+   print_only         =  .false.,
+   first_obs_days     = -1,
+   first_obs_seconds  = -1,
+   last_obs_days      = -1,
+   last_obs_seconds   = -1,
+   min_lat            =  -90.0,
+   max_lat            =   90.0,
+   min_lon            =    0.0,
+   max_lon            =  360.0,
+   gregorian_cal      = .true.
+/
+
+! these have no defaults (or the defaults are missing_r8 which
+! cannot be represented in a namelist).  here are examples
+! of their use:
+!
+! keep only observations with a DART QC of 0:
+!   qc_metadata        = 'Dart quality control',
+!   min_qc             = 0,
+!   max_qc             = 0,
+!
+! keep only radiosonde temp obs between 250 and 300 K:
+!   copy_metadata      = 'NCEP BUFR observation',
+!   copy_type          = 'RADIOSONDE_TEMPERATURE', 
+!   min_copy           = 250.0,
+!   max_copy           = 300.0,
+!
+! keep only the U and V radiosonde winds:
+!   obs_types          = 'RADIOSONDE_U_WIND_COMPONENT', 
+!                        'RADIOSONDE_V_WIND_COMPONENT',
+!   keep_types         = .true.,
+!
+! remove the U and V radiosonde winds:
+!   obs_types          = 'RADIOSONDE_U_WIND_COMPONENT', 
+!                        'RADIOSONDE_V_WIND_COMPONENT',
+!   keep_types         = .false.,
+!
+
+&obs_sequence_nml
+   write_binary_obs_sequence = .false.  /
+
+&obs_kind_nml
+   assimilate_these_obs_types = 'RADIOSONDE_TEMPERATURE',
+                                'RADIOSONDE_U_WIND_COMPONENT',
+                                'RADIOSONDE_V_WIND_COMPONENT',
+   evaluate_these_obs_types = 'RADIOSONDE_SURFACE_PRESSURE'  /
+
+&cov_cutoff_nml
+   select_localization = 1  /
+
+&assim_model_nml
+   write_binary_restart_files = .true.  /
+
+# Notes for model_nml:
+# (1) vert_localization_coord must be one of:
+#     1 = model level
+#     2 = pressure
+#     3 = height
+# (2) see below for explanations of polar, periodic_x,
+#     periodic_y, and scm
+
+&model_nml
+   output_state_vector         = .false.,
+   num_moist_vars              = 3,
+   num_domains                 = 1,
+   calendar_type               = 3,
+   surf_obs                    = .true.,
+   soil_data                   = .true.,
+   h_diab                      = .false.,
+   assimilation_period_seconds = 21600,
+   adv_mod_command             = './wrf.exe',
+   allow_obs_below_vol         = .false.,
+   vert_localization_coord     = 3,
+   center_search_half_length   = 500000.,
+   center_spline_grid_scale    = 10,
+   polar                       = .false.,
+   periodic_x                  = .false.,
+   periodic_y                  = .false.,
+   scm                         = .false.  /
+
+# polar and periodic_x are used in global wrf.  if polar is true, the 
+# grid interpolation routines will wrap over the north & south poles.  
+# if periodic_x is true, when the east and west edges of the grid are
+# reached the interpolation will wrap.  note this is a separate issue
+# from regional models which cross the GMT line; those grids are marked
+# as having a negative offset and do not need to wrap; this flag controls
+# what happens when the edges of the grid are reached.
+
+# the scm flag is used for the 'single column model' version of WRF.
+# it needs the periodic_x and periodic_y flags set to true, in which
+# case the X and Y directions are periodic; no collapsing of the grid
+# into a single location like the 3d-spherical polar flag implies.
+
+&location_nml
+   horiz_dist_only             = .true.,
+   vert_normalization_pressure = 100000.0, 
+   vert_normalization_height   = 10000.0,
+   vert_normalization_level    = 20.0,
+   approximate_distance        = .false.,
+   nlon                        = 71,
+   nlat                        = 36,
+   output_box_info             = .false.  /
+
+&utilities_nml
+   TERMLEVEL = 1,
+   logfilename = 'dart_log.out',
+   nmlfilename = 'dart_log.nml',
+   module_details = .true.
+/
+

Copied: DART/trunk/models/wrf/regression/CONUS-V2/namelist.input (from rev 3771, DART/trunk/models/wrf/regression/namelist.input)
===================================================================
--- DART/trunk/models/wrf/regression/CONUS-V2/namelist.input	                        (rev 0)
+++ DART/trunk/models/wrf/regression/CONUS-V2/namelist.input	2009-02-09 23:32:25 UTC (rev 3773)
@@ -0,0 +1,107 @@
+ &time_control
+ run_days                            = 0,
+ run_hours                           = _FCST_,
+ run_minutes                         = 0,
+ run_seconds                         = 0,
+ start_year                          = 1*_START_YEAR_,
+ start_month                         = 1*_START_MONTH_,
+ start_day                           = 1*_START_DAY_,
+ start_hour                          = 1*_START_HOUR_,
+ start_minute                        = 1*00,
+ start_second                        = 1*00,
+ end_year                            = 1*_END_YEAR_,
+ end_month                           = 1*_END_MONTH_,
+ end_day                             = 1*_END_DAY_,
+ end_hour                            = 1*_END_HOUR_,
+ end_minute                          = 1*00, 
+ end_second                          = 1*00,
+ interval_seconds                    = 21600
+ input_from_file                     = .true., .true., .false.,
+ history_interval                    = _HISTORY_INTERVAL_1_, _HISTORY_INTERVAL_2_, 60,
+ frames_per_outfile                  = 1, 1, 1,
+ restart                             = .false.,
+ restart_interval                    = 8000,
+ io_form_history                     = 2,
+ io_form_restart                     = 2,
+ io_form_input                       = 2,
+ io_form_boundary                    = 2,
+ debug_level                         = 0
+ /
+
+ &domains
+ time_step                           = 200,
+ time_step_fract_num                 = 0,
+ time_step_fract_den                 = 1,
+ max_dom                             = 1,
+ s_we                                = 1, 1, 1
+ e_we                                = 120, 103, 241,
+ s_sn                                = 1, 1, 1,
+ e_sn                                = 90, 88, 241,
+ s_vert                              = 1, 1, 1,
+ e_vert                              = 30, 30, 35,
+ dx                                  = 50000, 45000, 4000,
+ dy                                  = 50000, 45000, 4000,
+ grid_id                             = 1, 2, 3,
+ parent_id                           = 0, 1, 2,
+ i_parent_start                      = 0, 117, 61,
+ j_parent_start                      = 0, 28, 61,
+ parent_grid_ratio                   = 1, 3, 3,
+ parent_time_step_ratio              = 1, 3, 3,
+ feedback                            = 1,
+ smooth_option                       = 0
+ /
+
+ &physics
+ mp_physics                          = 3, 3, 4,
+ ra_lw_physics                       = 1, 1, 1,
+ ra_sw_physics                       = 1, 1, 1,
+ radt                                = 30,15,15,
+ sf_sfclay_physics                   = 1, 1, 1,
+ sf_surface_physics                  = 1, 1, 1,
+ bl_pbl_physics                      = 1, 1, 1,
+ bldt                                = 0, 0, 0,
+ cu_physics                          = 1, 1, 0,
+ cudt                                = 0, 5, 0,
+ isfflx                              = 1,
+ ifsnow                              = 0,
+ icloud                              = 1,
+ mp_zero_out                         = 2,
+ mp_zero_out_thresh                  = 1.e-8,
+ surface_input_source                = 1,
+ num_soil_layers                     = 5,
+ maxiens                             = 1,
+ maxens                              = 3,
+ maxens2                             = 3,
+ maxens3                             = 16,
+ ensdim                              = 144,
+ /
+
+ &fdda
+ /
+
+ &dynamics
+ w_damping                           = 1,
+ diff_opt                            = 1,
+ km_opt                              = 4,
+ damp_opt                            = 0,
+ zdamp                               = 5000.,  5000.,  5000.,
+ dampcoef                            = 0.2,    0.2,   0.2,
+ non_hydrostatic                     = .true., .true., .true.,
+ pd_moist                            = .false., .false., .false.,
+ /
+
+ &bdy_control
+ spec_bdy_width                      = 5,
+ spec_zone                           = 1,
+ relax_zone                          = 4,
+ specified                           = .true., .false., .false.,
+ nested                              = .false., .true., .true.,
+ /
+
+ &grib2
+ /
+
+ &namelist_quilt
+ nio_tasks_per_group = 0,
+ nio_groups = 1,
+ /


More information about the Dart-dev mailing list