laura is hosted by Hepforge, IPPP Durham
Laura++  v3r2
A maximum likelihood fitting package for performing Dalitz-plot analysis.

Class that defines the particular 3-body decay under study. More...

#include <LauDaughters.hh>

Public Member Functions

 LauDaughters (Int_t codeParent, Int_t code1, Int_t code2, Int_t code3, Bool_t useSquareDP=kFALSE)
 Constructor from PDG codes. More...
 
 LauDaughters (const TString &nameParent, const TString &name1, const TString &name2, const TString &name3, Bool_t useSquareDP=kFALSE)
 Constructor from particle names. More...
 
virtual ~LauDaughters ()
 Destructor. More...
 
 LauDaughters (const LauDaughters &rhs)
 Copy constructor. More...
 
Bool_t gotSymmetricalDP () const
 Is Dalitz plot symmetric, i.e. 2 identical particles. More...
 
Bool_t gotFullySymmetricDP () const
 Is Dalitz plot fully symmetric, i.e. 3 identical particles. More...
 
Bool_t gotFlavourConjugateDP () const
 Is Dalitz plot flavour-conjugate, i.e. CP(d1) = d2 and CP(d3) = d3. More...
 
Bool_t squareDP () const
 Determine to use or not the square Dalitz plot. More...
 
Double_t getMassDaug1 () const
 Get mass of first daughter particle. More...
 
Double_t getMassDaug2 () const
 Get mass of second daughter particle. More...
 
Double_t getMassDaug3 () const
 Get mass of third daughter particle. More...
 
Double_t getMassParent () const
 Get mass of the parent particle. More...
 
TString getNameDaug1 () const
 Get name of the first daughter particle. More...
 
TString getNameDaug2 () const
 Get name of the second daughter particle. More...
 
TString getNameDaug3 () const
 Get name of the third daughter particle. More...
 
TString getNameParent () const
 Get name of the parent particle. More...
 
Int_t getTypeDaug1 () const
 Get PDG code of the first daughter particle. More...
 
Int_t getTypeDaug2 () const
 Get PDG code of the second daughter particle. More...
 
Int_t getTypeDaug3 () const
 Get PDG code of the third daughter particle. More...
 
Int_t getTypeParent () const
 Get PDG code of the parent particle. More...
 
Int_t getChargeDaug1 () const
 Get charge of the first daughter particle. More...
 
Int_t getChargeDaug2 () const
 Get charge of the second daughter particle. More...
 
Int_t getChargeDaug3 () const
 Get charge of the third daughter particle. More...
 
Int_t getChargeParent () const
 Get charge of the parent particle. More...
 
Int_t getCharge (Int_t resPairAmpInt) const
 Get charge of a particular two-daughter combination. More...
 
LauKinematicsgetKinematics ()
 Retrieve the Dalitz plot kinematics. More...
 
const LauKinematicsgetKinematics () const
 Retrieve the Dalitz plot kinematics. More...
 

Protected Member Functions

void createParticleLists ()
 Create list of all the allowed parent/daughter particles. More...
 
void setParentType (const TString &nameParent)
 Set the parent particle type. More...
 
void setDaugType (const TString &name1, const TString &name2, const TString &name3)
 Set the three daughter types. More...
 
void testDPSymmetry ()
 Check whether there is a symmetrical Dalitz plot. More...
 
void sanityCheck ()
 Check masses and charges of daughters. More...
 

Private Member Functions

LauDaughtersoperator= (const LauDaughters &rhs)
 Copy assignment operator (not implemented) More...
 

Private Attributes

LauKinematicskinematics_
 Dalitz plot kinematics. More...
 
std::vector< const
LauParticlePDG * > 
allowedDaughters_
 All possible daughter types. More...
 
std::vector< const
LauParticlePDG * > 
allowedParents_
 All possible parent types. More...
 
const LauParticlePDGparent_
 The parent particle. More...
 
std::vector< const
LauParticlePDG * > 
daughters_
 The daughter particles. More...
 
Bool_t symmetricalDP_
 Boolean flag for symmetrical Dalitz plot. More...
 
Bool_t fullySymmetricDP_
 Boolean flag for fully symmetric Dalitz plot. More...
 
