Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Synced Spins and Polarizations #112

Merged
merged 10 commits into from
Aug 15, 2024

Conversation

AntonReinhard
Copy link
Member

Fixes #103

This adds the SyncedPolarization{N} and SyncedSpin{N} types proposed in #103 and reworks the multiplicity function to work on AbstractProcessDefinitions instead of raw spins or pols, since this previous notion of multiplicity does not extend to synced spins/pols.
The new implementation of multiplicity is faster than the prod.(spins_pols) that was used previously, because it can be compiled away when the spins and pols of the process are known at compile time.

This update breaks QEDprocesses and will require a tiny update there.

@AntonReinhard AntonReinhard requested a review from szabo137 August 13, 2024 13:13
Copy link
Member

@szabo137 szabo137 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like the idea and have just minor concerns.

TL;DR:
Especially the possibility to only iterate over "valid" spin/pol combinations seems very powerful. This will come in handy, if we start implementing the helicity amplitudes: https://arxiv.org/abs/hep-ph/9805445

src/implementations/process/spin_pols.jl Show resolved Hide resolved
src/interfaces/particles/spin_pol.jl Outdated Show resolved Hide resolved
@szabo137 szabo137 self-requested a review August 15, 2024 11:31
@szabo137 szabo137 merged commit 60725f6 into QEDjl-project:dev Aug 15, 2024
4 checks passed
@AntonReinhard AntonReinhard deleted the 103-synced-spinpol branch August 15, 2024 13:52
SimeonEhrig pushed a commit to QEDjl-project/QEDprocesses.jl that referenced this pull request Aug 21, 2024
@AntonReinhard AntonReinhard added this to the Release-next milestone Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Synced Polarizations and Spins
2 participants