SNAP Package Description

SNAP Directory Structure

The SNAP package contains the following directories:

Example Applications

Functionality of the Core SNAP Library

Brief description of SNAP functionality implemented in various files in the distribution package:

snap-core
alg.hSimple algorithms like counting node degrees, simple graph manipulation (adding/deleting self edges, deleting isolated nodes) and testing whether graph is a tree or a star.
anf.hApproximate Neighborhood Function: linear time algorithm to approximately calculate the diameter of massive graphs.
bfsdfs.hAlgorithms based on Breath First Search (BFS) and Depth First Search (DFS): shortest paths, spanning trees, graph diameter, and similar.
bignet.hMemory efficient implementation of a network with data on nodes. Use when working with very large networks.
centr.hNode centrality measures: closeness, betweenness, PageRank, ...
cmty.hAlgorithms for network community detection: Modularity, Girvan-Newman, Clauset-Newman-Moore.
cncom.hConnected components: weakly, strongly and biconnected components, articular nodes and bridge edges.
ff.hForest Fire model for generating networks that densify and have shrinking diameters.
gbase.hDefines flags that are used to identify functionality of graphs.
ggen.hVarious graph generators: random graphs, copying model, preferential attachment, RMAT, configuration model, Small world model.
ghash.hHash table with directed graphs (TNGraph) as keys. Uses efficient adaptive approximate graph isomorphism testing to scale to large graphs. Useful when one wants to count frequencies of various small subgraphs or cascades.
gio.hGraph input output. Methods for loading and saving various textual and XML based graph formats: Pajek, ORA, DynNet, GraphML (GML), Matlab.
graph.hImplements graph types TUNGraph, TNGraph and TNEGraph.
gstat.hComputes many structural properties of static and evolving networks.
gsvd.hEigen and singular value decomposition of graph adjacency matrix.
gviz.hInterface to Graphviz.
kcore.hK-core decomposition of networks.
network.hImplements network types TNodeNet, TNodeEDatNet and TNodeEdgeNet.
Snap.hMain include file of the library.
statplot.hPlots of various structural network properties: clustering, degrees, diameter, spectrum, connected components.
subgraph.hExtracting subgraphs and converting between different graph/network types.
timenet.hTemporally evolving networks.
triad.h Functions for counting triads (triples of connected nodes in the network) and computing clustering coefficient.
util.hUtilities to manipulate PDFs, CDFs and CCDFs. Quick and dirty string manipulation, URL and domain manipulation routines.
snap-adv
agm.hImplements the Affiliation Graph Model (AGM).
cliques.hMaximal clique detection and Clique Percolation method.
graphcounter.hPerforms fast graph isomorphism testing to count the frequency of topologically distinct sub-graphs.
kronecker.hKronecker Graph generator and KronFit algorithm for estimating parameters of Kronecker graphs.
mag.hImplements the Multiplicative Attribute Graph (MAG).
ncp.hNetwork community profile plot. Implements local spectral graph partitioning method to efficiently find communities in networks.
subgraphenum.hSub-graph enumeration and network motif computations.
snap-exp
arxiv.hFunctions for parsing Arxiv data and standardizing author names.
dblp.hParser for XML dump of DBLP data.
imdbnet.hActors-to-movies bipartite network of IMDB.
mxdag.hFinds the maximum directed-acyclic subgraph of a given directed graph.
signnet.hNetworks with signed (+1, -1) edges that can denote trust/distrust between the nodes of the network.
sir.h SIR epidemic model and SIR parameter estimation.
spinn3r.hPast parser for loading blog post data from Spinn3r.
trawling.hAlgorithm of extracting bipartite cliques from the network.
wgtnet.hWeighted networks.
wikinet.hNetworks based on Wikipedia.