63 inline double N(
int l,
int m=0) {
82 , _phi(
"phi",
"phi", this, phi)
84 , _sgn1( m==0 ? 0 : m<0 ? -1 : +1 )
92 :
RooLegendre(name, title,ctheta,l1, m1<0?-m1:m1,l2,m2<0?-m2:m2)
93 , _phi(
"phi",
"phi", this, phi)
95 , _sgn1( m1==0 ? 0 : m1<0 ? -1 : +1 )
96 , _sgn2( m2==0 ? 0 : m2<0 ? -1 : +1 )
104 , _phi(
"phi", this,other._phi)
106 , _sgn1( other._sgn1 )
107 , _sgn2( other._sgn2 )
126 return range == 0 || strlen(range) == 0
131 return range == 0 || strlen(range) == 0
157 }
else if (code == 2) {
virtual Int_t getAnalyticalIntegral(RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const
Interface function getAnalyticalIntergral advertises the analytical integrals that are supported...
virtual Int_t getMaxVal(const RooArgSet &vars) const
Advertise capability to determine maximum value of function for given set of observables.
virtual Double_t analyticalIntegral(Int_t code, const char *rangeName=0) const
this was verified to match mathematica for l1 in [0,2], m1 in [0,l1], l2 in [l1,4], m2 in [0,l2]
virtual Double_t maxVal(Int_t code) const
Return maximum value for set of observables identified by code assigned in getMaxVal.
virtual Double_t maxVal(Int_t code) const
Return maximum value for set of observables identified by code assigned in getMaxVal.
Double_t evaluate() const
TODO: check that 0<=m_i<=l_i; on the other hand, assoc_legendre already does that ;-) Note: P_0^0 = 1...
VecExpr< UnaryOp< Fabs< T >, VecExpr< A, T, D >, T >, T, D > fabs(const VecExpr< A, T, D > &rhs)
virtual Double_t analyticalIntegral(Int_t code, const char *rangeName=0) const
this was verified to match mathematica for l1 in [0,2], m1 in [0,l1], l2 in [l1,4], m2 in [0,l2]
virtual Int_t getMaxVal(const RooArgSet &vars) const
Advertise capability to determine maximum value of function for given set of observables.
double Pi()
Mathematical constants.
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Double_t min(const char *rname=0) const
Double_t evaluate() const
TODO: check that 0<=m_i<=l_i; on the other hand, assoc_legendre already does that ;-) Note: P_0^0 = 1...
Double_t Factorial(Int_t i)
Compute factorial(n).
Bool_t matchArgs(const RooArgSet &allDeps, RooArgSet &numDeps, const RooArgProxy &a) const
Utility function for use in getAnalyticalIntegral().
virtual Int_t getAnalyticalIntegral(RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const
TODO: check that phi.max - phi.min = 2 pi...
Double_t max(const char *rname=0) const