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

Class for defining a complex coefficient using seperate magnitudes and phases for particles and antiparticles. More...

#include <LauMagPhaseCPCoeffSet.hh>

Inheritance diagram for LauMagPhaseCPCoeffSet:
LauAbsCoeffSet

Public Member Functions

 LauMagPhaseCPCoeffSet (const TString &compName, Double_t mag, Double_t phase, Double_t magBar, Double_t phaseBar, Bool_t magFixed, Bool_t phaseFixed, Bool_t magBarFixed, Bool_t phaseBarFixed)
 Constructor. More...
 
virtual ~LauMagPhaseCPCoeffSet ()
 Destructor. More...
 
virtual std::vector
< LauParameter * > 
getParameters ()
 Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit. More...
 
virtual void printParValues () const
 Print the current values of the parameters. More...
 
virtual void printTableHeading (std::ostream &stream) const
 Print the column headings for a results table. More...
 
virtual void printTableRow (std::ostream &stream) const
 Print the parameters of the complex coefficient as a row in the results table. More...
 
virtual void randomiseInitValues ()
 Randomise the starting values of the parameters for a fit. More...
 
virtual void finaliseValues ()
 Make sure values are in "standard" ranges, e.g. phases should be between -pi and pi. More...
 
virtual const LauComplexparticleCoeff ()
 Retrieve the complex coefficient for a particle. More...
 
virtual const LauComplexantiparticleCoeff ()
 Retrieve the complex coefficient for an antiparticle. More...
 
virtual void setCoeffValues (const LauComplex &coeff, const LauComplex &coeffBar, Bool_t init)
 Set the parameters based on the complex coefficients for particles and antiparticles. More...
 
virtual LauParameter acp ()
 Calculate the CP asymmetry. More...
 
virtual LauAbsCoeffSetcreateClone (const TString &newName, CloneOption cloneOption=All, Double_t constFactor=1.0)
 Create a clone of the coefficient set. More...
 
- Public Member Functions inherited from LauAbsCoeffSet
virtual ~LauAbsCoeffSet ()
 Destructor. More...
 
virtual TString name () const
 Retrieve the name of the coefficient set. More...
 
virtual void name (const TString &theName)
 Set the name of the coefficient set. More...
 
virtual const TString & baseName () const
 Retrieve the base name of the coefficient set. More...
 
virtual void baseName (const TString &theBasename)
 Set the base name of the coefficient set. More...
 
virtual UInt_t index () const
 Retrieve the index number of the coefficient set. More...
 
virtual void index (UInt_t newIndex)
 Set the index number of the coefficient set. More...
 
virtual void setParameterValue (const TString &parName, Double_t value, Bool_t init)
 Set the value of the named parameter. More...
 
virtual void fixParameter (const TString &parName)
 Set the named parameter to be fixed in the fit. More...
 
virtual void floatParameter (const TString &parName)
 Set the named parameter to float in the fit. More...
 

Private Member Functions

 LauMagPhaseCPCoeffSet (const LauMagPhaseCPCoeffSet &rhs, CloneOption cloneOption=All, Double_t constFactor=1.0)
 Copy constructor. More...
 
LauMagPhaseCPCoeffSetoperator= (const LauMagPhaseCPCoeffSet &rhs)
 Copy assignment operator (not implemented) More...
 

Private Attributes

LauParametermag_
 The magnitude for particles. More...
 
LauParameterphase_
 The phase for particles. More...
 
LauParametermagBar_
 The magnitude for antiparticles. More...
 
LauParameterphaseBar_
 The phase for antiparticles. More...
 
LauComplex particleCoeff_
 The particle complex coefficient. More...
 
LauComplex antiparticleCoeff_
 The antiparticle complex coefficient. More...
 
LauParameter acp_
 The CP asymmetry. More...
 

Additional Inherited Members

- Public Types inherited from LauAbsCoeffSet
enum  CloneOption {
  All, TiePhase, TieMagnitude, TieRealPart,
  TieImagPart, TieCPPars
}
 Options for cloning operation. More...
 
- Static Public Member Functions inherited from LauAbsCoeffSet
static void setMagnitudeRange (Double_t minMag, Double_t maxMag)
 Set the allowed range for magnitude parameters. More...
 
static void setPhaseRange (Double_t minPhase, Double_t maxPhase)
 Set the allowed range for phase parameters. More...
 
static void setRealImagRange (Double_t minPar, Double_t maxPar)
 Set the allowed range for real/imaginary part parameters. More...
 
