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

Class for defining a complex coefficient using the Cartesian gamma CP convention. More...

#include <LauCartesianGammaCPCoeffSet.hh>

Inheritance diagram for LauCartesianGammaCPCoeffSet:
LauAbsCoeffSet

Public Member Functions

 LauCartesianGammaCPCoeffSet (const TString &compName, const Double_t x, const Double_t y, const Double_t xCP, const Double_t yCP, const Double_t deltaXCP, const Double_t deltaYCP, const Bool_t xFixed, const Bool_t yFixed, const Bool_t xCPFixed, const Bool_t yCPFixed, const Bool_t deltaXCPFixed, const Bool_t deltaYCPFixed, const Bool_t deltaXCPSecondStage=kFALSE, const Bool_t deltaYCPSecondStage=kFALSE)
 Constructor. More...
 
virtual ~LauCartesianGammaCPCoeffSet ()
 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 setParameterError (const TString &parName, Double_t error)
 Set the error 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...
 
virtual void blindParameter (const TString &parName, const TString &blindingString, const Double_t width)
 Blind the named parameter. More...
 
virtual void addGaussianConstraint (const TString &parName, const Double_t mean, const Double_t width)
 Add Gaussian constraint to the named parameter. More...
 
virtual void addSuffixToParameterName (const TString &parName, const TString &suffix)
 Add suffix to the name of the given parameter. More...
 

Private Member Functions

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

Private Attributes

LauParameterx_
 The nonCP real part. More...
 
LauParametery_
 The nonCP imaginary part. More...
 
LauParameterxCP_
 The average CP real part. More...
 
LauParameteryCP_
 The average CP imaginary part. More...
 
LauParameterdeltaXCP_
 The asymmetric CP real part. More...
 
LauParameterdeltaYCP_
 The asymmetric CP imaginary part. More...
 
LauComplex nonCPPart_
 The nonCP part of the complex coefficient. More...
 
LauComplex cpPart_
 The CP part of the complex coefficient for the particle. More...
 
LauComplex cpAntiPart_
 The CP part of the complex coefficient for the antiparticle. 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...
 
static void setRandomiser (TRandom *randomiser)
 Set the randomiser. More...
 
static TRandom * getRandomiser ()
 Access the randomiser. 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...
 
virtual void adjustName (LauParameter *par, const TString &oldBaseName)
 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 the Cartesian gamma CP convention.

Holds a set of real values that define the complex coefficient of an amplitude component. The amplitude has the form ( x + i * y ) * ( 1 + xCP +/- delta_xCP + i * ( yCP +/- delta_yCP ) ). [Phys. Rev. D79, 051301 (2009)]

Definition at line 36 of file LauCartesianGammaCPCoeffSet.hh.

Constructor & Destructor Documentation

LauCartesianGammaCPCoeffSet::LauCartesianGammaCPCoeffSet ( const TString &  compName,
const Double_t  x,
const Double_t  y,
const Double_t  xCP,
const Double_t  yCP,
const Double_t  deltaXCP,
const Double_t  deltaYCP,
const Bool_t  xFixed,
const Bool_t  yFixed,
const Bool_t  xCPFixed,
const Bool_t  yCPFixed,
const Bool_t  deltaXCPFixed,
const Bool_t  deltaYCPFixed,
const Bool_t  deltaXCPSecondStage = kFALSE,
const Bool_t  deltaYCPSecondStage = kFALSE 
)

Constructor.

Parameters
[in]compNamethe name of the coefficient set
[in]xthe real nonCP part
[in]ythe imaginary nonCP part
[in]xCPthe average real CP part
[in]yCPthe average imaginary CP part
[in]deltaXCPthe asymmetric real CP part
[in]deltaYCPthe asymmetric imaginary CP part
[in]xFixedwhether x is fixed
[in]yFixedwhether y is fixed
[in]xCPFixedwhether xCP is fixed
[in]yCPFixedwhether yCP is fixed
[in]deltaXCPFixedwhether deltaXCP is fixed
[in]deltaYCPFixedwhether deltaYCP is fixed
[in]deltaXCPSecondStagewhether deltaXCP should be floated only in the second stage of the fit
[in]deltaYCPSecondStagewhether deltaYCP should be floated only in the second stage of the fit

Definition at line 31 of file LauCartesianGammaCPCoeffSet.cc.

virtual LauCartesianGammaCPCoeffSet::~LauCartesianGammaCPCoeffSet ( )
inlinevirtual

Destructor.

Definition at line 62 of file LauCartesianGammaCPCoeffSet.hh.

