Abstract Analysis on HEP data is an iterative process in which the results of one step often inform the next. In an exploratory analysis, it is common to perform one computation on a collection of events, then view the results (often with histograms) to decide what to try next. Awkward Array is a Scikit-HEP Python package that enables data analysis with array-at-a-time operations to implement cuts as slices, combinatorics as composable functions, etc. However, most C++ HEP libraries, such as FastJet, have an imperative, one-particle-at-a-time interface, which would be inefficient in Python and goes against the grain of the array-at-a-time logic of scientific Python. Therefore, we developed fastjet, a pip-installable Python package that provides FastJet C++ binaries, the classic (particle-at-a-time) Python interface, and the new array-oriented interface for use with Awkward Array. The new interface streamlines interoperability with scientific Python software beyond HEP, such as machine learning. In one case, adopting this library along with other array-oriented tools accelerated HEP analysis code by a factor of 20. It was designed to be easily integrated with libraries in the Scikit-HEP ecosystem, including Uproot (file I/O), hist (histogramming), Vector (Lorentz vectors), and Coffea (high-level glue). We discuss the design of the fastjet Python library, integrating the classic interface with the array oriented interface and with the Vector library for Lorentz vector operations. The new interface was developed as open source.
more »
« less
This content will become publicly available on July 16, 2026
piqtree: A Python Package for Seamless Phylogenetic Inference with IQ-TREE
piqtree is an easy to use, open-source Python package that directly exposes IQ-TREE’s phylogenetic inference engine. It offers Python functions for performing many of IQ-TREE’s capabilities including phylogenetic reconstruction, ultrafast bootstrapping, branch length optimisation, ModelFinder, rapid neighbour-joining, and more. By exposing IQ-TREE’s algorithms within Python, piqtree greatly simplifies the development of new phylogenetic workflows through seamless interoperability with other Python libraries and tools mediated by the cogent3 package. It also enables users to perform interactive analyses with IQ-TREE through, for instance, Jupyter notebooks. We present the key features available in the piqtree library and a small case study that showcases its interoperability. The piqtree library can be installed withpip install piqtree, with the documentation available at https://piqtree.readthedocs.io and source at https://github.com/iqtree/piqtree.
more »
« less
- Award ID(s):
- 2333243
- PAR ID:
- 10621351
- Publisher / Repository:
- bioRxiv
- Date Published:
- Format(s):
- Medium: X
- Institution:
- bioRxiv
- Sponsoring Org:
- National Science Foundation
More Like this
-
-
IQ-TREE (http://www.iqtree.org) is a widely used open-source software tool for efficiently inferring phylogenetic trees under maximum likelihood. Here, we present IQ-TREE version 3, the third major release of the software. IQ-TREE 3 significantly extends version 2 with new features, including mixture models as an alternative to partitioned models, gene and site concordance factors to quantify discordance between genomic regions, and a fully-featured sequence simulator. The IQ-TREE 3 source code is available at https://github.com/iqtree/iqtree3.more » « less
-
Abstract pyspeckitis a toolkit and library for spectroscopic analysis in Python. We describe thepyspeckitpackage and highlight some of its capabilities, such as interactively fitting a model to data, akin to the historically widely-usedsplotfunction inIRAF.pyspeckitemploys the Levenberg–Marquardt optimization method via thempfitandlmfitimplementations, and important assumptions regarding error estimation are described here. Wrappers to usepymcandemceeas optimizers are provided. A parallelized wrapper to fit lines in spectral cubes is included. As part of theastropyaffiliated package ecosystem,pyspeckitis open source and open development, and welcomes input and collaboration from the community.more » « less
-
Vanschoren, J (Ed.)As data are generated more and more from multiple disparate sources, multiview data sets, where each sample has features in distinct views, have grown in recent years. However, no comprehensive package exists that enables non-specialists to use these methods easily. mvlearn is a Python library which implements the leading multiview machine learning methods. Its simple API closely follows that of scikit-learn for increased ease-of-use. The package can be installed from Python Package Index (PyPI) and the conda package manager and is released under the MIT open-source license. The documentation, detailed examples, and all releases are available at https://mvlearn.github.io/.more » « less
-
Abstract We introduce a new, open-source, Python-based package,extrabol, for inferring the bolometric light curve evolution of extragalactic thermal transients.extraboluses non-parametric Gaussian Process regression for light curve estimation that requires minimal user interaction.extrabolis available via GitHub.more » « less
An official website of the United States government
