Careless digitising, topographic features and unnatural drainage patterns can all generate sources within a network. This tool identifies the nodes that are acting as sources but not at the end of a network.

The logic used to identify a source within the network is:

1.Identify all nodes which have no polylines flowing INTO them. 

2.Having located all nodes identified by rule 1 select those which have a valency of 2 or more. A normal source would have a single polyline flowing AWAY from it (this is a valency of 1). 

The above logic will also identify the unusual situation of a source acting as a bifurcation. This is shown in the image below (indicated by arrow). Here the source (red) has a valency of 2, but both downstream polylines feed into the same catchment. 

A source with valency of 2

If you come across a single source node which is reporting a valency of 2 yet visually there appears to be a single channel flowing away from the node, then you probably have a polyline that is double digitised where the second polyline is an exact copy.

Grid like drainage patterns will generate sources within a network, as shown below, but in this example it generates a logical flow away from the source as indicated by the arrows directions. 


Poor digitising (or automated vectorisation) can create polylines that flow towards each other. In the image below sources (red) flow towards mouths (magenta) within a single river reach. 

Poor vectorization

Saddles are low points on ridges.  They are usually flat, wetland regions where streams form and start to flow downstream.  It is quite possible to have streams that flow in opposite directions.  Sometimes networks connect catchments at these points and whilst the polylines do flow in opposite directions your actual tracing algorithm may use this as a genuine network link to traverse along which would ultimately generate incorrect data (below the saddle is acting as a short-cut). 

Short-cut saddle

This tool generates an error log file called Saddles.txt