Logo ROOT   6.08/07
Reference Guide
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  * Web : http://tmva.sourceforge.net *
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  * (http://tmva.sourceforge.net/LICENSE) *
28  **********************************************************************************/
29 
30 #ifndef ROOT_TMVA_PDEFoamTarget
31 #define ROOT_TMVA_PDEFoamTarget
32 
33 #ifndef ROOT_TMVA_PDEFoam
34 #include "TMVA/PDEFoam.h"
35 #endif
36 
37 namespace 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  virtual void FillFoamCells(const Event* ev, Float_t wt);
63 
64  // function to call after foam is grown
65  virtual void Finalize();
66 
67  virtual Float_t GetCellValue(const std::vector<Float_t> &xvec, ECellValue cv, PDEFoamKernelBase*);
69 
70  // ---------- ROOT class definition
71  ClassDef(PDEFoamTarget, 1) // Tree of PDEFoamCells
72  }; // end of PDEFoamTarget
73 
74 } // namespace TMVA
75 
76 // ---------- Inline functions
77 
78 #endif
PDEFoamTarget()
Default constructor for streamer, user should not use it.
float Float_t
Definition: RtypesCore.h:53
Bool_t CellValueIsUndefined(PDEFoamCell *cell)
Returns true, if the target error equals -1, as set in Finalize() in case of no events in the cell...
virtual void FillFoamCells(const Event *ev, Float_t wt)
This function fills an event into the discriminant PDEFoam.
Basic string class.
Definition: TString.h:137
bool Bool_t
Definition: RtypesCore.h:59
Float_t GetAverageNeighborsValue(std::vector< Float_t > &, ECellValue)
This function returns the average value &#39;cv&#39; of only nearest neighbor cells.
#define ClassDef(name, id)
Definition: Rtypes.h:254
virtual void Finalize()
Calculate average cell target in every cell and save them to the cell.
unsigned int UInt_t
Definition: RtypesCore.h:42
ECellValue
Definition: PDEFoam.h:85
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 &#39;xvec&#39; and re...
Definition: PDEFoam.cxx:1016
Abstract ClassifierFactory template that handles arbitrary types.
virtual ~PDEFoamTarget()
Definition: PDEFoamTarget.h:59
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 &#39;xvec&#39; and re...