Radatools
Communities detection in complex networks and other tools
Index
Description
Radatools is a set of freely distributed programs to analyze Complex Networks. In particular, it includes programs for Communities Detection, Mesoscales Determination, calculation of Network Properties, and general tools for the manipulation of Networks and Partitions. There are also several programs not strictly related with networks, standing out one for Agglomerative Hierarchical Clustering using MultiDendrograms and Binary Dendrograms.
Radatools is just a set of binary executable programs whose source code is available in Radalib. Radalib is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License version 2.1 as published by the Free Software Foundation.
Main programs
The main programs included in the current version of Radatools are:

Communities_Detection:
Community detection in Complex Networks by optimization of modularity. It is prepared to work with: unweighted [1] and weighted [2] networks
 undirected [1] and directed [3] networks
 positive [1] and signed [4] networks
 exhaustive search
 tabu search [5]
 extremal optimization [6]
 spectral optimization [7]
 fast algorithm [8]
 finetuning by reposition
 finetuning by bootstrapping based on tabu search [5]
It is possible to add a common selfloop to all nodes to analyze the communities at any resolution level [5].
Please be kind to cite the corresponding articles when you use these tools.

Mesoscales_Search:
Implements the strategy in [5,9] for the determination of the community structure of complex networks at different resolution levels, thus finding the whole mesoscale, from all nodes in one community (macroscale) to every node forming its own community (microscale). It is based on the addition of a common selfloop to all nodes, and the optimization of modularity [1,2,3] using the same heuristics as in Communities_Detection.

Network_Properties:
Calculate many global, nodes and edges properties of a network: Global: connectedness (weak or strong), degrees and strengths (total, average, maximum and minimum), asymmetry, reciprocity, average entropy,, assortativity (Pearson and Spearman) and estimated error, average clustering coefficient, average path length, diameter and efficiency
 Nodes: degree, strength, entropy, clustering, path length (average and maximum),efficiency and betweenness
 Edges: betweenness
 Distributions: degree (PDF and CCDF)
 Distances: between all pairs of nodes

Compare_Partitions:
Calculate similarity and dissimilarity indices between two partitions: Counters: number of pairs, agreements, and disagreements
 Similarity indices: Jaccard, Rand, adjusted Rand, Fowlkes Mallows, normalized mutual information, and asymmetric Wallace index
 Dissimilarity indices: Mirkin, van Dongen, and variation of information metrics, and their normalized versions

Hierarchical_Clustering:
Agglomerative Hierarchical Clustering with MultiDendrograms and Binary Dendrograms, for distances and similarities. The main characteristics are: Algorithms implemented: single linkage, complete linkage, unweighted average, weighted average, unweighted centroid, weighted centroid and Ward
 For Binary Dendrograms, in case of ties, many dendrograms may exist, and this tool can enumerate or count all of them, or choose the one with maximum cophenetic correlation
 MultiDendrograms solve this nonuniqueness problem generating always a unique dendrogram [10]
See MultiDendrograms for an alternative open source and multiplatform application to build and plot MultiDendrograms, with graphical user interface.
Complete list
The complete list of programs included in the current version of Radatools is organized in the following folders:

Communities_Detection:

Communities_Detection
Community detection in complex networks by optimization of modularity, using the following heuristics: (h) exhaustive, (t) tabu, (e) extremal, (s) spectral, (f) fast, (r) finetuning by reposition, (b) finetuning based on tabu 
Mesoscales_Detection
Mesoscales detection in complex networks by optimization of modularity for variable common selfloops 
Mesoscales_Fine_Tuning
Fine Tuning of the mesoscales obtained with Mesoscales_Detection

Communities_Detection

Communities_Tools:

Communities_Network
Given a network and a community, returns the weighted network of communities 
Compare_Partitions
Calculate similarity and dissimilarity indices between two partitions 
Convert_Clu_To_Lol
Convert a partition in Pajek format (*.clu) into a partition in our Lol format 
Convert_Lol_To_Clu
Convert a partition in our Lol format into a partition in Pajek format (*.clu) 
Modularity_Calculation
Calculate the modularity of a partition of a network, detailing the contributions of individual nodes and communities 
Reformat_Partitions
Reformat partitions in Pajek and Lol formats changing nodes' indices by nodes' names 
Size_Reduction
Elimination of simple and triangular 'hairs' of a network to speedup modularity optimization 
Size_Reduction_Lol_Expand
Convert a partition of a sized reduced network into a partition of the original network