Bool_t flavourConjugateDP_
 Flavour-conjugate Dalitz plot. More...
 

Detailed Description

Class that defines the particular 3-body decay under study.

The decay has the form P -> h1 h2 h3 (P stands for the parent particle, and h for the daughters). The constructor accepts both string name and PDG code types to describe the particles.

Definition at line 33 of file LauDaughters.hh.

Constructor & Destructor Documentation

LauDaughters::LauDaughters ( Int_t  codeParent,
Int_t  code1,
Int_t  code2,
Int_t  code3,
Bool_t  useSquareDP = kFALSE 
)

Constructor from PDG codes.

Parameters
[in]codeParentthe parent particle PDG code
[in]code1the first daughter PDG code
[in]code2the second daughter PDG code
[in]code3the third daughter PDG code
[in]useSquareDPthe boolean flag decision to use Square Dalitz plot (kTRUE) or standard Dalitz plot (kFALSE). Default value is kFALSE.

Definition at line 27 of file LauDaughters.cc.

LauDaughters::LauDaughters ( const TString &  nameParent,
const TString &  name1,
const TString &  name2,
const TString &  name3,
Bool_t  useSquareDP = kFALSE 
)

Constructor from particle names.

Parameters
[in]nameParentthe parent particle string name
[in]name1the first daughter string name
[in]name2the second daughter string name
[in]name3the third daughter string name
[in]useSquareDPthe boolean flag decision to use Square Dalitz plot (kTRUE) or standard Dalitz plot (kFALSE). Default value is kFALSE.

Definition at line 47 of file LauDaughters.cc.

LauDaughters::~LauDaughters ( )
virtual

Destructor.

Definition at line 63 of file LauDaughters.cc.

LauDaughters::LauDaughters ( const LauDaughters rhs)

Copy constructor.

Definition at line 68 of file LauDaughters.cc.

Member Function Documentation

void LauDaughters::createParticleLists ( )
protected

Create list of all the allowed parent/daughter particles.

Definition at line 84 of file LauDaughters.cc.

Int_t LauDaughters::getCharge ( Int_t  resPairAmpInt) const

Get charge of a particular two-daughter combination.

Parameters
[in]resPairAmpIntthe index of the daughter not in the combination
Returns
the charge of the two-daughter combination

Definition at line 303 of file LauDaughters.cc.

Int_t LauDaughters::getChargeDaug1 ( ) const

Get charge of the first daughter particle.

Definition at line 283 of file LauDaughters.cc.

Int_t LauDaughters::getChargeDaug2 ( ) const

Get charge of the second daughter particle.

Definition at line 288 of file LauDaughters.cc.

Int_t LauDaughters::getChargeDaug3 ( ) const

Get charge of the third daughter particle.

Definition at line 293 of file LauDaughters.cc.

Int_t LauDaughters::getChargeParent ( ) const

Get charge of the parent particle.

Definition at line 298 of file LauDaughters.cc.

LauKinematics* LauDaughters::getKinematics ( )
inline

Retrieve the Dalitz plot kinematics.

Returns
the Dalitz plot kinematics

Definition at line 132 of file LauDaughters.hh.

const LauKinematics* LauDaughters::getKinematics ( ) const
inline

Retrieve the Dalitz plot kinematics.

Returns
the Dalitz plot kinematics

Definition at line 138 of file LauDaughters.hh.

Double_t LauDaughters::getMassDaug1 ( ) const

Get mass of first daughter particle.

Definition at line 223 of file LauDaughters.cc.

Double_t LauDaughters::getMassDaug2 ( ) const

Get mass of second daughter particle.

Definition at line 228 of file LauDaughters.cc.

Double_t LauDaughters::getMassDaug3 ( ) const

Get mass of third daughter particle.

Definition at line 233 of file LauDaughters.cc.

Double_t LauDaughters::getMassParent ( ) const

Get mass of the parent particle.

Definition at line 238 of file LauDaughters.cc.

TString LauDaughters::getNameDaug1 ( ) const

Get name of the first daughter particle.

Definition at line 243 of file LauDaughters.cc.

TString LauDaughters::getNameDaug2 ( ) const

