Skip to content

Instantly share code, notes, and snippets.

@sanAkel
Last active January 8, 2026 23:21
Show Gist options
  • Select an option

  • Save sanAkel/449fcb46f01d4e6184be64adb21dfec9 to your computer and use it in GitHub Desktop.

Select an option

Save sanAkel/449fcb46f01d4e6184be64adb21dfec9 to your computer and use it in GitHub Desktop.

Sources:

  • MOM6 from Zulema's experiment: /lfs/h2/emc/couple/noscrub/zulema.garraffo/FV3_RT/DATM_INPUT/GFS.20230301-20231231.nc_hCk_positive.nc
  • RTOFS my experiment: /lfs/h2/emc/couple/noscrub/santha.akella/prod/com/rtofs/v2.5/rtofs.20241208/
Field name Available to use in MOM6 Used in RTOFS Long name of field (units)
slmsksfc Y ? sea-land-ice mask (0-sea, 1-land, 2-ice) (1)
icecsfc Y ? sea-ice coverage/fraction, proportion (1)
--- --- --- ---
psurf Y ? surface pressure (Pa)
pres_hyblev1 Y ? layer 1 pressure (Pa)
hgt_hyblev1 Y ? layer 1 height (m)
--- --- --- ---
fprecp Y ? surface snow precipitation rate (kg/m**2/s)
totprcp_ave Y ? surface precipitation rate (kg/m**2/s)
precp Y ? surface rain precipitation rate (kg/m**2/s)
--- --- --- ---
DLWRF Y ? surface downward longwave flux (W/m**2)
DSWRF Y ? averaged surface downward shortwave flux (W/m**2)
vbdsf_ave Y ? Visible Beam Downward Solar Flux (W/m**2)
vddsf_ave Y ? Visible Diffuse Downward Solar Flux (W/m**2)
nbdsf_ave Y ? Near IR Beam Downward Solar Flux (W/m**2)
nddsf_ave Y ? Near IR Diffuse Downward Solar Flux (W/m**2)
ULWRF Y ? surface upward longwave flux (W/m**2)
shtfl_ave Y ? surface sensible heat flux (W/m**2)
lhtfl_ave Y ? surface latent heat flux (W/m**2)
--- --- --- ---
dusfc Y ? surface zonal momentum flux (N/m**2)
dvsfc Y ? surface meridional momentum flux (N/m**2)
u10m Y ? 10 meter u wind (m/s)
v10m Y ? 10 meter v wind (m/s)
ugrd_hyblev1 Y ? layer 1 zonal wind (m/s)
vgrd_hyblev1 Y ? layer 1 meridional wind (m/s)
--- --- --- ---
t2m Y ? 2m temperature (K)
q2m Y ? 2m specific humidity (kg/kg)
spfh_hyblev1 Y ? layer 1 specific humidity (kg/kg)
tmp_hyblev1 Y ? layer 1 temperature (K)

Analysis quality forcings used in RTOFS:

See files: /lfs/h2/emc/couple/noscrub/santha.akella/prod/com/rtofs/v2.5/rtofs.20241208/rtofs_glo.anal.*.b

airtmp
glbrad
lwdflx
precip
presur
radflx
shwflx
surtmp
vapmix
wndewd
wndnwd
wndspd

analysis cycle forcing (thanks to Dan):

/lfs/h1/ops/prod/com/gfs/v16.3/gdas.20241101/00/atmos/gdas.t00z.sfluxgrbf00*grib2

RTOFS DA uses hours = 1, 2, 3, 4, 5, 6 from any DA cycle. Hour "0" from previous cycle.

See listflx.dat in RTOFS dir

@sanAkel
Copy link
Author

sanAkel commented Jan 8, 2026

Next iteration follows.

Table of mapping variables from GFS (sflux) GRIB2 to UFS DATM NetCDF files


How was it generated?

1. Start with what is at the ufs-weather-model

2. Then modify it based on what is actually used by datm_datamode_gefs_mod.F90

Notes:

- GFS pressure levels are defined here; see HGT:1.

GRIB2 Search Key (Input) NetCDF forcing file variable name Name in datm_datamode_gefs_mod.F90 Checks and/or changes Avg forecast
:LAND:surface: slmsksfc Sa_mask None False
:HGT:1 hybrid level: hgt_hyblev1 Sa_z None False
:UGRD:1 hybrid level: ugrd_hyblev1 Sa_u None False
:VGRD:1 hybrid level: vgrd_hyblev1 Sa_v None False
:TMP:1 hybrid level: tmp_hyblev1 Sa_tbot None False
:PRES:1 hybrid level: pres_hyblev1 Sa_pbot None False
SPFH:1 hybrid level: spfh_hyblev1 Sa_shum where < 0 = 0. False
:UGRD:10 m above ground: u10m Sa_u10m None False
:VGRD:10 m above ground: v10m Sa_v10m None False
:TMP:surface: N/A N/A None False
:TMP:2 m above ground: t2m Sa_t2m where (tmp_sfc <= 271.35) t2m = 271.35 + t2m - tsfc False
:SPFH:2 m above ground: q2m Sa_q2m where <0 = 0. False
PRES:surface psurf Sa_pslv None False
DLWRF:surface DLWRF Faxa_lwdn None False
PRATE:surface N/A N/A Total precip. where < 0 = 0. True
CPOFP:surface N/A N/A Used to calculate partition of liquid/frozen precip
N/A precp Faxa_rain PRATE * (1-CPOFP*0.01) True
N/A frecp Faxa_snow PRATE * CPOFP*0.01 True
VBDSF:surface vbdsf_ave Faxa_swvdr where < 0 = 0. True
VDDSF:surface vddsf_ave Faxa_swvdf where < 0 = 0. True
NBDSF:surface nbdsf_ave Faxa_swndr where < 0 = 0. True
NDDSF:surface nddsf_ave Faxa_swndf where < 0 = 0. True

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment