BOSS 7.0.9
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtDalitzFlatPdf Class Reference

#include <EvtDalitzFlatPdf.hh>

+ Inheritance diagram for EvtDalitzFlatPdf:

Public Member Functions

 EvtDalitzFlatPdf (const EvtDalitzPlot &dp)
 
 EvtDalitzFlatPdf (const EvtDalitzFlatPdf &other)
 
virtual ~EvtDalitzFlatPdf ()
 
virtual EvtPdf< EvtDalitzPoint > * clone () const
 
virtual EvtValError compute_integral (int N) const
 
virtual EvtDalitzPoint randomPoint ()
 
 EvtDalitzFlatPdf (const EvtDalitzPlot &dp)
 
 EvtDalitzFlatPdf (const EvtDalitzFlatPdf &other)
 
virtual ~EvtDalitzFlatPdf ()
 
virtual EvtPdf< EvtDalitzPoint > * clone () const
 
virtual EvtValError compute_integral (int N) const
 
virtual EvtDalitzPoint randomPoint ()
 
- Public Member Functions inherited from EvtPdf< EvtDalitzPoint >
 EvtPdf ()
 
 EvtPdf (const EvtPdf &other)
 
 EvtPdf ()
 
 EvtPdf (const EvtPdf &other)
 
virtual ~EvtPdf ()
 
virtual ~EvtPdf ()
 
virtual EvtPdf< EvtDalitzPoint > * clone () const=0
 
virtual EvtPdf< EvtDalitzPoint > * clone () const=0
 
double evaluate (const EvtDalitzPoint &p) const
 
double evaluate (const EvtDalitzPoint &p) const
 
EvtPdfMax< EvtDalitzPointfindMax (const EvtPdf< EvtDalitzPoint > &pc, int N)
 
EvtPdfMax< EvtDalitzPointfindMax (const EvtPdf< EvtDalitzPoint > &pc, int N)
 
EvtValError findGenEff (const EvtPdf< EvtDalitzPoint > &pc, int N, int nFindMax)
 
EvtValError findGenEff (const EvtPdf< EvtDalitzPoint > &pc, int N, int nFindMax)
 
void setItg (EvtValError itg)
 
void setItg (EvtValError itg)
 
EvtValError getItg () const
 
EvtValError getItg (int N) const
 
EvtValError getItg () const
 
EvtValError getItg (int N) const
 
virtual EvtValError compute_integral () const
 
virtual EvtValError compute_integral (int N) const
 
virtual EvtValError compute_integral () const
 
virtual EvtValError compute_integral (int N) const
 
EvtValError compute_mc_integral (const EvtPdf< EvtDalitzPoint > &pc, int N)
 
EvtValError compute_mc_integral (const EvtPdf< EvtDalitzPoint > &pc, int N)
 
EvtPredGen< EvtPdfGen< EvtDalitzPoint >, EvtPdfPred< EvtDalitzPoint > > accRejGen (const EvtPdf< EvtDalitzPoint > &pc, int nMax, double factor=1.)
 
EvtPredGen< EvtPdfGen< EvtDalitzPoint >, EvtPdfPred< EvtDalitzPoint > > accRejGen (const EvtPdf< EvtDalitzPoint > &pc, int nMax, double factor=1.)
 
virtual EvtDalitzPoint randomPoint ()
 
virtual EvtDalitzPoint randomPoint ()
 

Protected Member Functions

virtual double pdf (const EvtDalitzPoint &) const
 
virtual double pdf (const EvtDalitzPoint &) const
 
virtual double pdf (const EvtDalitzPoint &) const=0
 
virtual double pdf (const EvtDalitzPoint &) const=0
 

Protected Attributes

EvtDalitzPlot _dp
 
- Protected Attributes inherited from EvtPdf< EvtDalitzPoint >
EvtValError _itg
 

Detailed Description

Constructor & Destructor Documentation

◆ EvtDalitzFlatPdf() [1/4]

◆ EvtDalitzFlatPdf() [2/4]

