asimov · v0.7.1 · open source (MIT)
Workflow infrastructure for large-scale scientific analysis
asimov automates, records and reproduces the analyses behind the gravitational-wave transient catalogues. It turns declarative blueprints into jobs on HTCondor and Slurm, keeps every analysis in a version-controlled ledger, and works with any analysis code through a documented plugin interface.
pip install asimov
conda install -c conda-forge asimov
What asimov does
A catalogue of gravitational-wave events means thousands of analyses, run with several codes, over months, by many people. asimov exists so that each of those analyses is specified once, run automatically, and can be traced and re-run later.
Declare
Analyses are described in YAML blueprints: which pipeline, which settings, and which other analyses they depend on. Settings cascade from project to subject to analysis, so shared choices are made in one place and can be reviewed.
Automate
asimov writes each pipeline's configuration, submits the jobs to HTCondor or Slurm, monitors them, resubmits them when they fail, and starts dependent analyses and post-processing when their inputs are ready.
Record
A ledger holds the configuration and state of every analysis, and generated configurations are committed to git. Review sign-off is stored alongside each result, and HTML reports summarise the state of a whole project.
Extend
Pipelines are Python packages that register through entry points, so asimov doesn't depend on any particular analysis code. Adding a pipeline means implementing one class; the registry lists the existing ones.
From blueprint to result
This blueprint asks for a noise-spectrum estimate followed by parameter estimation that uses it. asimov works out the order, builds both configurations, runs each job when its inputs are ready, and records the outcome in the ledger.
kind: analysis
name: generate-psds
pipeline: bayeswave
---
kind: analysis
name: parameter-estimation
pipeline: bilby
needs:
- generate-psds
asimov apply -f analyses.yaml -e GW150914_095045
asimov manage build submit
asimov monitor
Ecosystem
Maintained integrations with widely used gravitational-wave codes, and community plugins beyond them.
Learn
- Analyse GW150914set up a project and run a complete analysis
- Documentationuser guide, blueprint reference and API
- Featureswhat asimov does, in more detail
Cite
If asimov contributes to your research, please cite:
Williams, D., Veitch, J., Chiofalo, M., Schmidt, P., Udall, R., Vajpeyi, A., & Hoy, C. (2023). Asimov: A framework for coordinating parameter estimation workflows. The Journal of Open Source Software, 8(84), 4170. doi:10.21105/joss.04170BibTeX and software DOIs →