Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
PDEFoamTarget.h
Go to the documentation of this file.
1// @(#)root/tmva $Id$
2// Author: Tancredi Carli, Dominik Dannheim, Alexander Voigt
3
4/**********************************************************************************
5 * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
6 * Package: TMVA *
7 * Classes: PDEFoamTarget *
8 * *
9 * *
10 * Description: *
11 * Concrete PDEFoam sub-class. This foam stores the first target *
12 * (index 0) with every cell, as well as the statistical error on *
13 * the target. *
14 * *
15 * Authors (alphabetical): *
16 * S. Jadach - Institute of Nuclear Physics, Cracow, Poland *
17 * Tancredi Carli - CERN, Switzerland *
18 * Dominik Dannheim - CERN, Switzerland *
19 * Alexander Voigt - TU Dresden, Germany *
20 * *
21 * Copyright (c) 2008, 2010: *
22 * CERN, Switzerland *
23 * MPI-K Heidelberg, Germany *
24 * *
25 * Redistribution and use in source and binary forms, with or without *
26 * modification, are permitted according to the terms listed in LICENSE *
27 * (see tmva/doc/LICENSE) *
28 **********************************************************************************/
29
30#ifndef ROOT_TMVA_PDEFoamTarget
31#define ROOT_TMVA_PDEFoamTarget
32
33#include "TMVA/PDEFoam.h"
34
35#include <vector>
36
37namespace TMVA
38{
39
40 class PDEFoamTarget : public PDEFoam
41 {
42
43 protected:
44 UInt_t fTarget; // the target to fill the cells with
45
46 // specific function used during evaluation; determines, whether
47 // a cell value is undefined
49
50 // calculate the average of the neighbor cell values
51 Float_t GetAverageNeighborsValue(std::vector<Float_t>&, ECellValue);
52
53 PDEFoamTarget(const PDEFoamTarget&); // Copy Constructor NOT USED
54
55 // ---------- Public functions ----------------------------------
56 public:
57 PDEFoamTarget(); // Default constructor (used only by ROOT streamer)
58 PDEFoamTarget(const TString&, UInt_t); // Principal user-defined constructor
59 virtual ~PDEFoamTarget() {} // Default destructor
60
61 // function to fill created cell with given value
62 void FillFoamCells(const Event* ev, Float_t wt) override;
63
64 // function to call after foam is grown
65 void Finalize() override;
66
67 Float_t GetCellValue(const std::vector<Float_t> &xvec, ECellValue cv, PDEFoamKernelBase*) override;
69
70 // ---------- ROOT class definition
71 ClassDefOverride(PDEFoamTarget, 1) // Tree of PDEFoamCells
72 }; // end of PDEFoamTarget
73
74} // namespace TMVA
75
76// ---------- Inline functions
77
78#endif
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int).
Definition RtypesCore.h:60
bool Bool_t
Boolean (0=false, 1=true) (bool).
Definition RtypesCore.h:77
float Float_t
Float 4 bytes (float).
Definition RtypesCore.h:71
#define ClassDefOverride(name, id)
Definition Rtypes.h:348
This class is the abstract kernel interface for PDEFoam.
void Finalize() override
Calculate average cell target in every cell and save them to the cell.
Bool_t CellValueIsUndefined(PDEFoamCell *cell) override
Returns true, if the target error equals -1, as set in Finalize() in case of no events in the cell.
PDEFoamTarget()
Default constructor for streamer, user should not use it.
Float_t GetCellValue(const std::vector< Float_t > &xvec, ECellValue cv, PDEFoamKernelBase *) override
This function finds the cell, which corresponds to the given untransformed event vector 'xvec' and re...
PDEFoamTarget(const PDEFoamTarget &)
Copy Constructor NOT IMPLEMENTED (NEVER USED).
void FillFoamCells(const Event *ev, Float_t wt) override
This function fills an event into the discriminant PDEFoam.
Float_t GetAverageNeighborsValue(std::vector< Float_t > &, ECellValue)
This function returns the average value 'cv' of only nearest neighbor cells.
virtual Float_t GetCellValue(const std::vector< Float_t > &xvec, ECellValue cv, PDEFoamKernelBase *)
This function finds the cell, which corresponds to the given untransformed event vector 'xvec' and re...
Definition PDEFoam.cxx:1011
PDEFoam(const PDEFoam &)
Copy Constructor NOT IMPLEMENTED (NEVER USED).
Definition PDEFoam.cxx:206
ECellValue
Definition PDEFoam.h:69
Basic string class.
Definition TString.h:138
create variable transformations