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

Class for defining a complex coefficient using a magnitude and a phase. More...

#include <LauMagPhaseCoeffSet.hh>

Inheritance diagram for LauMagPhaseCoeffSet:
LauAbsCoeffSet

Public Member Functions

 LauMagPhaseCoeffSet (const TString &compName, Double_t magnitude, Double_t phase, Bool_t magFixed, Bool_t phaseFixed)
 Constructor. More...
 
virtual ~LauMagPhaseCoeffSet ()
 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 printTableHeading (std::ostream &stream)
 Print the column headings for a results table. More...
 
virtual void printTableRow (std::ostream &stream)
 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 LauComplex particleCoeff ()
 Retrieve the complex coefficient for a particle. More...
 
virtual LauComplex antiparticleCoeff ()
 Retrieve the complex coefficient for an antiparticle. More...
 
virtual void setCoeffValues (const LauComplex &coeff, const LauComplex &coeffBar)
 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, 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 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...
 

Protected Member Functions

 LauMagPhaseCoeffSet (const LauMagPhaseCoeffSet &rhs, Double_t constFactor=1.0)
 Copy constructor. More...
 
LauMagPhaseCoeffSetoperator= (const LauMagPhaseCoeffSet &rhs)
 Copy assignment operator. More...
 
- Protected Member Functions inherited from LauAbsCoeffSet
 LauAbsCoeffSet (const TString &theName)
 Constructor. More...
 
virtual void adjustName (LauParameter &par)
 Prepend the base name and index to the name of a parameter. More...
 
virtual void adjustName (LauParameter *par)
 Prepend the base name and index to the name of a parameter. More...
 

Private Attributes

Double_t minMag_
 The minimum allowed value for magnitudes. More...
 
Double_t maxMag_
 The maximum allowed value for magnitudes. More...
 
Double_t minPhase_
 The minimum allowed value for phases. More...
 
Double_t maxPhase_
 The maximum allowed value for phases. More...
 
LauParametermagnitude_
 The magnitude. More...
 
LauParameterphase_
 The phase. More...
 

Detailed Description

Class for defining a complex coefficient using a magnitude and a phase.

Holds a set of real values that define the complex coefficient of an amplitude component. The amplitude has the form mag*exp(i*phase).

Definition at line 36 of file LauMagPhaseCoeffSet.hh.

Constructor & Destructor Documentation

LauMagPhaseCoeffSet::LauMagPhaseCoeffSet ( const TString &  compName,
Double_t  magnitude,
Double_t  phase,
Bool_t  magFixed,
Bool_t  phaseFixed 
)

Constructor.

Parameters
[in]compNamethe name of the coefficient set
[in]magnitudethe magnitude
[in]phasethe phase
[in]magFixedwhether mag is fixed
[in]phaseFixedwhether phase is fixed

Definition at line 35 of file LauMagPhaseCoeffSet.cc.

virtual LauMagPhaseCoeffSet::~LauMagPhaseCoeffSet ( )
inlinevirtual

Destructor.

Definition at line 50 of file LauMagPhaseCoeffSet.hh.

LauMagPhaseCoeffSet::LauMagPhaseCoeffSet ( const LauMagPhaseCoeffSet rhs,
Double_t  constFactor = 1.0 
)
protected

Copy constructor.

This creates cloned parameters, not copies.

Parameters
[in]rhsthe coefficient to clone
[in]constFactora constant factor to multiply the clone's parameters by

Definition at line 48 of file LauMagPhaseCoeffSet.cc.

Member Function Documentation

LauParameter LauMagPhaseCoeffSet::acp ( )
virtual

Calculate the CP asymmetry.

Returns
the CP asymmetry (zero by design)

Implements LauAbsCoeffSet.

Definition at line 185 of file LauMagPhaseCoeffSet.cc.

LauComplex LauMagPhaseCoeffSet::antiparticleCoeff ( )
virtual

Retrieve the complex coefficient for an antiparticle.

Returns
the complex coefficient for an antiparticle

Implements LauAbsCoeffSet.

Definition at line 170 of file LauMagPhaseCoeffSet.cc.

LauAbsCoeffSet * LauMagPhaseCoeffSet::createClone ( const TString &  newName,
Double_t  constFactor = 1.0 
)
virtual

Create a clone of the coefficient set.

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

Implements LauAbsCoeffSet.

Definition at line 191 of file LauMagPhaseCoeffSet.cc.

void LauMagPhaseCoeffSet::finaliseValues ( )
virtual

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

Implements LauAbsCoeffSet.

Definition at line 119 of file LauMagPhaseCoeffSet.cc.

std::vector< LauParameter * > LauMagPhaseCoeffSet::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 73 of file LauMagPhaseCoeffSet.cc.

LauMagPhaseCoeffSet & LauMagPhaseCoeffSet::operator= ( const LauMagPhaseCoeffSet rhs)
protected

Copy assignment operator.

This creates cloned parameters, not copies.

Parameters
[in]rhsthe coefficient to clone

Definition at line 58 of file LauMagPhaseCoeffSet.cc.

LauComplex LauMagPhaseCoeffSet::particleCoeff ( )
virtual

Retrieve the complex coefficient for a particle.

Returns
the complex coefficient for a particle

Implements LauAbsCoeffSet.

Definition at line 164 of file LauMagPhaseCoeffSet.cc.

void LauMagPhaseCoeffSet::printTableHeading ( std::ostream &  stream)
virtual

Print the column headings for a results table.

Parameters
[out]streamthe stream to print to

Implements LauAbsCoeffSet.

Definition at line 81 of file LauMagPhaseCoeffSet.cc.

void LauMagPhaseCoeffSet::printTableRow ( std::ostream &  stream)
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 89 of file LauMagPhaseCoeffSet.cc.

void LauMagPhaseCoeffSet::randomiseInitValues ( )
virtual

Randomise the starting values of the parameters for a fit.

Implements LauAbsCoeffSet.

Definition at line 105 of file LauMagPhaseCoeffSet.cc.

void LauMagPhaseCoeffSet::setCoeffValues ( const LauComplex coeff,
const LauComplex coeffBar 
)
virtual

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

This class does not support CP violation so this method takes the average of the two inputs.

Parameters
[in]coeffthe complex coefficient for a particle
[in]coeffBarthe complex coefficient for an antiparticle

Implements LauAbsCoeffSet.

Definition at line 175 of file LauMagPhaseCoeffSet.cc.

Member Data Documentation

LauParameter* LauMagPhaseCoeffSet::magnitude_
private

The magnitude.

Definition at line 140 of file LauMagPhaseCoeffSet.hh.

Double_t LauMagPhaseCoeffSet::maxMag_
private

The maximum allowed value for magnitudes.

Definition at line 131 of file LauMagPhaseCoeffSet.hh.

Double_t LauMagPhaseCoeffSet::maxPhase_
private

The maximum allowed value for phases.

Definition at line 135 of file LauMagPhaseCoeffSet.hh.

Double_t LauMagPhaseCoeffSet::minMag_
private

The minimum allowed value for magnitudes.

Definition at line 129 of file LauMagPhaseCoeffSet.hh.

Double_t LauMagPhaseCoeffSet::minPhase_
private

The minimum allowed value for phases.

Definition at line 133 of file LauMagPhaseCoeffSet.hh.

LauParameter* LauMagPhaseCoeffSet::phase_
private

The phase.

Definition at line 142 of file LauMagPhaseCoeffSet.hh.


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