49 _absLambda("absLambda","
Absolute value of lambda",this,a),
50 _argLambda("argLambda","Arg(Lambda)",this,b),
51 _effRatio("effRatio","B0/B0bar efficiency ratio",this,effRatio),
52 _CPeigenval("CPeigenval","CP eigen value",this,CPeigenval),
53 _avgMistag("avgMistag","Average mistag rate",this,avgMistag),
54 _delMistag("delMistag","Delta mistag rate",this,delMistag),
55 _t("t","time",this,t),
56 _tau("tau","decay time",this,tau),
57 _dm("dm","mixing frequency",this,dm),
58 _tag("tag","CP state",this,tag),
64 _basisExp = declareBasis(
"exp(-@0/@1)",
RooArgList(tau,dm)) ;
65 _basisSin = declareBasis(
"exp(-@0/@1)*sin(@0*@2)",
RooArgList(tau,dm)) ;
66 _basisCos = declareBasis(
"exp(-@0/@1)*cos(@0*@2)",
RooArgList(tau,dm)) ;
69 _basisExp = declareBasis(
"exp(@0)/@1)",
RooArgList(tau,dm)) ;
70 _basisSin = declareBasis(
"exp(@0/@1)*sin(@0*@2)",
RooArgList(tau,dm)) ;
71 _basisCos = declareBasis(
"exp(@0/@1)*cos(@0*@2)",
RooArgList(tau,dm)) ;
74 _basisExp = declareBasis(
"exp(-abs(@0)/@1)",
RooArgList(tau,dm)) ;
75 _basisSin = declareBasis(
"exp(-abs(@0)/@1)*sin(@0*@2)",
RooArgList(tau,dm)) ;
76 _basisCos = declareBasis(
"exp(-abs(@0)/@1)*cos(@0*@2)",
RooArgList(tau,dm)) ;
86 _absLambda(
"absLambda",this,other._absLambda),
87 _argLambda(
"argLambda",this,other._argLambda),
88 _effRatio(
"effRatio",this,other._effRatio),
89 _CPeigenval(
"CPeigenval",this,other._CPeigenval),
90 _avgMistag(
"avgMistag",this,other._avgMistag),
91 _delMistag(
"delMistag",this,other._delMistag),
92 _t(
"t",this,other._t),
93 _tau(
"tau",this,other._tau),
94 _dm(
"dm",this,other._dm),
95 _tag(
"tag",this,other._tag),
96 _genB0Frac(other._genB0Frac),
98 _basisExp(other._basisExp),
99 _basisSin(other._basisSin),
100 _basisCos(other._basisCos)
144 if (rangeName)
return 0 ;
183 if (
matchArgs(directVars,generateVars,
_t))
return 1 ;
224 tval = (rand<=0.5) ? -
_tau*
log(2*rand) : +
_tau*
log(2*(rand-0.5)) ;
238 if (tval<
_t.
max() && tval>
_t.
min() && accept) {
virtual Double_t coefAnalyticalIntegral(Int_t coef, Int_t code, const char *rangeName=0) const
Default implementation of function implementing advertised integrals.
Bool_t matchArgs(const RooArgSet &allDeps, RooArgSet &numDeps, const RooArgProxy &a) const
Utility function for use in getAnalyticalIntegral().
PDF describing decay time distribution of B meson including effects of standard model CP violation...
void generateEvent(Int_t code)
Generates mix-state dependent.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t tau
const RooAbsCategory & arg() const
virtual ~RooBCPEffDecay()
Destructor.
RooRealVar represents a fundamental (non-derived) real valued object.
VecExpr< UnaryOp< Fabs< T >, VecExpr< A, T, D >, T >, T, D > fabs(const VecExpr< A, T, D > &rhs)
static Double_t uniform(TRandom *generator=randomGenerator())
Return a number uniformly distributed from (0,1)
Double_t min(const char *rname=0) const
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
virtual Double_t coefficient(Int_t basisIndex) const
B0 : _tag = +1.
Int_t getGenerator(const RooArgSet &directVars, RooArgSet &generateVars, Bool_t staticInitOK=kTRUE) const
Load generatedVars with the subset of directVars that we can generate events for, and return a code t...
Double_t max(const char *rname=0) const
virtual Int_t getCoefAnalyticalIntegral(Int_t coef, RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const
Default implementation of function advertising integration capabilities.
friend class RooRealIntegral
RooAbsCategory is the common abstract base class for objects that represent a discrete value with a f...
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
const RooAbsReal & arg() const
void initGenerator(Int_t code)
Interface for one-time initialization to setup the generator for the specified code.