procope.methods.clustering
Class MarkovClusterer

java.lang.Object
  extended by procope.methods.clustering.MarkovClusterer
All Implemented Interfaces:
Clusterer

public class MarkovClusterer
extends Object
implements Clusterer

Performs clustering using the Markov Cluster Algorithm as proposed in the PhD thesis Graph Clustering by Flow Simulation by Stijn van Dongen.

Note: This class does not contain an actual implementation but an interface to the binaries of the mcl algorithm. Thus it requires the mcl program to be installed on the system it is executed on.

See also: http://micans.org/mcl/

Author:
Jan Krumsiek

Field Summary
static String DEFAULT_BINARY
          Default MCL binary: mcl, requires this binary in the current PATH
 
Constructor Summary
MarkovClusterer()
          Creates an MCL cluster with default parameters.
MarkovClusterer(MCLParameters params)
          Creates an MCL clusterer with a given set of parameters.
 
Method Summary
 ComplexSet cluster(ProteinNetwork net)
          Perform MCL clustering.
 MCLParameters getParamemeters()
          Returns the mcl parameters for this clusterer
static void setMCLBinary(String path)
          Sets the path to the mcl binary to be used.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_BINARY

public static final String DEFAULT_BINARY
Default MCL binary: mcl, requires this binary in the current PATH

See Also:
Constant Field Values
Constructor Detail

MarkovClusterer

public MarkovClusterer()
Creates an MCL cluster with default parameters.


MarkovClusterer

public MarkovClusterer(MCLParameters params)
Creates an MCL clusterer with a given set of parameters.

Parameters:
params - MCL parameters to be used for this clusterer
Method Detail

getParamemeters

public MCLParameters getParamemeters()
Returns the mcl parameters for this clusterer

Returns:
parameters for this clusterer

cluster

public ComplexSet cluster(ProteinNetwork net)
Perform MCL clustering. Ensure that the mcl binary is in the current PATH or set the path to that binary using setMCLBinary(String)

Specified by:
cluster in interface Clusterer
Parameters:
net - similarity network which will be clustered
Returns:
the resulting clustering
Throws:
ProCopeException - if and error occurs during the execution of the mcl binary

setMCLBinary

public static void setMCLBinary(String path)
Sets the path to the mcl binary to be used. This method is static and the binary valid for all MCL clusterer objects.

Parameters:
path - mcl binary to be used