library: libRooFit #include "RooGaussModel.h"

# RooGaussModel

class description - source file - inheritance tree (.pdf)

## class RooGaussModel : public RooResolutionModel

| Inheritance Chart:
`TObject`
| <- | `TNamed`
`RooPrintable`
| <- | `RooAbsArg`
| <- | `RooAbsReal`
| <- | `RooAbsPdf`
| <- | `RooResolutionModel`
| <- | `RooGaussModel` |

        protected:

                RooComplex evalCerf(Double_t swt, Double_t u, Double_t c) const
                RooComplex evalCerfApprox(Double_t swt, Double_t u, Double_t c) const
                  Double_t evalCerfIm(Double_t swt, Double_t u, Double_t c) const
                RooComplex evalCerfInt(Double_t sign, Double_t wt, Double_t tau, Double_t umin, Double_t umax, Double_t c) const
                  Double_t evalCerfInt(Double_t sign, Double_t tau, Double_t umin, Double_t umax, Double_t c) const
                  Double_t evalCerfRe(Double_t swt, Double_t u, Double_t c) const
                  Double_t evalCerfRe(Double_t u, Double_t c) const
          virtual Double_t evaluate() const

        public:

                           RooGaussModel()
                           RooGaussModel(const char* name, const char* title, RooRealVar& x, RooAbsReal& mean, RooAbsReal& sigma)
                           RooGaussModel(const char* name, const char* title, RooRealVar& x, RooAbsReal& mean, RooAbsReal& sigma, RooAbsReal& msSF)
                           RooGaussModel(const char* name, const char* title, RooRealVar& x, RooAbsReal& mean, RooAbsReal& sigma, RooAbsReal& meanSF, RooAbsReal& sigmaSF)
                           RooGaussModel(const RooGaussModel& other, const char* name = "0")
                   virtual ~RooGaussModel()
                      void advertiseAymptoticIntegral(Bool_t flag)
                      void advertiseFlatScaleFactorIntegral(Bool_t flag)
          virtual Double_t analyticalIntegral(Int_t code, const char* rangeName) const
             virtual Int_t basisCode(const char* name) const
            static TClass* Class()
          virtual TObject* clone(const char* newname) const
              virtual void generateEvent(Int_t code)
             virtual Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName = "0") const
             virtual Int_t getGenerator(const RooArgSet& directVars, RooArgSet& generateVars, Bool_t staticInitOK = kTRUE) const
           virtual TClass* IsA() const
              virtual void ShowMembers(TMemberInspector& insp, char* parent)
              virtual void Streamer(TBuffer& b)
                      void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

                Bool_t _flatSFInt
                Bool_t _asympInt   added FMV,07/24/03
          RooRealProxy mean
          RooRealProxy sigma
          RooRealProxy msf
          RooRealProxy ssf

        public:

          static const RooGaussModel::RooGaussBasis noBasis
          static const RooGaussModel::RooGaussBasis expBasisMinus
          static const RooGaussModel::RooGaussBasis expBasisSum
          static const RooGaussModel::RooGaussBasis expBasisPlus
          static const RooGaussModel::RooGaussBasis sinBasisMinus
          static const RooGaussModel::RooGaussBasis sinBasisSum
          static const RooGaussModel::RooGaussBasis sinBasisPlus
          static const RooGaussModel::RooGaussBasis cosBasisMinus
          static const RooGaussModel::RooGaussBasis cosBasisSum
          static const RooGaussModel::RooGaussBasis cosBasisPlus
          static const RooGaussModel::RooGaussBasis linBasisPlus
          static const RooGaussModel::RooGaussBasis quadBasisPlus
          static const RooGaussModel::RooGaussBasis coshBasisMinus
          static const RooGaussModel::RooGaussBasis coshBasisSum
          static const RooGaussModel::RooGaussBasis coshBasisPlus
          static const RooGaussModel::RooGaussBasis sinhBasisMinus
          static const RooGaussModel::RooGaussBasis sinhBasisSum
          static const RooGaussModel::RooGaussBasis sinhBasisPlus
              static const RooGaussModel::BasisType none
              static const RooGaussModel::BasisType expBasis
              static const RooGaussModel::BasisType sinBasis
              static const RooGaussModel::BasisType cosBasis
              static const RooGaussModel::BasisType linBasis
              static const RooGaussModel::BasisType quadBasis
              static const RooGaussModel::BasisType coshBasis
              static const RooGaussModel::BasisType sinhBasis
              static const RooGaussModel::BasisSign Both
              static const RooGaussModel::BasisSign Plus
              static const RooGaussModel::BasisSign Minus

