Skip to content

Commit

Permalink
Add 3DEnVar
Browse files Browse the repository at this point in the history
  • Loading branch information
travissluka committed Mar 7, 2024
1 parent 4bc9760 commit f7a9b4e
Show file tree
Hide file tree
Showing 22 changed files with 965 additions and 76 deletions.
291 changes: 289 additions & 2 deletions 3denvar/README.md

Large diffs are not rendered by default.

151 changes: 151 additions & 0 deletions 3denvar/files/3denvar.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
cost function:
cost type: 3D-Var
time window:
begin: 2021-08-01T00:00:00Z
length: PT24H
geometry: &geom
geom_grid_file: ./soca_gridspec.nc
mom6_input_nml: ./mom_input.nml
fields metadata: ./fields_metadata.yml
analysis variables: &soca_vars [socn, tocn, uocn, vocn, ssh, hocn, mld, layer_depth]

background:
read_from_file: 1
basename: ./bkg/
ocn_filename: ocn.bkg.2019080112.nc
date: &date 2021-08-01T12:00:00Z
state variables: [socn, tocn, uocn, vocn, ssh, hocn, mld, layer_depth]

background error:
covariance model: ensemble
_ens_file: &ens_file
# common parameters for each of the states listed below
read_from_file: 1
basename: ./bkg_ens/
#remap_filename: data_static/72x35x25/restarts/MOM.res.nc
state variables: *soca_vars
date: 2021-08-01T12:00:00Z
members:
- <<: *ens_file
ocn_filename: ocn.bkg.2017070112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2017071512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2017080112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2017081512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2017090112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018070112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018071512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018080112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018081512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018090112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019070112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019071512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019080112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019081512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019083012.nc
localization:
localization method: SABER
saber central block:
saber block name: BUMP_NICAS
read:
io:
data directory: ./
files prefix: nicas_loc
drivers:
multivariate strategy: duplicated
read local nicas: true

observations:
observers:
- obs space:
name: sst_avhrr_metop-b
obsdatain:
engine:
type: H5File
obsfile: ./obs/20210801/obs.sst_avhrr_metop-c.20210801T120000Z.nc4
obsdataout:
engine:
type: H5File
obsfile: ./obs_out/3denvar.sst_avhrr_metop-b.20210801T120000Z.nc4
simulated variables: [seaSurfaceTemperature]
obs operator:
name: Identity
observation alias file: ./obsop_name_map.yml
obs error:
covariance model: diagonal
obs filters:
- filter: Bounds Check
minvalue: -1.8
maxvalue: 40.0
- filter: Background Check
threshold: 4.0
- filter: Domain Check
where:
- variable: {name: ObsError/seaSurfaceTemperature}
minvalue: 0.001

- obs space:
name: adt_c2
obsdatain:
engine:
type: H5File
obsfile: ./obs/20210801/obs.adt_c2.20210801T120000Z.nc4
obsdataout:
engine:
type: H5File
obsfile: ./obs_out/3denvar.adt_c2.20210801T120000Z.nc4
simulated variables: [absoluteDynamicTopography]
obs operator:
name: ADT
obs error:
covariance model: diagonal
obs filters:
- filter: Bounds Check
minvalue: -2.0
maxvalue: 2.0
- filter: Domain Check
where:
- variable: {name: GeoVaLs/sea_floor_depth_below_sea_surface}
minvalue: 2000
- filter: Background Check
threshold: 4.0

variational:
minimizer:
algorithm: RPCG
iterations:
- geometry: *geom
ninner: 20
gradient norm reduction: 1e-3
diagnostics:
departures: ombg
online diagnostics:
write increment: true
increment:
state component:
datadir: ./
date: 2021-08-01T12:00:00Z
exp: 3denvar
type: incr

output:
datadir: ./
exp: 3denvar
type: an

final:
diagnostics:
departures: oman
77 changes: 77 additions & 0 deletions 3denvar/files/dirac.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
geometry: &geom
geom_grid_file: ./soca_gridspec.nc
mom6_input_nml: ./mom_input.nml
fields metadata: ./fields_metadata.yml

