Workflow automation for scientific research

Run, monitor, and orchestrate complex analyses across heterogeneous compute environments—from laptops to HPC clusters.

What is asimov?

A workflow management framework that orchestrates complex scientific computing at scale.

asimov was created by the LIGO, Virgo, and KAGRA gravitational-wave physics collaborations to orchestrate hundreds of parameter estimation analyses. It managed the complete O3 and O4 observing run catalogues. But asimov isn't limited to gravitational waves—its extensible architecture makes it powerful for any large-scale scientific workflow.

Write your analysis logic in Python. Call shell scripts, compiled code, containers, or other languages from anywhere. asimov handles the orchestration, monitoring, dependency resolution, and fault recovery. It submits and monitors jobs on HTCondor and Slurm, the scheduling systems used across LIGO/Virgo/KAGRA and university HPC clusters.

Built for research workflows

Asimov solves the practical problems researchers face when running computational analyses.

Unified pipeline interface

Write your analysis configuration once and deploy it across multiple pipelines. Switch between Bilby, LALInference, RIFT, Bayeswave, or custom codes without reconfiguring your analyses. Useful for comparing methodologies or testing new approaches.

Automated job management

Asimov monitors your analyses, detects failures, and handles recovery automatically. It manages dependencies between jobs using DAG orchestration and submits work to HTCondor clusters. Focus on your research, not job babysitting.

Centralized configuration

All project metadata, configurations, and status tracked in a single YAML ledger. Hierarchical configuration with intelligent precedence (global → pipeline → event → analysis) means you define defaults once and override only what's needed.

Reproducible by design

Every configuration is version-controlled. Results are stored in read-only locations. Complete log archival and exact configuration replay ensure your analyses can be independently verified and reproduced.

Genuinely extensible

Add new pipelines via Python plugins without modifying core code. Hook system allows custom behavior at every stage. Template-based configuration generation supports any pipeline format. Built for customization, not just configuration.

Scales to catalogue production

From single-event exploratory analysis on your laptop to hundreds of coordinated production runs on a cluster. The same configuration works at any scale, and has been used in production for LVK gravitational-wave catalogue analyses.

Why asimov?

Most workflow tools are either too generic (requiring substantial custom code) or too rigid (locking you into specific analysis approaches). Asimov strikes a balance: it understands scientific workflows while remaining flexible enough to adapt to your needs.

  • ✓ No vendor lock-in: Plugin architecture means you can add any analysis pipeline
  • ✓ Battle-tested: Used for major LIGO/Virgo/KAGRA catalogue production
  • ✓ Multi-pipeline by design: Compare different codes on the same data through a single configuration
  • ✓ Collaborative: SciTokens-based authentication and a git-tracked ledger for shared team workflows
  • ✓ Python-native: Simple API for programmatic project management
  • ✓ Self-healing: Automatic failure detection and recovery reduces manual intervention

Who uses asimov?

From single-event analyses to large-scale catalogue production.

Gravitational wave researchers

Coordinate parameter estimation across multiple pipelines and events. Automatically manage PSD generation, waveform selection, and post-processing workflows.

Catalogue production teams

Systematically process hundreds of events with consistent configurations. Track progress across the entire catalogue and identify problematic analyses at a glance.

Methodology comparison studies

Run the same analysis with different pipelines, approximants, or priors. Unified configuration means you change only what matters for your comparison.

Cross-institutional collaborations

A shared, git-tracked ledger and per-analysis review sign-off support team workflows. SciTokens integration provides institutional authentication.

Multi-stage data processing

Automatic dependency resolution ensures analyses run in the correct order. Data can be shared between stages (e.g., PSDs from Bayeswave to Bilby).

Custom analysis pipelines

Plugin architecture allows you to integrate your own codes. Benefit from asimov's monitoring, configuration, and results management for any analysis tool.

How it works

Asimov manages the entire lifecycle of your analyses.

1
Configure

Define analyses in YAML blueprints

2
Submit

Asimov builds DAGs and submits jobs

3
Monitor

Automatic failure detection and recovery

4
Collect

Results organized and archived

Designed for extension

Asimov's plugin architecture means you're never locked in. Add new analysis pipelines by subclassing a simple Python interface, registered via a standard Python entry point. Use hooks to inject custom behavior at any stage. Template-based configuration generation adapts to any pipeline's input format.

The same extensibility that allows asimov to support multiple gravitational wave pipelines (Bilby, LALInference, RIFT, Bayeswave, and others) makes it straightforward to integrate your own analysis codes without modifying asimov's core.

Get started

Install asimov and create your first project in minutes.

Installation

# Install via pip
$ pip install asimov

# Or via conda
$ conda install -c conda-forge asimov

Create your first project

# Create a project directory
$ mkdir my-analysis && cd my-analysis

# Initialize asimov project
$ asimov init "My Analysis Project"

# Load default configurations
$ asimov apply -f https://git.ligo.org/asimov/data/-/raw/main/defaults/production-pe.yaml

# Add an event (e.g., GW150914)
$ asimov apply -f https://git.ligo.org/asimov/data/-/raw/main/events/gwtc-1/GW150914_095045.yaml

# Add an analysis by applying a blueprint to the event
$ asimov apply -f bilby-blueprint.yaml -e GW150914_095045

# Check project status
$ asimov monitor

View Full Tutorials Read Documentation

Start orchestrating your analyses

Join the researchers using asimov for reproducible, scalable workflow automation.

Get Started