static void setCPParRange (Double_t minPar, Double_t maxPar)
 Set the allowed range for CP-violating parameters. More...
 
- Protected Member Functions inherited from LauAbsCoeffSet
 LauAbsCoeffSet (const TString &theName, const TString &theBaseName="A")
 Constructor. More...
 
LauParameterfindParameter (const TString &parName)
 Find the parameter with the given name. More...
 
void adjustName (LauParameter *par)
 Prepend the base name and index to the name of a parameter. More...
 
 LauAbsCoeffSet (const LauAbsCoeffSet &rhs)
 Copy constructor. More...
 
LauAbsCoeffSetoperator= (const LauAbsCoeffSet &rhs)
 Copy assignment operator. More...
 
- Static Protected Attributes inherited from LauAbsCoeffSet
static Double_t minMagnitude_ = -10.0
 Minimum allowed value of magnitude parameters. More...
 
static Double_t maxMagnitude_ = 10.0
 Maximum allowed value of magnitude parameters. More...
 
static Double_t minPhase_ = -LauConstants::threePi
 Minimum allowed value of phase parameters. More...
 
static Double_t maxPhase_ = LauConstants::threePi
 Maximum allowed value of phase parameters. More...
 
static Double_t minRealImagPart_ = -10.0
 Minimum allowed value of real/imaginary part parameters. More...
 
static Double_t maxRealImagPart_ = 10.0
 Maximum allowed value of real/imaginary part parameters. More...
 
static Double_t minDelta_ = -2.0
 Minimum allowed value of CP-violating real/imaginary part parameters. More...
 
static Double_t maxDelta_ = 2.0
 Maximum allowed value of CP-violating real/imaginary part parameters. More...
 

Detailed Description

Class for defining a complex coefficient using seperate magnitudes and phases for particles and antiparticles.

Holds a set of real values that define the complex coefficient of an amplitude component. The amplitudes have the form: c = mag * exp(i*phase) cBar = magBar * exp(i*phaseBar) where mag and magBar are the magnitudes for particle and antiparticle and phase and phaseBar are the phases for particle and antiparticle.

Definition at line 39 of file LauMagPhaseCPCoeffSet.hh.

Constructor & Destructor Documentation

LauMagPhaseCPCoeffSet::LauMagPhaseCPCoeffSet ( const TString &  compName,
Double_t  mag,
Double_t  phase,
Double_t  magBar,
Double_t  phaseBar,
Bool_t  magFixed,
Bool_t  phaseFixed,
Bool_t  magBarFixed,
Bool_t  phaseBarFixed 
)

Constructor.

Parameters
[in]compNamethe name of the coefficient set
[in]magthe magnitude for particles
[in]phasethe phase for particles
[in]magBarthe magnitude for antiparticles
[in]phaseBarthe phase for antiparticles
[in]magFixedwhether mag is fixed
[in]phaseFixedwhether phase is fixed
[in]magBarFixedwhether magBar is fixed
[in]phaseBarFixedwhether phaseBar is fixed

Definition at line 32 of file LauMagPhaseCPCoeffSet.cc.

virtual LauMagPhaseCPCoeffSet::~LauMagPhaseCPCoeffSet ( )
inlinevirtual

Destructor.

Definition at line 58 of file LauMagPhaseCPCoeffSet.hh.

LauMagPhaseCPCoeffSet::LauMagPhaseCPCoeffSet ( const LauMagPhaseCPCoeffSet rhs,
CloneOption  cloneOption = All,
Double_t  constFactor = 1.0 
)
private

Copy constructor.

This creates cloned parameters, not copies.

Parameters
[in]rhsthe coefficient to clone
[in]cloneOptionspecial option for the cloning operation
[in]constFactora constant factor to multiply the clone's parameters by

Definition at line 45 of file LauMagPhaseCPCoeffSet.cc.

Member Function Documentation

LauParameter LauMagPhaseCPCoeffSet::acp ( )
virtual

Calculate the CP asymmetry.

Returns
the CP asymmetry

Implements LauAbsCoeffSet.

Definition at line 258 of file LauMagPhaseCPCoeffSet.cc.

const LauComplex & LauMagPhaseCPCoeffSet::antiparticleCoeff ( )
virtual

Retrieve the complex coefficient for an antiparticle.

Returns
the complex coefficient for an antiparticle

Implements LauAbsCoeffSet.

Definition at line 227 of file LauMagPhaseCPCoeffSet.cc.