Get name of the second daughter particle.

Definition at line 248 of file LauDaughters.cc.

TString LauDaughters::getNameDaug3 ( ) const

Get name of the third daughter particle.

Definition at line 253 of file LauDaughters.cc.

TString LauDaughters::getNameParent ( ) const

Get name of the parent particle.

Definition at line 258 of file LauDaughters.cc.

Int_t LauDaughters::getTypeDaug1 ( ) const

Get PDG code of the first daughter particle.

Definition at line 263 of file LauDaughters.cc.

Int_t LauDaughters::getTypeDaug2 ( ) const

Get PDG code of the second daughter particle.

Definition at line 268 of file LauDaughters.cc.

Int_t LauDaughters::getTypeDaug3 ( ) const

Get PDG code of the third daughter particle.

Definition at line 273 of file LauDaughters.cc.

Int_t LauDaughters::getTypeParent ( ) const

Get PDG code of the parent particle.

Definition at line 278 of file LauDaughters.cc.

Bool_t LauDaughters::gotFlavourConjugateDP ( ) const
inline

Is Dalitz plot flavour-conjugate, i.e. CP(d1) = d2 and CP(d3) = d3.

Returns
true/false whether the DP is flavour-conjugate

Definition at line 78 of file LauDaughters.hh.

Bool_t LauDaughters::gotFullySymmetricDP ( ) const
inline

Is Dalitz plot fully symmetric, i.e. 3 identical particles.

Returns
true/false whether the DP is fully symmetric

Definition at line 72 of file LauDaughters.hh.

Bool_t LauDaughters::gotSymmetricalDP ( ) const
inline

Is Dalitz plot symmetric, i.e. 2 identical particles.

Returns
true/false whether the DP is symmetric

Definition at line 66 of file LauDaughters.hh.

LauDaughters& LauDaughters::operator= ( const LauDaughters rhs)
private

Copy assignment operator (not implemented)

void LauDaughters::sanityCheck ( )
protected

Check masses and charges of daughters.

Definition at line 200 of file LauDaughters.cc.

void LauDaughters::setDaugType ( const TString &  name1,
const TString &  name2,
const TString &  name3 
)
protected

Set the three daughter types.

Parameters
[in]name1the name of the first daughter
[in]name2the name of the second daughter
[in]name3the name of the third daughter

Definition at line 140 of file LauDaughters.cc.

void LauDaughters::setParentType ( const TString &  nameParent)
protected

Set the parent particle type.

Parameters
[in]nameParentthe name of the parent particle

Definition at line 119 of file LauDaughters.cc.

Bool_t LauDaughters::squareDP ( ) const
inline

Determine to use or not the square Dalitz plot.

Returns
true/false to use the squareDP model

Definition at line 84 of file LauDaughters.hh.

void LauDaughters::testDPSymmetry ( )
protected

Check whether there is a symmetrical Dalitz plot.

Definition at line 170 of file LauDaughters.cc.

Member Data Documentation

std::vector<const LauParticlePDG*> LauDaughters::allowedDaughters_
private

All possible daughter types.

Definition at line 172 of file LauDaughters.hh.

std::vector<const LauParticlePDG*> LauDaughters::allowedParents_
private

All possible parent types.

Definition at line 175 of file LauDaughters.hh.

std::vector<const LauParticlePDG*> LauDaughters::daughters_
private

The daughter particles.

Definition at line 181 of file LauDaughters.hh.

Bool_t LauDaughters::flavourConjugateDP_
private

Flavour-conjugate Dalitz plot.

Definition at line 190 of file LauDaughters.hh.

Bool_t LauDaughters::fullySymmetricDP_
private

Boolean flag for fully symmetric Dalitz plot.

Definition at line 187 of file LauDaughters.hh.

LauKinematics* LauDaughters::kinematics_
private

Dalitz plot kinematics.

Definition at line 169 of file LauDaughters.hh.

const LauParticlePDG* LauDaughters::parent_
private

The parent particle.

Definition at line 178 of file LauDaughters.hh.

Bool_t LauDaughters::symmetricalDP_
private

Boolean flag for symmetrical Dalitz plot.

Definition at line 184 of file LauDaughters.hh.


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