JohannesBuchner / mcl

MCL - a cluster algorithm for graphs (from http://micans.org/mcl/)
Other
6 stars 1 forks source link

If you use MCL software in your research, cite it as you would cite a journal or a book. This includes papers published in regular or electronic journals, usage of MCL as a back-end to a database that is accessible via a web interface, or inclusion of MCL in a larger framework of software that is distributed for other people to use. Include at least one of the following citations:

  Stijn van Dongen, Graph Clustering by Flow Simulation.
  PhD thesis, University of Utrecht, May 2000.
  ( http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm )

  Stijn van Dongen. A cluster algorithm for graphs.  Technical Report
  INS-R0010, National Research Institute for Mathematics and Computer
  Science in the Netherlands, Amsterdam, May 2000.
  ( http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z )

and proper attributions to mcl's home http://micans.org/mcl/ and its author, Stijn van Dongen. Do this also if you are using some wrapper around mcl such as the blast module. For biological applications, it is appropriate to cite, additionally, the reference article for the first application of mcl to biological data:

  Enright A.J., Van Dongen S., Ouzounis C.A.
  An efficient algorithm for large-scale detection of protein families,
  Nucleic Acids Research 30(7):1575-1584 (2002).

Please be advised that the TribeMCL module has been disabled. BLAST users can use the blast package that is very well integrated with the core mcl libraries and offers many options and extensive configurability. Use mcxdeblast to parse BLAST files, use mcxassemble to transform the parser's output to mcl input. The Ensembl Families at ensembl.org are created with these programs.

It is also possible to use the pipeline script mclblastline that encapsulates mcxdeblast, mcxassemble, mcl, and clmformat (the latter prettyprints clustering results).

Finally, with mcl's new label streaming facilities it is possible to cluster directly from BLAST files. Refer to the mcl website for examples.

MCL documentation is in doc/, in various formats. It gets installed in

/share/doc/mcl/. A few example input graphs are in graphs/, in the mcl matrix format; these are installed in /share/doc/mcl/examples/. The MCL webpage is at http://micans.org/mcl/ . MCL usage and development is discussed on the mcl-users mailing list found at http://listserver.ebi.ac.uk/mailman/listinfo/mcl-users. You can use this forum also for asking any MCL-related question. The version tag, which is of the form dd-ddd, encodes the year and day in year in which the distribution was made. So 02-058 encodes the 58-th day of the year 2002. Configure and compiler options Synopsis configure options: --prefix=YOUR-PREFIX (e.g. $HOME/local) --enable-blast By default, MCL is compiled using C ints and floats -- the ints are used to encode graph nodes/matrix indices, and the floats are used to encode edge weights / matrix entries. These can be changed respectively to long and double, by adding '-DINDEX_AS_LONG', and/or '-DVALUE_AS_DOUBLE' to the CFLAGS environment variable. The first enables a possibly wider range of indices to be used, the second increases the precision (which is presumably not useful in the vast majority of cases). Using gcc under bash, you might for example do export CFLAGS='-g -O2 -Wall -ansi -pedantic -DVALUE_AS_DOUBLE' before doing ./configure and make. If you are rebuilding, make sure to do 'make clean' first. You need not use doubles though; MCL does fine with floats. These features (changing the basic types) have not yet been tested thoroughly. For enabling rudimentary runtime integrity checks, add -DRUNTIME_INTEGRITY. MCL comes nowadays packaged with the BLAST parsing script mcxdeblast and the pipeline script mclblastline. It encapsulates all the stages of parsing, matrix creation, running mcl, and formatting the result into a single application. Enable them by adding --enable-blast to ./configure. These scripts can be used in place of the now disabled TribeMCL module. See also LICENSE for copyright and licensing, THANKS for contributors, INSTALL for generic installation instructions.