1 #ifndef MAPPED_DALITZ_BW_AREA_HH 2 #define MAPPED_DALITZ_BW_AREA_HH 13 #include "TLorentzVector.h" 28 std::vector<MINT::counted_ptr<IGenFct> >
_limits;
51 , std::vector<TLorentzVector>& p4
55 for(
unsigned int i=0; i < n; i++){
56 int mappedIndex = mapping[i];
57 if(mappedIndex < 0 || mappedIndex + 1 > (
int) n){
58 std::cout <<
"ERROR in MappedDalitzBWArea::mapP4()" 59 <<
"\n Index out of range: " << mappedIndex
60 <<
" not in [0, " << n-1
62 throw "index out of range.";
64 p4[mappedIndex] = evt.
p(i);
72 return mapP4(evt, mapping, p4);
78 , TRandom* rnd=gRandom);
81 , TRandom* rnd=gRandom);
85 , TRandom* rnd=gRandom);
88 , TRandom* rnd=gRandom);
101 bool isInside(
const std::vector<DalitzCoordinate>& dcList)
const;
113 void print(std::ostream& os = std::cout)
const;
120 bool setRnd(TRandom* rnd=gRandom);
bool allStandardised() const
bool setRnd(TRandom *rnd=gRandom)
virtual const DalitzEventPattern & eventPattern() const
std::vector< TLorentzVector > & mapP4(const DalitzEvent &evt, const Permutation &mapping, std::vector< TLorentzVector > &p4) const
MINT::counted_ptr< DalitzEvent > tryEventForOwner() const
DalitzEventPattern _mappedPat
void setUnWeightPs(bool doSo=true)
std::vector< MINT::counted_ptr< IGenFct > > _limits
void setUnWeightPs(bool doSo=true)
bool isInside(const DalitzEvent &evt) const
virtual ~MappedDalitzBWArea()
bool allConsecutive() const
MINT::counted_ptr< IGenFct > fct_for_s(const std::vector< int > &indices) const
bool checkIntegration() const
virtual const TLorentzVector & p(unsigned int i) const
unsigned int size() const
Permutation _inverseMapping
MappedDalitzBWArea & operator=(const MappedDalitzBWArea &other)
bool checkIntegration() const
double genValue(const DalitzEvent &evt) const
std::vector< TLorentzVector > mapP4(const DalitzEvent &evt, const Permutation &mapping) const
std::ostream & operator<<(std::ostream &os, const MappedDalitzBWArea &mda)
void print(std::ostream &os=std::cout) const