LauAbsCoeffSet * LauMagPhaseCPCoeffSet::createClone ( const TString &  newName,
CloneOption  cloneOption = All,
Double_t  constFactor = 1.0 
)
virtual

Create a clone of the coefficient set.

Parameters
[in]newNamethe clone's name
[in]cloneOptionspecial option for the cloning operation
[in]constFactora constant factor to multiply the clone's parameters by
Returns
a clone of the coefficient set

Implements LauAbsCoeffSet.

Definition at line 282 of file LauMagPhaseCPCoeffSet.cc.

void LauMagPhaseCPCoeffSet::finaliseValues ( )
virtual

Make sure values are in "standard" ranges, e.g. phases should be between -pi and pi.

Implements LauAbsCoeffSet.

Definition at line 146 of file LauMagPhaseCPCoeffSet.cc.

std::vector< LauParameter * > LauMagPhaseCPCoeffSet::getParameters ( )
virtual

Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit.

Returns
the parameters of the coefficient

Implements LauAbsCoeffSet.

Definition at line 71 of file LauMagPhaseCPCoeffSet.cc.

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

Copy assignment operator (not implemented)

Parameters
[in]rhsthe coefficient to clone
const LauComplex & LauMagPhaseCPCoeffSet::particleCoeff ( )
virtual

Retrieve the complex coefficient for a particle.

Returns
the complex coefficient for a particle

Implements LauAbsCoeffSet.

Definition at line 221 of file LauMagPhaseCPCoeffSet.cc.

void LauMagPhaseCPCoeffSet::printParValues ( ) const
virtual

Print the current values of the parameters.

Implements LauAbsCoeffSet.

Definition at line 81 of file LauMagPhaseCPCoeffSet.cc.

void LauMagPhaseCPCoeffSet::printTableHeading ( std::ostream &  stream) const
virtual

Print the column headings for a results table.

Parameters
[out]streamthe stream to print to

Implements LauAbsCoeffSet.

Definition at line 90 of file LauMagPhaseCPCoeffSet.cc.

void LauMagPhaseCPCoeffSet::printTableRow ( std::ostream &  stream) const
virtual

Print the parameters of the complex coefficient as a row in the results table.

Parameters
[out]streamthe stream to print to

Implements LauAbsCoeffSet.

Definition at line 98 of file LauMagPhaseCPCoeffSet.cc.

void LauMagPhaseCPCoeffSet::randomiseInitValues ( )
virtual

Randomise the starting values of the parameters for a fit.

Implements LauAbsCoeffSet.

Definition at line 122 of file LauMagPhaseCPCoeffSet.cc.

void LauMagPhaseCPCoeffSet::setCoeffValues ( const LauComplex coeff,
const LauComplex coeffBar,
Bool_t  init 
)
virtual

Set the parameters based on the complex coefficients for particles and antiparticles.

Parameters
[in]coeffthe complex coefficient for a particle
[in]coeffBarthe complex coefficient for an antiparticle
[in]initwhether or not the initial and generated values should also be adjusted

Implements LauAbsCoeffSet.

Definition at line 233 of file LauMagPhaseCPCoeffSet.cc.

Member Data Documentation

LauParameter LauMagPhaseCPCoeffSet::acp_
private

The CP asymmetry.

Definition at line 155 of file LauMagPhaseCPCoeffSet.hh.

LauComplex LauMagPhaseCPCoeffSet::antiparticleCoeff_
private

The antiparticle complex coefficient.

Definition at line 152 of file LauMagPhaseCPCoeffSet.hh.

LauParameter* LauMagPhaseCPCoeffSet::mag_
private

The magnitude for particles.

Definition at line 141 of file LauMagPhaseCPCoeffSet.hh.

LauParameter* LauMagPhaseCPCoeffSet::magBar_
private

The magnitude for antiparticles.

Definition at line 145 of file LauMagPhaseCPCoeffSet.hh.

LauComplex LauMagPhaseCPCoeffSet::particleCoeff_
private

The particle complex coefficient.

Definition at line 150 of file LauMagPhaseCPCoeffSet.hh.

LauParameter* LauMagPhaseCPCoeffSet::phase_
private

The phase for particles.

Definition at line 143 of file LauMagPhaseCPCoeffSet.hh.

LauParameter* LauMagPhaseCPCoeffSet::phaseBar_
private

The phase for antiparticles.

Definition at line 147 of file LauMagPhaseCPCoeffSet.hh.


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