Issue with CHANOBS Gauge Detection and Request for Guidance on PyWrfHydroCalib Workflow

41 views
Skip to first unread message

Fructueux EHOUINSOU

unread,
Mar 3, 2026, 5:35:49 AM (10 days ago) Mar 3
to wrf-hyd...@ucar.edu

Hello everyone, I hope this message finds you well.

I am currently running simulations with WRF-Hydro and encountering an issue related to the CHANOBS output. Although seven gauge stations are specified in the Build_Routing_Stack script, only two stations are detected during the simulation, while the remaining five are not recognized.

I have carefully verified the following points:

  • The latitude and longitude coordinates are provided in decimal degrees (WGS84).

  • All stations are located within the model domain.

  • CHANOBS is properly activated in the hydro.namelist file.

Despite these checks, five stations still do not appear in the simulation output. I would appreciate any guidance on possible causes of this issue or additional diagnostics I should perform. If helpful, I can share the chanobs file, the hydro.namelist configuration, and relevant log excerpts for further review.

In addition, I am preparing to conduct a manual calibration using the PyWrfHydroCalib workflow. However, I am experiencing some difficulty understanding the recommended sequence of steps and the correct organization of the required files. Any clarification, documentation references, configuration examples, or tutorials would be greatly appreciated.

Thank you very much for your time and support.

Kind regards,

--

Ehouinsou F.

Kevin Sampson

unread,
Mar 3, 2026, 9:53:44 AM (10 days ago) Mar 3
to wrf-hydro_users, Fructueux EHOUINSOU
Ehouinsou F.,

Have you verified that each of your forecast points were properly registered on a gridded channel cell in the CHANNELGRID variable in the output Fulldom_hires.nc file? If the coordinates you provided could not be snapped to the nearest channel cell within the snapping tolerance (the width of 3 grid-cells by default), then these locations will not register streamflow.

Kevin

Kevin Sampson

unread,
Mar 4, 2026, 11:53:05 AM (9 days ago) Mar 4
to wrf-hydro_users, Kevin Sampson, Fructueux EHOUINSOU
Ehouinsou F.,

It is expected that CHANNELGRID have values of 0 over channel cells and -9999 for non-channels. There are other values that the model may consider, but you will need to consult the documentation for details. The location of the forecast points in the gridded routing scheme in WRF-Hydro is the 'frxst_pts' variable in Fulldom_hires.nc. In order to ensure that these forecast points were properly snapped to the channel grid, you will want to export frxst_pts (which also has -9999 values for nodata) and overlay it with CHANNELGRID. Look at each positive value in frxst_pts and ensure that the location is coincident with a channel cell (where CHANNELGRID >= 0).

Kevin

Kevin Sampson

unread,
Mar 6, 2026, 10:24:10 AM (7 days ago) Mar 6
to wrf-hydro_users, Kevin Sampson, Fructueux EHOUINSOU
Ehouinsou F.,

It looks like this is a reach-based configuration of WRF-Hydro. The message from the log file indicates that 7 forecast points were present in the frxst_pts grid. However, it does not necessarily mean that each forecast point was located on a valid channel. The log message could be improved to indicate how many forecast points were located on valid grid cells. 

I think you will find that only gages 4,5, and 7 were located on reaches in your RouteLink file. You can verify this by looking at the GIS Pre-processing output "streams.shp" shapefile. In the "GageID" field, you will see which reaches have a gage. You can also look at the RouteLink.nc 'gages' variable to find the correct mapping between forecast points and reach IDs.

This could be related to several factors, including the default snapping tolerance, the coordinates of your forecast points in the input CSV file, or the resulting channel density. Getting forecast points properly located in your domain is a very important step and often requires iteration and verification of the output location. There is a section on this very process in the GIS Pre-processing tool documentation. You will want to overlay your forecast point coordinates with the output CHANNELGRID layer, and you may need to alter your coordinates in order to get the forecast point located on the proper, representative channel cell. Note that there is a default snapping tolerance of 3 cell-widths. This can be changed by altering the "walker" variable in the GIS pre-processing python script. However, you should also know that the snapping algorithm will snap to the cell within the snapping distance with the highest flow accumulation value. Take special care to use coordinates that will achieve the resulting forecast point location that you require. You are also free to manually edit the frxst_pts grid layer and gages variable in RouteLink, as long as you adhere to the logic required by WRF-Hydro for these variables. 

Kevin 

Kevin Sampson

unread,
Mar 7, 2026, 10:46:49 AM (6 days ago) Mar 7
to wrf-hydro_users, Kevin Sampson, Fructueux EHOUINSOU
Ehouinsou F.,

You are welcome! Good luck in building your model configuration!

Kevin
Reply all
Reply to author
Forward
0 new messages