From f417afc17f1361f346f12278dfff82462738f9b0 Mon Sep 17 00:00:00 2001 From: danholdaway Date: Wed, 30 Oct 2024 10:46:06 -0400 Subject: [PATCH] Move test base YAMLs from jcb to client --- .../gdas-atmosphere-templates.yaml | 136 ++++++++++++++++++ .../gdas-marine-templates.yaml | 111 ++++++++++++++ 2 files changed, 247 insertions(+) create mode 100644 test/client_integration/gdas-atmosphere-templates.yaml create mode 100644 test/client_integration/gdas-marine-templates.yaml diff --git a/test/client_integration/gdas-atmosphere-templates.yaml b/test/client_integration/gdas-atmosphere-templates.yaml new file mode 100644 index 0000000..bea2b27 --- /dev/null +++ b/test/client_integration/gdas-atmosphere-templates.yaml @@ -0,0 +1,136 @@ +# This part is for testing only. Normally this would just show algorithm: +# ----------------------------------------------------------------------------------- +supported_algorithms: +- 3dvar +- hofx3d +- hofx4d +- local_ensemble_da +# Local algorithms +- fv3jedi_fv3inc_lgetkf +- fv3jedi_fv3inc_variational + +# This is overwritten in the testing but allows command line test of jcb +algorithm: fv3jedi_fv3inc_lgetkf + +# Search path for model and obs for JCB (relative for the submodule, or can be absolute) +# -------------------------------------------------------------------------------------- +app_path_algorithm: gdas/algorithm/atmosphere +app_path_model: gdas/model/atmosphere +app_path_observations: gdas/observations/atmosphere +app_path_observation_chronicle: gdas/observation_chronicle/atmosphere + + +# Places where we deviate from the generic file name of a yaml +# ------------------------------------------------------------ +final_increment_file: atmosphere_final_increment_gaussian +output_ensemble_increments_file: atmosphere_output_ensemble_increments_gaussian +model_file: atmosphere_model_pseudo +initial_condition_file: atmosphere_background +background_error_file: atmosphere_background_error_hybrid_gsibec_bump + + +# Global analysis things +# ---------------------- +window_begin: '2024-02-01T00:00:00Z' +window_length: PT6H +bound_to_include: begin +minimizer: DRPCG +final_diagnostics_departures: anlmob +analysis_variables: [ua,va,t,ps,sphum,ice_wat,liq_wat,o3mr] +number_of_outer_loops: 2 + + +# Model things +# ------------ +atmosphere_layout_x: 2 +atmosphere_layout_y: 2 +atmosphere_npx_ges: 361 +atmosphere_npy_ges: 361 +atmosphere_npz_ges: 127 +atmosphere_npx_anl: 361 +atmosphere_npy_anl: 361 +atmosphere_npz_anl: 127 +atmosphere_fv3jedi_files_path: DATA/fv3jedi + +# Background +atmosphere_background_path: DATA/bkg +atmosphere_background_ensemble_path: "DATA/ens/mem%mem%" + +atmosphere_variational_history_prefix: "bkg_" +atmosphere_ensemble_history_prefix: "ens_" + +atmosphere_background_time_iso: '2024-02-02T00:00:00Z' + +# Background error + +atmosphere_bump_data_directory: DATA/berror +atmosphere_gsibec_path: DATA/berror +atmosphere_number_ensemble_members: 3 +atmosphere_layout_gsib_x: 2 +atmosphere_layout_gsib_y: 2 + + +# Forecasting +atmosphere_forecast_length: PT6H +atmosphere_forecast_timestep: PT1H + +# Write final increment on Gaussian grid in variational +atmosphere_final_increment_prefix: "./anl/atminc." + + +# Observation things +# ------------------ +observations: all_observations + +crtm_coefficient_path: "DATA/crtm/" + +# Naming conventions for observational files +atmosphere_obsdatain_path: DATA/obs +atmosphere_obsdatain_prefix: OPREFIX +atmosphere_obsdatain_suffix: ".2024020100.nc" + +atmosphere_obsdataout_path: DATA/diags +atmosphere_obsdataout_prefix: diag +atmosphere_obsdataout_suffix: "_2024020100.nc" + +# Naming conventions for bias correction files +atmosphere_obsbiasin_path: DATA/obs +atmosphere_obsbiasin_prefix: GPREFIX +atmosphere_obsbiasin_suffix: ".satbias.nc" +atmosphere_obstlapsein_prefix: GPREFIX +atmosphere_obstlapsein_suffix: ".tlapse.txt" +atmosphere_obsbiascovin_prefix: GPREFIX +atmosphere_obsbiascovin_suffix: ".satbias_cov.nc" + +atmosphere_obsbiasout_path: DATA/bc +atmosphere_obsbiasout_prefix: APREFIX +atmosphere_obsbiasout_suffix: ".satbias.nc" +atmosphere_obsbiascovout_prefix: APREFIX +atmosphere_obsbiascovout_suffix: ".satbias_cov.nc" + + +# Local Ensemble DA (LETKF) +# ------------------------- +local_ensemble_da_solver: GETKF + +increment_variables: [ua,va,DZ,delp,t,ps,sphum,ice_wat,liq_wat,o3mr] + +# Veritcal localization for GETKF +vl_fraction_of_retained_variance: 0.750 +vl_lengthscale: 2.1 +vl_lengthscale_units: logp +inflation_rtps: 0.85 +inflation_rtpp: 0.0 +inflation_mult: 1.0 + +# Driver +driver_update_obs_config_with_geometry_info: true +driver_save_posterior_mean: false +driver_save_posterior_ensemble: false +driver_save_prior_mean: false +driver_save_posterior_mean_increment: false +driver_save_posterior_ensemble_increments: true + +# Diagnostics +atmosphere_ensemble_increment_prefix: "./anl/mem%{member}%/atminc." +atmosphere_posterior_output_gaussian: "./mem%{member}%/atmanl." diff --git a/test/client_integration/gdas-marine-templates.yaml b/test/client_integration/gdas-marine-templates.yaml new file mode 100644 index 0000000..2fe3e79 --- /dev/null +++ b/test/client_integration/gdas-marine-templates.yaml @@ -0,0 +1,111 @@ +# This part is for testing only. Normally this would just show algorithm: +# ----------------------------------------------------------------------------------- +supported_algorithms: +- 3dvar +- hofx3d +- hofx4d +- 3dfgat +#- local_ensemble_da + + +# Search path for model and obs for JCB (relative for the submodule, or can be absolute) +# -------------------------------------------------------------------------------------- +app_path_model: gdas/model/marine +app_path_observations: gdas/observations/marine +app_path_observation_chronicle: gdas/observation_chronicle/marine + + +# Places where we deviate from the generic file name of a yaml +# ------------------------------------------------------------ +model_file: marine_model_pseudo +initial_condition_file: marine_background +background_error_file: marine_background_error_hybrid_diffusion_diffusion + + +# Global analysis things +# ---------------------- +window_begin: '2024-01-31T21:00:00Z' +window_length: PT6H +bound_to_include: begin +minimizer: RPCG +final_diagnostics_departures: oman +analysis_variables: [cicen, hicen, hsnon, socn, tocn, uocn, vocn, ssh] +number_of_outer_loops: 1 + + +# Model things +# ------------ +marine_soca_files_path: DATA/soca + +# Background +marine_background_time: '2024-01-31T21:00:00Z' +marine_background_path: DATA/bkg + + +# Background error +marine_window_middle: '2024-02-01T00:00:00Z' +marine_number_ensemble_members: 3 + +# Forecasting +marine_forecast_timestep: PT1H + +# Minimization +marine_ninner_1: 3 +marine_grad_red_1: 1e-4 + +# Forecast states +marine_pseudo_model_states: +- date: '2024-01-31T21:00:00Z' + basename: base + ocn_filename: ocn + ice_filename: ice + read_from_file: true +- date: '2024-02-01T00:00:00Z' + basename: base + ocn_filename: ocn + ice_filename: ice + read_from_file: true +- date: '2024-02-01T03:00:00Z' + basename: base + ocn_filename: ocn + ice_filename: ice + read_from_file: true + +# Observation things +# ------------------ +observations: all_observations + +# Naming conventions for observational files +marine_obsdatain_path: DATA/obs +marine_obsdatain_prefix: OPREFIX +marine_obsdatain_suffix: ".2024020100.nc" + +marine_obsdataout_path: DATA/diags +marine_obsdataout_prefix: diag +marine_obsdataout_suffix: "_2024020100.nc" + +# Local Ensemble DA (LETKF) +# ------------------------- +local_ensemble_da_solver: GETKF + +increment_variables: [cicen, hicen, hsnon, socn, tocn, uocn, vocn, ssh] + +# Veritcal localization for GETKF +vl_fraction_of_retained_variance: 0.750 +vl_lengthscale: 2.1 +vl_lengthscale_units: logp +inflation_rtps: 0.85 +inflation_rtpp: 0.0 +inflation_mult: 1.0 + +# Driver +driver_update_obs_config_with_geometry_info: true +driver_save_posterior_mean: false +driver_save_posterior_ensemble: false +driver_save_prior_mean: false +driver_save_posterior_mean_increment: false +driver_save_posterior_ensemble_increments: true + +# Diagnostics +marine_ensemble_increment_prefix: "./anl/mem%{member}%/atminc." +marine_posterior_output_gaussian: "./mem%{member}%/atmanl."