RivEX can take a point layer which could represent the locations of survey sites and calculate the distance to source.  The source is defined as the point furthest away from the network mouth upstream of your input site.  In the image below the green point represents a site and the red point is the source that is identified.  The magenta dashed line has been added simply to visualise the route taken, it is not a "shape" that is created

Whats calculated

Your points must be snapped to the river network and can be distributed throughout all sub-catchments.

If RivEX is unable to determine the source (e.g. your network has gridded sections that go around in loops) then the output values will default to -1.

This tool locates sources by subtracting the differences in distance to network mouth encoded into each polyline.  It is not a route finding tool, such as network tracing and thus does not encode the network with the route to source.  It is possible that the distance reported from site to source is not the shortest when there are braids or loops within the network. 

The source ID returned is the FROM node ID of the polyline and not the ID of the polyline.

In special cases RivEX will return a negative distance to source, this is clearly incorrect!  The assumption behind the processing algorithms are that the network drains to the a single mouth at the coast.  Negative values are generated because a network mouth is located within a catchment and not at the coast.  These can be genuine channels draining into a canal or sink holes. 

As RivEX cannot distinguish between mouths within catchments and mouths at the coast the distance to mouth algorithm overwrite values.  The image below demonstrates such an example. Polylines upstream of mouth "A" have ended up being coded to drain to "A". The polyline the site is on drains to Mouth "B" which is much further away.  When it locates the furthest source upstream this is much closer to "A" and when RivEX subtracts the distance to mouth of the polyline that the site is on this leads to a negative value. 

Mouths in network issue

To use this tool select the point layer (which must be snapped points) and the unique ID field. If your point layer has an existing selection, then ticking the check box "Use only selected sites" will ensure only these points will be used in the analyses. 

All RivEX generated fields must exist as well as the segment ID tables. Click OK and the tool will execute.

Find source dialog

Output is written to a dBase file and stored in the networks RivEX_Workspace\Output folder. The name given to this file is the name of the point layer with the suffix of "_Sources".  The field headings have to be 10 characters or less to be a valid dBase field therefore abbreviations are used and are described below. 

Field name



Object ID (ESRI default)


The site ID number


The catchment ID number


The source ID number


The distance from source to mouth


The distance from site to mouth


The distance from site to source


The ID of the polyline that the site intersects