YAP
|
Calculates, stores and gives access to helicity angles. More...
#include <HelicityAngles.h>
Public Member Functions | |
HelicityAngles (Model &m) | |
virtual void | calculate (DataPoint &d, StatusManager &sm) const override |
double | phi (const DataPoint &d, const std::shared_ptr< ParticleCombination > &pc) const |
get azimuthal angle | |
std::shared_ptr < RealCachedValue > & | phi () |
access azimuthal angle | |
const std::shared_ptr < RealCachedValue > & | phi () const |
access azimuthal angle (const) | |
double | theta (const DataPoint &d, const std::shared_ptr< ParticleCombination > &pc) const |
get polar angle | |
std::shared_ptr < RealCachedValue > & | theta () |
access polar angle | |
const std::shared_ptr < RealCachedValue > & | theta () const |
access polar angle (const) | |
![]() | |
StaticDataAccessor (Model &m, const ParticleCombinationEqualTo &equal) | |
const Model * | model () const override |
![]() | |
DataAccessor (const ParticleCombinationEqualTo &equal) | |
const ParticleCombinationEqualTo & | equal () const |
int | index () const |
unsigned | symmetrizationIndex (const std::shared_ptr< ParticleCombination > &c) const |
const ParticleCombinationMap < unsigned > & | symmetrizationIndices () const |
const unsigned | nSymmetrizationIndices () const |
void | printParticleCombinations () const |
print ParticleCombination map | |
const CachedValueSet & | CachedValues () const |
const unsigned | size () const |
const bool | requiresStorage () const |
bool | consistent () const |
Check consistency of object. | |
Protected Member Functions | |
virtual void | addToStaticDataAccessors () override |
add to model's StaticDataAccessors_ | |
void | calculateAngles (DataPoint &d, const std::shared_ptr< ParticleCombination > &pc, const CoordinateSystem< double, 3 > &C, const FourMatrix< double > &boosts, StatusManager &sm) const |
recursive helicity-angle calculator that travels down decay trees for all channels | |
void | addParticleCombination (std::shared_ptr< ParticleCombination > pc) override |
override to throw on adding non-two-body PC | |
![]() | |
virtual void | registerWithModel () override |
register with Model | |
StaticDataAccessorVector & | staticDataAccessors () |
access to the model's StaticDataAccessors_ | |
![]() | |
void | addCachedValue (std::shared_ptr< CachedValue > c) |
add CachedValue | |
virtual void | pruneSymmetrizationIndices () |
prune SymmetrizationIndices_ to only contain ParticleCombination's tracing back up the ISP | |
void | setIndex (size_t i) |
set storage index used in DataPoint. Must be unique. | |
Private Attributes | |
std::shared_ptr< RealCachedValue > | Phi_ |
Azimuthal angle. | |
std::shared_ptr< RealCachedValue > | Theta_ |
Polar angle. | |
Friends | |
class | Model |
grant friend status to Model to call addParticleCombination | |
class | DataAccessor |
grant friend status to DataAccessor to call addParticleCombination | |
Additional Inherited Members | |
![]() | |
friend | Model |
grant friend status to Model to access CachedValues_ | |
friend | CachedValue |
grant friend status to CachedValue to call addCachedValue | |
Calculates, stores and gives access to helicity angles.
Angles are defined as follows:
HelicityAngles | ( | Model & | m | ) |
Constructor
m | owning Model |
|
overridevirtual |
Calculate helicity angles for all possible symmetrization indices
d | DataPoint to calculate into |
sm | StatusManager to update |
Implements StaticDataAccessor.