Skip to main content

Symbolic expressions that describe an aligned polarimeter vector field

Project description

Aligned polarimetry field of the Λc → p π K decay

10.1007/JHEP07(2023)228 10.5281/zenodo.7544989 License

Ruff uv Pixi Badge code style: prettier Spelling checked PyPI package Supported Python versions Binder

This repository contains the source code for “$\Lambda_c^+$ polarimetry using the dominant hadronic mode” (2023) by the LHCb Collaboration (10.1007/JHEP07(2023)228). It uses ampform-dpd to formulate symbolic amplitude models for the decay $\Lambda^+_c \to p \pi^+ K^-$ that are aligned with Dalitz-plot decomposition. The aligned amplitudes are used to compute polarimeter vector field $\vec\alpha$ over the Dalitz plane. Helicity couplings and other parameter values are taken from a recent study by the LHCb Collaboration[^1] and its supplementary material.

[^1]: Amplitude analysis of the $\Lambda^+_c \to p K^- \pi^+$ decay and $\Lambda^+_c$ baryon polarization measurement in semileptonic beauty hadron decays (2022) [link]

Installation

All the dependencies required to work on this Repository are managed by Pixi. If you have installed Pixi, you can simply start developing by activating the environment with:

pixi shell

This will install uv for managing Python and its dependencies as well as Julia. Then it activates the environment and you can start developing.

Common checks are defined under pixi.toml and can be listed with

pixi task list

For example, you build the documentation with executed notebooks with

pixi run docnb

Style checks are enforced with Pre-commit. You should install this system-wide once, for instance through uv:

uv tool install --with pre-commit-uv pre-commit

You can then install the Git hooks for this repository, so that the checks are run automatically before each commit:

pre-commit install

[!TIP] For more information about the local Python developer environment, see here.

This repository also contains Julia source code and Pluto notebooks. Julia can be downloaded here. You then have to activate and instantiated the Julia environment provided in the julia folder. This can be done as follows from the root directory:

julia --project=./julia -e 'import Pkg; Pkg.instantiate()'

Documentation dependencies

To build the documentation, you need to install LaTeX and some additional fonts. In Ubuntu, this can be done with:

sudo apt-get install -y cm-super dvipng texlive-latex-extra

In addition, for building the documentation as a single PDF file, you need to install XeTeX:

sudo apt-get install -y inkscape latexmk make texlive-fonts-extra texlive-xetex xindy

Building the documentation

Having installed the Python environment, you can build the documentation with:[^2]

pixi run docnb

This will run all Jupyter notebooks and convert the output to static webpages (view the output under docs/_build/html/index.html). Running all notebooks from scratch (without any available cache) should take around one hour.

If you have installed Julia and instantiated the Julia environment, you can embed the Pluto notebooks as static pages in the documentation with:

pixi run docnb-pluto

or, alternatively, by executing all Jupyter and Pluto notebooks (ignoring any existing caches):

pixi run docnb-pluto-force

The above commands result in a static HTML webpage. It's also possible to render the notebook as a single PDF file. This can be done as follows:

pixi run pdf

Just as above, cell output can be rendered by appending nb:

pixi run pdfnb

[^2]: It's also possible have a look at the documentation without cell output (just as a check for the links). This can be done with:

```shell
pixi run doc
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

polarimetry_lc2pkpi-0.0.12.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

polarimetry_lc2pkpi-0.0.12-py3-none-any.whl (42.0 kB view details)

Uploaded Python 3

File details

Details for the file polarimetry_lc2pkpi-0.0.12.tar.gz.

File metadata

  • Download URL: polarimetry_lc2pkpi-0.0.12.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for polarimetry_lc2pkpi-0.0.12.tar.gz
Algorithm Hash digest
SHA256 a80ee37713f87088a992271323249a0970f507fce16df3ea387f4d51f607f7f9
MD5 63911ecdc7e1868b045b83dbe4041bb0
BLAKE2b-256 a8d92383d61acd53d6c5f3053613e61aa8d60defdc7d95795c219f1abb580980

See more details on using hashes here.

Provenance

The following attestation bundles were made for polarimetry_lc2pkpi-0.0.12.tar.gz:

Publisher: cd.yml on ComPWA/polarimetry

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polarimetry_lc2pkpi-0.0.12-py3-none-any.whl.

File metadata

File hashes

Hashes for polarimetry_lc2pkpi-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 e91a5eea4c77c5db26e73ddc948a049c150fee2926ed077795f56d2efc45688b
MD5 3fe83a6eddd7db1a658499b9c7484408
BLAKE2b-256 3f8949ced29de4add835fc30fd15ed3de55a3e0a375805241064662d36ae3449

See more details on using hashes here.

Provenance

The following attestation bundles were made for polarimetry_lc2pkpi-0.0.12-py3-none-any.whl:

Publisher: cd.yml on ComPWA/polarimetry

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page