background:
read_from_file: 1
basename: ./bkg/
date: &date 2022-02-15T12:00:00Z
ocn_filename: ocn.bkg.2019080112.nc

state variables: &soca_vars [tocn, socn, ssh, hocn, uocn, vocn, mld, layer_depth]

background error:
covariance model: ensemble
_ens_file: &ens_file
# common parameters for each of the states listed below
read_from_file: 1
basename: ./bkg_ens/
#remap_filename: data_static/72x35x25/restarts/MOM.res.nc
state variables: *soca_vars
date: 2021-08-01T12:00:00Z
members:
- <<: *ens_file
ocn_filename: ocn.bkg.2017070112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2017071512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2017080112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2017081512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2017090112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018070112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018071512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018080112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018081512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2018090112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019070112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019071512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019080112.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019081512.nc
- <<: *ens_file
ocn_filename: ocn.bkg.2019083012.nc
localization:
localization method: SABER
saber central block:
saber block name: BUMP_NICAS
read:
io:
data directory: ./
files prefix: nicas_loc
drivers:
multivariate strategy: duplicated
read local nicas: true

dirac:
# unit increments to use for the dirac test
ixdir: [131, 214, 172] # the x coordinate
iydir: [151, 177, 148] # the y coordinate
izdir: [ 1, 1, 1 ] # the vertical level
ifdir: [ 1, 1, 3] # the variable (1=T, 2=S, 3=SSH, ...)

output dirac:
datadir: ./
date: *date
exp: dirac_ens_%id%
type: an
43 changes: 43 additions & 0 deletions 3denvar/files/nicas_parameters.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
geometry: &geom
geom_grid_file: ./soca_gridspec.nc
mom6_input_nml: ./mom_input.nml
fields metadata: ./fields_metadata.yml

background:
read_from_file: 1
basename: ./bkg/
date: &date 2022-02-15T12:00:00Z
ocn_filename: ocn.bkg.2019080112.nc
state variables: [tocn]

background error:
covariance model: SABER
saber central block:
saber block name: BUMP_NICAS
calibration:
io:
data directory: ./
files prefix: nicas_loc
drivers:
multivariate strategy: duplicated
compute nicas: true
write local nicas: true
nicas:
#> Check the log, and make sure this is larger than nc1max!
max horizontal grid size: 150000
resolution: 8.0
explicit length-scales: true
horizontal length-scale:
- groups:
- common
value: 750e3 # meters
vertical length-scale:
# set the vertical length scale very large, (basically turning off
# vertical localization)
- groups:
- common
value: 5000 # number of levels
grids:
- model:
variables:
- tocn
23 changes: 23 additions & 0 deletions 3denvar/files/obsop_name_map.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
variable maps:
- name: depthBelowWaterSurface
alias: ocean_depth
- name: waterTemperature
alias: sea_water_temperature
- name: seaSurfaceTemperature
alias: sea_surface_temperature
- name: salinity
alias: sea_water_salinity
- name: seaSurfaceSalinity
alias: sea_surface_salinity
- name: seaIceFraction
alias: sea_ice_area_fraction
- name: waterSurfaceZonalVelocity
alias: surface_eastward_sea_water_velocity
- name: waterSurfaceMeridionalVelocity
alias: surface_northward_sea_water_velocity
- name: seaSurfaceChlorophyllMassConcentration
alias: sea_surface_chlorophyll
- name: oceanSurfaceBiomassContent
alias: sea_surface_biomass_in_p_units
- name: waveHeightSignificant
alias: sea_surface_wave_significant_height
3 changes: 3 additions & 0 deletions 3denvar/img/3denvar_inc_S.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/3denvar_inc_T.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/3denvar_inc_U.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/3dvar_inc_S.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/3dvar_inc_T.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/3dvar_inc_U.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/dirac_ens_S.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/dirac_ens_T.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/dirac_ens_U.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/dirac_ens_loc.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/dirac_hyb_T.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions 3denvar/img/dirac_static_T.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit f7a9b4e

Please sign in to comment.