diff --git a/parm/jcb-gdas b/parm/jcb-gdas index 7717c0e74..b8e995a4c 160000 --- a/parm/jcb-gdas +++ b/parm/jcb-gdas @@ -1 +1 @@ -Subproject commit 7717c0e7401e344a6bce37a4f8ecc11399256936 +Subproject commit b8e995a4cbf01fa4a662c3da3e7d818f8457ec4e diff --git a/parm/soca/berror/soca_diagb.yaml.j2 b/parm/soca/berror/soca_diagb.yaml.j2 deleted file mode 100644 index c0597d358..000000000 --- a/parm/soca/berror/soca_diagb.yaml.j2 +++ /dev/null @@ -1,37 +0,0 @@ -geometry: - mom6_input_nml: mom_input.nml - fields metadata: ./fields_metadata.yaml - -date: '{{ MARINE_WINDOW_END | to_isotime }}' - -background: - date: '{{ MARINE_WINDOW_END | to_isotime }}' - basename: ./bkg/ - ocn_filename: 'ocean.bkg.f009.nc' - ice_filename: 'ice.bkg.f009.nc' - read_from_file: 1 - -background error: - datadir: ./staticb/ - date: '{{ MARINE_WINDOW_MIDDLE | to_isotime }}' - exp: bkgerr_stddev - type: incr - -variables: - name: [tocn, socn, uocn, vocn, hocn, ssh, cicen, hicen, hsnon, mom6_mld] - -rescale: 2.0 # rescales the filtered std. dev. by "rescale" -min sst: 0.0 # Added to sst bkg. err. -max ssh: 0.0 # Limits the amplitude of the unbalanced bkg err -min depth: 500.0 # zero out the bkg. error. at less than min depth -number of halo points: 4 -number of neighbors: 16 - -simple smoothing: - horizontal iterations: 10 - vertical iterations: 1 - -# TODO(G): Too slow for the below scale -#diffusion: -# horizontal: 500.0e3 -# vertical: 3.0 diff --git a/parm/soca/berror/soca_ensb.yaml.j2 b/parm/soca/berror/soca_ensb.yaml.j2 deleted file mode 100644 index 4033f41ba..000000000 --- a/parm/soca/berror/soca_ensb.yaml.j2 +++ /dev/null @@ -1,98 +0,0 @@ -# Configuration for the recentering and re-balancing of the ensemble members -geometry: - mom6_input_nml: mom_input.nml - fields metadata: ./fields_metadata.yaml - -date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - -layers variable: [hocn] - -increment variables: [tocn, socn, uocn, vocn, ssh, hocn, cicen, hicen, hsnon] - -set increment variables to zero: [ssh] - -vertical geometry: - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - basename: ./INPUT/ - ocn_filename: MOM.res.nc - read_from_file: 3 - -add recentering increment: false - -soca increments: # Could also be states, but they are read as increments - number of increments: {{ NMEM_ENS }} - pattern: '%mem%' - template: - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - basename: '{{ ENSPERT_RELPATH }}/ens/' - ocn_filename: 'ocean.%mem%.nc' - ice_filename: 'ice.%mem%.nc' - read_from_file: 3 - -steric height: - linear variable changes: - - linear variable change name: BalanceSOCA # Only the steric balance is applied - -ensemble mean output: - datadir: ./staticb/ - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - exp: ens_mean - type: incr - -ssh output: - unbalanced: - datadir: ./staticb/ - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - exp: ssh_unbal_stddev - type: incr - - steric: - datadir: ./staticb/ - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - exp: ssh_steric_stddev - type: incr - - total: - datadir: ./staticb/ - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - exp: ssh_total_stddev - type: incr - - explained variance: - datadir: ./staticb/ - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - exp: steric_explained_variance - type: incr - - recentering error: - datadir: ./staticb/ - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - exp: ssh_recentering_error - type: incr - -background error output: - datadir: ./staticb/ - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - exp: bkgerr_stddev - type: incr - -linear variable change: - linear variable changes: - - linear variable change name: BalanceSOCA - -trajectory: - state variables: [tocn, socn, uocn, vocn, ssh, hocn, layer_depth, mld, cicen, hicen, hsnon] - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - basename: ./INPUT/ - ocn_filename: MOM.res.nc - ice_filename: cice.res.nc - read_from_file: 1 - -output increment: - # TODO: Revert this when fms can take more than 128 charactres file names - datadir: '{{ ENSPERT_RELPATH }}/enspert/' - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - exp: trash - type: incr - output file: 'ocn.pert.steric.%mem%.nc' - pattern: '%mem%' diff --git a/parm/soca/berror/soca_ensweights.yaml.j2 b/parm/soca/berror/soca_ensweights.yaml.j2 deleted file mode 100644 index f677d2a8d..000000000 --- a/parm/soca/berror/soca_ensweights.yaml.j2 +++ /dev/null @@ -1,37 +0,0 @@ -geometry: - mom6_input_nml: mom_input.nml - fields metadata: ./fields_metadata.yaml - -date: '{{ MARINE_WINDOW_MIDDLE | to_isotime }}' - -variables: - ice: [cicen, hicen, hsnon] - ocean: [tocn, socn, uocn, vocn, ssh] - -background: - date: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' - basename: ./INPUT/ - ocn_filename: MOM.res.nc - ice_filename: cice.res.nc - read_from_file: 1 - -weights: - # Need to provide weights^2 when reading from file - ice: 0.0025 # 5% of original variance - ocean: 0.0625 # 25% " " - # Apply localized weights to the ocean ens. B - ocean local weights: - - lon: -172.0 - lat: 11.0 - amplitude: -1.0 - length scale: 700.0 - - lon: -160.0 - lat: 12.0 - amplitude: -1.0 - length scale: 700.0 - -output: - datadir: ./ - date: '{{ MARINE_WINDOW_MIDDLE | to_isotime }}' - exp: ens_weights - type: incr diff --git a/parm/soca/berror/soca_parameters_diffusion_hz.yaml.j2 b/parm/soca/berror/soca_parameters_diffusion_hz.yaml.j2 deleted file mode 100644 index 7d3a78cfb..000000000 --- a/parm/soca/berror/soca_parameters_diffusion_hz.yaml.j2 +++ /dev/null @@ -1,37 +0,0 @@ -geometry: &geom - mom6_input_nml: mom_input.nml - fields metadata: ./fields_metadata.yaml - -background: - read_from_file: 1 - basename: ./INPUT/ - ocn_filename: MOM.res.nc - ice_filename: cice.res.nc - date: '{{ MARINE_WINDOW_END | to_isotime }}' - state variables: [ssh] - -background error: - covariance model: SABER - saber central block: - saber block name: diffusion - geometry: *geom - calibration: - normalization: - method: randomization - iterations: 10000 - - groups: - - horizontal: - model file: - date: '{{ MARINE_WINDOW_END | to_isotime }}' - basename: ./ - ocn_filename: ocn.cor_rh.incr.0001-01-01T00:00:00Z.nc - model variable: ssh - write: - filepath: ./staticb/hz_ocean - - - horizontal: - as gaussian: true - fixed value: 50000.0 - write: - filepath: ./staticb/hz_ice diff --git a/parm/soca/berror/soca_parameters_diffusion_vt.yaml.j2 b/parm/soca/berror/soca_parameters_diffusion_vt.yaml.j2 deleted file mode 100644 index 76ab67e94..000000000 --- a/parm/soca/berror/soca_parameters_diffusion_vt.yaml.j2 +++ /dev/null @@ -1,33 +0,0 @@ -geometry: &geom - mom6_input_nml: mom_input.nml - fields metadata: ./fields_metadata.yaml - -background: - read_from_file: 1 - basename: ./INPUT/ - ocn_filename: MOM.res.nc - ice_filename: cice.res.nc - date: '{{ MARINE_WINDOW_MIDDLE | to_isotime }}' - state variables: [tocn] - -background error: - covariance model: SABER - saber central block: - saber block name: diffusion - geometry: *geom - calibration: - normalization: - # NOTE, not actually used here, since the normalization spec is only used for hz - method: randomization #< other option is "brute force" - iterations: 1000 #< in the real world you'll want to use 1e4 or so - - groups: - - vertical: - as gaussian: true - model file: - date: '{{ MARINE_WINDOW_MIDDLE | to_isotime }}' - basename: ./ - ocn_filename: vt_scales.nc - model variable: tocn - write: - filepath: ./staticb/vt_ocean diff --git a/parm/soca/berror/soca_setcorscales.yaml b/parm/soca/berror/soca_setcorscales.yaml deleted file mode 100644 index 0a91777a1..000000000 --- a/parm/soca/berror/soca_setcorscales.yaml +++ /dev/null @@ -1,23 +0,0 @@ -resolution: - mom6_input_nml: mom_input.nml - fields metadata: ./fields_metadata.yaml - -date: 0001-01-01T00:00:00Z - -corr variables: [ssh] - -scales: - vert layers: 5 # in units of layer - ssh: - rossby mult: 1.00 - min grid mult: 2.0 - -rh output: - datadir: ./ - exp: cor_rh - type: incr - -rv output: - datadir: ./ - exp: cor_rv - type: incr diff --git a/parm/soca/berror/soca_vtscales.yaml.j2 b/parm/soca/berror/soca_vtscales.yaml.j2 deleted file mode 100644 index 8f68b1517..000000000 --- a/parm/soca/berror/soca_vtscales.yaml.j2 +++ /dev/null @@ -1,13 +0,0 @@ -gridspec_filename: soca_gridspec.nc -restart_filename: ./INPUT/MOM.res.nc -mld_filename: './staticb/ocn.bkgerr_stddev.incr.{{ MARINE_WINDOW_END | to_isotime }}.nc' -output_filename: ./vt_scales.nc -output_variable_vt: Temp -output_variable_hz: ave_ssh - -VT_MIN: 5 -VT_MAX: 15 - -HZ_ROSSBY_MULT: 1.0 -HZ_MAX: 200e3 -HZ_MIN_GRID_MULT: 2.0 diff --git a/parm/soca/gridgen/gridgen.yaml b/parm/soca/gridgen/gridgen.yaml deleted file mode 100644 index 34fbdeca6..000000000 --- a/parm/soca/gridgen/gridgen.yaml +++ /dev/null @@ -1,5 +0,0 @@ -geometry: - geom_grid_file: soca_gridspec.nc - mom6_input_nml: mom_input.nml - fields metadata: fields_metadata.yaml - rossby file: rossrad.nc diff --git a/parm/soca/marine-jcb-base.yaml b/parm/soca/marine-jcb-base.yaml index cb5230f1c..d07edcd8c 100644 --- a/parm/soca/marine-jcb-base.yaml +++ b/parm/soca/marine-jcb-base.yaml @@ -17,7 +17,7 @@ final_increment_file: marine_final_increment # Assimilation standard things (not prepended with model choice) # ---------------------------- -window_begin: '{{MARINE_WINDOW_BEGIN}}' +window_begin: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' window_length: '{{MARINE_WINDOW_LENGTH}}' bound_to_include: begin minimizer: RPCG @@ -31,6 +31,10 @@ analysis_variables: [cicen, hicen, hsnon, socn, tocn, uocn, vocn, ssh] # ------------ marine_window_begin: '{{MARINE_WINDOW_BEGIN}}' marine_window_middle: '{{MARINE_WINDOW_MIDDLE}}' +marine_window_begin_iso: '{{ MARINE_WINDOW_BEGIN | to_isotime }}' +marine_window_middle_iso: '{{ MARINE_WINDOW_MIDDLE | to_isotime }}' +marine_window_end_iso: '{{ MARINE_WINDOW_END | to_isotime }}' +enspert_relpath: '{{ ENSPERT_RELPATH }}' # Geometry marine_soca_files_path: . @@ -42,11 +46,10 @@ marine_background_time: '{{MARINE_WINDOW_BEGIN_ISO}}' # Pseudo model marine_forecast_timestep: PT3H -marine_pseudo_model_states: !INC 'bkg_list.yaml' # Background error model background_error_file: '{{berror_model}}' -marine_number_ensemble_members: '{{nmem_ens}}' +marine_number_ensemble_members: '{{NMEM_ENS}}' marine_stddev_time: '{{MARINE_WINDOW_MIDDLE}}' # Observations diff --git a/parm/soca/soca_fix_stage_500.yaml.j2 b/parm/soca/soca_fix_stage_500.yaml.j2 index 0b25073ba..9f030a81f 100644 --- a/parm/soca/soca_fix_stage_500.yaml.j2 +++ b/parm/soca/soca_fix_stage_500.yaml.j2 @@ -9,8 +9,6 @@ copy: - ["{{ SOCA_INPUT_FIX_DIR }}/field_table", "{{ DATA }}/field_table"] - ["{{ SOCA_INPUT_FIX_DIR }}/diag_table", "{{ DATA }}/diag_table"] - ["{{ SOCA_INPUT_FIX_DIR }}/MOM_input", "{{ DATA }}/MOM_input"] -- ["{{ SOCA_INPUT_FIX_DIR }}/fields_metadata.yaml", "{{ DATA }}/fields_metadata.yaml"] -- ["{{ SOCA_INPUT_FIX_DIR }}/obsop_name_map.yaml", "{{ DATA }}/obsop_name_map.yaml"] - ["{{ SOCA_INPUT_FIX_DIR }}/INPUT/grid_spec.nc", "{{ DATA }}/INPUT/grid_spec.nc"] - ["{{ SOCA_INPUT_FIX_DIR }}/INPUT/hycom1_25.nc", "{{ DATA }}/INPUT/hycom1_25.nc"] - ["{{ SOCA_INPUT_FIX_DIR }}/INPUT/layer_coord25.nc", "{{ DATA }}/INPUT/layer_coord25.nc"] diff --git a/parm/soca/soca_utils_stage.yaml.j2 b/parm/soca/soca_utils_stage.yaml.j2 index 26570abe3..462cfccd0 100644 --- a/parm/soca/soca_utils_stage.yaml.j2 +++ b/parm/soca/soca_utils_stage.yaml.j2 @@ -4,4 +4,3 @@ copy: - ["{{ HOMEgfs }}/parm/gdas/soca/fields_metadata.yaml", "{{ DATA }}/fields_metadata.yaml"] - ["{{ HOMEgfs }}/parm/gdas/soca/obsop_name_map.yaml", "{{ DATA }}/obsop_name_map.yaml"] -- ["{{ HOMEgfs }}/parm/gdas/soca/gridgen/gridgen.yaml", "{{ DATA }}/gridgen.yaml"]