This algorithm only accepts networks with undirected edges. It cannot work with directed edges.

This algorithm is mislabeled. It calculates the total edge degree *degree(edge[s, t])* as a function of total node degree (*degree(node[s])* * *degree(node[t])*), where:

*degree(edge[s, t])*=*degree(node[s])***degree(node[t])**degree(node[s])*= total degree of*node[s]*= number of edges*node[s]*is connected to*degree(node[t])*= total degree of*node[t]*= number of edges*node[t]*is connected to

Even though this algorithm calculates the total node degree internally, it does not annotate the output network with it. The output of this algorithm is the original network, but annotated with the calculated edge degree (edge) attribute, *endpointdegree*.

In addition to the annotated network, there are two other output files that this algorithm produces:

*Average Weight as a Function of End-Point-Degree with Linear Binning*- Again, this is mislabeled. This file contains the center values of the linearly-binned total edge degrees.

*Average Weight as a Function of End-Point-Degree with Logarithmic Binning*- This file contains the center values of the logarithmically-binned total edge degrees.

This algorithm was written by Duygu Balcan and integrated by Russell Duhon.