physquirrel is the Python library for Squirrel—an algorithm for reconstructing semi-directed phylogenetic level-1 networks from quarnets and/or sequence alignments. It builds on phylozoo for network representations and numba for JIT-accelerated computation.
- δ-heuristic: construct quarnets (4-leaf subnetworks) from multiple sequence alignments in
.fastaor.nexusformat - Squirrel algorithm: reconstruct semi-directed phylogenetic level-1 networks from quarnets
- eNewick export: serialize phylogenetic trees and networks in
eNewickformat - Visualization: plot phylogenetic networks via the optional
vizdependency
pip install physquirrelRuntime dependencies (phylozoo, numpy, networkx, numba) are installed automatically. For visualization extras:
pip install physquirrel[viz]For the full manual, API reference, and installation guide, visit the physquirrel docs.
If you use physquirrel, please cite:
Niels Holtgrefe, Katharina T. Huber, Leo van Iersel, Mark Jones, Samuel Martin, and Vincent Moulton. Squirrel: Reconstructing semi-directed phylogenetic level-1 networks from four-leaved networks or sequence alignments. Molecular Biology and Evolution, 42(4):msaf067, 2025. doi: 10.1093/molbev/msaf067
For the graphical user interface developed for the paper, please go to gui/.
For the experimental materials corresponding to the paper, please go to experiments/.