Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
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 
45 ClassImp(TMVA::PDEFoamKernelTrivial);
46 
47 ////////////////////////////////////////////////////////////////////////////////
48 /// Default constructor for streamer
49 
50 TMVA::PDEFoamKernelTrivial::PDEFoamKernelTrivial()
51 : PDEFoamKernelBase()
52 {
53 }
54 
55 ////////////////////////////////////////////////////////////////////////////////
56 /// Copy constructor
57 
58 TMVA::PDEFoamKernelTrivial::PDEFoamKernelTrivial(const PDEFoamKernelTrivial &other)
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 }