jgfs_wave_postbndpnt 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_postbndpnt.ecf
Analysis date: 2026-06-11
Method: AWS Bedrock AgentCore agentcore-mcp-rag MCP cross-checked against the
on-disk v17 worktree.
jgfs_wave_postbndpnt.ecf is the NCO production ecFlow task that generates wave
boundary-point spectral data from WaveWatch III model output. These are spectral output
files at boundary forcing locations used by nested regional wave models (e.g., NAH, NAO
regional WW3 domains). It is a single-instance task per cycle calling
JGLOBAL_WAVE_POST_BNDPNT, which drives the shared exglobal_wave_post_pnt.sh in
boundary-point spectral mode (no bulletins).
#PBS -S /bin/bash
#PBS -N gfs_wave_postbndpnt_%CYC%
#PBS -j oe
#PBS -q %QUEUE%
#PBS -A %PROJ%-%PROJENVIR%
#PBS -l walltime=00:30: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/wavepostbndpnt.sh
${HOMEgfs}/jobs/JGLOBAL_WAVE_POST_BNDPNT
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, 30-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_BNDPNT |
The J-Job. |
ecf/defs/gfs_prod.def : task jgfs_wave_postbndpnt
+-- jgfs_wave_postbndpnt.ecf (PBS submit)
+-- ${HOMEgfs}/jobs/JGLOBAL_WAVE_POST_BNDPNT (J-Job)
+-- ${SCRglobal}/exglobal_wave_post_pnt.sh (shared ex-script)
+-- ww3_outp (boundary-point spectral extraction)
The J-Job runs the shared wave point post-processing script in boundary-point spectral mode:
| Flag | Value | Effect |
|---|---|---|
DOSPC_WAV |
YES |
Generate spectral output at boundary points |
DOBLL_WAV |
NO |
Do NOT generate bulletin text |
DOBNDPNT_WAV |
YES |
Process boundary points specifically |
FHMAX_WAV_PNT |
${FHMAX_WAV_IBP} |
Max forecast hour for boundary points |
Output: Wave spectral boundary-condition files at forcing locations, used by
regional/nested wave models. Output to ${COMOUT_WAVE_STATION}/.
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/boundary products. |
FHMAX_WAV_IBP |
config.wavepostbndpnt | Max forecast hour for boundary points. |
DOSPC_WAV / DOBLL_WAV / DOBNDPNT_WAV
|
J-Job | Processing mode flags. |
Sources jjob_header.sh -e "wavepostbndpnt" -c "base wave wavepostgridded wavepostbndpnt".
-
Shared ex-script: third variant of
exglobal_wave_post_pnt.shalongsidepostpnt(DOSPC+DOBLL) andpostbndpntbll(DOBLL+DOBNDPNT). This one does spectral-only for boundary points (DOSPC+DOBNDPNT, no bulletins). - Purpose: provides boundary spectral data for regional wave model nesting, distinct from station bulletins (which are for forecasters).
- UFS modules required for WW3 point output tools.
- 40 cpus, 30-min wall — moderate for boundary point extraction.
-
Centralized module loading via
load_modules.sh ufswm.
| Task | DOSPC | DOBLL | DOBNDPNT | Purpose |
|---|---|---|---|---|
jgfs_wave_postpnt |
YES | YES | NO | Station spectral + bulletins |
jgfs_wave_postbndpnt |
YES | NO | YES | Boundary-point spectral (nesting) |
jgfs_wave_postbndpntbll |
NO | YES | YES | Boundary-point bulletins |
All three use the same exglobal_wave_post_pnt.sh ex-script, differentiated by flags.
| Symbol | Change type | Risk | Direct dependents |
|---|---|---|---|
JGLOBAL_WAVE_POST_BNDPNT |
behavior | LOW | 0 (suite leaf) |
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_postbndpnt.ecf,dev/jobs/JGLOBAL_WAVE_POST_BNDPNT. -
agentcore-mcp-ragMCP (tenantgw_v17): on-disk analysis.