ThreeBodyDecays v0.13.0
Highlights
- Add energy-dependent vertex functions for modeling amplitude energy behavior.
- New Dalitz plot capabilities:
- 1D Dalitz plot projections recipe (dalitzprojection) with x/y binning and auto limits.
- User plot recipe dalitzplotwith configurablexbins,ybins, and:autoranges.
 
- 1D Dalitz plot projections recipe (
- New integrand for cosθ projection, project_cosθij_intergandin three-body decay analysis.
- Documentation overhaul: reorganized tutorials/canonical sections; new energy-dependence and visualization pages.
Breaking changes
- new struct for DecayVertexthat hold the helicity couplings, and also energy-dependent form-factor.
 It used to be that one creates a decay chain withHRk = RecouplingLS((two_L,two_S)), andHij = RecouplingLS((two_l,two_s)), now one should specify to create aDecayVertexif no form-factor is provided,NoFormFactor()is used
Hij = RecouplingLS((two_l,two_s)) |> DecayVertex
HRk = RecouplingLS((two_L,two_S)) |> DecayVertex
or DecayVertex(RecouplingLS((two_l,two_s)) , BlattWeisskopf{l}(1.5))
- Large file/module restructuring and renames:
- Core modules split into clearer typed components: mass_types.jl,parity_types.jl,spin_types.jl,system_types.jl,phase_space.jl,mandelstam.jl,recouplings.jl.
- coupling_scheme.jl→- coupling_schemes.jl.
- cross_channel_relations.jl→- cross_channel.jl.
- model.jl→- decay_model.jl.
- wignerd_matrix.jl→- wigner_d_matrix.jl.
- Removed: kinematics.jl,tbs_struct.jl,dalitz_plot_recipe.jl.
 
- Core modules split into clearer typed components: 
New features
- Energy-dependent vertex functions to parameterize couplings versus energy.
- Dalitz plotting:
- dalitzprojectionrecipe for 1D projections with- xbins,- ybins, and automatic limit selection.
- dalitzplotuser plot recipe with improved configuration.
 
- cosθ projection integrand for analysis workflows.
Improvements
- Documentation site updates:
- New pages: 10-energy-dependence.md,32-visualization.jl.
- Tutorial/canonical pages reorganized: 10-tutorial.jl→30-tutorial.jl,11-canonical.jl→31-canonical.jl.
- Developer docs improvements.
 
- New pages: 
- CI/CD and maintenance:
- Pre-commit updates.
- GitHub Actions updates (actions/checkout@v5,setup-python@v6).
- Spelling, link checking, and docs workflow tweaks.
 
Fixes
- Random requirement compatibility fixed for Julia 1.7 environments.
Dependency and compat
- Compat bounds updated:
- StaticArrays = 1.9.2,- Polynomials = 4.0.6,- RecipesBase = 1.3.0,- Tullio = 0.3.0,- PartialWaveFunctions = 0.2.0,- PolynomialRoots = 1.0.0,- Parameters = 0.12.0.
 
- No Julia version change (>= 1.7).
Internal changes and adoption strategy
- Update imports/uses to new module/file names:
- Use coupling_schemes,cross_channel,decay_model,wigner_d_matrix,mandelstam,phase_space,recouplings,mass_types,parity_types,spin_types,system_types.
 
- Use 
- Remove references to deleted files (kinematics,tbs_struct, olddalitz_plot_recipe).
- Adjust plotting code to use new recipes:
- dalitzplotand- dalitzprojectionwith- xbins,- ybins,- :autolimits.
 
- If you depend on internal utilities, verify symbol locations after the refactor.
Merged pull requests:
- add/fix docstrings (#68) (@mmikhasenko)
- [AUTO] pre-commit update (#69) (@github-actions[bot])
- feat: add aligned_four_vectors function and tests (#70) (@mmikhasenko)
- feat: Add cosθ projection integrand for three-body decay analysis (#71) (@mmikhasenko)
- fixes docs 10- issue (#72) (@mmikhasenko)
- [AUTO] pre-commit update (#73) (@github-actions[bot])
- [AUTO] pre-commit update (#74) (@github-actions[bot])
- [AUTO] pre-commit update (#75) (@github-actions[bot])
- Bump actions/checkout from 4 to 5 (#76) (@dependabot[bot])
- Bump actions/setup-python from 5 to 6 (#77) (@dependabot[bot])
- Add energy-dependent vertex functions (#79) (@mmikhasenko)
- Fix random requirement, it fails on 1.7 (#80) (@mmikhasenko)
- Add parameters to Dalitz plot recipe: xbins, ybins, :auto limits, and dalitzplot userplot (#82) (@Copilot)
- Add dalitzprojection recipe for 1D Dalitz plot projections (#83) (@Copilot)
Closed issues: