Ampform

Latest version: v0.15.4

Safety actively analyzes 688775 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 9

0.11.5

_Final release before [AmpForm v0.12](https://github.com/ComPWA/ampform/milestone/19)._

See all documentation for this version [here](https://ampform.rtfd.io/en/0.11.5).

🔨 Internal maintenance

<details>
<summary>Narrowed down type hints (168)</summary>

* Improved some of the type hints
* Enforcing the use of [mypy error codes](https://mypy.readthedocs.io/en/stable/error_codes.html#silencing-errors-based-on-error-codes) (` type: ignore[error-code]`) with [flake8-type-ignore](https://gitlab.com/jonafato/flake8-type-ignore).

---

See also https://github.com/ComPWA/qrules/pull/114 and https://github.com/ComPWA/tensorwaves/pull/332

</details>

<details>
<summary>Removed CG latex fix (176)</summary>

This inline fix is not required anymore since https://github.com/sympy/sympy/pull/21769. This fix was released with [SymPy v1.9](https://github.com/sympy/sympy/wiki/release-notes-for-1.9).

Note that a minimum version for SymPy is not specified in `setup.cfg`. This is done on purpose because the fix is not crucial for performance of the helicity model building.
https://github.com/ComPWA/ampform/blob/5abe1f/setup.cfg#L48

</details>


📝 Documentation

<details>
<summary>Added Conda badge (169)</summary>

</details>


🖱️ Developer Experience

<details>
<summary>Error logs from myst-nb are now printed on GitHub Actions (170)</summary>

- The uploaded error logs are a bit of a pain to read and you have to download them first. This makes it a bit easier to inspect any errors.
- Fixes this problem: https://github.com/ComPWA/ampform/pull/170/checks?check_run_id=3950232038

</details>

<details>
<summary>Fixed comment syntax in .flake8 config (171)</summary>

The `.flake8` config file was using not using the same comment style as described in
https://flake8.pycqa.org/en/latest/user/configuration.html#project-configuration
Consequence not all errors were identified anymore.

</details>

0.11.4

See all documentation for this version [here](https://ampform.rtfd.io/en/0.11.4).

🐛 Bug fixes

<details>
<summary>Support pickling with SymPy v1.9 (164)</summary>

</details>


📝 Documentation

<details>
<summary>Embedded Zenodo metadata (165)</summary>

See https://github.com/ComPWA/compwa-org/issues/64

</details>

0.11.3

See all documentation for this version [here](https://ampform.rtfd.io/en/0.11.3).

🐛 Bug fixes

<details>
<summary>import OrderedDict from collections instead of typing-extensions (162)</summary>

Previously, `OrderedDict` was imported from `typing-extensions`. This seems to work better for typing than `collections.OrderedDict`, but is only available in `typing-extensions==3.10.*`, see e.g.
https://github.com/ComPWA/tensorwaves/pull/327/checks?check_run_id=3717304158

Setting `typing-extensions>=3.10` as a lower limit however causes problems downstream for packages that use TensorFlow, see e.g. https://github.com/ComPWA/tensorwaves/pull/317

For now, it's therefore better to use collections.OrderedDict instead, so that there is no need to restrict typing-extensions.

</details>


📝 Documentation

<details>
<summary>Added Zenodo DOI badge (160)</summary>

Closes https://github.com/ComPWA/compwa-org/issues/55

[![Zenodo DOI](https://zenodo.org/badge/doi/10.5281/zenodo.5526648.svg)](https://doi.org/10.5281/zenodo.5526648)

</details>

0.11.2

_Release for first Zenodo DOI_
[![Zenodo DOI](https://zenodo.org/badge/doi/10.5281/zenodo.5526648.svg)](https://doi.org/10.5281/zenodo.5526648)

See all documentation for this version [here](https://ampform.rtfd.io/en/0.11.2).

💡 New features

<details>
<summary>Set CoupledWidth name through constructor (141)</summary>

`CoupledWidth._name` can now be set through the constructor, just like other classes that derive from `UnevaluatedExpression`.

</details>

<details>
<summary>Use multiple plot symbols in prepare_sliders (145)</summary>

Sometimes, you want to plot an expression with respect to several variables (like an _XY_-plot). This commit facilitates that.

</details>

<details>
<summary>Ordered components and parameter defaults in HelicityModel (146)</summary>

`HelicityModel.components` and `HelicityModel.parameter_defaults` are now ordered alphabetically, so that you can also get them by index. ([Not entirely straight-forward](https://stackoverflow.com/a/10058239/13219025), but at least now it's guaranteed that the items are orderd.)

</details>

<details>

<summary>Warning is emitted when resonance is not available in HelicityModel (148)</summary>

</details>

🐛 Bug fixes

<details>
<summary>Correctly set custom phsp_factor CoupledWidth (140)</summary>

`CoupledWidth` class did not set its `phsp_factor` attribute if it was specified in the constructor.

</details>

<details>
<summary>Determine phase space factor subscript from s (144)</summary>

Just like with `CoupledWidth`, the (optional) subscript in the latex rendering for this function should come from the decaying parameter (input argument `s`), not the decay products (input argument `m_a`).

</details>

<details>
<summary>Removed mdit-py-plugins version limit (147)</summary>

Dependency conflicts have been resolved by `myst-nb`.

</details>

📝 Documentation

<details>
<summary>Removed 0-below-threshold note for rel BW (143 and 371572e)</summary>

The docstring for `relativistic_breit_wigner_with_ff` still included a note about setting the damping factor to zero below threshold in case of zero angular momentum.

</details>

<details>
<summary>Embeded GPLv3+ license file (154)</summary>

Some platforms like Zenodo and conda-forge require the license file to be packaged.

</details>

<details>
<summary>Extended package description in README and removed tick-boxed (155)</summary>

Removed the tick-boxes, as they do not render correctly on PyPI

</details>

<details>
<summary>Added package description for PyPI (158)</summary>

Closes https://github.com/ComPWA/compwa-org/issues/61

</details>

🔨 Internal maintenance

<details>
<summary>Simplify doit implementation (142)</summary>

The `implement_doit_method` decorator would re-construct the class from its own arguments. It's better to directly call the `evaluate()` method though, because the class is already constructed once the method is called.

</details>

<details>
<summary>Removed mdit-py-plugins version limit (147)</summary>

Dependency conflicts have been resolved by `myst-nb`.

</details>

0.11.1

See all documentation for this version [here](https://ampform.rtfd.io/en/0.11.1).

🐛 Bug fixes

<details>
<summary>Classes deriving from UnevaluatedExpression are now pickled correctly (139)</summary>

A pickled `HelicityModel` could not be unpickled again, because the `UnevaluatedExpression._name` attribute was stored as a positional (i.e. required) argument in [`__getnewargs__`](https://docs.python.org/3/library/pickle.html#object.__getnewargs__).

</details>

0.11.0

Two major new changes:

- Added a **module for symbolic K-matrix and P-vector expressions**
- **Dynamics functions are now classes**, so that they can be more easily identified in the expression tree

See all documentation for this version [here](https://ampform.rtfd.io/en/0.11.0).

💡 New features

<details>
<summary>Added a module for symbolic, non-relativistic K-matrix computations for an arbitrary number of channels (117, 120, 121, 122, 127, 128, and 129)</summary>

Implemented [TR-005](https://compwa-org.rtfd.io/en/stable/report/005.html) and [TR-009](https://compwa-org.readthedocs.io/en/latest/report/009.html). Notable difference: this implementation provides **caching of the matrix multiplication** so that one can more easily switch between a different number of channels.

</details>

<details>
<summary>Implemented (non-)relativistic P-vector (123, 127, 131, and 132)</summary>

Implementation of [TR-010](https://compwa-org.readthedocs.io/en/stable/report/010.html).

Closes 118

</details>

<details>
<summary>Added symbol_to_arg and arg_to_symbol attribute to symplot.SliderKwargs (124)</summary>

Added a `symbol_to_arg` and `arg_to_symbol` property to `symplot.SliderKwargs`, as it is often needed in the visualization applets.

</details>

<details>
<summary>Maximum angular momentum in BlattWeisskopfSquared can now be limited (134)</summary>

Specifically for speeding up the widgets, see e.g. ad65784

</details>


⚠️ Interface

<details>
<summary>Dynamics functions are now wrapped in Expr classes (115, 119, and 138)</summary>

Inspired by https://github.com/ComPWA/compwa-org/pull/37 and https://github.com/ComPWA/compwa-org/pull/43, which required to re-define coupled width and other dynamics in terms of a class to make them render nicely, all expression nodes of dynamics functions are formulated in terms of `sympy.Expr` classes. This has been made possible with #114.

Note some major interface changes:
- `coupled_width` -> `CoupledWidth`
- `breakup_momentum_squared` -> `BreakupMomentumSquared`
- `phase_space_factor` -> `PhaseSpaceFactor`
(for this, the `PhaseSpaceFactor` had to be renamed to `PhaseSpaceFactorProtocol`)
- etc...

The `breakup_momentum` function has been removed.

Also added a (hidden) instance attribute `UnevaluatedExpr._name`, so that it can be used in the LaTeX rendering. In addition, the LaTeX rendering of of classes like `PhaseSpaceFactor` is affected by the name of their arguments (if they have any). This comes in handy in the relativistic K-matrix, when we want to distinguish between different `CoupledWidth`s and `PhaseSpaceFactor`s in the LaTeX rendering.

</details>

<details>
<summary>Renamed decorator sub-module to "sympy" (116)</summary>

The `ampform.dynamics.decorator` sub-module does more than just providing decorators. It generally contains functions that help building `sympy.Expr` classes (and instances), so it is better moved and renamed to a more general place: `ampform.sympy`.

</details>


📝 Documentation

<details>
<summary>Added comparison visualization of P-vector vs K-matrix (125)</summary>

![record](https://user-images.githubusercontent.com/29308176/128599042-d1039fe0-7d11-4121-8606-ee36f4708f54.gif)


</details>

<details>
<summary>Imported and improved K-matrix theory section from compwa-org (126 and 130)</summary>

Imported and bundled the theory sections from [TR-005](https://compwa-org.readthedocs.io/en/stable/report/005.html), [TR-009](https://compwa-org.readthedocs.io/en/stable/report/009.html), and [TR-010](https://compwa-org.readthedocs.io/en/stable/report/010.html). Many more notes were added and some problems have been pointed out as well. Sphinx preview [here](https://ampform--126.org.readthedocs.build/en/126/usage/dynamics/k-matrix.html).

</details>

<details>
<summary>Switched to compwa-org for the develop page (137)</summary>

</details>

Page 6 of 9

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.