Communities_Network

Data:

Data_Statistics
Calculate statistics of rows or columns in a data file 
Data_To_Correlations
Calculate the correlations network of a data file 
Data_To_Proximities
Calculate many types of proximities (distances or similarities) between rows or columns in a data file 
Hierarchical_Clustering
Agglomerative hierarchical clustering with multidendrograms and binary dendrograms

Data_Statistics

Network_Properties:

Connected_Subgraphs
Split a network into its (weak or strong) connected components 
Links_Info
Calculate the degrees and strengths of the nodes attached to each link in a network 
Network_Properties
Calculate many properties of a network, including connectedness, degrees, strengths, clustering coefficients, assortativities, path lengths, efficiencies, diameters, entropies and betweenness. Handles all kinds of networks, even weighted, directed and signed

Connected_Subgraphs

Network_Tools:

Extract_Subgraphs
Create subgraphs of a graph 
List_To_Net
Convert a network in list format to Pajek format (*.net) 
Matrix_To_List
Convert a matrix to list format 
Matrix_To_Net
Convert a network in matrix format to Pajek format (*.net) 
Multiplex_Aggregate
Calculate the aggregate network of a multiplex network 
Multiplex_Extract_Layers
Extract the layers of a multiplex network 
Net_To_List
Convert a network in Pajek format (*.net) to list format 
Net_To_Matrix
Convert a network in Pajek format (*.net) to matrix format 
Sort_Nodes
Sort nodes of a network randomly or according to degree 
Spanning_Tree
Calculate the minimum and maximum spanning tree of a graph 
Symmetrize_Network
Symmetrization of a directed graph

Extract_Subgraphs
Download
 Windows 32 and 64 bits: radatools4.1win32.zip
 Linux 64 bits: radatools4.1linux64.tar.gz

Mac OS X: radatools4.1mac.tar.gz
 README: txt, pdf
 CHANGES: txt, pdf
 USAGE: txt, pdf

LICENSE: txt, pdf
 Source code: see Radalib
Installation
No installation needed, just uncompress the downloaded file. See the README and USAGE files for some information to run each program.
References
[1] 
M.E.J. Newman and M. Girvan
Finding and evaluating community structure in networks Physical Review E 69 (2004) 026113 
[2] 
M.E.J. Newman
Analysis of weighted networks Physical Review E 70 (2004) 056131 
[3] 
Alex Arenas, Jordi Duch, Alberto Fernández and Sergio Gómez
Size reduction of complex networks preserving modularity New Journal of Physics 9 (2007) 176 (pdf) (doi) (IOP open access) 
[4] 
Sergio Gómez, Pablo Jensen and Alex Arenas
Analysis of community structure in networks of correlated data Physical Review E 80 (2009) 016114 (pdf) (doi) (APS) 
[5] 
Alex Arenas, Alberto Fernández and Sergio Gómez
Analysis of the structure of complex networks at different resolution levels New Journal of Physics 10 (2008) 053039 (pdf) (doi) (IOP open access) 
[6] 
Jordi Duch and Alex Arenas
Community detection in complex networks using extremal optimization Physical Review E 72 (2005) 027104 (doi) (APS) 
[7] 
M.E.J. Newman
Modularity and community structure in networks Proc. Nat. Acad. Sci. USA 103 (2006) 8577 
[8] 
M.E.J. Newman
Fast algorithm for detecting community structure in networks Physical Review E 69 (2004) 066133 
[9] 
Clara Granell, Sergio Gómez and Alex Arenas
Mesoscopic analysis of networks: applications to exploratory analysis and data clustering Chaos 21 (2011) 016102 (pdf) (doi) (AIP) 
[10] 
Alberto Fernández and Sergio Gómez
Solving nonuniqueness in agglomerative hierarchical clustering using Multidendrograms Journal of Classification 25 (2008) 4365 (pdf) (doi) (Springer) 