## Class Description

RooGaussModel(const char *name, const char *title, RooRealVar& x, RooAbsReal& _mean, RooAbsReal& _sigma) : RooResolutionModel(name,title,x), _flatSFInt(kFALSE), _asympInt(kFALSE), mean("mean","Mean",this,_mean), sigma("sigma","Width",this,_sigma), msf("msf","Mean Scale Factor",this,(RooRealVar&)RooRealConstant::value(1)), ssf("ssf","Sigma Scale Factor",this,(RooRealVar&)RooRealConstant::value(1))

RooGaussModel(const char *name, const char *title, RooRealVar& x, RooAbsReal& _mean, RooAbsReal& _sigma, RooAbsReal& _msSF) : RooResolutionModel(name,title,x), _flatSFInt(kFALSE), _asympInt(kFALSE), mean("mean","Mean",this,_mean), sigma("sigma","Width",this,_sigma), msf("msf","Mean Scale Factor",this,_msSF), ssf("ssf","Sigma Scale Factor",this,_msSF)

RooGaussModel(const char *name, const char *title, RooRealVar& x, RooAbsReal& _mean, RooAbsReal& _sigma, RooAbsReal& _meanSF, RooAbsReal& _sigmaSF) : RooResolutionModel(name,title,x), _flatSFInt(kFALSE), _asympInt(kFALSE), mean("mean","Mean",this,_mean), sigma("sigma","Width",this,_sigma), msf("msf","Mean Scale Factor",this,_meanSF), ssf("ssf","Sigma Scale Factor",this,_sigmaSF)

RooGaussModel(const RooGaussModel& other, const char* name) : RooResolutionModel(other,name), _flatSFInt(other._flatSFInt), _asympInt(other._asympInt), mean("mean",this,other.mean), sigma("sigma",this,other.sigma), msf("msf",this,other.msf), ssf("ssf",this,other.ssf)

~RooGaussModel()

     Destructor

Int_t basisCode(const char* name) const

Double_t evaluate() const

    cout << "RooGaussModel::evaluate(" << GetName() << ") basisCode = " << _basisCode << endl ;

Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* /*rangeName*/) const

Double_t analyticalIntegral(Int_t code, const char* rangeName) const

RooComplex evalCerfApprox(Double_t swt, Double_t u, Double_t c) const

     use the approximation: erf(z) = exp(-z*z)/(sqrt(pi)*z)
     to explicitly cancel the divergent exp(y*y) behaviour of
     CWERF for z = x + i y with large negative y

RooComplex evalCerfInt(Double_t sign, Double_t wt, Double_t tau, Double_t umin, Double_t umax, Double_t c) const

Double_t evalCerfInt(Double_t sign, Double_t tau, Double_t umin, Double_t umax, Double_t c) const

Int_t getGenerator(const RooArgSet& directVars, RooArgSet &generateVars, Bool_t /*staticInitOK*/) const

void generateEvent(Int_t code)

### Inline Functions

            RooGaussModel RooGaussModel(const RooGaussModel& other, const char* name = "0")
                 TObject* clone(const char* newname) const
                     void advertiseFlatScaleFactorIntegral(Bool_t flag)
                     void advertiseAymptoticIntegral(Bool_t flag)
               RooComplex evalCerf(Double_t swt, Double_t u, Double_t c) const
                 Double_t evalCerfRe(Double_t swt, Double_t u, Double_t c) const
                 Double_t evalCerfIm(Double_t swt, Double_t u, Double_t c) const
                 Double_t evalCerfRe(Double_t u, Double_t c) const
                  TClass* Class()
                  TClass* IsA() const
                     void ShowMembers(TMemberInspector& insp, char* parent)
                     void Streamer(TBuffer& b)
                     void StreamerNVirtual(TBuffer& b)

Last update: Tue Jun 28 18:12:40 2005
Copyright (c) 2000-2005, Regents of the University of California *