-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Create JCB templates for marine B-matrix (#36)
This PR is a companion to Global Workflow PR [#2992](NOAA-EMC/global-workflow#2992) and GDASApp PR [#1346](NOAA-EMC/GDASApp#1346). It adds JCB templates for the input YAMLS of JEDI applications used in the marine B-matrix task in the Global Workflow. --------- Co-authored-by: Dan Holdaway <[email protected]> Co-authored-by: Guillaume Vernieres <[email protected]>
- Loading branch information
1 parent
1e9d844
commit b8e995a
Showing
8 changed files
with
284 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
geometry: | ||
mom6_input_nml: mom_input.nml | ||
fields metadata: ./fields_metadata.yaml | ||
|
||
date: '{{ marine_window_end_iso }}' | ||
|
||
background: | ||
date: '{{ marine_window_end_iso }}' | ||
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_iso }}' | ||
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
# 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_iso }}' | ||
|
||
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_iso }}' | ||
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: '{{ marine_number_ensemble_members }}' | ||
pattern: '%mem%' | ||
template: | ||
date: '{{ marine_window_begin_iso }}' | ||
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_iso }}' | ||
exp: ens_mean | ||
type: incr | ||
|
||
ssh output: | ||
unbalanced: | ||
datadir: ./staticb/ | ||
date: '{{ marine_window_begin_iso }}' | ||
exp: ssh_unbal_stddev | ||
type: incr | ||
|
||
steric: | ||
datadir: ./staticb/ | ||
date: '{{ marine_window_begin_iso }}' | ||
exp: ssh_steric_stddev | ||
type: incr | ||
|
||
total: | ||
datadir: ./staticb/ | ||
date: '{{ marine_window_begin_iso }}' | ||
exp: ssh_total_stddev | ||
type: incr | ||
|
||
explained variance: | ||
datadir: ./staticb/ | ||
date: '{{ marine_window_begin_iso }}' | ||
exp: steric_explained_variance | ||
type: incr | ||
|
||
recentering error: | ||
datadir: ./staticb/ | ||
date: '{{ marine_window_begin_iso }}' | ||
exp: ssh_recentering_error | ||
type: incr | ||
|
||
background error output: | ||
datadir: ./staticb/ | ||
date: '{{ marine_window_begin_iso }}' | ||
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_iso }}' | ||
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_iso }}' | ||
exp: trash | ||
type: incr | ||
output file: 'ocn.pert.steric.%mem%.nc' | ||
pattern: '%mem%' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
geometry: | ||
mom6_input_nml: mom_input.nml | ||
fields metadata: ./fields_metadata.yaml | ||
|
||
date: '{{ marine_window_middle_iso }}' | ||
|
||
variables: | ||
ice: [cicen, hicen, hsnon] | ||
ocean: [tocn, socn, uocn, vocn, ssh] | ||
|
||
background: | ||
date: '{{ marine_window_begin_iso }}' | ||
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_iso }}' | ||
exp: ens_weights | ||
type: incr |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
geometry: | ||
geom_grid_file: soca_gridspec.nc | ||
mom6_input_nml: mom_input.nml | ||
fields metadata: fields_metadata.yaml | ||
rossby file: rossrad.nc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
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_iso }}' | ||
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_iso }}' | ||
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
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_iso }}' | ||
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 | ||
levels: '{{ marine_vt_levels }}' | ||
model file: | ||
date: '{{ marine_window_middle_iso }}' | ||
basename: ./ | ||
ocn_filename: vt_scales.nc | ||
model variable: tocn | ||
write: | ||
filepath: ./staticb/vt_ocean |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
gridspec_filename: soca_gridspec.nc | ||
restart_filename: ./INPUT/MOM.res.nc | ||
mld_filename: './staticb/ocn.bkgerr_stddev.incr.{{ marine_window_end_iso }}.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 |