Giter Club home page Giter Club logo

tree-qmc-v1's Introduction

STOP: This version of TREE-QMC is deprecated. Please go to the https://github.com/molloy-lab/TREE-QMC for the latest version.

The code in this repository (TREE-QMC version 1) was used in the study "TREE-QMC: Improving quartet graph construction for scalable and accurate species tree estimation from gene trees", published at RECOMB 2023 and Genome Research. The data used in this study are available on Dryad and the scripts are available on Github.

To build TREE-QMC, use commands:

git clone https://github.com/molloy-lab/TREE-QMC-v1.git
cd TREE-QMC-v1/MQLib
make
cd ..
g++ -std=c++11 -O2 -I MQLib/include -o TREE-QMC-v1 src/TREE-QMC.cpp MQLib/bin/MQLib.a

To run TREE-QMC, use command:

./TREE-QMC-v1 -i <input file> -o <output file name>

See this tutorial for more information. Also, check out the TREE-QMC usage options with this command:

./TREE-QMC-v1 -h

The output should be

TREE-QMC version 1.1.1
COMMAND: ./TREE-QMC-v1 

ERROR: input file  does not exist!
=================================== TREE-QMC ===================================
This is version 1.1.1 of TREe Embedded Quartet Max Cut (TREE-QMC).

USAGE:
./TREE-QMC (-i|--input) <input file> [(-o|--output) <output file>]
           [(--polyseed) <integer>] [(--maxcutseed) <integer>]
           [(-n|--normalize) <normalization scheme>]
           [(-x|--execution) <execution mode>]
           [(-v|--verbose) <verbose mode>] [-h|--help]

OPTIONS:
[-h|--help]
        Prints this help message.
(-i|--input) <input file>
        Name of file containing gene trees in newick format (required)
        IMPORTANT: current implementation of TREE-QMC requires that the input
        gene trees are unrooted and binary. Thus, TREE-QMC suppresses roots
        and randomly refines polytomies during a preprocessing phase; the
        resulting trees are written to "<input file>.refined".
[(-o|--output) <output file>]
        Name of file for writing output species tree (default: stdout)
[(--polyseed) <integer>]
        Seeds random number generator with <integer> prior to arbitrarily
        resolving polytomies. If <integer> is set to -1, system time is used;
        otherwise, <integer> should be positive (default: 12345).
[(--maxcutseed) <integer>]
        Seeds random number generator with <integer> prior to calling the max
        cut heuristic but after the preprocessing phase. If <integer> is set to
        -1, system time is used; otherwise, <integer> should be positive
        (default: 1).
[(-n|--normalize) <normalization scheme>]
        Initially, each quartet is weighted by the number of input gene
        trees that induce it. At each step in the divide phase of wQMC and
        TREE-QMC, the input quartets are modified with artificial taxa. We
        introduce two normalization schemes for artificial taxa and find
        that they improve empirical performance of TREE-QMC in a simulation
        study. The best scheme is run by default. See paper for details.
        -n 0: none
        -n 1: uniform
        -n 2: non-uniform (default)
[(-x|--execution) <execution mode>]
        TREE-QMC uses an efficient algorithm that operates directly on the
        input gene trees by default. The naive algorithm, which operates on a
        set of quartets weighted based on the input gene trees, is also
        implemented for testing purposes.
        -x 0: run efficient algorithm (default)
        -x 1: run naive algorithm
        -x 2: also write weighted quartets so they given as input to wQMC; see
              "<input file>.weighted_quartets" and "<input file>.taxon_name_map"
        -x 3: verify that the naive and efficient algorithms produce equivalent
              quartet graphs for all subproblems
[(-v|--verbose) <verbose mode>]
        -v 0: write no subproblem information (default)
        -v 1: write CSV with subproblem information (subproblem ID, parent
              problem ID, depth of recursion, number of taxa in subproblem,
              number of artificial taxa in the subproblem)
        -v 2: also write subproblem trees in newick format
        -v 3: also write subproblem quartet graphs in phylip matrix format

Contact: Post issue to Github (https://github.com/molloy-lab/TREE-QMC-v1.git)
        or email Yunheng Han ([email protected]) & Erin Molloy ([email protected])

If you use TREE-QMC in your work, please cite:
  Han and Molloy, 2022, "TREE-QMC: Improving quartet graph construction for
  scalable and accurate species tree estimation from gene trees," bioRxiv,
  https://doi.org/10.1101/2022.06.25.497608.
================================================================================

tree-qmc-v1's People

Contributors

ekmolloy avatar yhhan19 avatar

Stargazers

Sheikh Azizul Hakim avatar Siddharth Singh avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.