descriptionA list-colored graph motif finder
homepage URL
last changeMon, 22 Oct 2012 18:55:51 +0000 (22 22:25 +0330)
content tags

RANGI finds colored motifs in list-colored graphs.  You'll need a POSIX
environment to compile this program.

To compile it, simply run make.  rangi is the main program:

  $ make
    # compiles rangi
  $ ./rangi -h
    # shows available options
  $ ./rangi <test1.rangi
    # finds motifs of the largest size in test1.rangi
  $ ./rangi -s 3 <test1.rangi
    # finds motifs of size 3 in the graph specified in test1.rangi
  $ ./rangi -s 3+ <test1.rangi
    # finds largest motifs in test1.rangi starting from size 3
  $ ./rangi -s 3- <test1.rangi
    # finds largest motifs in test1.rangi that have at most 3 vertices
  $ ./rangi -s 3 -n 4 <test1.rangi
    # finds motifs of size 3 using 4 threads

Input graphs should be in RANGI graph format.


RANGI expects the following format for the input list-colored graph:

* The first number in the file indicates the number of nodes.
* Next, each of the nodes are described: the name of each node is
  followed by its list of colors terminated with -1, all separated
  with spaces.
* The edges of the graph are described next: each edge is defined
  as a triple of the name of its endpoints and its weight.  The
  list of the edges are read until end of file is reached.

For instance the input file containing:

  v1 1 -1
  v2 2 -1
  v3 3 -1
  v4 4 -1
  v1 v2 100
  v2 v3 200
  v3 v4 100

Describes a graph with 4 nodes (v1 with color 1, v2 with color 2, v3 with
color 3 and v4 with color 4) with three edges of weight 100, 200 and 100.


The included script creates RANGI input files for
protein interaction networks.  You'll need the blast program
(; pre-compiled versions of blast are
available in many fameous Linux distributions as blast2.

The biological files (network interactions, FASTA and
complexes files) can be obtained from GraMoFoNe's website
(  I've already created RANGI
input files for the networks in that page using blast2-2.2.24, which
can be obtained from:


* meval: counts the number of complexes containing a motif
* genrq: generate random queries from a network
* fastafilt: create a new FASTA based on the given complexes (
* bl2exp: extract blast E-values (
* conv: create RANGI input files from bl2exp output and queries (
2012-10-22 Ali Gholami... README: mentioning other make targets seem unnecessarymaster
2012-10-22 Ali Gholami... README: update the address of rangi.dat.tar.gz
2012-10-19 Ali Gholami... rangi: check the number of vertices in reachable() too
2012-10-19 Ali Gholami... rangi: improve some of the comments
2012-10-18 Ali Gholami... rangi: clear used[] if the matching test fails in kavosh
2012-10-17 Ali Gholami... rangi: add -v to print the motifs as they are detected
2012-10-17 Ali Gholami... rangi: perform the matching test based on the # of...
2012-10-17 Ali Gholami... README: briefly introduce programs besides rangi
2012-10-17 Ali Gholami... README: document the new file format and
2012-10-17 Ali Gholami... create rangi inputs from biological files
2012-10-17 Ali Gholami... rangi: skip roots without nsub colors in their neighborhood
2012-10-16 Ali Gholami... test: dot files are no longer supported
2012-10-16 Ali Gholami... bl2exp: extract blast e-value from blastp output
2012-10-16 Ali Gholami... fastafilt: filter fasta files based on its complexes
2012-10-16 Ali Gholami... meval: count the complexes containing a motif
2012-10-16 Ali Gholami... rangi: -m uses matching to identify infeasible subgraphs
6 years ago master
6 years ago xaiv