gfmix_runner.py
Run gfmix mixture model analysis using a Snakemake workflow.
This utility wrapper executes the gfmix mixture model analysis with gfmix v1.0.2, which modifies a site-heterogeneous profile mixture model to reflect branch specific amino acid composition. The analysis requires a supermatrix, phylogenetic tree, IQTree output file (.iqtree), and a root definition file.
gfmix_runner.py [OPTIONS] -m <matrix> -tr <tree> -iq <iqtree> -r <rootfile> -b <basename>
Required arguments:
-m,--matrix <matrix.fas|nex|phy>Path to supermatrix file-tr,--tree <tree.tre>Path to phylogenetic tree file-iq,--iqtree <file.iqtree>Path to IQTree output file (.iqtree) from a previous IQTree run-r,--rootfile <root.txt>Path to root file containing a list of taxa on one side of the root split (one taxon per line)- Example root file:
taxonA taxonB taxonC
- Example root file:
-b,--basename <name>Output file basename
Optional arguments:
-f,--frequencies <N>A file with the frequencies for each frequency class as rows (can be obtained using MAMMaL). If no file is provided, MAMMaL will be run with default options (60 frequency classes in the mixture model)- Default: None (will run MAMMaL with 60 classes)
-if,--in_format <format>Input format of matrix- Options:
fasta,nexus,phylip(names truncated at 10 characters), orphylip-relaxed(names are not truncated) - Default:
fasta
- Options:
-o,--output <out_dir>Path to user-defined output directory- Default: Current working directory
-h,--helpShow this help message and exit
Default gfmix_runner.py output:
<basename>.loglikelihood- Log likelihood values from the gfmix analysis- Additional output files generated by the gfmix workflow and MAMMaL (if frequency file not provided)
NOTE: This utility uses Snakemake to orchestrate the analysis workflow and requires conda for dependency management. The workflow will use the gfmix_mammal.smk Snakemake file included with PhyloFisher.