Clone wiki

Hieranoid 2 / Home

Hieranoid 2 - Hierarchical orthology inference algorithm


  • Hieranoid 2 is a continuation of Fabian Schreiber work and the fork of original repository.
  • Hieranoid 1 was published in Journal of Molecular Biology (DOI: 10.1016/j.jmb.2013.02.018).


  1. On GNU/Linux distribution such as Debian or Ubuntu, external programs can be installed by

    sudo apt-get install blast2 muscle hhsuite kalign git

    Hieranoid 2 was tested with blast2 (2.2.18), muscle (3.8.31).

  2. Clone the source code from the repository

    git clone
  3. Prepare perl enviroment where you intend to run Hieranoid 2.

    Note: Perl allow for compiled libraries which are specific for hardware architecture where they were installed.

    Basic setup of perl enviroment

    # Bootstrap locally perl 5.20.1
    wget -O - --no-check-certificate  | bash
    source ~/perl5/perlbrew/etc/bashrc
    perlbrew --notest install perl-5.20.1
    perlbrew switch perl-5.20.1
    perlbrew install-cpanm
    # Use cpanm from perlbrew to install required modules
    perlbrew exec cpanm BioPerl
    perlbrew exec cpanm Bio::Phylo
    perlbrew exec cpanm Moose
    perlbrew exec cpanm Log::Log4perl
    perlbrew exec cpanm Net::OpenSSH::Parallel
    perlbrew exec cpanm XML::LibXML
    perlbrew exec cpanm XML::Parser


Minimal configuration to get started

  1. Create project subdirectories

    mkdir mkad # Create project directory
    mkdir mkad/log
    mkdir mkad/sequences
    mkdir mkad/tree

    Copy your proteomes in fasta format, guide tree to corresponding directories.

    Note: Names of branches in guidetree in Newick format, must be the same as proteoms file names without an extension.

  2. Set project details in configuration file

    nano lib/Configurations/
    $rootDirectory = "/scratch/Hieranoid2/";
    $projectName = "mkad";
    $tempDir = "/scratch/temp/;
    $speciesFilesDirectory = "$rootDirectory/mkad/sequences-short/";
    $treeFile = "$rootDirectory/mkad/tree/fungi5-short.tre";
  3. Set up external programs

    External programs are usually placed in extern directory and depend on configuration. Hieranoid 2.0 was tested with usearch5.1 in combination with segmasker (from blast 2.2.28), blastall (from blast 2.2.18) and muscle 3.8.31.

    Listing of extern directory


After populating extern directory, correct paths must be set in aforementioned file.

Running Hieranoid 2

To run Hieranoid perlbrew enviroment was used, but any other perl installation is acceptable. Example run would look like

   source ~/perl5/perlbrew/etc/bashrc  # Load perlbrew enviroment
   perlbrew exec perl -I ./lib ./