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

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

#include <LauCartesianCPCoeffSet.hh>

Inheritance diagram for LauCartesianCPCoeffSet:
LauAbsCoeffSet

Public Member Functions

 LauCartesianCPCoeffSet (const TString &compName, Double_t x, Double_t y, Double_t deltaX, Double_t deltaY, Bool_t xFixed, Bool_t yFixed, Bool_t deltaXFixed, Bool_t deltaYFixed, Bool_t deltaXSecondStage=kFALSE, Bool_t deltaYSecondStage=kFALSE)
 Constructor. More...
 
virtual ~LauCartesianCPCoeffSet ()
 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

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

Private Attributes

LauParameterx_
 The average real part. More...
 
LauParametery_
 The average imaginary part. More...
 
LauParameterdeltaX_
 The asymmetric real part. More...
 
LauParameterdeltaY_
 The asymmetric imaginary part. 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...
 
- 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 CP convention.

Holds a set of real values that define the complex coefficient of an amplitude component. The amplitude has the form x +/- delta_x + i * ( y +/- delta_y ). [Phys.Rev. D78 (2008) 012004]

Definition at line 36 of file LauCartesianCPCoeffSet.hh.

Constructor & Destructor Documentation

LauCartesianCPCoeffSet::LauCartesianCPCoeffSet ( const TString &  compName,
Double_t  x,
Double_t  y,
Double_t  deltaX,
Double_t  deltaY,
Bool_t  xFixed,
Bool_t  yFixed,
Bool_t  deltaXFixed,
Bool_t  deltaYFixed,
Bool_t  deltaXSecondStage = kFALSE,
Bool_t  deltaYSecondStage = kFALSE 
)

Constructor.

Parameters
[in]compNamethe name of the coefficient set
[in]xthe average real part
[in]ythe average imaginary part
[in]deltaXthe asymmetric real part
[in]deltaYthe asymmetric imaginary part
[in]xFixedwhether x is fixed
[in]yFixedwhether y is fixed
[in]deltaXFixedwhether deltaX is fixed
[in]deltaYFixedwhether deltaY is fixed
[in]deltaXSecondStagewhether deltaX should be floated only in the second stage of the fit
[in]deltaYSecondStagewhether deltaY should be floated only in the second stage of the fit

Definition at line 32 of file LauCartesianCPCoeffSet.cc.

virtual LauCartesianCPCoeffSet::~LauCartesianCPCoeffSet ( )
inlinevirtual

Destructor.

Definition at line 57 of file LauCartesianCPCoeffSet.hh.

LauCartesianCPCoeffSet::LauCartesianCPCoeffSet ( const LauCartesianCPCoeffSet 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 53 of file LauCartesianCPCoeffSet.cc.

Member Function Documentation

LauParameter LauCartesianCPCoeffSet::acp ( )
virtual

Calculate the CP asymmetry.

Returns
the CP asymmetry

Implements LauAbsCoeffSet.

Definition at line 216 of file LauCartesianCPCoeffSet.cc.

const LauComplex & LauCartesianCPCoeffSet::antiparticleCoeff ( )
virtual

Retrieve the complex coefficient for an antiparticle.

Returns
the complex coefficient for an antiparticle

Implements LauAbsCoeffSet.

Definition at line 181 of file LauCartesianCPCoeffSet.cc.

LauAbsCoeffSet * LauCartesianCPCoeffSet::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 240 of file LauCartesianCPCoeffSet.cc.

void LauCartesianCPCoeffSet::finaliseValues ( )
virtual

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

Implements LauAbsCoeffSet.

Definition at line 166 of file LauCartesianCPCoeffSet.cc.

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

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

Copy assignment operator (not implemented)

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

Retrieve the complex coefficient for a particle.

Returns
the complex coefficient for a particle

Implements LauAbsCoeffSet.

Definition at line 175 of file LauCartesianCPCoeffSet.cc.

void LauCartesianCPCoeffSet::printParValues ( ) const
virtual

Print the current values of the parameters.

Implements LauAbsCoeffSet.

Definition at line 101 of file LauCartesianCPCoeffSet.cc.

void LauCartesianCPCoeffSet::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 110 of file LauCartesianCPCoeffSet.cc.

void LauCartesianCPCoeffSet::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 118 of file LauCartesianCPCoeffSet.cc.

void LauCartesianCPCoeffSet::randomiseInitValues ( )
virtual

Randomise the starting values of the parameters for a fit.

Implements LauAbsCoeffSet.

Definition at line 142 of file LauCartesianCPCoeffSet.cc.

void LauCartesianCPCoeffSet::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 187 of file LauCartesianCPCoeffSet.cc.

Member Data Documentation

LauParameter LauCartesianCPCoeffSet::acp_
private

The CP asymmetry.

Definition at line 154 of file LauCartesianCPCoeffSet.hh.

LauComplex LauCartesianCPCoeffSet::antiparticleCoeff_
private

The antiparticle complex coefficient.

Definition at line 151 of file LauCartesianCPCoeffSet.hh.

LauParameter* LauCartesianCPCoeffSet::deltaX_
private

The asymmetric real part.

Definition at line 144 of file LauCartesianCPCoeffSet.hh.

LauParameter* LauCartesianCPCoeffSet::deltaY_
private

The asymmetric imaginary part.

Definition at line 146 of file LauCartesianCPCoeffSet.hh.

LauComplex LauCartesianCPCoeffSet::particleCoeff_
private

The particle complex coefficient.

Definition at line 149 of file LauCartesianCPCoeffSet.hh.

LauParameter* LauCartesianCPCoeffSet::x_
private

The average real part.

Definition at line 140 of file LauCartesianCPCoeffSet.hh.

LauParameter* LauCartesianCPCoeffSet::y_
private

The average imaginary part.

Definition at line 142 of file LauCartesianCPCoeffSet.hh.


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