106 Log() << kFATAL <<
"<PDEFoamTargetDensity::Density()> Binary tree not found!" <<
Endl;
117 lb[idim] = xev[idim] -
GetBox().at(idim) / 2.0;
118 ub[idim] = xev[idim] +
GetBox().at(idim) / 2.0;
122 std::vector<const TMVA::BinarySearchTreeNode*> nodes;
125 const Double_t sumOfWeights =
fBst->SearchVolume(&volume, &nodes);
128 event_density = nodes.size() * probevolume_inv;
132 for (std::vector<const TMVA::BinarySearchTreeNode*>::const_iterator it = nodes.begin();
133 it != nodes.end(); ++it) {
134 n_tar += ((*it)->GetTargets()).at(
fTarget) * ((*it)->GetWeight());
138 return (n_tar / (sumOfWeights + 0.1)) * probevolume_inv;
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int).
double Double_t
Double 8 bytes.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t target
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
Double_t Density(std::vector< Double_t > &Xarg, Double_t &event_density) override
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)