Skip to main content

Framework for analyzing cosmological first-order phase transitions and their gravitational wave signatures.

Project description

TransitionListener

A framework for analyzing cosmological first-order phase transitions and their gravitational wave signatures.

TransitionListener Logo


License: GPL v3 Sampler: UltraNest arXiv arXiv arXiv arXiv


Overview

TransitionListener is an open-source Python package designed to compute, analyze, and visualize first-order phase transitions and their resulting stochastic gravitational wave backgrounds. It implements a full thermal history from microphysical parameters to observable signals, combining precision in the thermodynamic description of the primordial plasma with a large range of possibilities for parameter scans and automatically generated plots. TransitionListener bridges theoretical particle physics and gravitational wave phenomenology, enabling robust parameter inference across twelve orders of magnitude in gravitational wave frequencies.

Please refer to our online manual at https://tasillo.de/TransitionListener/ for detailed information on the installation and implementation details.


Key Features

Our code in version 2 is extends C. Wainwright's CosmoTransitions (see arxiv:1109.4189) and its original version 1 (used in arxiv:2109.06208) in multiple ways:

  • Precision percolation computation with self-consistent iteration over the Hubble rate and the true-vacuum fraction
  • Consistent treatment of the transition speed and the mean bubble separation.
  • Bubble wall velocity modeling in local thermal equilibrium based on Ai et al.'s arxiv:2303.10171
  • State-of-the-art gravitational wave spectra including multiple source contributions, as recommended by the LISA Cosmology Working Group in arxiv:2403.03723
  • Built-in sensitivity curves for LISA, BBO, DECIGO, muAres and PTA experiments
  • PTA log-likelihood evaluation using PTArcade based on the Ceffyl backend.
  • UltraNest integration for scans over large model parameter spaces using nested sampling methods.
  • Energy density: Evaluated self-consistently using the user-defined effective potential, going beyond the simple and often-used $\Delta V$ approximation.
  • Stable at low temperatures — tested up to extreme supercooling of $\alpha = 10^{10}$
  • Robust error codes telling the difference between numerical errors and physics reasons, indicating why a given parameter point does not yield a gravitational wave signal, even if you expected it to do so
  • First Python code supporting multi-Higgs potentials and SNR computation simultaneously
  • Flexible nucleation and percolation criteria which go far beyond the fixed $S_3/T \simeq 140$ assumption: We take the degrees of freedom of the user-defined SM extension and the amount of vacuum energy into account when checking for the nucleation and percolation of bubbles.

Installation and first use

Good news: TransitionListener is very easy to install! On most machines, it is enough to just clone this repository and pip install it:

git clone https://github.com/tasicarl/TransitionListener.git
cd TransitionListener
pip install -e .

You're now ready to use TransitionListener on your own favourite model. Alternatively, take one of the models shipped with the package. A minimal working example is

tl -c examples/example_point.yaml

which reads in the YAML file shipped with the repository, computes the full phase-transition history for a benchmark point of a U(1) extension of the Standard Model, predicts the gravitational wave spectrum, and evaluates its observability with LISA, PTAs and other observatories.

More information and many more hands-on use cases of the code can be found in the manual at

https://tasillo.de/TransitionListener/.

Authors

Please feel free to write us an email in case you identify any bug in the code or still need some further documentation. Enjoy!

Citation

If you use TransitionListener in your research, please cite the v2 release paper, the original v1 release and the underlying CosmoTransitions code. In case you use the LTE wall velocity approximation implemented in /src/transitionlistener/hydrodynamics.py, please also cite the corresponding work of Wen-Yuan Ai, Benoit Laurent, and Jorinde van de Vis.

License

TransitionListener is distributed under the GNU GPL v3.0 license. You are free to use, modify, and distribute the code — provided that derivative works remain open-source under the same license and credit the original authors. See the LICENSE file for full details.

© 2026 J. Matuszak & C. Tasillo: TransitionListener v2.0 – Robust gravitational wave predictions for cosmological phase transitions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

transitionlistener-2.1.0.tar.gz (7.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

transitionlistener-2.1.0-py3-none-any.whl (3.3 MB view details)

Uploaded Python 3

File details

Details for the file transitionlistener-2.1.0.tar.gz.

File metadata

  • Download URL: transitionlistener-2.1.0.tar.gz
  • Upload date:
  • Size: 7.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for transitionlistener-2.1.0.tar.gz
Algorithm Hash digest
SHA256 87a24ac905e1bef7793ccf9dd19201028fd20c80aea026ddf9693d89df322362
MD5 c75562ea82c3eb50b5693fa627ac6daf
BLAKE2b-256 4b3250cbdbc8dc95b944ad2ac0d935fa778095d30a6dff4f5b2eaabf4041b0d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for transitionlistener-2.1.0.tar.gz:

Publisher: publish.yml on tasicarl/TransitionListener

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file transitionlistener-2.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for transitionlistener-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2e42d2f536e08c720d7855bc00e2286073bb394d97f2e80f4b8ac042b684becc
MD5 40c5f546f45ddd4b958f8081b1a44ee5
BLAKE2b-256 335120985d1ccf8f023cbcb05c4f4e59a470653bb152ea4b048a874352eae342

See more details on using hashes here.

Provenance

The following attestation bundles were made for transitionlistener-2.1.0-py3-none-any.whl:

Publisher: publish.yml on tasicarl/TransitionListener

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page