EvtDalitzFlatPdf::EvtDalitzFlatPdf ( const EvtDalitzFlatPdf other)

◆ ~EvtDalitzFlatPdf() [1/2]

EvtDalitzFlatPdf::~EvtDalitzFlatPdf ( )
virtual

◆ EvtDalitzFlatPdf() [3/4]

EvtDalitzFlatPdf::EvtDalitzFlatPdf ( const EvtDalitzPlot dp)

◆ EvtDalitzFlatPdf() [4/4]

EvtDalitzFlatPdf::EvtDalitzFlatPdf ( const EvtDalitzFlatPdf other)

◆ ~EvtDalitzFlatPdf() [2/2]

virtual EvtDalitzFlatPdf::~EvtDalitzFlatPdf ( )
virtual

Member Function Documentation

◆ clone() [1/2]

◆ clone() [2/2]

virtual EvtPdf< EvtDalitzPoint > * EvtDalitzFlatPdf::clone ( ) const
virtual

◆ compute_integral() [1/2]

EvtValError EvtDalitzFlatPdf::compute_integral ( int  N) const
virtual

Reimplemented from EvtPdf< EvtDalitzPoint >.

Definition at line 35 of file bak-BesEvtGen-00-04-08/src/EvtGen/EvtGenBase/EvtDalitzFlatPdf.cc.

36{
37 return EvtValError(_dp.getArea(N),0.);
38}
double getArea(int N=1000, EvtCyclic3::Pair i=EvtCyclic3::AB, EvtCyclic3::Pair j=EvtCyclic3::BC) const

◆ compute_integral() [2/2]

virtual EvtValError EvtDalitzFlatPdf::compute_integral ( int  N) const
virtual

Reimplemented from EvtPdf< EvtDalitzPoint >.

◆ pdf() [1/2]

double EvtDalitzFlatPdf::pdf ( const EvtDalitzPoint ) const
protectedvirtual

Implements EvtPdf< EvtDalitzPoint >.

Definition at line 30 of file bak-BesEvtGen-00-04-08/src/EvtGen/EvtGenBase/EvtDalitzFlatPdf.cc.

31{
32 return 1.;
33}

◆ pdf() [2/2]

virtual double EvtDalitzFlatPdf::pdf ( const EvtDalitzPoint ) const
protectedvirtual

◆ randomPoint() [1/2]

EvtDalitzPoint EvtDalitzFlatPdf::randomPoint ( )
virtual

Reimplemented from EvtPdf< EvtDalitzPoint >.

Definition at line 40 of file bak-BesEvtGen-00-04-08/src/EvtGen/EvtGenBase/EvtDalitzFlatPdf.cc.

41{
42 // To obtain a uniform distribution generate
43 // in terms of q's. Generate in a box that circumscribes the
44 // Dalitz plot. Accept points inside. If there are two
45 // many unsuccessful attempts it's a hint that the Dalitz plot
46 // area is tiny compared to the box. It's a pathological
47 // case. Abort.
48
51
52 int n = 0;
53 int maxTries = 1000;
54 while(n++ < maxTries) {
55
56 double q1 = EvtRandom::Flat(_dp.qAbsMin(pair1),_dp.qAbsMax(pair2));
57 double q2 = EvtRandom::Flat(_dp.qAbsMin(pair2),_dp.qAbsMax(pair2));
58
59 EvtDalitzCoord point(pair1,q1,pair2,q2);
60 EvtDalitzPoint x(_dp,point);
61
62 if(x.isValid()) return x;
63 }
64
65 printf("No point generated for dalitz plot after %d tries\n",maxTries);
66 assert(0);
67}
const Int_t n
Double_t x[10]

◆ randomPoint() [2/2]

virtual EvtDalitzPoint EvtDalitzFlatPdf::randomPoint ( )
virtual

Reimplemented from EvtPdf< EvtDalitzPoint >.

Member Data Documentation

◆ _dp

EvtDalitzPlot EvtDalitzFlatPdf::_dp
protected

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