Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
7e69f16
MAINT: upgrade lock files
pre-commit-ci[bot] Jan 5, 2026
29a72af
MAINT: upgrade GitHub workflows
redeboer Jan 6, 2026
fb53a99
ENH: extend value type of dict
redeboer Jan 5, 2026
bf4350c
ENH: accept any keyword argument for `DynamicsConfigurator`
redeboer Jan 5, 2026
a0a0bcb
DX: remove `poethepoet` from environment
redeboer Jan 7, 2026
c2999dd
DX: use Poe the Poet executor options
redeboer Jan 7, 2026
6fff38a
DX: switch to `ty` as type checker and fix issues
redeboer Jan 6, 2026
b10b56f
MAINT: upgrade lock files
redeboer Jan 10, 2026
a0d6ff2
MAINT: upgrade ComPWA/policy and improve Poe tasks
redeboer Jan 10, 2026
599b942
FIX: add missing dependency groups
redeboer Jan 10, 2026
8fbefe7
MAINT: upgrade lock files
redeboer Jan 10, 2026
0bf9868
ENH: generalize function signatures
redeboer Jan 10, 2026
a0410dc
MAINT: upgrade lock files and dev config
redeboer Jan 15, 2026
304e9e5
Merge branch 'main' into pre-commit-ci-update-config
redeboer Jan 29, 2026
271924d
MAINT: upgrade lock files
redeboer Feb 4, 2026
f7ae3f2
MAINT: ugprade lock files
redeboer Feb 5, 2026
db0f4d0
FIX: generalize `subexpressions` signature
redeboer Feb 5, 2026
363a14e
MAINT: upgrade lock files
redeboer Feb 5, 2026
0933627
MAINT: implement updates from formatters
web-flow Feb 5, 2026
a3a5765
MAINT: upgrade lock files
redeboer Feb 6, 2026
dd45642
MAINT: upgrade lock files
redeboer Feb 6, 2026
f5a212a
MAINT: upgrade lock files and dev config
redeboer Feb 6, 2026
77221e0
DOC: update PyPI URLs
redeboer Feb 6, 2026
1ad340e
MAINT: ugprade lock files
redeboer Feb 6, 2026
89bc090
DOC: set `bibtex_use_mathjax = True`
redeboer Feb 6, 2026
62da6ac
MAINT: update bibliography style
redeboer Feb 6, 2026
1ddc790
MAINT: ugprade lock files
redeboer Feb 16, 2026
c22a7a4
MAINT: ugprade lock files
redeboer Feb 16, 2026
8f90a9a
MAINT: reduce diff
redeboer Feb 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions .cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
"*particle*.*ml",
".editorconfig",
".envrc",
".github/dependabot.yml",
".gitignore",
".pre-commit-config.yaml",
".prettierignore",
Expand All @@ -38,7 +39,6 @@
"ignoreWords": [
"Jpsi",
"Kallen",
"MAINT",
"PyPI",
"absl",
"arange",
Expand Down Expand Up @@ -87,7 +87,6 @@
"maxdepth",
"maxsplit",
"meshgrid",
"mypy",
"mystnb",
"nanmax",
"nansum",
Expand Down Expand Up @@ -171,7 +170,6 @@
"NumPy",
"PyPA",
"pyplot",
"pyright",
"pytest",
"QRules",
"recoupling",
Expand Down
19 changes: 19 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
version: 2

multi-ecosystem-groups:
lock:
assignees: [redeboer]
commit-message: { prefix: MAINT }
schedule: { interval: quarterly }

updates:
- package-ecosystem: github-actions
directory: "/"
labels: [⬆️ Lock]
multi-ecosystem-group: lock
patterns: ["*"]
- package-ecosystem: uv
directory: "/"
labels: [⬆️ Lock]
multi-ecosystem-group: lock
patterns: ["*"]
8 changes: 4 additions & 4 deletions .github/workflows/cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ on:
jobs:
milestone:
if: startsWith(github.ref, 'refs/tags')
uses: ComPWA/actions/.github/workflows/close-milestone.yml@v3
uses: ComPWA/actions/.github/workflows/close-milestone.yml@v4
package-name:
uses: ComPWA/actions/.github/workflows/get-pypi-name.yml@v3
uses: ComPWA/actions/.github/workflows/get-pypi-name.yml@v4
pypi:
environment:
name: PyPI
Expand All @@ -24,9 +24,9 @@ jobs:
id-token: write
runs-on: ubuntu-24.04
steps:
- uses: ComPWA/actions/build-pypi-distribution@v3
- uses: ComPWA/actions/build-pypi-distribution@v4
- uses: pypa/gh-action-pypi-publish@release/v1
push:
if: startsWith(github.ref, 'refs/tags') && !github.event.release.prerelease
secrets: inherit
uses: ComPWA/actions/.github/workflows/push-to-version-branches.yml@v3
uses: ComPWA/actions/.github/workflows/push-to-version-branches.yml@v4
26 changes: 9 additions & 17 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,32 +17,24 @@ on:
- epic/*
- "[0-9]+.[0-9]+.x"
workflow_dispatch:
inputs:
specific-pip-packages:
description: Run CI with specific pip packages
required: false
type: string

jobs:
doc:
uses: ComPWA/actions/.github/workflows/ci-docs.yml@v3.0
uses: ComPWA/actions/.github/workflows/ci-docs.yml@v4.0
permissions:
pages: write
id-token: write
with:
apt-packages: graphviz
gh-pages: true
specific-pip-packages: ${{ inputs.specific-pip-packages }}
pytest:
uses: ComPWA/actions/.github/workflows/pytest.yml@v3.0
with:
coverage-target: ampform_dpd
macos-python-version: "3.10"
specific-pip-packages: ${{ inputs.specific-pip-packages }}
secrets:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
style:
if: inputs.specific-pip-packages == ''
secrets:
token: ${{ secrets.PAT }}
uses: ComPWA/actions/.github/workflows/pre-commit.yml@v3.0
uses: ComPWA/actions/.github/workflows/style.yml@v4.0
test:
uses: ComPWA/actions/.github/workflows/test.yml@v4.0
secrets:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
coverage-python-version: "3.13"
macos-python-version: "3.10"
4 changes: 2 additions & 2 deletions .github/workflows/clean-caches.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ on:
jobs:
cleanup:
name: Remove caches
runs-on: ubuntu-24.04
runs-on: ubuntu-slim
steps:
- uses: ComPWA/actions/clean-caches@v3
- uses: ComPWA/actions/clean-caches@v4
with:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ref: ${{ inputs.ref }}
2 changes: 1 addition & 1 deletion .github/workflows/lock.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,6 @@ on:

jobs:
lock:
uses: ComPWA/actions/.github/workflows/lock.yml@v3
uses: ComPWA/actions/.github/workflows/lock.yml@v4
secrets:
token: ${{ secrets.PAT }}
2 changes: 1 addition & 1 deletion .github/workflows/pr-linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ on:

jobs:
lint-pr:
uses: ComPWA/actions/.github/workflows/pr-linting.yml@v3
uses: ComPWA/actions/.github/workflows/pr-linting.yml@v4
2 changes: 1 addition & 1 deletion .github/workflows/release-drafter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

jobs:
update_release_draft:
runs-on: ubuntu-24.04
runs-on: ubuntu-slim
steps:
- uses: release-drafter/release-drafter@v6
env:
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ __pycache__/
.coverage
.coverage.*
.ipynb_checkpoints/
.mypy*/
.pytest_cache/
.virtual_documents/
*.pyc
Expand Down
38 changes: 17 additions & 21 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
ci:
autofix_commit_msg: "MAINT: implement pre-commit autofixes"
autoupdate_commit_msg: "MAINT: upgrade lock files"
autoupdate_schedule: quarterly
skip:
- mypy
- pyright
- ty
- uv-lock

repos:
Expand All @@ -14,21 +12,23 @@ repos:
- id: check-useless-excludes

- repo: https://github.com/ComPWA/policy
rev: 0.7.3
rev: 0.8.3
hooks:
- id: check-dev-files
args:
- --doc-apt-packages=graphviz
- --github-pages
- --repo-name=ampform-dpd
- --repo-title=AmpForm-DPD
- --type-checker=ty
- id: colab-toc-visible
- id: fix-nbformat-version
- id: remove-empty-tags
- id: set-nb-display-name
- id: strip-nb-whitespace

- repo: https://github.com/kynan/nbstripout
rev: 0.8.1
rev: 0.9.0
hooks:
- id: nbstripout
args:
Expand Down Expand Up @@ -56,7 +56,7 @@ repos:
metadata.vscode

- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.14.0
rev: v0.15.1
hooks:
- id: ruff-check
args: [--fix]
Expand All @@ -80,7 +80,7 @@ repos:
- id: trailing-whitespace

- repo: https://github.com/ComPWA/prettier-pre-commit
rev: v3.4.2
rev: v3.8.1
hooks:
- id: prettier

Expand All @@ -97,12 +97,12 @@ repos:
- --in-place

- repo: https://github.com/streetsidesoftware/cspell-cli
rev: v9.2.0
rev: v9.6.0
hooks:
- id: cspell

- repo: https://github.com/editorconfig-checker/editorconfig-checker.python
rev: 3.4.0
rev: 3.6.0
hooks:
- id: editorconfig-checker
name: editorconfig
Expand All @@ -114,20 +114,16 @@ repos:

- repo: local
hooks:
- id: mypy
name: mypy
entry: mypy
language: system
- id: ty
name: ty
entry: ty check
args: [--no-progress, --output-format=concise]
pass_filenames: false
require_serial: true
types:
- python

- repo: https://github.com/ComPWA/pyright-pre-commit
rev: v1.1.406
hooks:
- id: pyright
language: system
types_or: [python, pyi, jupyter]

- repo: https://github.com/astral-sh/uv-pre-commit
rev: 0.9.3
rev: 0.10.3
hooks:
- id: uv-lock
6 changes: 1 addition & 5 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,7 @@ build:
pixi global install graphviz uv
- |-
export UV_LINK_MODE=copy
uv run \
--group doc \
--no-dev \
--with poethepoet \
poe doc
uvx --from poethepoet poe doc
mkdir -p $READTHEDOCS_OUTPUT
mv docs/_build/html $READTHEDOCS_OUTPUT

Expand Down
5 changes: 3 additions & 2 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"recommendations": [
"astral-sh.ty",
"charliermarsh.ruff",
"eamodio.gitlens",
"editorconfig.editorconfig",
Expand All @@ -8,9 +9,7 @@
"github.vscode-github-actions",
"github.vscode-pull-request-github",
"mhutchie.git-graph",
"ms-python.mypy-type-checker",
"ms-python.python",
"ms-python.vscode-pylance",
"ms-toolsai.jupyter",
"ms-toolsai.vscode-jupyter-cell-tags",
"ms-vscode.live-server",
Expand All @@ -30,7 +29,9 @@
"ms-python.black-formatter",
"ms-python.flake8",
"ms-python.isort",
"ms-python.mypy-type-checker",
"ms-python.pylint",
"ms-python.vscode-pylance",
"ms-toolsai.vscode-jupyter-slideshow",
"ryanluker.vscode-coverage-gutters",
"travisillig.vscode-json-stable-stringify",
Expand Down
9 changes: 6 additions & 3 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,19 +33,19 @@
"cSpell.enabled": true,
"diffEditor.experimental.showMoves": true,
"editor.formatOnSave": true,
"editor.unicodeHighlight.allowedCharacters": {
"σ": true
},
"files.eol": "\n",
"github-actions.workflows.pinned.workflows": [".github/workflows/ci.yml"],
"gitlens.telemetry.enabled": false,
"livePreview.defaultPreviewPath": "docs/_build/html",
"multiDiffEditor.experimental.enabled": true,
"mypy-type-checker.args": ["--config-file=${workspaceFolder}/pyproject.toml"],
"notebook.codeActionsOnSave": {
"notebook.source.organizeImports": "explicit"
},
"notebook.formatOnSave.enabled": true,
"notebook.gotoSymbols.showAllSymbols": true,
"python.analysis.autoImportCompletions": false,
"python.analysis.inlayHints.pytestParameters": true,
"python.defaultInterpreterPath": ".venv/bin/python",
"python.terminal.activateEnvironment": false,
"python.testing.pytestArgs": ["--numprocesses=auto"],
Expand All @@ -65,6 +65,9 @@
"telemetry.telemetryLevel": "off",
"testing.coverageToolbarEnabled": true,
"testing.showCoverageInExplorer": true,
"ty.completions.autoImport": false,
"ty.diagnosticMode": "workspace",
"ty.importStrategy": "fromEnvironment",
"yaml.schemas": {
"https://raw.githubusercontent.com/ComPWA/qrules/0.10.x/src/qrules/particle-validation.json": [
"*particle*.y*ml"
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,10 @@
[![Test coverage](https://codecov.io/gh/ComPWA/ampform-dpd/branch/main/graph/badge.svg)](https://codecov.io/gh/ComPWA/ampform-dpd)

[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
[![Spelling checked](https://img.shields.io/badge/cspell-checked-brightgreen.svg)](https://github.com/streetsidesoftware/cspell/tree/master/packages/cspell)
[![Spelling checked](https://img.shields.io/badge/cspell-checked-brightgreen.svg)](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
[![uv](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json)](https://github.com/astral-sh/uv)
[![ty](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ty/main/assets/badge/v0.json)](https://github.com/astral-sh/ty)

This repository is a (temporary) extension of [AmpForm](https://ampform.rtfd.io) and provides a symbolic implementation of Dalitz-plot decomposition ([10.1103/PhysRevD.101.034033](https://journals.aps.org/prd/abstract/10.1103/PhysRevD.101.034033)) with [SymPy](https://www.sympy.org/en/index.html). It has been extracted from the [ComPWA/polarimetry](https://github.com/ComPWA/polarimetry) repository ([10.1007/JHEP07(2023)228](<https://doi.org/10.1007/JHEP07(2023)228>)).

Expand Down
12 changes: 6 additions & 6 deletions docs/comparison/d2kkk.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@
"model_builder = ampform.get_builder(REACTION)\n",
"model_builder.use_helicity_couplings = False\n",
"model_builder.config.scalar_initial_state_mass = True\n",
"model_builder.config.stable_final_state_ids = [0, 1, 2]\n",
"model_builder.config.stable_final_state_ids = {0, 1, 2}\n",
"AMPFORM_MODEL = model_builder.formulate()\n",
"AMPFORM_MODEL.intensity.cleanup()"
]
Expand Down Expand Up @@ -353,13 +353,13 @@
},
"outputs": [],
"source": [
"coefficients = {s for s in AMPFORM_MODEL.parameter_defaults if s.name.startswith(\"C\")}\n",
"couplings = {s for s in DPD_MODEL.parameter_defaults if \"production\" in s.name}\n",
"coefficients = {s for s in AMPFORM_MODEL.parameter_defaults if str(s).startswith(\"C\")}\n",
"couplings = {s for s in DPD_MODEL.parameter_defaults if \"production\" in str(s)}\n",
"substitutions = {s: 1 for s in DPD_MODEL.parameter_defaults if \"decay\" in s.name}\n",
"for c in coefficients:\n",
" resonance_name = c.name[24:].split(\";\", maxsplit=1)[0]\n",
" resonance_name = str(c)[24:].split(\";\", maxsplit=1)[0]\n",
" resonance_name = resonance_name.rsplit(\"_\", maxsplit=1)[0][:-1]\n",
" coupling, *_ = {s for s in couplings if resonance_name in s.name}\n",
" coupling, *_ = {s for s in couplings if resonance_name in str(s)}\n",
" substitutions[coupling] = c\n",
"Latex(aslatex(substitutions))"
]
Expand Down Expand Up @@ -393,7 +393,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.13.9"
"version": "3.13.12"
}
},
"nbformat": 4,
Expand Down
Loading