LauCartesianGammaCPCoeffSet::LauCartesianGammaCPCoeffSet ( const LauCartesianGammaCPCoeffSet 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 57 of file LauCartesianGammaCPCoeffSet.cc.

Member Function Documentation

LauParameter LauCartesianGammaCPCoeffSet::acp ( )
virtual

Calculate the CP asymmetry.

Returns
the CP asymmetry

Implements LauAbsCoeffSet.

Definition at line 257 of file LauCartesianGammaCPCoeffSet.cc.

const LauComplex & LauCartesianGammaCPCoeffSet::antiparticleCoeff ( )
virtual

Retrieve the complex coefficient for an antiparticle.

Returns
the complex coefficient for an antiparticle

Implements LauAbsCoeffSet.

Definition at line 244 of file LauCartesianGammaCPCoeffSet.cc.

LauAbsCoeffSet * LauCartesianGammaCPCoeffSet::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 287 of file LauCartesianGammaCPCoeffSet.cc.

void LauCartesianGammaCPCoeffSet::finaliseValues ( )
virtual

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

Implements LauAbsCoeffSet.

Definition at line 225 of file LauCartesianGammaCPCoeffSet.cc.

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

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

Copy assignment operator (not implemented)

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

Retrieve the complex coefficient for a particle.

Returns
the complex coefficient for a particle

Implements LauAbsCoeffSet.

Definition at line 236 of file LauCartesianGammaCPCoeffSet.cc.

void LauCartesianGammaCPCoeffSet::printParValues ( ) const
virtual

Print the current values of the parameters.

Implements LauAbsCoeffSet.

Definition at line 140 of file LauCartesianGammaCPCoeffSet.cc.

void LauCartesianGammaCPCoeffSet::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 151 of file LauCartesianGammaCPCoeffSet.cc.

void LauCartesianGammaCPCoeffSet::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 159 of file LauCartesianGammaCPCoeffSet.cc.

void LauCartesianGammaCPCoeffSet::randomiseInitValues ( )
virtual

Randomise the starting values of the parameters for a fit.

Implements LauAbsCoeffSet.

Definition at line 191 of file LauCartesianGammaCPCoeffSet.cc.

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

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

This method is not supported by this class because there are more than four parameters so there is not a unique solution.

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 252 of file LauCartesianGammaCPCoeffSet.cc.

Member Data Documentation

LauParameter LauCartesianGammaCPCoeffSet::acp_
private

The CP asymmetry.

Definition at line 171 of file LauCartesianGammaCPCoeffSet.hh.

LauComplex LauCartesianGammaCPCoeffSet::antiparticleCoeff_
private

The antiparticle complex coefficient.

Definition at line 168 of file LauCartesianGammaCPCoeffSet.hh.

LauComplex LauCartesianGammaCPCoeffSet::cpAntiPart_
private

The CP part of the complex coefficient for the antiparticle.

Definition at line 163 of file LauCartesianGammaCPCoeffSet.hh.

LauComplex LauCartesianGammaCPCoeffSet::cpPart_
private

The CP part of the complex coefficient for the particle.

Definition at line 161 of file LauCartesianGammaCPCoeffSet.hh.

LauParameter* LauCartesianGammaCPCoeffSet::deltaXCP_
private

The asymmetric CP real part.

Definition at line 154 of file LauCartesianGammaCPCoeffSet.hh.

LauParameter* LauCartesianGammaCPCoeffSet::deltaYCP_
private

The asymmetric CP imaginary part.

Definition at line 156 of file LauCartesianGammaCPCoeffSet.hh.

LauComplex LauCartesianGammaCPCoeffSet::nonCPPart_
private

The nonCP part of the complex coefficient.

Definition at line 159 of file LauCartesianGammaCPCoeffSet.hh.

LauComplex LauCartesianGammaCPCoeffSet::particleCoeff_
private

The particle complex coefficient.

Definition at line 166 of file LauCartesianGammaCPCoeffSet.hh.

LauParameter* LauCartesianGammaCPCoeffSet::x_
private

The nonCP real part.

Definition at line 146 of file LauCartesianGammaCPCoeffSet.hh.

LauParameter* LauCartesianGammaCPCoeffSet::xCP_
private

The average CP real part.

Definition at line 150 of file LauCartesianGammaCPCoeffSet.hh.

LauParameter* LauCartesianGammaCPCoeffSet::y_
private

The nonCP imaginary part.

Definition at line 148 of file LauCartesianGammaCPCoeffSet.hh.

LauParameter* LauCartesianGammaCPCoeffSet::yCP_
private

The average CP imaginary part.

Definition at line 152 of file LauCartesianGammaCPCoeffSet.hh.


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