Note: This project is still very much under development and not recommended for use in actual research projects (yet)
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:
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 |
:white_check_mark: |
| BreitWigner3body.cc | :x: | |
| ComplexCoeff.cc | rustitude::amplitude::ComplexScalar |
:white_check_mark: |
| Compton.cc | :heavy_exclamation_mark: | |
| DblRegge_FastEta.cc | :heavy_exclamation_mark: | |
| DblRegge_FastPi.cc | :heavy_exclamation_mark: | |
| EtaPb_tdist.cc | :heavy_exclamation_mark: | |
| Flatte.cc | :bangbang: | |
| Hist2D.cc | :x: | |
| Lambda1520Angles.cc | :x: | |
| Lambda1520tdist.cc | :x: | |
| LowerVertexDelta.cc | :x: | |
| OmegaDalitz.cc | rustitude-gluex::dalitz::OmegaDalitz |
:white_check_mark: |
| PhaseOffset.cc | :bangbang: | |
| Pi0Regge.cc | :heavy_exclamation_mark: | |
| Pi0ReggeModel.cc | :x: | |
| Pi0SAID.cc | :x: | |
| PiPlusRegge.cc | :x: | |
| Piecewise.cc | :bangbang: | |
| SinglePS.cc | rustitude-gluex::harmonics::OnePS |
:white_check_mark: |
| ThreePiAngles.cc | :bangbang: | |
| ThreePiAnglesSchilling.cc | rustitude-gluex::sdmes::ThreePiSDME |
:white_check_mark: |
| TwoLeptonAngles.cc | :heavy_exclamation_mark: | |
| TwoLeptonAnglesGJ.cc | :heavy_exclamation_mark: | |
| TwoPSAngles.cc | rustitude-gluex::harmonics::TwoPS |
:white_check_mark: |
| TwoPSHelicity.cc | rustitude-gluex::harmonics::TwoPS |
:white_check_mark: |
| TwoPiAngles.cc | rustitude-gluex::sdmes::TwoPiSDME |
:white_check_mark: |
| TwoPiAngles_amp.cc | :heavy_exclamation_mark: | |
| TwoPiAngles_primakoff.cc | :bangbang: | |
| TwoPiEtas_tdist.cc | :x: | |
| TwoPiNC_tdist.cc | :x: | |
| TwoPiW_brokenetas.cc | :x: | |
| TwoPiWt_primakoff.cc | :heavy_exclamation_mark: | |
| TwoPiWt_sigma.cc | :x: | |
| TwoPitdist.cc | :x: | |
| Uniform.cc | N/A | :white_check_mark: |
| VecRadiative_SDME.cc | :bangbang: | |
| Vec_ps_refl.cc | :bangbang: | |
| Ylm.cc | rustitude-gluex::harmonics::Ylm |
:white_check_mark: |
| Zlm.cc | rustitude-gluex::harmonics::{ZlmRe, ZlmIm} |
:white_check_mark: |
| not yet implemented | rustitude-gluex::resonances::{KMatrixF0, KMatrixF2, KMatrixA0, KMatrixA2, KMatrixRho, KMatrixPi1} |
:white_check_mark: |