Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
jedi_interface: fv3-jedi
total_processors: 6*{{npx_proc}}*{{npy_proc}}
executables:
hofx3D: fv3jedi_hofx_nomodel.x
hofx4D: fv3jedi_hofx.x
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# (C) Copyright 2021- United States Government as represented by the Administrator of the
# National Aeronautics and Space Administration. All Rights Reserved.
#
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.

# --------------------------------------------------------------------------------------------------

from collections.abc import Mapping
from swell.configuration.jedi.interfaces.geos_aero.model.shared import \
field_io_names, state_variables

# --------------------------------------------------------------------------------------------------


def background(template_dict: Mapping) -> Mapping:

background = {
'datetime': template_dict['local_background_time_iso'],
'filetype': 'cube sphere history',
'provider': 'geos',
'max allowable geometry difference': 1e-3,
'datapath': template_dict['cycle_dir'],
'filename': 'bkg.%yyyy%mm%ddT%hh%MM%ssZ.nc4',
'state variables': state_variables,
'field io names': field_io_names,
}

return background

# --------------------------------------------------------------------------------------------------
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# (C) Copyright 2021- United States Government as represented by the Administrator of the
# National Aeronautics and Space Administration. All Rights Reserved.
#
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.

# --------------------------------------------------------------------------------------------------

from collections.abc import Mapping

# --------------------------------------------------------------------------------------------------


def geometry(template_dict: Mapping) -> Mapping:

npx_proc = template_dict['npx_proc']
npy_proc = template_dict['npy_proc']

horizontal_resolution = template_dict['horizontal_resolution']
vertical_resolution = template_dict['vertical_resolution']

geometry = {
'fms initialization': {
'namelist filename': './fv3-jedi/fv3files/fmsmpp.nml',
'field table filename': './fv3-jedi/fv3files/field_table_gmao'
},
'akbk': f'./fv3-jedi/fv3files/akbk{vertical_resolution}.nc4',
'layout': [npx_proc, npy_proc],
'npx': horizontal_resolution,
'npy': horizontal_resolution,
'npz': vertical_resolution
}

return geometry

# --------------------------------------------------------------------------------------------------
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# (C) Copyright 2021- United States Government as represented by the Administrator of the
# National Aeronautics and Space Administration. All Rights Reserved.
#
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.

# --------------------------------------------------------------------------------------------------

from collections.abc import Mapping

# --------------------------------------------------------------------------------------------------


def getvalues(template_dict: Mapping) -> Mapping:

getvalues = None

return getvalues

# --------------------------------------------------------------------------------------------------
41 changes: 41 additions & 0 deletions src/swell/configuration/jedi/interfaces/geos_aero/model/r2d2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# (C) Copyright 2021- United States Government as represented by the Administrator of the
# National Aeronautics and Space Administration. All Rights Reserved.
#
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.

# --------------------------------------------------------------------------------------------------

from collections.abc import Mapping

# --------------------------------------------------------------------------------------------------


def r2d2(template_dict: Mapping) -> Mapping:

cycle_dir = template_dict['cycle_dir']

r2d2 = {
'fetch': {
'an': [
{'file_type': 'bkg',
'r2d2_model': 'geos_aero',
'filename': f'{cycle_dir}/bkg.%Y%m%dT%H%M%SZ.nc4'}
],
'fc': [
{'file_type': 'bkg',
'r2d2_model': 'geos_aero',
'filename': f'{cycle_dir}/bkg.%Y%m%dT%H%M%SZ.nc4'}
]
},
'store': {
'fc': [
{'file_type': 'bkg',
'r2d2_model': 'geos_aero'}
]
}
}

return r2d2

# --------------------------------------------------------------------------------------------------
23 changes: 23 additions & 0 deletions src/swell/configuration/jedi/interfaces/geos_aero/model/shared.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# (C) Copyright 2021- United States Government as represented by the Administrator of the
# National Aeronautics and Space Administration. All Rights Reserved.
#
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.

# --------------------------------------------------------------------------------------------------

# Aerosol extinction coefficient field IO names mapping JEDI variable names to GEOS file names

field_io_names = {
'air_pressure_thickness': 'DELP',
'moist_air_density': 'AIRDENS',
'volume_extinction_in_air_due_to_aerosol_particles_lambda1' : 'TOTEXTCOEF470',
'volume_extinction_in_air_due_to_aerosol_particles_lambda2' : 'TOTEXTCOEF550',
'volume_extinction_in_air_due_to_aerosol_particles_lambda3' : 'TOTEXTCOEF870'
}

# --------------------------------------------------------------------------------------------------

state_variables = list(field_io_names.keys())

