jgfs_wave_postpnt ecf (v17) Analysis - TerrenceMcGuinness-NOAA/global-workflow GitHub Wiki
Branch / tenant: dev/gfs.v17 (gw_v17)
Path: ecf/scripts/gfs/product/wave/station/jgfs_wave_postpnt.ecf
Analysis date: 2026-06-11
Method: AWS Bedrock AgentCore agentcore-mcp-rag MCP cross-checked against the
on-disk v17 worktree.
jgfs_wave_postpnt.ecf is the NCO production ecFlow task that generates wave
station/point output — both spectral data and text bulletins — from WaveWatch III model
output at configured buoy and coastal observation locations. It is a single-instance
task per cycle calling JGLOBAL_WAVE_POST_PNT, which drives the shared
exglobal_wave_post_pnt.sh in full spectral + bulletin mode (but NOT boundary points).
#PBS -S /bin/bash
#PBS -N gfs_wave_postpnt_%CYC%
#PBS -j oe
#PBS -q %QUEUE%
#PBS -A %PROJ%-%PROJENVIR%
#PBS -l walltime=00:35:00
#PBS -l select=1:mpiprocs=40:ompthreads=1:ncpus=40
#PBS -l place=vscatter:shared
#PBS -l debug=true
model=gfs
export cyc="%CYC%"
%include <head.h>
%include <envir-p1.h>
############################################################
# Load modules
############################################################
source ${HOMEgfs}/dev/ush/load_modules.sh ufswm
module list
############################################################
# CALL executable job script here
############################################################
export CDATE=${PDY}${cyc}
export HOMEglobal=${HOMEgfs}
#### ${HOMEgfs}/dev/job_cards/rocoto/wavepostpnt.sh
${HOMEgfs}/jobs/JGLOBAL_WAVE_POST_PNT
if [ $? -ne 0 ]; then
ecflow_client --msg="***JOB ${ECF_NAME} ERROR RUNNING J-SCRIPT ***"
ecflow_client --abort
exit
fi
%include <tail.h>
%manual
%end| Section | Role |
|---|---|
#PBS directives |
PBS Pro: 1 node, 40 mpiprocs/cpus, 35-min wall, shared placement. |
load_modules.sh ufswm |
Loads UFS Weather Model modules (needed for WW3 post tools). |
No WGF/FHR exports |
Single-instance per cycle. |
${HOMEgfs}/jobs/JGLOBAL_WAVE_POST_PNT |
The J-Job. |
ecf/defs/gfs_prod.def : task jgfs_wave_postpnt
+-- jgfs_wave_postpnt.ecf (PBS submit)
+-- ${HOMEgfs}/jobs/JGLOBAL_WAVE_POST_PNT (J-Job)
+-- ${SCRglobal}/exglobal_wave_post_pnt.sh (shared ex-script)
+-- ww3_outp (spectral + bulletin output)
The J-Job runs the shared wave point post-processing script in full station mode:
| Flag | Value | Effect |
|---|---|---|
DOSPC_WAV |
YES |
Generate spectral output at stations |
DOBLL_WAV |
YES |
Generate bulletin text output |
DOBNDPNT_WAV |
NO |
Do NOT process boundary points (that's a separate task) |
FHMAX_WAV_PNT |
FHMAX_WAV - OFFSET_START_HOUR |
Full forecast hour range |
Output:
- Wave spectral data at all configured buoy/station locations
- Wave bulletin text products at stations
- All output to
${COMOUT_WAVE_STATION}/
This is the primary wave point output task — it feeds downstream bulletin and AWIPS tasks.
Uses the EE2-correct pattern: && true + err_exit.
| Variable | Origin | Meaning |
|---|---|---|
COMIN_WAVE_INIT |
J-Job (declare -rx) |
Wave initialization (mod_def files). |
COMIN_WAVE_HISTORY |
J-Job (declare -rx) |
Wave model history output. |
COMOUT_WAVE_STATION |
J-Job (declare -rx) |
Output: wave station products. |
FHMAX_WAV |
config.wave | Max forecast hour for wave model. |
OFFSET_START_HOUR |
config.wavepostpnt | Hour offset for point output start. |
DOSPC_WAV / DOBLL_WAV / DOBNDPNT_WAV
|
J-Job | Processing mode flags. |
Sources jjob_header.sh -e "wavepostpnt" -c "base wave wavepostgridded wavepostpnt".
-
Shared ex-script: uses
exglobal_wave_post_pnt.sh(same aspostbndpntbllandpostbndpnt), differentiated byDOSPC/DOBLL/DOBNDPNTflags. -
Primary station output task: feeds downstream
jgfs_wave_awips_bulls. - UFS modules required for WW3 point output tools.
-
40 cpus, 35-min wall — longer than
postbndpntbllbecause it processes all stations (not just boundary points) with full spectral output. -
Centralized module loading via
load_modules.sh ufswm.
| Symbol | Change type | Risk | Direct dependents |
|---|---|---|---|
JGLOBAL_WAVE_POST_PNT |
behavior | LOW (per graph) | Feeds jgfs_wave_awips_bulls downstream |
exglobal_wave_post_pnt.sh |
signature | MEDIUM | Shared by 3 wave post tasks |
- On-disk v17 worktree:
ecf/scripts/gfs/product/wave/station/jgfs_wave_postpnt.ecf,dev/jobs/JGLOBAL_WAVE_POST_PNT. -
agentcore-mcp-ragMCP (tenantgw_v17): on-disk analysis.