5 releases

new 0.1.4 May 3, 2024
0.1.3 May 2, 2024
0.1.2 Apr 29, 2024
0.1.1 Apr 10, 2024
0.1.0 Apr 5, 2024

#24 in #commit

Download history 121/week @ 2024-04-03 158/week @ 2024-04-10 161/week @ 2024-04-24

440 downloads per month
Used in rustitude

BSD-3-Clause

63KB
1.5K SLoC

GlueX Amplitudes for Rustitude

Table of Contents

Overview

This is a library of amplitudes which are commonly used in analyses of GlueX data

Installation

Cargo provides the usual command for including this crate in a project. You should also include the rustitude library, since this is just a support library to provide amplitudes to rustitude:

cargo add rustitude
cargo add rustitude-gluex

Usage

See rustitude's documentation for more information on how to use this library.

TODOs

There are a few amplitudes from halld_sim which have been implemented, several which need to be implemented, and a few which don't need to be implemented (like Uniform.cc). Additionally, I see a few areas of improvement when it comes to providing a consistent interface across all amplitudes (selection of daughter particles varies a lot across amplitudes written by different people, for instance), and there are possibly a few amplitudes which will become more performant due to the abilities of rustitude. For example, the Ylm,ZlmRe, and ZlmIm implementations of Ylm.cc and Zlm.cc no longer calculate anything on the compute step, since the entire amplitude can be computed ahead of time. Here is a list of the identified halld_sim amplitudes:

halld_sim Amplitude rustitude Equivalent Priority
BreitWigner.cc rustitude-gluex::resonances::BreitWigner
BreitWigner3body.cc
ComplexCoeff.cc rustitude::amplitude::ComplexScalar
Compton.cc
DblRegge_FastEta.cc
DblRegge_FastPi.cc
EtaPb_tdist.cc
Flatte.cc ‼️
Hist2D.cc
Lambda1520Angles.cc
Lambda1520tdist.cc
LowerVertexDelta.cc
OmegaDalitz.cc rustitude-gluex::dalitz::OmegaDalitz
PhaseOffset.cc ‼️
Pi0Regge.cc
Pi0ReggeModel.cc
Pi0SAID.cc
PiPlusRegge.cc
Piecewise.cc ‼️
SinglePS.cc rustitude-gluex::harmonics::OnePS
ThreePiAngles.cc ‼️
ThreePiAnglesSchilling.cc rustitude-gluex::sdmes::ThreePiSDME
TwoLeptonAngles.cc
TwoLeptonAnglesGJ.cc
TwoPSAngles.cc rustitude-gluex::harmonics::TwoPS
TwoPSHelicity.cc rustitude-gluex::harmonics::TwoPS
TwoPiAngles.cc rustitude-gluex::sdmes::TwoPiSDME
TwoPiAngles_amp.cc
TwoPiAngles_primakoff.cc ‼️
TwoPiEtas_tdist.cc
TwoPiNC_tdist.cc
TwoPiW_brokenetas.cc
TwoPiWt_primakoff.cc
TwoPiWt_sigma.cc
TwoPitdist.cc
Uniform.cc N/A
VecRadiative_SDME.cc ‼️
Vec_ps_refl.cc ‼️
Ylm.cc rustitude-gluex::harmonics::Ylm
Zlm.cc rustitude-gluex::harmonics::{ZlmRe, ZlmIm}
not yet implemented rustitude-gluex::resonances::{KMatrixF0, KMatrixF2, KMatrixA0, KMatrixA2, KMatrixRho, KMatrixPi1}

Dependencies

~38MB
~765K SLoC