ATLAS Offline Software
InnerDetector
InDetCalibAlgs
PixelCalibAlgs
NNClusteringCalibration_RunI
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef PIXELCALIBALGS_TTRAINEDNETWORK_H
6
#define PIXELCALIBALGS_TTRAINEDNETWORK_H
7
8
#include "TObject.h"
9
#include "TMatrixD.h"
10
#include "TVectorD.h"
11
#include <math.h>
12
#include <vector>
13
14
/******************************************************
15
@class TTrainedNetwork
16
Created : 18-02-2008
17
@author Giacinto Piacquadio (giacinto.piacquadio AT physik.uni-freiburg.de)
18
********************************************************/
19
20
class
TTrainedNetwork
:
public
TObject
21
{
22
public
:
23
24
TTrainedNetwork
();
25
26
//class takes ownership of all pointers...
27
TTrainedNetwork
(Int_t nInput,
28
Int_t nHidden,
29
Int_t nOutput,
30
std::vector<Int_t> & nHiddenLayerSize,
31
std::vector<TVectorD*> & thresholdVectors,
32
std::vector<TMatrixD*> &
weightMatrices
,
33
Int_t activationFunction,
34
bool
linearOutput
=
false
,
35
bool
normalizeOutput
=
false
);
36
37
~TTrainedNetwork
();
38
39
void
setNewWeights
(std::vector<TVectorD*> & thresholdVectors,
40
std::vector<TMatrixD*> &
weightMatrices
);
41
42
Int_t
getnInput
()
const
{
return
m_nInput
;};
43
44
Int_t
getnHidden
()
const
{
return
m_nHidden
;};
45
46
Int_t
getnOutput
()
const
{
return
m_nOutput
;};
47
48
const
std::vector<Int_t> &
getnHiddenLayerSize
()
const
{
return
m_nHiddenLayerSize
;};
49
50
Int_t
getActivationFunction
()
const
{
return
m_ActivationFunction
;};
51
52
const
std::vector<TVectorD*> &
getThresholdVectors
()
const
{
return
m_ThresholdVectors
;};
53
54
const
std::vector<TMatrixD*> &
weightMatrices
()
const
{
return
m_WeightMatrices
;};
55
56
std::vector<Double_t>
calculateOutputValues
(std::vector<Double_t> &
input
)
const
;
57
58
bool
getIfLinearOutput
()
const
{
return
m_LinearOutput
; };
59
60
bool
getIfNormalizeOutput
()
const
{
return
m_NormalizeOutput
; };
61
62
private
:
63
64
Int_t
m_nInput
;
65
Int_t
m_nHidden
;
66
Int_t
m_nOutput
;
67
68
std::vector<Int_t>
m_nHiddenLayerSize
;
69
//Int_t* m_nHiddenLayerSize;
70
71
std::vector<TVectorD*>
m_ThresholdVectors
;
72
std::vector<TMatrixD*>
m_WeightMatrices
;
73
// TVectorD** m_ThresholdVectors;
74
// TMatrixD** m_WeightMatrices;
75
Int_t
m_ActivationFunction
;
76
77
bool
m_LinearOutput
;
78
79
bool
m_NormalizeOutput
;
80
81
Double_t
sigmoid
(Double_t
x
)
const
{
return
1./(1.+
exp
(-2*
x
)); };
82
83
ClassDef(
TTrainedNetwork
, 2 )
84
85
};
86
87
#endif
TTrainedNetwork::getnInput
Int_t getnInput() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:46
TTrainedNetwork::calculateOutputValues
std::vector< Double_t > calculateOutputValues(std::vector< Double_t > &input) const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.cxx:99
TTrainedNetwork::m_nHiddenLayerSize
std::vector< Int_t > m_nHiddenLayerSize
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:72
TTrainedNetwork::m_LinearOutput
bool m_LinearOutput
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:81
TTrainedNetwork::getActivationFunction
Int_t getActivationFunction() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:54
TTrainedNetwork::m_nInput
Int_t m_nInput
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:64
TTrainedNetwork::getnHiddenLayerSize
const std::vector< Int_t > & getnHiddenLayerSize() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:52
TTrainedNetwork::m_NormalizeOutput
bool m_NormalizeOutput
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:83
TTrainedNetwork::getIfNormalizeOutput
bool getIfNormalizeOutput() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:64
drawFromPickle.exp
exp
Definition:
drawFromPickle.py:36
x
#define x
TTrainedNetwork::getnHidden
Int_t getnHidden() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:48
TTrainedNetwork::weightMatrices
const std::vector< TMatrixD * > & weightMatrices() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:58
TTrainedNetwork::m_nHidden
Int_t m_nHidden
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:69
TTrainedNetwork::TTrainedNetwork
TTrainedNetwork()
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.cxx:12
PlotPulseshapeFromCool.input
input
Definition:
PlotPulseshapeFromCool.py:106
TTrainedNetwork::m_nOutput
Int_t m_nOutput
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:70
TTrainedNetwork::~TTrainedNetwork
~TTrainedNetwork()
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.cxx:43
TTrainedNetwork::m_WeightMatrices
std::vector< TMatrixD * > m_WeightMatrices
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:76
TTrainedNetwork::getThresholdVectors
const std::vector< TVectorD * > & getThresholdVectors() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:56
TTrainedNetwork
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:21
TTrainedNetwork::m_ThresholdVectors
std::vector< TVectorD * > m_ThresholdVectors
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:75
TTrainedNetwork::setNewWeights
void setNewWeights(std::vector< TVectorD * > &thresholdVectors, std::vector< TMatrixD * > &weightMatrices)
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.cxx:67
TTrainedNetwork::sigmoid
Double_t sigmoid(Double_t x) const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:85
TTrainedNetwork::normalizeOutput
static const unsigned normalizeOutput
Definition:
Tracking/TrkUtilityPackages/TrkNeuralNetworkUtils/TrkNeuralNetworkUtils/TTrainedNetwork.h:31
TTrainedNetwork::m_ActivationFunction
Int_t m_ActivationFunction
cache of the maximum needed size, not persisitified
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:79
TTrainedNetwork::getIfLinearOutput
bool getIfLinearOutput() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:62
TTrainedNetwork::getnOutput
Int_t getnOutput() const
Definition:
InnerDetector/InDetCalibAlgs/PixelCalibAlgs/NNClusteringCalibration_RunI/TTrainedNetwork.h:50
TTrainedNetwork::linearOutput
static const unsigned linearOutput
Definition:
Tracking/TrkUtilityPackages/TrkNeuralNetworkUtils/TrkNeuralNetworkUtils/TTrainedNetwork.h:30
Generated on Tue Jul 2 2024 21:32:06 for ATLAS Offline Software by
1.8.18