Skip to content

Commit

Permalink
Updated configuration for "cp4" (#58)
Browse files Browse the repository at this point in the history
- Added filtering to the variance partitioning
- Increased decorrelation length scales 
- Removed u,v from state/incr 
- Fixed outdated hybrid B yaml
- Updated obs configuration from @JohnSteffen-NOAA

---------

Co-authored-by: JohnSteffen-NOAA <77806417+JohnSteffen-NOAA@users.noreply.github.com>
  • Loading branch information
guillaumevernieres and JohnSteffen-NOAA authored Dec 16, 2024
1 parent 1c8c6b8 commit 8ee71d2
Show file tree
Hide file tree
Showing 21 changed files with 215 additions and 27 deletions.
2 changes: 1 addition & 1 deletion algorithm/marine/soca_diagb.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ number of halo points: 4
number of neighbors: 16

simple smoothing:
horizontal iterations: 10
horizontal iterations: 100
vertical iterations: 1

# TODO(G): Too slow for the below scale
Expand Down
2 changes: 1 addition & 1 deletion algorithm/marine/soca_parameters_diffusion_hz.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ background error:
calibration:
normalization:
method: randomization
iterations: 10000
iterations: 1000

groups:
- horizontal:
Expand Down
4 changes: 2 additions & 2 deletions algorithm/marine/soca_setcorscales.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ corr variables: [sea_surface_height_above_geoid]
scales:
vert layers: 5 # in units of layer
sea_surface_height_above_geoid:
rossby mult: 1.00
min grid mult: 2.0
rossby mult: 2.00
min grid mult: 6.0

rh output:
datadir: ./
Expand Down
11 changes: 10 additions & 1 deletion algorithm/marine/socaincr2mom6.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,16 @@ date: '{{ marine_window_begin }}'

layers variable: [sea_water_cell_thickness]

increment variables: [sea_water_potential_temperature, sea_water_salinity, eastward_sea_water_velocity, northward_sea_water_velocity, sea_surface_height_above_geoid]
increment variables:
- sea_water_potential_temperature
- sea_water_salinity
#- eastward_sea_water_velocity
#- northward_sea_water_velocity
- sea_surface_height_above_geoid # Not used in MOM6 iau

set increment variables to zero:
- eastward_sea_water_velocity
- northward_sea_water_velocity

vertical geometry:
date: '{{ marine_window_begin }}'
Expand Down
16 changes: 15 additions & 1 deletion model/marine/marine_background.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,18 @@ basename: {{ marine_background_path}}
ocn_filename: MOM.res.nc
ice_filename: cice.res.nc
date: "{{ marine_background_time }}"
state variables: [sea_ice_area_fraction, sea_ice_thickness, sea_ice_snow_thickness, sea_water_salinity, sea_water_potential_temperature, eastward_sea_water_velocity, northward_sea_water_velocity, sea_surface_height_above_geoid, sea_water_cell_thickness, ocean_mixed_layer_thickness, sea_water_depth]
state variables:
- sea_ice_area_fraction
- sea_ice_thickness
- sea_ice_snow_thickness
- snow_ice_surface_temperature
- air_temperature
- bulk_ice_salinity
- sea_water_salinity
- sea_water_potential_temperature
#- eastward_sea_water_velocity
#- northward_sea_water_velocity
- sea_surface_height_above_geoid
- sea_water_cell_thickness
- ocean_mixed_layer_thickness
- sea_water_depth
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,22 @@ components:
saber block name: diffusion
read:
groups:
- variables: [tocn, socn, ssh]
- variables:
- sea_water_potential_temperature
- sea_water_salinity
- sea_surface_height_above_geoid
- sea_ice_area_fraction
horizontal:
filepath: ./staticb/hz_ocean
vertical:
levels: {{marine_vt_levels}}
filepath: ./staticb/vt_ocean
- variables: [cicen]
horizontal:
filepath: ./staticb/hz_ice
# TODO(G): OK to not use what's below but it will need
# to be fixed when we add ice thickness and
# snow depth
# - variables: [sea_ice_area_fraction]
# horizontal:
# filepath: ./staticb/hz_ice

saber outer blocks:
- saber block name: StdDev
Expand All @@ -25,10 +32,25 @@ components:
ocn_filename: 'ocn.bkgerr_stddev.nc'
ice_filename: 'ice.bkgerr_stddev.nc'
read_from_file: 3

linear variable change:
input variables: [cicen, hicen, hsnon, socn, tocn, uocn, vocn, ssh]
output variables: [cicen, hicen, hsnon, socn, tocn, uocn, vocn, ssh]
input variables:
- sea_ice_area_fraction
- sea_ice_thickness
- sea_ice_snow_thickness
- sea_water_salinity
- sea_water_potential_temperature
#- eastward_sea_water_velocity
#- northward_sea_water_velocity
- sea_surface_height_above_geoid
output variables:
- sea_ice_area_fraction
- sea_ice_thickness
- sea_ice_snow_thickness
- sea_water_salinity
- sea_water_potential_temperature
#- eastward_sea_water_velocity
#- northward_sea_water_velocity
- sea_surface_height_above_geoid
linear variable changes:
- linear variable change name: BalanceSOCA
weight:
Expand All @@ -43,7 +65,15 @@ components:
basename: ../ensdata/
ocn_filename: 'ocn.pert.steric.%mem%.nc'
ice_filename: 'ens/ice.%mem%.nc'
state variables: [tocn, socn, ssh, uocn, vocn, cicen, hicen, hsnon]
state variables:
- sea_ice_area_fraction
- sea_ice_thickness
- sea_ice_snow_thickness
- sea_water_salinity
- sea_water_potential_temperature
#- eastward_sea_water_velocity
#- northward_sea_water_velocity
- sea_surface_height_above_geoid
pattern: '%mem%'
nmembers: '{{marine_number_ensemble_members}}'
localization:
Expand All @@ -52,15 +82,16 @@ components:
saber block name: diffusion
read:
groups:
- variables: [tocn, socn, ssh]
multivariate strategy: duplicated
- variables:
- sea_water_potential_temperature
- sea_water_salinity
- sea_surface_height_above_geoid
- sea_ice_area_fraction
horizontal:
filepath: ./staticb/hz_ocean
vertical:
strategy: duplicated
- variables: [cicen]
horizontal:
filepath: ./staticb/hz_ice
levels: {{marine_vt_levels}}
filepath: ./staticb/vt_ocean
weight:
read_from_file: 3
basename: ./
Expand Down
26 changes: 22 additions & 4 deletions model/marine/marine_background_error_static_diffusion.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -30,24 +30,42 @@ saber outer blocks:
ice_filename: 'ice.bkgerr_stddev.nc'
read_from_file: 3

#- saber block name: MLBalance
# geometry:
# mom6_input_nml: mom_input.nml
# fields metadata: ./fields_metadata.yaml
# ML Balances:
# arctic:
# ffnn:
# inputSize: 7
# outputSize: 1
# hiddenSize: 2
# load model: /work/noaa/da/gvernier/ai/runs/arctic.pt
# antarctic:
# ffnn:
# inputSize: 7
# outputSize: 1
# hiddenSize: 2
# load model: /work/noaa/da/gvernier/ai/runs/antarctic.pt

linear variable change:
input variables:
- sea_ice_area_fraction
- sea_ice_thickness
- sea_ice_snow_thickness
- sea_water_salinity
- sea_water_potential_temperature
- eastward_sea_water_velocity
- northward_sea_water_velocity
#- eastward_sea_water_velocity
#- northward_sea_water_velocity
- sea_surface_height_above_geoid
output variables:
- sea_ice_area_fraction
- sea_ice_thickness
- sea_ice_snow_thickness
- sea_water_salinity
- sea_water_potential_temperature
- eastward_sea_water_velocity
- northward_sea_water_velocity
#- eastward_sea_water_velocity
#- northward_sea_water_velocity
- sea_surface_height_above_geoid
linear variable changes:
- linear variable change name: BalanceSOCA
2 changes: 1 addition & 1 deletion observations/marine/adt_rads_all.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
variables: [GeoVaLs/mesoscale_representation_error,
ObsError/absoluteDynamicTopography]
coefs: [0.2,
2.0]
10.0]
- filter: Domain Check
where:
- variable: { name: GeoVaLs/sea_ice_area_fraction}
Expand Down
12 changes: 12 additions & 0 deletions observations/marine/icec_abi_g16_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,15 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Gaussian Thinning
horizontal_mesh: 25 #km
use_reduced_horizontal_grid: true
select_median: true
action:
name: reduce obs space
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
6 changes: 6 additions & 0 deletions observations/marine/icec_amsr2_north.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,9 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
# - filter: Gaussian Thinning
# horizontal_mesh: 25 #km
# use_reduced_horizontal_grid: true
# select_median: true
# action:
# name: reduce obs space
6 changes: 6 additions & 0 deletions observations/marine/icec_amsr2_south.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,9 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
# - filter: Gaussian Thinning
# horizontal_mesh: 25 #km
# use_reduced_horizontal_grid: true
# select_median: true
# action:
# name: reduce obs space
12 changes: 12 additions & 0 deletions observations/marine/icec_amsu_mb_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,15 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Gaussian Thinning
horizontal_mesh: 25 #km
use_reduced_horizontal_grid: true
select_median: true
action:
name: reduce obs space
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
12 changes: 12 additions & 0 deletions observations/marine/icec_atms_n20_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,15 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Gaussian Thinning
horizontal_mesh: 25 #km
use_reduced_horizontal_grid: true
select_median: true
action:
name: reduce obs space
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
12 changes: 12 additions & 0 deletions observations/marine/icec_atms_n21_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,15 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Gaussian Thinning
horizontal_mesh: 25 #km
use_reduced_horizontal_grid: true
select_median: true
action:
name: reduce obs space
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
12 changes: 12 additions & 0 deletions observations/marine/icec_atms_npp_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,15 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Gaussian Thinning
horizontal_mesh: 25 #km
use_reduced_horizontal_grid: true
select_median: true
action:
name: reduce obs space
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
6 changes: 6 additions & 0 deletions observations/marine/icec_gmi_gpm_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,9 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
12 changes: 12 additions & 0 deletions observations/marine/icec_ssmis_f17_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,15 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Gaussian Thinning
horizontal_mesh: 25 #km
use_reduced_horizontal_grid: true
select_median: true
action:
name: reduce obs space
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
12 changes: 12 additions & 0 deletions observations/marine/icec_viirs_n20_l2_north.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,15 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Gaussian Thinning
horizontal_mesh: 25 #km
use_reduced_horizontal_grid: true
select_median: true
action:
name: reduce obs space
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
12 changes: 12 additions & 0 deletions observations/marine/icec_viirs_n20_l2_south.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,15 @@
where:
- variable: {name: GeoVaLs/distance_from_coast}
minvalue: 100e3
- filter: Gaussian Thinning
horizontal_mesh: 25 #km
use_reduced_horizontal_grid: true
select_median: true
action:
name: reduce obs space
- filter: Domain Check
action:
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
maxvalue: -4.0
3 changes: 2 additions & 1 deletion observations/marine/sss_smap_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
minvalue: 15.0
# minvalue: 15.0
maxvalue: -4.0
## Gaussian_Thinning is having problems with LETKF, try again later
# - filter: Gaussian_Thinning
# horizontal_mesh: 25.0 #km
Expand Down
3 changes: 2 additions & 1 deletion observations/marine/sss_smos_l2.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@
name: passivate
where:
- variable: {name: GeoVaLs/sea_surface_temperature}
minvalue: 15.0
# minvalue: 15.0
maxvalue: -4.0
## Gaussian_Thinning is having problems with LETKF, try again later
# - filter: Gaussian_Thinning
# horizontal_mesh: 25.0 #km
Expand Down

0 comments on commit 8ee71d2

Please sign in to comment.