TransitionListener 2.0.1__tar.gz → 2.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- transitionlistener-2.1.0/.github/ISSUE_TEMPLATE/bug_report.md +28 -0
- transitionlistener-2.1.0/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- transitionlistener-2.1.0/.github/workflows/publish.yml +28 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/CHANGELOG.md +60 -1
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/PKG-INFO +2 -2
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/README.md +1 -1
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/conda/meta.yaml +2 -2
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/conf.py +1 -1
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/faq.rst +27 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/index.rst +8 -1
- transitionlistener-2.1.0/docs/source/installation.rst +185 -0
- transitionlistener-2.1.0/models/TL_2HDM_BSMPT.py +126 -0
- transitionlistener-2.1.0/models/TL_2HDM_BSMPT_highacc.py +38 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/pyproject.toml +1 -1
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/hydrodynamics.py +6 -1
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/transitionObservables.py +48 -21
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/check_installation.py +166 -14
- transitionlistener-2.0.1/docs/source/installation.rst +0 -129
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/.github/workflows/ci.yml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/.github/workflows/docs.yml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/.gitignore +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/CITATION.cff +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/LICENSE.txt +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/Makefile +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/2109.06208_example.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/2311.06346_example.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/2502.19478_example.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/TL-logo_large.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_grid.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_kappa.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/Add_info_log10_f_peak_Hz.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/Add_info_log10_h2OmegaGW_peak.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/SNR_BBO.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/SNR_DECIGO.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/SNR_ET.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/fig14_alpha_betaH.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/lin_plot_c_s_bro.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/lin_plot_c_s_sym.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/lin_plot_g_eff_tot_reh.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/lin_plot_xi_crit.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/log_plot_Tcrit_SM_GeV.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/log_plot_Tf_SM_GeV.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/log_plot_Tnuc_SM_GeV.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/log_plot_Tperc_SM_GeV.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/log_plot_Treh_SM_GeV.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/log_plot_alpha.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_output/log_plot_betaH_RH.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/example_point_GW_spectrum.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/_static/pipeline.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/api/TransitionListener.rst +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/changelog.md +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/contributing.rst +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/documentation.rst +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/example_output.md +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/features.rst +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/getting_started.rst +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/method.rst +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/plots.rst +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/docs/source/usage.rst +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/bp_et.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/bp_lisa.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/bp_muares.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/bp_pta.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/example_dark_photon.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/example_grid.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/example_line.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/example_point.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/example_random_conformal.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/examples/example_ultranest.yaml +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/models/TL_2HDM.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/models/TL_conformal_dark_u1.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/models/TL_dark_U1.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/models/TL_dark_U1_g_parameterization.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/models/TL_dark_flipflop.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/models/templatePotential.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/__init__.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/bubbledynamics.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/bubbledynamics_fixedstep.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/ckm.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/colors.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/config.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/constants.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/counterterms/__init__.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/counterterms/cw.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/counterterms/tensors.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/counterterms/twohdm.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/counterterms/twohdm_solver.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/errors.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/finiteT.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/generic_potential.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/gridplots.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/gwfopt.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/helper_functions.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/__init__.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/check.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/cli.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/config_loader.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/logging_utils.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/output_schema.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/pipeline.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/samplers.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/scans.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/single_point.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/interface/state.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/lineplots.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/logo/TL-logo_large.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/logo/TL-logo_small.png +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/nucleation.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/observability.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/particles.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/pathDeformation.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/percolation_adaptive_gridbuilders.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/percolation_adaptive_rate.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/percolation_adaptivestepsize.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/percolation_fixedstepsize.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/phases.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/plot_settings.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/plots.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/runtime_options.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/30f_fs{hd}_100fDMGP_ceffyl/bandwidths.npy +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/30f_fs{hd}_100fDMGP_ceffyl/density.npy +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/30f_fs{hd}_100fDMGP_ceffyl/freqs.npy +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/30f_fs{hd}_100fDMGP_ceffyl/log.txt +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/30f_fs{hd}_100fDMGP_ceffyl/log10rhogrid.npy +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/30f_fs{hd}_100fDMGP_ceffyl/log10rholabels.txt +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/30f_fs{hd}_100fDMGP_ceffyl/pulsar_list.txt +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/HLV-O2-PLI.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/HLV-O2-noise.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/HLVK-design-PLI.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/HLVK-design-noise.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/NG15_PLI_hc.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/NG15_noise_hc.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/PLI-dataset.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/energydensities.dat +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/finiteT_b.dat.txt +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/finiteT_f.dat.txt +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/geff_SM.dat +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/muAres_f_Hz_PLI_h2OmegaGW.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/muAres_f_Hz_h2Omega_noise.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/noise-dataset.csv +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/numberdensities.dat +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tab_data/pressures.dat +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/thermodynamics.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/transitionObservables_fixedstep.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/transitions.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/tunneling1D.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/__init__.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/run_tl_without_interface.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_1d_tunneling.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_bubbledynamics_adaptive_rebuild.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_bubbledynamics_calcaction_cache.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_bubbledynamics_mainline_refined.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_hydrodynamics.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_mock_rate_peak_refinement.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_paper_benchmark_common.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_percintegral_ode.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_release_smoke.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_thermodynamics.py +0 -0
- {transitionlistener-2.0.1 → transitionlistener-2.1.0}/tests/test_warning_outputs.py +0 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Create a report to help us improve
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Describe the bug**
|
|
11
|
+
A clear and concise description of what the bug is.
|
|
12
|
+
|
|
13
|
+
**To Reproduce**
|
|
14
|
+
Steps to reproduce the behavior.
|
|
15
|
+
|
|
16
|
+
**Expected behavior**
|
|
17
|
+
A clear and concise description of what you expected to happen.
|
|
18
|
+
|
|
19
|
+
**Screenshots**
|
|
20
|
+
If applicable, add screenshots to help explain your problem.
|
|
21
|
+
|
|
22
|
+
**Desktop (please complete the following information):**
|
|
23
|
+
- Operating system
|
|
24
|
+
- Version of TransitionListener
|
|
25
|
+
- Version of python dependencies
|
|
26
|
+
|
|
27
|
+
**Additional context**
|
|
28
|
+
Add any other context about the problem here.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Suggest an idea for this project
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Is your feature request related to a problem? Please describe.**
|
|
11
|
+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
|
12
|
+
|
|
13
|
+
**Describe the solution you'd like**
|
|
14
|
+
A clear and concise description of what you want to happen.
|
|
15
|
+
|
|
16
|
+
**Describe alternatives you've considered**
|
|
17
|
+
A clear and concise description of any alternative solutions or features you've considered.
|
|
18
|
+
|
|
19
|
+
**Additional context**
|
|
20
|
+
Add any other context or screenshots about the feature request here.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags:
|
|
6
|
+
- "v*"
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
build-and-publish:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
environment: pypi
|
|
12
|
+
permissions:
|
|
13
|
+
id-token: write # required for OIDC trusted publishing
|
|
14
|
+
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/checkout@v4
|
|
17
|
+
|
|
18
|
+
- uses: actions/setup-python@v5
|
|
19
|
+
with:
|
|
20
|
+
python-version: "3.12"
|
|
21
|
+
|
|
22
|
+
- name: Build
|
|
23
|
+
run: |
|
|
24
|
+
pip install build
|
|
25
|
+
python -m build
|
|
26
|
+
|
|
27
|
+
- name: Publish to PyPI
|
|
28
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -5,10 +5,69 @@ All notable changes between releases of TransitionListener.
|
|
|
5
5
|
The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and the project adheres to [Semantic Versioning](https://semver.org/).
|
|
7
7
|
|
|
8
|
+
## [2.1.0] - 2026-07-28
|
|
9
|
+
|
|
10
|
+
Bugfix release: reheating temperature (Treh) is now computed from the
|
|
11
|
+
evolved true-vacuum energy density rather than assumed instantaneous.
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
|
|
15
|
+
- **Treh (reheating temperature)**: previously solved for Treh by assuming
|
|
16
|
+
instantaneous reheating via energy conservation at the single percolation
|
|
17
|
+
temperature (`eBRO(Treh) = eSYM(Tperc)`), discarding the gradual
|
|
18
|
+
true-vacuum-energy-density evolution the percolation routine already
|
|
19
|
+
tracks per step. This disagreed with the paper definition and overestimated
|
|
20
|
+
Treh for deeply supercooled transitions (low Tperc). The `TBROint` spline
|
|
21
|
+
built from the evolved `(TSYM, TBRO)` trajectory is now restored on
|
|
22
|
+
`PercolationResult` and evaluated at `Tperc`, realigning the adaptive-step
|
|
23
|
+
path with `transitionObservables_fixedstep.py`. The direct `Tb_criterion`
|
|
24
|
+
solve remains as a fallback when the spline is unavailable, and
|
|
25
|
+
`Treh = Tperc` as the final fallback.
|
|
26
|
+
|
|
27
|
+
### Added
|
|
28
|
+
|
|
29
|
+
- `TL_2HDM_BSMPT.py` and `TL_2HDM_BSMPT_highacc.py` model files, needed to
|
|
30
|
+
use the `bp_lisa.yaml` benchmark point.
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- Installation check now shows a progress indicator while warming the numpy
|
|
35
|
+
cache, so the install doesn't appear to hang; installation instructions
|
|
36
|
+
updated to match.
|
|
37
|
+
- README and FAQ now reference CosmoTransitions and arXiv:2303.10171 for the
|
|
38
|
+
LTE velocity approximation; `hydrodynamics.py` header updated accordingly.
|
|
39
|
+
- Issue and feature request templates updated.
|
|
40
|
+
|
|
41
|
+
## [2.0.1] - 2026-05-18
|
|
42
|
+
|
|
43
|
+
Compatibility and packaging fixes; no physics changes.
|
|
44
|
+
|
|
45
|
+
### Fixed
|
|
46
|
+
|
|
47
|
+
- **numpy ≥ 2.0 compatibility**: `np.product()` (removed in numpy 2.0) replaced
|
|
48
|
+
with `np.prod()`. Percolation criterion functions in `bubbledynamics.py` and
|
|
49
|
+
`bubbledynamics_fixedstep.py` now return Python scalars instead of shape-`(1,)`
|
|
50
|
+
arrays, fixing a `SystemError` from `scipy.optimize.brentq` on numpy 2.x.
|
|
51
|
+
`np.linalg.lstsq` calls updated from deprecated `rcond=-1` to `rcond=None`.
|
|
52
|
+
- **Windows compatibility**: `signal.SIGALRM` and `signal.alarm()` are POSIX-only
|
|
53
|
+
and not available on Windows. All usages are now guarded by `hasattr` checks,
|
|
54
|
+
fixing an `AttributeError` on import that caused the conda-forge Windows CI to
|
|
55
|
+
fail.
|
|
56
|
+
- **PTA diagnostics**: when `ptarcade.signal_builder` fails to import, the
|
|
57
|
+
underlying error is now shown alongside the "PTA likelihood unavailable" warning.
|
|
58
|
+
|
|
59
|
+
### Added
|
|
60
|
+
|
|
61
|
+
- `conda/meta.yaml` recipe for conda-forge submission.
|
|
62
|
+
- `build` and `twine` added to the `[dev]` optional dependencies in
|
|
63
|
+
`pyproject.toml`.
|
|
64
|
+
- GitHub Actions workflow (`.github/workflows/publish.yml`) for automatic PyPI
|
|
65
|
+
publishing on tagged releases via OIDC trusted publishing.
|
|
66
|
+
|
|
8
67
|
## [2.0.0] - 2026-05-06
|
|
9
68
|
|
|
10
69
|
Major code release accompanied by the paper
|
|
11
|
-
[arXiv:2605.
|
|
70
|
+
[arXiv:2605.15259](https://arxiv.org/abs/2605.15259).
|
|
12
71
|
|
|
13
72
|
### Added
|
|
14
73
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: TransitionListener
|
|
3
|
-
Version: 2.0
|
|
3
|
+
Version: 2.1.0
|
|
4
4
|
Summary: Framework for analyzing cosmological first-order phase transitions and their gravitational wave signatures.
|
|
5
5
|
Project-URL: Homepage, https://tasillo.de/TransitionListener/
|
|
6
6
|
Project-URL: Documentation, https://tasillo.de/TransitionListener/
|
|
@@ -803,7 +803,7 @@ Please feel free to write us an email in case you identify any bug in the code o
|
|
|
803
803
|
|
|
804
804
|
## Citation
|
|
805
805
|
|
|
806
|
-
If you use TransitionListener in your research, please cite the [v2 release](https://arxiv.org/abs/2605.15259) paper
|
|
806
|
+
If you use TransitionListener in your research, please cite the [v2 release](https://arxiv.org/abs/2605.15259) paper, the original [v1 release](https://arxiv.org/abs/2109.06208) and the underlying [```CosmoTransitions``` code](https://arxiv.org/abs/1109.4189). In case you use the LTE wall velocity approximation implemented in ```/src/transitionlistener/hydrodynamics.py```, please also cite [the corresponding work](https://arxiv.org/abs/2303.10171) of Wen-Yuan Ai, Benoit Laurent, and Jorinde van de Vis.
|
|
807
807
|
|
|
808
808
|
## License
|
|
809
809
|
|
|
@@ -85,7 +85,7 @@ Please feel free to write us an email in case you identify any bug in the code o
|
|
|
85
85
|
|
|
86
86
|
## Citation
|
|
87
87
|
|
|
88
|
-
If you use TransitionListener in your research, please cite the [v2 release](https://arxiv.org/abs/2605.15259) paper
|
|
88
|
+
If you use TransitionListener in your research, please cite the [v2 release](https://arxiv.org/abs/2605.15259) paper, the original [v1 release](https://arxiv.org/abs/2109.06208) and the underlying [```CosmoTransitions``` code](https://arxiv.org/abs/1109.4189). In case you use the LTE wall velocity approximation implemented in ```/src/transitionlistener/hydrodynamics.py```, please also cite [the corresponding work](https://arxiv.org/abs/2303.10171) of Wen-Yuan Ai, Benoit Laurent, and Jorinde van de Vis.
|
|
89
89
|
|
|
90
90
|
## License
|
|
91
91
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
{% set version = "2.0
|
|
1
|
+
{% set version = "2.1.0" %}
|
|
2
2
|
{% set python_min = "3.10" %}
|
|
3
3
|
|
|
4
4
|
package:
|
|
@@ -7,7 +7,7 @@ package:
|
|
|
7
7
|
|
|
8
8
|
source:
|
|
9
9
|
url: https://pypi.org/packages/source/T/TransitionListener/transitionlistener-{{ version }}.tar.gz
|
|
10
|
-
sha256:
|
|
10
|
+
sha256: e8670d2ef72e988b6834ad8476b51ec09c488713a716a05846ec835c8ab8d708
|
|
11
11
|
|
|
12
12
|
build:
|
|
13
13
|
entry_points:
|
|
@@ -20,7 +20,7 @@ on_github = bool(os.environ.get("GITHUB_PAGES"))
|
|
|
20
20
|
project = 'TransitionListener'
|
|
21
21
|
copyright = '2025, Carlo Tasillo, Jonas Matuszak'
|
|
22
22
|
author = 'Carlo Tasillo, Jonas Matuszak'
|
|
23
|
-
release = '2.
|
|
23
|
+
release = '2.1'
|
|
24
24
|
|
|
25
25
|
# -- General configuration ---------------------------------------------------
|
|
26
26
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
|
@@ -56,3 +56,30 @@ Please cite the following papers if you use TransitionListener in your work:
|
|
|
56
56
|
pages = "014",
|
|
57
57
|
year = "2022"
|
|
58
58
|
}
|
|
59
|
+
|
|
60
|
+
@article{Wainwright:2011kj,
|
|
61
|
+
author = "Wainwright, Carroll L.",
|
|
62
|
+
title = "{CosmoTransitions: Computing Cosmological Phase Transition Temperatures and Bubble Profiles with Multiple Fields}",
|
|
63
|
+
eprint = "1109.4189",
|
|
64
|
+
archivePrefix = "arXiv",
|
|
65
|
+
primaryClass = "hep-ph",
|
|
66
|
+
doi = "10.1016/j.cpc.2012.04.004",
|
|
67
|
+
journal = "Comput. Phys. Commun.",
|
|
68
|
+
volume = "183",
|
|
69
|
+
pages = "2006--2013",
|
|
70
|
+
year = "2012"
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
@article{Ai:2023see,
|
|
74
|
+
author = "Ai, Wen-Yuan and Laurent, Benoit and van de Vis, Jorinde",
|
|
75
|
+
title = "{Model-independent bubble wall velocities in local thermal equilibrium}",
|
|
76
|
+
eprint = "2303.10171",
|
|
77
|
+
archivePrefix = "arXiv",
|
|
78
|
+
primaryClass = "astro-ph.CO",
|
|
79
|
+
reportNumber = "KCL-PH-TH/2023-19",
|
|
80
|
+
doi = "10.1088/1475-7516/2023/07/002",
|
|
81
|
+
journal = "JCAP",
|
|
82
|
+
volume = "07",
|
|
83
|
+
pages = "002",
|
|
84
|
+
year = "2023"
|
|
85
|
+
}
|
|
@@ -34,8 +34,15 @@ first-order phase transitions and gravitational wave signals.
|
|
|
34
34
|
:target: https://arxiv.org/abs/2502.19478
|
|
35
35
|
:alt: arXiv
|
|
36
36
|
|
|
37
|
+
.. image:: https://img.shields.io/badge/arXiv-2602.09092-b31b1b.svg
|
|
38
|
+
:target: https://arxiv.org/abs/2602.09092
|
|
39
|
+
:alt: arXiv
|
|
40
|
+
|
|
41
|
+
.. image:: https://img.shields.io/badge/arXiv-2605.15259-b31b1b.svg
|
|
42
|
+
:target: https://arxiv.org/abs/2605.15259
|
|
43
|
+
:alt: arXiv
|
|
44
|
+
|
|
37
45
|
|
|
38
|
-
About
|
|
39
46
|
-----
|
|
40
47
|
|
|
41
48
|
TransitionListener is an open-source Python package designed to facilitate the
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
Installation Guide
|
|
2
|
+
==================
|
|
3
|
+
|
|
4
|
+
TransitionListener can be installed in three ways, listed in order of
|
|
5
|
+
convenience:
|
|
6
|
+
|
|
7
|
+
1. :ref:`install-conda` — a fully resolved scientific stack from
|
|
8
|
+
``conda-forge``,
|
|
9
|
+
2. :ref:`install-pip` — a ``pip`` install from PyPI,
|
|
10
|
+
3. :ref:`install-clone` — an editable install from a GitHub clone, for
|
|
11
|
+
developers and contributors.
|
|
12
|
+
|
|
13
|
+
Each route works out of the box for the *core* gravitational wave
|
|
14
|
+
workflow. Each route also supports the optional PTA likelihood layer
|
|
15
|
+
(``PTArcade`` / ``enterprise``), enabled by installing the
|
|
16
|
+
``ptarcade`` package alongside ``transitionlistener``.
|
|
17
|
+
|
|
18
|
+
If you do not have a conda flavour installed yet, any of
|
|
19
|
+
`conda <https://docs.conda.io/projects/conda/en/stable/>`_,
|
|
20
|
+
`mamba <https://mamba.readthedocs.io/en/latest/>`_, or
|
|
21
|
+
`micromamba <https://mamba.readthedocs.io/en/latest/user_guide/micromamba.html>`_
|
|
22
|
+
work; the commands below assume ``conda`` but ``mamba`` /
|
|
23
|
+
``micromamba`` accept the exact same syntax.
|
|
24
|
+
|
|
25
|
+
.. note::
|
|
26
|
+
**Apple Silicon (M-series Macs) — read this first.**
|
|
27
|
+
The PTA likelihood layer depends on ``ceffyl``, which ships only
|
|
28
|
+
as an ``osx-64`` build on ``conda-forge``. As a consequence, any
|
|
29
|
+
environment that includes ``ptarcade`` has to be created with the
|
|
30
|
+
``--platform osx-64`` flag. The *core* TransitionListener install
|
|
31
|
+
(no PTA layer) works natively on ``osx-arm64`` via any of the
|
|
32
|
+
three routes below.
|
|
33
|
+
|
|
34
|
+
.. _install-conda:
|
|
35
|
+
|
|
36
|
+
Option 1: conda from conda-forge (recommended)
|
|
37
|
+
----------------------------------------------
|
|
38
|
+
|
|
39
|
+
The ``conda-forge`` package ``transitionlistener`` ships a fully
|
|
40
|
+
resolved scientific stack — no compiler step, no source build of
|
|
41
|
+
``mpi4py``:
|
|
42
|
+
|
|
43
|
+
.. code-block:: bash
|
|
44
|
+
|
|
45
|
+
# Core install (no PTA likelihood)
|
|
46
|
+
conda create -n TL -c conda-forge transitionlistener
|
|
47
|
+
conda activate TL
|
|
48
|
+
|
|
49
|
+
# With the optional PTA likelihood
|
|
50
|
+
conda create -n TL -c conda-forge transitionlistener ptarcade
|
|
51
|
+
conda activate TL
|
|
52
|
+
|
|
53
|
+
On Apple Silicon, the PTA-enabled environment must be created under
|
|
54
|
+
``osx-64``:
|
|
55
|
+
|
|
56
|
+
.. code-block:: bash
|
|
57
|
+
|
|
58
|
+
conda create -n TL --platform osx-64 -c conda-forge transitionlistener ptarcade
|
|
59
|
+
conda activate TL
|
|
60
|
+
|
|
61
|
+
(The core install above works natively on Apple Silicon without any
|
|
62
|
+
extra flag.)
|
|
63
|
+
|
|
64
|
+
If you intend to use the PTA likelihood, you may also need the
|
|
65
|
+
``setuptools`` workaround described in :ref:`install-pta-caveat`.
|
|
66
|
+
|
|
67
|
+
.. _install-pip:
|
|
68
|
+
|
|
69
|
+
Option 2: pip from PyPI
|
|
70
|
+
-----------------------
|
|
71
|
+
|
|
72
|
+
The package is published on PyPI as ``transitionlistener``:
|
|
73
|
+
|
|
74
|
+
.. code-block:: bash
|
|
75
|
+
|
|
76
|
+
pip install transitionlistener # core
|
|
77
|
+
pip install transitionlistener ptarcade # with the optional PTA likelihood
|
|
78
|
+
|
|
79
|
+
On Apple Silicon, the second command triggers a source build of
|
|
80
|
+
``enterprise-pulsar`` and its dependencies, which is brittle in
|
|
81
|
+
practice — for the PTA workflow on M-series Macs, prefer
|
|
82
|
+
:ref:`install-conda`.
|
|
83
|
+
|
|
84
|
+
If you install ``ptarcade``, see :ref:`install-pta-caveat`.
|
|
85
|
+
|
|
86
|
+
.. _install-clone:
|
|
87
|
+
|
|
88
|
+
Option 3: editable install from a GitHub clone (developers)
|
|
89
|
+
-----------------------------------------------------------
|
|
90
|
+
|
|
91
|
+
If you want to track ``main`` or contribute changes, install in
|
|
92
|
+
editable mode from a local clone:
|
|
93
|
+
|
|
94
|
+
.. code-block:: bash
|
|
95
|
+
|
|
96
|
+
git clone https://github.com/tasicarl/TransitionListener.git
|
|
97
|
+
cd TransitionListener
|
|
98
|
+
pip install -e . # core
|
|
99
|
+
pip install -e . ptarcade # with the optional PTA likelihood
|
|
100
|
+
|
|
101
|
+
The same Apple Silicon caveat applies to the ``ptarcade`` line.
|
|
102
|
+
|
|
103
|
+
If you install ``ptarcade``, see :ref:`install-pta-caveat`.
|
|
104
|
+
|
|
105
|
+
.. _install-pta-caveat:
|
|
106
|
+
|
|
107
|
+
PTArcade ``setuptools`` workaround (applies to all three routes)
|
|
108
|
+
----------------------------------------------------------------
|
|
109
|
+
|
|
110
|
+
PTArcade currently still relies on ``pkg_resources``, which was
|
|
111
|
+
removed from setuptools ≥ 72. The symptom in a PTA-enabled run is a
|
|
112
|
+
line like
|
|
113
|
+
|
|
114
|
+
.. code-block:: text
|
|
115
|
+
|
|
116
|
+
PTA likelihood dependencies unavailable; continuing with SNR-only observability outputs.
|
|
117
|
+
Import error: No module named 'pkg_resources'
|
|
118
|
+
|
|
119
|
+
printed during ``tl -c examples/example_point.yaml -v`` (or any other
|
|
120
|
+
PTA-touching invocation): the SNR table still renders, but the
|
|
121
|
+
**LOG LIKELIHOODS FOR PULSAR TIMING ARRAYS** table is silently
|
|
122
|
+
skipped.
|
|
123
|
+
|
|
124
|
+
The workaround is to install an older ``setuptools`` inside the
|
|
125
|
+
PTA-enabled environment:
|
|
126
|
+
|
|
127
|
+
.. code-block:: bash
|
|
128
|
+
|
|
129
|
+
pip install "setuptools<72"
|
|
130
|
+
|
|
131
|
+
After this step, rerun the same ``tl -c ...`` command — the PTA
|
|
132
|
+
likelihood table should now populate alongside the SNR table.
|
|
133
|
+
|
|
134
|
+
The root fix has already landed in ``enterprise``
|
|
135
|
+
(`nanograv/enterprise@a6d504d <https://github.com/nanograv/enterprise/commit/a6d504d69254c45b530471efe0c7cc7a3c772c3f>`_)
|
|
136
|
+
and a corresponding PTArcade release is expected soon, after which
|
|
137
|
+
this workaround will no longer be needed. Pip may report
|
|
138
|
+
version-conflict warnings during this step — they are harmless and
|
|
139
|
+
can be ignored.
|
|
140
|
+
|
|
141
|
+
.. note::
|
|
142
|
+
The first invocation of ``tl`` after a fresh PTA installation
|
|
143
|
+
(e.g. ``tl --help``) may take several minutes while
|
|
144
|
+
``enterprise`` compiles and caches internal data. This is normal
|
|
145
|
+
and only happens once.
|
|
146
|
+
|
|
147
|
+
Verifying the Installation
|
|
148
|
+
--------------------------
|
|
149
|
+
|
|
150
|
+
Whichever route you used, TransitionListener exposes a ``tl`` console
|
|
151
|
+
script with a built-in self-test:
|
|
152
|
+
|
|
153
|
+
.. code-block:: bash
|
|
154
|
+
|
|
155
|
+
tl --check
|
|
156
|
+
|
|
157
|
+
This runs a battery of quick imports plus an end-to-end physics
|
|
158
|
+
smoke test on ``examples/example_point.yaml`` (the conformal
|
|
159
|
+
:math:`U(1)` benchmark) and verifies that the key observables
|
|
160
|
+
(``Tperc_SM_GeV``, ``alpha``, ``RH``) land in their expected
|
|
161
|
+
physical bands.
|
|
162
|
+
|
|
163
|
+
.. note::
|
|
164
|
+
The first ``tl --check`` after a fresh install typically takes
|
|
165
|
+
2–3 minutes while NumPy / SciPy / matplotlib warm their library
|
|
166
|
+
and font caches and the phase tracer allocates its internal
|
|
167
|
+
buffers. Subsequent runs finish in well under a minute.
|
|
168
|
+
|
|
169
|
+
For a faster sanity check that does not run the full smoke test:
|
|
170
|
+
|
|
171
|
+
.. code-block:: bash
|
|
172
|
+
|
|
173
|
+
tl -V
|
|
174
|
+
tl --help
|
|
175
|
+
|
|
176
|
+
If you cloned the repository (Option 3) and want to run the full
|
|
177
|
+
release test suite:
|
|
178
|
+
|
|
179
|
+
.. code-block:: bash
|
|
180
|
+
|
|
181
|
+
pip install pytest
|
|
182
|
+
pytest tests/test_release_smoke.py
|
|
183
|
+
|
|
184
|
+
If you encounter any issues, please open an issue at
|
|
185
|
+
https://github.com/tasicarl/TransitionListener/issues.
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"""2HDM model variant that swaps the radiation bath DOFs for BSMPT's tabulation.
|
|
2
|
+
|
|
3
|
+
Subclasses ``models/TL_2HDM.py`` and overrides only ``geff`` (the effective
|
|
4
|
+
relativistic DOF count) and ``radiationEnergyDensity`` so the comparison
|
|
5
|
+
against BSMPT in figs. 15-16 is fair (matched degrees of freedom).
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from __future__ import annotations
|
|
9
|
+
|
|
10
|
+
import importlib.util
|
|
11
|
+
from pathlib import Path
|
|
12
|
+
|
|
13
|
+
import numpy as np
|
|
14
|
+
from scipy.interpolate import interp1d
|
|
15
|
+
|
|
16
|
+
REPO_ROOT = Path(__file__).resolve().parents[3]
|
|
17
|
+
_BASE_MODEL_PATH = REPO_ROOT / "models" / "TL_2HDM.py"
|
|
18
|
+
_SPEC = importlib.util.spec_from_file_location("tl_2hdm_base_for_bsmpt", _BASE_MODEL_PATH)
|
|
19
|
+
if _SPEC is None or _SPEC.loader is None:
|
|
20
|
+
raise ImportError(f"Could not load base 2HDM model from {_BASE_MODEL_PATH}")
|
|
21
|
+
_BASE = importlib.util.module_from_spec(_SPEC)
|
|
22
|
+
_SPEC.loader.exec_module(_BASE)
|
|
23
|
+
_BaseR2HDM = _BASE.R2HDM
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class R2HDM(_BaseR2HDM):
|
|
27
|
+
"""2HDM with BSMPT-tabulated g_eff and matched radiation energy density."""
|
|
28
|
+
|
|
29
|
+
def geff(self, T):
|
|
30
|
+
TmeV = T * self.conversionFactor * 1000.0
|
|
31
|
+
TQCD = 214.0
|
|
32
|
+
if TmeV < _GstarLow.x[0]:
|
|
33
|
+
return _GstarLow.y[0]
|
|
34
|
+
if TmeV < TQCD:
|
|
35
|
+
return _GstarLow(TmeV)
|
|
36
|
+
if TmeV > _GstarHigh.x[-1]:
|
|
37
|
+
return _GstarHigh.y[-1]
|
|
38
|
+
THigh = 1_000_000.0
|
|
39
|
+
NHiggs = 8 # 2 Higgs doublets
|
|
40
|
+
gb = 8 * 2 + 4 * 2 + NHiggs
|
|
41
|
+
gf = 6 * 3 * 2 * 2 + 3 * 2 * 2 + 3 * 2
|
|
42
|
+
geff = gb + 7.0 / 8.0 * gf
|
|
43
|
+
return (
|
|
44
|
+
np.power(TmeV / TQCD, np.log(geff / _GstarHigh(THigh)) / np.log(THigh / TQCD))
|
|
45
|
+
* _GstarHigh(TmeV)
|
|
46
|
+
)
|
|
47
|
+
|
|
48
|
+
def radiationEnergyDensity(self, X: np.ndarray, T: float, include_decoupled: bool = True) -> float:
|
|
49
|
+
return np.pi**2 / 30.0 * self.geff(T) * T**4
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
# Tabulated SM DOFs from BSMPTv3 (kept verbatim for reproducibility).
|
|
53
|
+
_T_geff_low_T = np.array([
|
|
54
|
+
0.0108082473294362, 0.0132544853422679, 0.0164130719537513,
|
|
55
|
+
0.0209254644188534, 0.0261650469874882, 0.0353608915871512,
|
|
56
|
+
0.046869041923142, 0.0586047057131341, 0.0691293458424012,
|
|
57
|
+
0.0792016405019255, 0.0943373221629979, 0.1080824732943627,
|
|
58
|
+
0.1238303225656814, 0.1460686320364992, 0.1739828052930365,
|
|
59
|
+
0.2154434690031886, 0.2667843426133424, 0.3434511531723047,
|
|
60
|
+
0.4378750611447019, 0.5215543573159431, 0.6779905314017075,
|
|
61
|
+
0.8813485195214554, 1.191103133283008, 1.5634817887726846,
|
|
62
|
+
2.1336045265014154, 2.9116221936174886, 3.97334355690884,
|
|
63
|
+
5.422221006501592, 7.399430787258669, 10.1962111033439,
|
|
64
|
+
13.38388753173759, 19.740522782917267, 27.467464089622723,
|
|
65
|
+
35.70611636765516, 45.5226827550731, 59.176857481888305,
|
|
66
|
+
74.71670675868081, 89.86415560660353, 107.03747731285716,
|
|
67
|
+
117.95869461538555, 129.99422244132464, 144.656366672378,
|
|
68
|
+
159.41590374559996, 172.30065159280497, 180.87725821807484,
|
|
69
|
+
189.88078244652633, 201.27853758499404, 205.22784597889367,
|
|
70
|
+
211.29757595204444, 213.3604526501413, 214.0,
|
|
71
|
+
])
|
|
72
|
+
|
|
73
|
+
_g_eff_low_T = np.array([
|
|
74
|
+
3.3658815697017945, 3.3658815697017945, 3.3658815697017945,
|
|
75
|
+
3.3658815697017945, 3.3658815697017945, 3.3658815697017945,
|
|
76
|
+
3.382394267186192, 3.44925913850577, 3.604577854567564,
|
|
77
|
+
3.822602965197697, 4.27802539351597, 4.764333184219352,
|
|
78
|
+
5.331952737656886, 6.145013594907718, 6.978839481614777,
|
|
79
|
+
8.003765717673069, 8.826780724311218, 9.49911872220214,
|
|
80
|
+
9.926860119530184, 10.172762254077623, 10.373862535520988,
|
|
81
|
+
10.578938268487402, 10.63083754174351, 10.63083754174351,
|
|
82
|
+
10.68299142793866, 10.68299142793866, 10.68299142793866,
|
|
83
|
+
10.68299142793866, 10.73540117617992, 10.73540117617992,
|
|
84
|
+
10.840993285899073, 11.329158741258215, 12.312023528515777,
|
|
85
|
+
13.249833303981136, 14.259076274235422, 15.34519352280245,
|
|
86
|
+
16.273357000034707, 17.257661016595303, 18.66329455082922,
|
|
87
|
+
19.88925385896985, 22.042043732847453, 25.0329609011362,
|
|
88
|
+
29.70989855975818, 34.91719271493002, 39.84970215186929,
|
|
89
|
+
45.70210860743502, 51.52387306128587, 54.37357461507157,
|
|
90
|
+
57.10075759279219, 60.40653896580118, 62.206582722053376,
|
|
91
|
+
])
|
|
92
|
+
|
|
93
|
+
_T_geff_high_T = np.array([
|
|
94
|
+
214.0, 239.74349678010785, 264.2049367442677, 291.1622193617489,
|
|
95
|
+
314.6953279849359, 417.112461205652, 580.380857968711, 916.273901188674,
|
|
96
|
+
1250.392653838259, 1609.7226496584171, 1917.3456917247645, 2261.6759492228643,
|
|
97
|
+
2720.1894763524597, 3177.67666397599, 4090.857446731936, 5016.744011523654,
|
|
98
|
+
6585.145888528193, 8728.271965619264, 12383.032256568144, 16413.0719537513,
|
|
99
|
+
20522.784597889367, 24208.40881039768, 28834.711585860652, 33035.991201283396,
|
|
100
|
+
38592.0536875249, 43787.50611447019, 50167.440115236495, 58604.705713134,
|
|
101
|
+
69129.34584240108, 79201.64050192556, 98075.64691084584, 114570.21549500388,
|
|
102
|
+
133838.87531737564, 179128.4454622002, 221815.33182273328, 259120.700882331,
|
|
103
|
+
299773.5071793429, 350190.0461431713, 409085.7446731936, 615218.7115995496,
|
|
104
|
+
718687.4885321243, 856030.9194419073, 1000000.0,
|
|
105
|
+
])
|
|
106
|
+
|
|
107
|
+
_g_eff_high_T = np.array([
|
|
108
|
+
62.206582722053376, 62.818439158552, 63.59172964605013,
|
|
109
|
+
64.37453928407265, 65.00771947954463, 67.60333468656336,
|
|
110
|
+
70.64748495865959, 75.65755196355316, 78.29428716211838,
|
|
111
|
+
80.23374557134463, 81.81984661378124, 83.02996532165592,
|
|
112
|
+
83.4373024994812, 84.25798173219995, 85.08673306675854,
|
|
113
|
+
85.08673306675854, 85.92363589937597, 85.92363589937597,
|
|
114
|
+
86.34516915210169, 87.19444981010426, 88.48405910790844,
|
|
115
|
+
89.3543776292553, 91.12077991416442, 92.46845978663792,
|
|
116
|
+
94.29642281411095, 95.69107056836124, 97.10634521704075,
|
|
117
|
+
99.02599229669757, 100.4905905672094, 101.47900388225708,
|
|
118
|
+
102.97988228935156, 103.99277997720792, 104.50295874635492,
|
|
119
|
+
105.01564040441929, 105.01564040441929, 105.5308372303379,
|
|
120
|
+
105.5308372303379, 106.04856156328714, 106.04856156328714,
|
|
121
|
+
106.04856156328714, 106.56882580297788, 106.56882580297788,
|
|
122
|
+
106.56882580297788,
|
|
123
|
+
])
|
|
124
|
+
|
|
125
|
+
_GstarLow = interp1d(_T_geff_low_T, _g_eff_low_T, kind="cubic")
|
|
126
|
+
_GstarHigh = interp1d(_T_geff_high_T, _g_eff_high_T, kind="cubic")
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"""2HDM high-accuracy wrapper with tuned path-deformation convergence controls.
|
|
2
|
+
|
|
3
|
+
Part of TransitionListener v2.0
|
|
4
|
+
Documentation: https://tasillo.de/TransitionListener/
|
|
5
|
+
|
|
6
|
+
Authors:
|
|
7
|
+
Jonas Matuszak <jonas.matuszak@kit.edu>
|
|
8
|
+
Carlo Tasillo <carlo.tasillo@ific.uv.es>
|
|
9
|
+
"""
|
|
10
|
+
|
|
11
|
+
from __future__ import annotations
|
|
12
|
+
|
|
13
|
+
import copy
|
|
14
|
+
import importlib.util
|
|
15
|
+
from pathlib import Path
|
|
16
|
+
|
|
17
|
+
_BASE_MODEL_PATH = Path(__file__).with_name("TL_2HDM_BSMPT.py")
|
|
18
|
+
_SPEC = importlib.util.spec_from_file_location("tl_2hdm_base_model_nact100_conv", _BASE_MODEL_PATH)
|
|
19
|
+
if _SPEC is None or _SPEC.loader is None:
|
|
20
|
+
raise ImportError(f"Could not load base model from {_BASE_MODEL_PATH}")
|
|
21
|
+
_MODULE = importlib.util.module_from_spec(_SPEC)
|
|
22
|
+
_SPEC.loader.exec_module(_MODULE)
|
|
23
|
+
R2HDM = _MODULE.R2HDM
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class R2HDM_HighAcc_NAct100_Conv1_FRatio005(R2HDM):
|
|
27
|
+
"""2HDM model with n_action=100 and adjusted deformation convergence settings."""
|
|
28
|
+
|
|
29
|
+
def setConfigParameters(self) -> None:
|
|
30
|
+
super().setConfigParameters()
|
|
31
|
+
self.config.percolationConf.n_action = 100
|
|
32
|
+
|
|
33
|
+
tunneling = copy.deepcopy(self.config.tracingConf.tunneling_params)
|
|
34
|
+
deform = dict(tunneling.get("deformation_deform_params", {}))
|
|
35
|
+
deform["converge_0"] = 1.0
|
|
36
|
+
deform["fRatioConv"] = 5e-3
|
|
37
|
+
tunneling["deformation_deform_params"] = deform
|
|
38
|
+
self.config.tracingConf.tunneling_params = tunneling
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "TransitionListener"
|
|
7
|
-
version = "2.0
|
|
7
|
+
version = "2.1.0"
|
|
8
8
|
description = "Framework for analyzing cosmological first-order phase transitions and their gravitational wave signatures."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
{transitionlistener-2.0.1 → transitionlistener-2.1.0}/src/transitionlistener/hydrodynamics.py
RENAMED
|
@@ -6,9 +6,14 @@ Based on the code snippet provided in `arxiv:2303.10171`.
|
|
|
6
6
|
Part of TransitionListener v2.0
|
|
7
7
|
Documentation: https://tasillo.de/TransitionListener/
|
|
8
8
|
|
|
9
|
-
Authors:
|
|
9
|
+
Authors of the wrapper:
|
|
10
10
|
Jonas Matuszak <jonas.matuszak@kit.edu>
|
|
11
11
|
Carlo Tasillo <carlo.tasillo@ific.uv.es>
|
|
12
|
+
|
|
13
|
+
Authors of the hydrodynamics routines:
|
|
14
|
+
Wen-Yuan Ai <wenyuanai@sjtu.edu.cn>
|
|
15
|
+
Benoit Laurent <blaurent@perimeterinstitute.ca>
|
|
16
|
+
Jorinde van de Vis <jorinde.van.de.vis@cern.ch>
|
|
12
17
|
"""
|
|
13
18
|
|
|
14
19
|
import numpy as np
|