LauPolarGammaCPCoeffSet.cc
Go to the documentation of this file.
36 LauPolarGammaCPCoeffSet::LauPolarGammaCPCoeffSet(const TString& compName, const DecayType decayType,
69 // if we're using a global gamma, create it if it doesn't already exist then set gamma_ to point to it
87 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
100 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
126 LauPolarGammaCPCoeffSet::LauPolarGammaCPCoeffSet(const LauPolarGammaCPCoeffSet& rhs, CloneOption cloneOption, Double_t constFactor) : LauAbsCoeffSet(rhs.name()),
147 x_ = new LauParameter("X", rhs.x_->value(), minRealImagPart_, maxRealImagPart_, rhs.x_->fixed());
157 y_ = new LauParameter("Y", rhs.y_->value(), minRealImagPart_, maxRealImagPart_, rhs.y_->fixed());
166 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
170 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
178 gamma_ = new LauParameter("gamma", rhs.gamma_->value(), minPhase_, maxPhase_, rhs.gamma_->fixed());
188 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
194 deltaB_ = new LauParameter("deltaB", rhs.deltaB_->value(), minPhase_, maxPhase_, rhs.deltaB_->fixed());
208 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
218 deltaD_ = new LauParameter("deltaD", rhs.deltaD_->value(), minPhase_, maxPhase_, rhs.deltaD_->fixed());
256 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
264 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
277 std::cout<<"INFO in LauPolarGammaCPCoeffSet::printParValues : Component \""<<this->name()<<"\" has ";
280 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
284 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
297 stream<<"Component & Real Part & Imaginary Part & $r_B$ & $\\delta_B$ & $\\gamma$ \\\\"<<std::endl;
302 stream<<"Component & Real Part & Imaginary Part & $r_B$ & $\\delta_B$ & $\\gamma$ \\\\"<<std::endl;
307 stream<<"Component & Real Part & Imaginary Part & $r_B$ & $\\delta_B$ & $r_D$ & $\\delta_D$ & $\\gamma$ \\\\"<<std::endl;
312 stream<<"Component & Real Part & Imaginary Part & $r_B$ & $\\delta_B$ & $r_D$ & $\\delta_D$ & $\\gamma$ \\\\"<<std::endl;
327 stream<<"Component & Real Part & Imaginary Part & $r_D$ & $\\delta_D$ & $\\gamma$ \\\\"<<std::endl;
352 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
362 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
395 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
407 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
431 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
436 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
497 // To resolve the two-fold ambiguity in gamma and deltaB we require gamma to be in the range 0-pi
498 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
531 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == GLW_CPOdd || decayType_ == GLW_CPEven ) {
537 if ( decayType_ == ADS_Favoured || decayType_ == ADS_Suppressed || decayType_ == ADS_Favoured_btouOnly ) {
569 cpPart_.setRealImagPart( 1.0 - rBVal*TMath::Cos(deltaBVal + gammaVal), -rBVal*TMath::Sin(deltaBVal + gammaVal) );
570 cpAntiPart_.setRealImagPart( 1.0 - rBVal*TMath::Cos(deltaBVal - gammaVal), -rBVal*TMath::Sin(deltaBVal - gammaVal) );
578 cpPart_.setRealImagPart( 1.0 + rBVal*TMath::Cos(deltaBVal + gammaVal), rBVal*TMath::Sin(deltaBVal + gammaVal) );
579 cpAntiPart_.setRealImagPart( 1.0 + rBVal*TMath::Cos(deltaBVal - gammaVal), rBVal*TMath::Sin(deltaBVal - gammaVal) );
589 cpPart_.setRealImagPart( 1.0 + rBVal*rDVal*TMath::Cos(deltaBVal - deltaDVal + gammaVal), rBVal*rDVal*TMath::Sin(deltaBVal - deltaDVal + gammaVal) );
590 cpAntiPart_.setRealImagPart( 1.0 + rBVal*rDVal*TMath::Cos(deltaBVal - deltaDVal - gammaVal), rBVal*rDVal*TMath::Sin(deltaBVal - deltaDVal - gammaVal) );
600 cpPart_.setRealImagPart( rDVal*TMath::Cos(-deltaDVal) + rBVal*TMath::Cos(deltaBVal + gammaVal), rDVal*TMath::Sin(-deltaDVal) + rBVal*TMath::Sin(deltaBVal + gammaVal) );
601 cpAntiPart_.setRealImagPart( rDVal*TMath::Cos(-deltaDVal) + rBVal*TMath::Cos(deltaBVal - gammaVal), rDVal*TMath::Sin(-deltaDVal) + rBVal*TMath::Sin(deltaBVal - gammaVal) );
620 cpPart_.setRealImagPart( rDVal * TMath::Cos( -deltaDVal + gammaVal ), rDVal * TMath::Sin( -deltaDVal + gammaVal ) );
621 cpAntiPart_.setRealImagPart( rDVal * TMath::Cos( -deltaDVal - gammaVal ), rDVal * TMath::Sin( -deltaDVal - gammaVal ) );
638 std::cerr << "ERROR in LauPolarGammaCPCoeffSet::setCoeffValues : Method not supported by this class - too many parameters" << std::endl;
660 cpPart.setRealImagPart( 1.0 - rBVal*TMath::Cos(deltaBVal + gammaVal), -rBVal*TMath::Sin(deltaBVal + gammaVal) );
661 cpAntiPart.setRealImagPart( 1.0 - rBVal*TMath::Cos(deltaBVal - gammaVal), -rBVal*TMath::Sin(deltaBVal - gammaVal) );
669 cpPart.setRealImagPart( 1.0 + rBVal*TMath::Cos(deltaBVal + gammaVal), rBVal*TMath::Sin(deltaBVal + gammaVal) );
670 cpAntiPart.setRealImagPart( 1.0 + rBVal*TMath::Cos(deltaBVal - gammaVal), rBVal*TMath::Sin(deltaBVal - gammaVal) );
680 cpPart.setRealImagPart( 1.0 + rBVal*rDVal*TMath::Cos(deltaBVal - deltaDVal + gammaVal), rBVal*rDVal*TMath::Sin(deltaBVal - deltaDVal + gammaVal) );
681 cpAntiPart.setRealImagPart( 1.0 + rBVal*rDVal*TMath::Cos(deltaBVal - deltaDVal - gammaVal), rBVal*rDVal*TMath::Sin(deltaBVal - deltaDVal - gammaVal) );
691 cpPart.setRealImagPart( rDVal*TMath::Cos(-deltaDVal) + rBVal*TMath::Cos(deltaBVal + gammaVal), rDVal*TMath::Sin(-deltaDVal) + rBVal*TMath::Sin(deltaBVal + gammaVal) );
692 cpAntiPart.setRealImagPart( rDVal*TMath::Cos(-deltaDVal) + rBVal*TMath::Cos(deltaBVal - gammaVal), rDVal*TMath::Sin(-deltaDVal) + rBVal*TMath::Sin(deltaBVal - gammaVal) );
711 cpPart.setRealImagPart( rDVal * TMath::Cos( -deltaDVal + gammaVal ), rDVal * TMath::Sin( -deltaDVal + gammaVal ) );
712 cpAntiPart.setRealImagPart( rDVal * TMath::Cos( -deltaDVal - gammaVal ), rDVal * TMath::Sin( -deltaDVal - gammaVal ) );
744 LauAbsCoeffSet* LauPolarGammaCPCoeffSet::createClone(const TString& newName, CloneOption cloneOption, Double_t constFactor)
747 if ( cloneOption == All || cloneOption == TieRealPart || cloneOption == TieImagPart || cloneOption == TieCPPars ) {
751 std::cerr << "ERROR in LauPolarGammaCPCoeffSet::createClone : Invalid clone option" << std::endl;
static LauParameter * rDGlobal_ the magnitude of the ratio of the favoured and suppressed D-decay amplitudes (shared by multiple reso... Definition: LauPolarGammaCPCoeffSet.hh:217 LauParameter * rD_ the magnitude of the ratio of the favoured and suppressed D-decay amplitudes Definition: LauPolarGammaCPCoeffSet.hh:208 static Double_t maxPhase_ Maximum allowed value of phase parameters. Definition: LauAbsCoeffSet.hh:264 Class for defining a complex coefficient useful for extracting the CKM angle gamma from B -> D h h Da... Definition: LauPolarGammaCPCoeffSet.hh:40 Bool_t fixed() const Check whether the parameter is fixed or floated. Definition: LauParameter.hh:214 LauComplex nonCPPart_ The b -> c part of the complex coefficient. Definition: LauPolarGammaCPCoeffSet.hh:229 TRandom * zeroSeedRandom() Access the singleton random number generator with seed set from machine clock time (within +-1 sec)... Definition: LauRandom.cc:30 ClassImp(LauAbsCoeffSet) virtual const LauComplex & particleCoeff() Retrieve the complex coefficient for a particle. Definition: LauPolarGammaCPCoeffSet.cc:545 LauComplex antiparticleCoeff_ The antiparticle complex coefficient. Definition: LauPolarGammaCPCoeffSet.hh:238 static Double_t maxRealImagPart_ Maximum allowed value of real/imaginary part parameters. Definition: LauAbsCoeffSet.hh:268 LauParameter * deltaD_ the relative strong phase of the favoured and suppressed D-decay amplitudes Definition: LauPolarGammaCPCoeffSet.hh:211 const Bool_t useGlobalADSPars_ Whether the global rD and deltaD are used for this resonance. Definition: LauPolarGammaCPCoeffSet.hh:226 virtual void adjustName(LauParameter *par, const TString &oldBaseName) Prepend the base name and index to the name of a parameter. Definition: LauPolarGammaCPCoeffSet.cc:236 LauParameter * gamma_ the relative CP-violating (weak) phase of the b -> u and b -> c amplitudes Definition: LauPolarGammaCPCoeffSet.hh:205 File containing declaration of LauPrint class. LauPolarGammaCPCoeffSet(const TString &compName, const DecayType decayType, const Double_t x, const Double_t y, const Double_t rB, const Double_t deltaB, const Double_t gamma, const Double_t rD, const Double_t deltaD, const Bool_t xFixed, const Bool_t yFixed, const Bool_t rBFixed, const Bool_t deltaBFixed, const Bool_t gammaFixed, const Bool_t rDFixed, const Bool_t deltaDFixed, const Bool_t rBSecondStage=kFALSE, const Bool_t deltaBSecondStage=kFALSE, const Bool_t gammaSecondStage=kFALSE, const Bool_t rDSecondStage=kFALSE, const Bool_t deltaDSecondStage=kFALSE, const Bool_t useGlobalGamma=kFALSE, const Bool_t useGlobalADSPars=kFALSE) Constructor. Definition: LauPolarGammaCPCoeffSet.cc:36 LauComplex cpAntiPart_ The b -> u part of the complex coefficient for the antiparticle. Definition: LauPolarGammaCPCoeffSet.hh:233 const Bool_t useGlobalGamma_ Whether the global gamma is used for this resonance. Definition: LauPolarGammaCPCoeffSet.hh:223 Definition: LauAbsCoeffSet.hh:44 virtual void printTableHeading(std::ostream &stream) const Print the column headings for a results table. Definition: LauPolarGammaCPCoeffSet.cc:291 Double_t abs2() const Obtain the square of the absolute value of the complex number. Definition: LauComplex.hh:232 LauComplex cpPart_ The b -> u part of the complex coefficient for the particle. Definition: LauPolarGammaCPCoeffSet.hh:231 virtual const LauComplex & antiparticleCoeff() Retrieve the complex coefficient for an antiparticle. Definition: LauPolarGammaCPCoeffSet.cc:551 LauParameter * x_ The real part of the b -> c amplitude. Definition: LauPolarGammaCPCoeffSet.hh:193 virtual void randomiseInitValues() Randomise the starting values of the parameters for a fit. Definition: LauPolarGammaCPCoeffSet.cc:378 static LauParameter * deltaDGlobal_ the relative strong phase of the favoured and suppressed D-decay amplitudes (shared by multiple reson... Definition: LauPolarGammaCPCoeffSet.hh:220 static Double_t maxMagnitude_ Maximum allowed value of magnitude parameters. Definition: LauAbsCoeffSet.hh:260 File containing declaration of LauParameter class. Definition: LauAbsCoeffSet.hh:39 Bool_t secondStage() const Check whether the parameter should be floated only in the second stage of a two stage fit... Definition: LauParameter.hh:220 LauParameter * y_ The imaginary part of the b -> c amplitude. Definition: LauPolarGammaCPCoeffSet.hh:196 LauParameter * rB_ the magnitude of the ratio of the b -> u and b -> c amplitudes Definition: LauPolarGammaCPCoeffSet.hh:199 File containing declaration of LauComplex class. virtual void setCoeffValues(const LauComplex &coeff, const LauComplex &coeffBar, Bool_t init) Set the parameters based on the complex coefficients for particles and antiparticles. Definition: LauPolarGammaCPCoeffSet.cc:636 Class for defining the abstract interface for complex coefficient classes. Definition: LauAbsCoeffSet.hh:34 void valueAndErrors(Double_t newValue, Double_t newError, Double_t newNegError=0.0, Double_t newPosError=0.0) Set the value and errors on the parameter. Definition: LauParameter.cc:396 virtual void printParValues() const Print the current values of the parameters. Definition: LauPolarGammaCPCoeffSet.cc:275 static Double_t minRealImagPart_ Minimum allowed value of real/imaginary part parameters. Definition: LauAbsCoeffSet.hh:266 File containing LauRandom namespace. LauParameter * deltaB_ the relative CP-conserving (strong) phase of the b -> u and b -> c amplitudes Definition: LauPolarGammaCPCoeffSet.hh:202 virtual void finaliseValues() Make sure values are in "standard" ranges, e.g. phases should be between -pi and pi. Definition: LauPolarGammaCPCoeffSet.cc:421 void updateAmplitudes() Update the amplitudes based on the new values of the parameters. Definition: LauPolarGammaCPCoeffSet.cc:557 virtual void printTableRow(std::ostream &stream) const Print the parameters of the complex coefficient as a row in the results table. Definition: LauPolarGammaCPCoeffSet.cc:338 void setRealImagPart(Double_t realpart, Double_t imagpart) Set both real and imaginary part. Definition: LauComplex.hh:314 static LauParameter * gammaGlobal_ The CP-violating phase (shared by multiple resonances) Definition: LauPolarGammaCPCoeffSet.hh:214 void blindParameter(const TString &blindingString, const Double_t width) Blind the parameter. Definition: LauParameter.cc:528 File containing declaration of LauPolarGammaCPCoeffSet class. File containing LauConstants namespace. virtual std::vector< LauParameter * > getParameters() Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit... Definition: LauPolarGammaCPCoeffSet.cc:248 void printFormat(std::ostream &stream, Double_t value) const Method to choose the printing format to a specified level of precision. Definition: LauPrint.cc:32 LauParameter * createClone(Double_t constFactor=1.0) Method to create a clone from the parent parameter using the copy constructor. Definition: LauParameter.cc:613 virtual TString name() const Retrieve the name of the coefficient set. Definition: LauAbsCoeffSet.hh:117 static Double_t minPhase_ Minimum allowed value of phase parameters. Definition: LauAbsCoeffSet.hh:262 virtual LauAbsCoeffSet * createClone(const TString &newName, CloneOption cloneOption=All, Double_t constFactor=1.0) Create a clone of the coefficient set. Definition: LauPolarGammaCPCoeffSet.cc:744 static Double_t minMagnitude_ Minimum allowed value of magnitude parameters. Definition: LauAbsCoeffSet.hh:258 LauComplex particleCoeff_ The particle complex coefficient. Definition: LauPolarGammaCPCoeffSet.hh:236 virtual const TString & baseName() const Retrieve the base name of the coefficient set. Definition: LauAbsCoeffSet.hh:132 Class for blinding and unblinding a number based on a blinding string. Definition: LauBlind.hh:28 Definition: LauAbsCoeffSet.hh:42 virtual void adjustName(LauParameter *par, const TString &oldBaseName) Prepend the base name and index to the name of a parameter. Definition: LauAbsCoeffSet.cc:77 Definition: LauAbsCoeffSet.hh:43 Generated by ![]() |