# --------------------------------------------------------------------------------------------------
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# (C) Copyright 2021- United States Government as represented by the Administrator of the
# National Aeronautics and Space Administration. All Rights Reserved.
#
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.

# --------------------------------------------------------------------------------------------------

from collections.abc import Mapping

# --------------------------------------------------------------------------------------------------


def stage_cycle(template_dict: Mapping) -> Mapping:

cycle_dir = template_dict['cycle_dir']
swell_static_files = template_dict['swell_static_files']
vertical_resolution = template_dict['vertical_resolution']
horizontal_resolution = template_dict['horizontal_resolution']

stage_cycle = [
{
'link_files': {
'directories': [
[
f'{swell_static_files}/jedi/interfaces/geos_atmosphere/fv3files/*',
f'{cycle_dir}/fv3-jedi/fv3files/'
],
]
}
}
]

return stage_cycle

# --------------------------------------------------------------------------------------------------
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
obs space:
name: AodExt
obsdatain:
engine:
type: H5File
obsfile: '{{cycle_dir}}/IODA_x0054.MOD04_L2a.land.{{window_begin}}.nc4'
obsdataout:
engine:
type: H5File
allow overwrite: true
obsfile: '{{cycle_dir}}/{{experiment_id}}.hofx3d.IODA_x0054.MOD04_L2a.land.{{window_begin}}.nc4'
observed variables:
- aerosolOpticalDepth
simulated variables:
- aerosolOpticalDepth
channels: 1

obs operator:
name: AodExt
nprofiles: 2
bkg_wavelengths: [470.0, 550.0]
doing_log_transform_aod: false
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
cycle_times:
default_value: ['T00', 'T06', 'T12', 'T18']
options: ['T00', 'T06', 'T12', 'T18']
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
background_experiment:
default_value: x0054
options:
- x0054

background_frequency:
default_value: PT3H

# How long before the middle of the analysis window did
# the background providing forecast begin?
background_time_offset:
default_value: PT9H

clean_patterns:
default_value:
- '*.nc4'
- '*.txt'
- logfile.*.out
options:
- '*.nc4'
- '*.txt'
- logfile.*.out

horizontal_resolution:
default_value: '181'
options:
- '91'
- '181'

npx_proc:
default_value: 4

npy_proc:
default_value: 4

observations:
default_value:
- mod04_l2a_land
options:
- mod04_l2a_land

obs_experiment:
default_value: None

# obs needs to be in {ioda_locations_not_in_r2d2}/{cycle}/{model}
ioda_locations_not_in_r2d2:
default_value: /discover/nobackup/projects/gmao/dadev/rtodling/archive/542/prePP/ioda

vertical_resolution:
default_value: '72'
options:
- '72'

window_length:
default_value: PT6H

window_type:
default_value: 3D
6 changes: 6 additions & 0 deletions src/swell/configuration/jedi/observation_ioda_names.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -538,3 +538,9 @@ ioda instrument names:
full name: OMPS total column O3 (Nadir Mapper)
inst type: retrieval
provider : nasa
# Aero
- ioda name: mod04_l2a_land
full name: MODIS AOD
inst type: retrieval
provider : nasa

2 changes: 1 addition & 1 deletion src/swell/suites/3dfgat_atmos/suite_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ class SuiteConfig(QuestionContainer, Enum):
]),
qd.horizontal_resolution("91"),
qd.geos_x_background_directory("/discover/nobackup/projects/gmao/"
"dadev/rtodling/archive/Restarts/JEDI/541x"),
"dadev/rtodling/archive/Restarts/JEDI/541x/91/x0050/rs"),
qd.window_type("4D"),
qd.observations([
"aircraft_temperature",
Expand Down
2 changes: 1 addition & 1 deletion src/swell/suites/3dvar_atmos/suite_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ class SuiteConfig(QuestionContainer, Enum):
"T18"
]),
qd.geos_x_background_directory("/discover/nobackup/projects/gmao/"
"dadev/rtodling/archive/Restarts/JEDI/541x"),
"dadev/rtodling/archive/Restarts/JEDI/541x/91/x0050/rs"),
qd.window_length("PT6H"),
qd.window_type("3D"),
qd.horizontal_resolution("91"),
Expand Down
2 changes: 1 addition & 1 deletion src/swell/suites/hofx/suite_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class SuiteConfig(QuestionContainer, Enum):
geos_atmosphere=[
qd.horizontal_resolution("91"),
qd.geos_x_background_directory("/discover/nobackup/projects/gmao/dadev/"
"rtodling/archive/Restarts/JEDI/541x"),
"rtodling/archive/Restarts/JEDI/541x/91/x0050/rs"),
qd.npx_proc(2),
qd.npy_proc(2),
qd.observations([
Expand Down
Loading
Loading