104 Log() << kFATAL <<
"<PDEFoamEventDensity::Density()> Binary tree not found!" <<
Endl;
115 lb[idim] = xev[idim] -
GetBox().at(idim) / 2.0;
116 ub[idim] = xev[idim] +
GetBox().at(idim) / 2.0;
120 std::vector<const TMVA::BinarySearchTreeNode*> nodes;
123 const Double_t sumOfWeights =
fBst->SearchVolume(&volume, &nodes);
126 event_density = nodes.size() * probevolume_inv;
129 return (sumOfWeights + 0.1) * probevolume_inv;
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
Double_t GetBoxVolume()
Returns the volume of range searching box fBox.
BinarySearchTree * fBst
Binary tree to find events within a volume.
const std::vector< Double_t > & GetBox() const
This is a concrete implementation of PDEFoam.
virtual Double_t Density(std::vector< Double_t > &Xarg, Double_t &event_density)
This function is needed during the foam buildup.
Volume for BinarySearchTree.
void box(Int_t pat, Double_t x1, Double_t y1, Double_t x2, Double_t y2)
MsgLogger & Endl(MsgLogger &ml)