Logo ROOT   6.14/05
Reference Guide
PDEFoamKernelTrivial.cxx
Go to the documentation of this file.
1 // @(#)root/tmva $Id$
2 // Author: Dominik Dannheim, Alexander Voigt
3 
4 /**********************************************************************************
5  * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
6  * Package: TMVA *
7  * Classes: PDEFoamKernelTrivial *
8  * Web : http://tmva.sourceforge.net *
9  * *
10  * Description: *
11  * Implementation of trivial PDEFoam kernel *
12  * *
13  * Authors (alphabetical): *
14  * S. Jadach - Institute of Nuclear Physics, Cracow, Poland *
15  * Tancredi Carli - CERN, Switzerland *
16  * Dominik Dannheim - CERN, Switzerland *
17  * Alexander Voigt - TU Dresden, Germany *
18  * *
19  * Copyright (c) 2010: *
20  * CERN, Switzerland *
21  * MPI-K Heidelberg, Germany *
22  * *
23  * Redistribution and use in source and binary forms, with or without *
24  * modification, are permitted according to the terms listed in LICENSE *
25  * (http://tmva.sourceforge.net/LICENSE) *
26  **********************************************************************************/
27 
28 /*! \class TMVA::PDEFoamKernelTrivial
29 \ingroup TMVA
30 This class is a trivial PDEFoam kernel estimator. The Estimate()
31 function returns the cell value, given an event 'txvec'.
32 */
33 
35 
36 #include "TMVA/MsgLogger.h"
37 #include "TMVA/PDEFoam.h"
38 #include "TMVA/PDEFoamKernelBase.h"
39 #include "TMVA/Types.h"
40 
41 #include "Rtypes.h"
42 
43 #include <vector>
44 
46 
47 ////////////////////////////////////////////////////////////////////////////////
48 /// Default constructor for streamer
49 
52 {
53 }
54 
55 ////////////////////////////////////////////////////////////////////////////////
56 /// Copy constructor
57 
59  : PDEFoamKernelBase(other)
60 {
61 }
62 
63 ////////////////////////////////////////////////////////////////////////////////
64 /// Simple kernel estimator. It returns the cell value 'cv',
65 /// corresponding to the event vector 'txvec' (in foam coordinates).
66 ///
67 /// Parameters:
68 ///
69 /// - foam - the pdefoam to search in
70 ///
71 /// - txvec - event vector in foam coordinates [0,1]
72 ///
73 /// - cv - cell value to estimate
74 
75 Float_t TMVA::PDEFoamKernelTrivial::Estimate(PDEFoam *foam, std::vector<Float_t> &txvec, ECellValue cv)
76 {
77  if (foam == NULL)
78  Log() << kFATAL << "<PDEFoamKernelTrivial::Estimate>: PDEFoam not set!" << Endl;
79 
80  return foam->GetCellValue(foam->FindCell(txvec), cv);
81 }
MsgLogger & Endl(MsgLogger &ml)
Definition: MsgLogger.h:158
This class is the abstract kernel interface for PDEFoam.
float Float_t
Definition: RtypesCore.h:53
PDEFoamKernelTrivial()
Default constructor for streamer.
PDEFoamCell * FindCell(const std::vector< Float_t > &) const
Find cell that contains &#39;xvec&#39; (in foam coordinates [0,1]).
Definition: PDEFoam.cxx:1081
Implementation of PDEFoam.
Definition: PDEFoam.h:77
MsgLogger & Log() const
virtual Float_t Estimate(PDEFoam *, std::vector< Float_t > &, ECellValue)
Simple kernel estimator.
#define ClassImp(name)
Definition: Rtypes.h:359
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:1017
This class is a trivial PDEFoam kernel estimator.