YAP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Private Attributes | List of all members
Resonance Class Reference

Class for a particle that will decay and has a mass shape. More...

#include <Resonance.h>

Inheritance diagram for Resonance:
DecayingParticle Particle

Public Member Functions

virtual void checkDecayChannel (const DecayChannel &c) const override
 
virtual std::shared_ptr
< DecayChannel
addChannel (std::shared_ptr< DecayChannel > c) override
 
virtual bool consistent () const override
 Check consistency of object.
 
Getters
std::shared_ptr< MassShapemassShape ()
 access MassShape
 
std::shared_ptr< const MassShapemassShape () const
 access MassShape (const)
 
- Public Member Functions inherited from DecayingParticle
const DecayTreeVectorMap & decayTrees () const
 
std::shared_ptr< DecayChanneladdChannel (const ParticleVector &daughters)
 
template<typename... Types>
std::shared_ptr< DecayChanneladdChannel (std::shared_ptr< Particle > A, std::shared_ptr< Particle > B, Types...other_daughters)
 
void printDecayChain () const
 Print complete decay chain.
 
const Modelmodel () const override
 
const DecayChannelVector & channels () const
 
std::shared_ptr< RealParameterradialSize ()
 
const BlattWeisskopfMap & blattWeisskopfs () const
 
- Public Member Functions inherited from Particle
const QuantumNumbersquantumNumbers () const
 const access QuantumNumbers object
 
const std::string & name () const
 Get name (const)
 
std::string & name ()
 Get name.
 
const ParticleCombinationSet & particleCombinations () const
 

Static Public Member Functions

static std::shared_ptr< Resonancecreate (std::string name, const QuantumNumbers &q, double radialSize, std::shared_ptr< MassShape > massShape, std::shared_ptr< PhaseSpaceFactorFactory > phsp_factory=DefaultPHSPFactory)
 
- Static Public Member Functions inherited from DecayingParticle
static std::shared_ptr
< DecayingParticle
create (std::string name, const QuantumNumbers &q, double radialSize, std::shared_ptr< PhaseSpaceFactorFactory > phsp_factory=DefaultPHSPFactory)
 

Public Attributes

friend MassShape
 grant friend status to MassShape to call DecayingParticle::phaseSpaceFactor
 
- Public Attributes inherited from DecayingParticle
friend Model
 grant friend status to Model to call fixSolitaryFreeAmplitudes()
 
friend DecayChannel
 grant friend status to DecayChannel to call registerWithModel()
 

Protected Member Functions

 Resonance (std::string name, const QuantumNumbers &q, double radialSize, std::shared_ptr< MassShape > massShape, std::shared_ptr< PhaseSpaceFactorFactory > phsp_factory)
 
virtual void registerWithModel () override
 overrides DecayingParticle's function to register MassShape_ with Model
 
virtual void addParticleCombination (const std::shared_ptr< ParticleCombination > &c) override
 
virtual void modifyDecayTree (DecayTree &dt) override
 
virtual std::shared_ptr
< PhaseSpaceFactor
phaseSpaceFactor (const DecayChannel &dc, const SpinAmplitude &sa) overridefinal
 
- Protected Member Functions inherited from DecayingParticle
 DecayingParticle (std::string name, const QuantumNumbers &q, double radialSize, std::shared_ptr< PhaseSpaceFactorFactory > phsp_factory)
 
virtual void pruneParticleCombinations () override
 prune ParticleCombinations_ to only contain ParticleCombination's tracing back up the ISP
 
void fixSolitaryFreeAmplitudes ()
 if only one decay channel is available, fix its free amplitude to the current value
 
void printDecayChainLevel (int level) const
 
std::shared_ptr
< PhaseSpaceFactorFactory
phaseSpaceFactorFactory ()
 
- Protected Member Functions inherited from Particle
 Particle (std::string name, const QuantumNumbers &q)
 

Private Attributes

std::shared_ptr< MassShapeMassShape_
 

Detailed Description

Class for a particle that will decay and has a mass shape.

Author
Johannes Rauch, Daniel Greenwald

Constructor & Destructor Documentation

Resonance ( std::string  name,
const QuantumNumbers q,
double  radialSize,
std::shared_ptr< MassShape massShape,
std::shared_ptr< PhaseSpaceFactorFactory phsp_factory 
)
protected

Constructor see create

Member Function Documentation

std::shared_ptr< DecayChannel > addChannel ( std::shared_ptr< DecayChannel c)
overridevirtual

Add a DecayChannel to this Resonance

Parameters
cunique_ptr to DecayChannel, should be constructed in function call, or use std::move(c)
Returns
shared_ptr to DecayChannel that has been added

Reimplemented from DecayingParticle.

void addParticleCombination ( const std::shared_ptr< ParticleCombination > &  c)
overrideprotectedvirtual

add ParticleCombination to ParticleCombinations_, also add to MassShape_

Reimplemented from DecayingParticle.

void checkDecayChannel ( const DecayChannel c) const
overridevirtual

Check if a DecayChannel is valid for Resonance; will throw if invalid. checks with MassShape_

Reimplemented from DecayingParticle.

static std::shared_ptr<Resonance> create ( std::string  name,
const QuantumNumbers q,
double  radialSize,
std::shared_ptr< MassShape massShape,
std::shared_ptr< PhaseSpaceFactorFactory phsp_factory = DefaultPHSPFactory 
)
inlinestatic

create

Parameters
nameName of resonance
qQuantumNumbers of resonance
radialSizeradial size of resonance
massShapeshared_ptr to MassShape of resonance
void modifyDecayTree ( DecayTree dt)
overrideprotectedvirtual

modify a DecayTree

Parameters
dtDecayTree to modify

Reimplemented from DecayingParticle.

std::shared_ptr< PhaseSpaceFactor > phaseSpaceFactor ( const DecayChannel dc,
const SpinAmplitude sa 
)
finaloverrideprotectedvirtual

(create and) return a RecalculableAmplitudeComponent that calculates a phase-space factor applicaple for the final state of DecayChannel and the orbital angular momentum of SpinAmplitude

Parameters
dcDecayChannel
saSpinAmplitude

Reimplemented from DecayingParticle.

Member Data Documentation

std::shared_ptr<MassShape> MassShape_
private

MassShape object

Todo:
Perhaps replace with reference to MassShape

The documentation for this class was generated from the following files: