Draft

PWA Frameworks

Software inventory

Amplitude analysis projects

The following frameworks or projects are specifically designed to do amplitude analysis. The table is built from this YAML file and can be updated here.

Code
from IPython.display import Markdown, display

from pwa_pages.project_inventory import (
    ProjectInventory,
    load_yaml,
    to_markdown_table,
)

inventory_dict = load_yaml("amplitude-analysis-projects.yml")
src = to_markdown_table(
    inventory=ProjectInventory(**inventory_dict),
    selected_languages=[
        "C++",
        "Python",
        "Julia",
        "Rust",
        "Cuda",
    ],
    fetch=True,
)
display(Markdown(src))
Project Collaboration Since Latest commit C++ Python Julia Rust Cuda
AmpGen CLEO / LHCb 2018 02/2025
AmpTools BESIII / GlueX 2011 07/2026
BruFit CLAS12 2020 06/2026
ComPWA (C++) 2012 01/2024
ComPWA project 2020 07/2026
cFit 2012 05/2018
FDC-PWA BESIII 2000
GPUPWA BESIII 2011
HAMMER 2016 06/2026
Ipanema 2017 03/2019
Laura++ LHCb 2013
laddu GlueX 2024 05/2026
Mint2 2016 01/2020
Pawian BESIII / PANDA 2010 06/2026
PyPWA JLab 2014 05/2023
Rio++ LHCb 2016
ROOTPWA COMPASS 2009 06/2020
TARA Crystal Barrel 1999
TensorFlowAnalysis LHCb 2016 12/2025
TF-PWA BESIII / LHCb 2019 05/2026
ThreeBodyDecays.jl LHCb 2019 07/2026

General fitter packages

The following packages do not have functionality for amplitude building, but can do fits with high performance. The YAML database for this table can be updated here.

Code
inventory_dict = load_yaml("fitter-packages.yml")
src = to_markdown_table(
    inventory=ProjectInventory(**inventory_dict),
    selected_languages=[
        "C++",
        "Python",
        "Cuda",
    ],
    fetch=True,
    hide_columns=["Collaboration"],
)
display(Markdown(src))
Project Since Latest commit C++ Python Cuda
GooFit 2013 06/2026
Hydra 2016 07/2026
RooFit 2000
zfit 2018 07/2026

Software development

Tip

Have a look at scikit-hep.org/developer and Towards a HEP Software Training curriculum! For development instructions for the ComPWA organization, see Help developing.