ksumngs / yavsap

Yet Another Viral Subspecies Analysis Pipeline
https://ksumngs.github.io/yavsap
MIT License
2 stars 1 forks source link

[Feature]: Add tree quality as iteration metric for RAxML-NG phylogenies #11

Closed MillironX closed 2 years ago

MillironX commented 2 years ago

Summary

Allow for phylogenetic tree quality to be the criteria for how much time to spend on bootstrapping trees, rather than just the number of trees.

Added Features

Additional parameters

More Info

Context

There is currently no way to determine if a phylogenetic tree is "good" before the pipeline is finished, and if it isn't "good," the only way to make it better is to re-run the pipeline with a higher value of --phylogenetic_bootstraps, which wastes all of the computing power used on the last run, and still doesn't guarantee "goodness."

Possible implementation

Rewrite the phylogenetic_tree process to

  1. Run raxml-ng --all with the --phylogenetic_bootstraps parameter passed to --bs-trees option
  2. Check for convergence at the --phylogenetic_bootstrap_cutoff level using raxml-ng --bsconverge
  3. If 2 has not reached convergence, then
    1. Increment the random seed
    2. Go to 1, either using the Nextflow feedback loop pattern (preferred), or a shell script
  4. If 2 has reached convergence, then output and exit
MillironX commented 2 years ago

Fixed by #20