Belle II Software development
|
Namespace to encapsulate code needed for simulation and reconstrucion of the SVD. More...
Classes | |
class | DefaultWave |
A functor to provide a simple model of APV25 strip response. More... | |
class | EmpiricalDistributionFunction |
Empirical distribution function object is basic for mainpulation of probabilities. More... | |
class | GeoSVDCreator |
The creator for the SVD geometry of the Belle II detector. More... | |
class | NNWaveFitter |
The class uses a neural network to find a probability distribution of arrival times for a sextet of APX25 signal samples. More... | |
class | NNWaveFitTool |
The class holds arrays of bins and bin centers, and a wave generator object containing information on the waveform function. More... | |
class | NoiseMap |
Base Class to represent strip-dependent noise map. More... | |
class | RawCluster |
Class representing a raw cluster candidate during clustering of the SVD. More... | |
class | SensorInfo |
Specific implementation of SensorInfo for SVD Sensors which provides additional sensor specific information. More... | |
class | SimpleClusterCandidate |
Class representing a cluster candidate during simple clustering of the SVD. More... | |
struct | stripInCluster |
structure containing the relevant informations of eachstrip of the cluster More... | |
struct | StripInRawCluster |
structure containing the relevant informations of each strip of the raw cluster More... | |
class | SVDBackgroundModule |
SVD Background module. More... | |
class | SVDBeamBackHitFilterModule |
The SVDBeamBackHitFilter module. More... | |
class | SVDClusterCharge |
Abstract Class representing the SVD cluster charge. More... | |
class | SVDClusterizerDirectModule |
SVD Direct Clusterizer. More... | |
class | SVDClusterizerModule |
The SVD Clusterizer. More... | |
class | SVDClusterPosition |
Abstract Class representing the SVD cluster position. More... | |
class | SVDClusterTime |
Abstract Class representing the SVD cluster time. More... | |
class | SVDCoG3Time |
Derived Class representing the SVD cluster time computed with the CoG3 algorithm. More... | |
class | SVDCoG6Time |
Derived Class representing the SVD cluster time computed with the CoG6 algorithm. More... | |
class | SVDCoGOnlyPosition |
Derived Class representing the SVD cluster position computed with the CoGOnly algorithm. More... | |
class | SVDDatabaseTestModule |
Return the calibration results for the noises and the constants measured during the svd local runs (charge, ADC pulse, peaking time, pulse width). More... | |
class | SVDDigitizerModule |
The SVD Digitizer module. More... | |
class | SVDDQMDoseModule |
The SVD dose-monitoring DQM module. More... | |
class | SVDDQMInjectionModule |
The SVD Occupancy after Injection DQM module. More... | |
class | SVDELS3Charge |
Derived Class representing the SVD cluster charge computed with the ELS3 algorithm. More... | |
class | SVDELS3Time |
Derived Class representing the SVD cluster time computed with the ELS3 algorithm. More... | |
class | SVDMaxSampleCharge |
Derived Class representing the SVD cluster charge computed summing the max sample of each strip. More... | |
class | SVDMaxSumAlgorithm |
Class implementing the MaxSum algorithm. More... | |
class | SVDMissingAPVsClusterCreatorModule |
SVDMissingAPVsClusterCreatorModule: The SVD MissingAPVsClusterCreator. More... | |
class | SVDNNClusterizerModule |
SVD NN Clusterizer. More... | |
class | SVDNNShapeReconstructorModule |
The SVD NNShapeReconstructor. More... | |
class | SVDOldDefaultPosition |
Derived Class representing the SVD cluster position computed with the old algorithm (up to release-05). More... | |
class | SVDPackerModule |
SVDPackerModule: The SVD Raw Hits Creator. More... | |
class | SVDRecoChargeFactory |
Cluster Charge Factory Class. More... | |
class | SVDRecoDigitCreatorModule |
The SVD RecoDigit Creator. More... | |
class | SVDReconstructionBase |
Class to check whether the reconstruction algorithms are available or not. More... | |
class | SVDRecoPositionFactory |
Cluster Position Factory Class. More... | |
class | SVDRecoTimeFactory |
Cluster Time Factory Class. More... | |
class | SVDShaperDigitSorterModule |
The SVDShaperDigitSorter module. More... | |
class | SVDSimpleClusterizerModule |
SVDSimpleClusterizerModule: The SVD SimpleClusterizer. More... | |
class | SVDSumSamplesCharge |
Derived Class representing the SVD cluster charge computed summing the samples of each strip. More... | |
class | SVDUnpackerModule |
SVDUnpackerModule: The SVD Raw Hits Decoder. More... | |
class | SVDWaveform |
The SVD waveform class. More... | |
class | TauEncoder |
Encoder/decoder for neural network tau values. More... | |
class | WaveFitter |
Waveform fitter class. More... | |
class | WaveGenerator |
Waveform generator This is a functor to calculate APV samples from waveform. More... | |
Typedefs | |
typedef std::map< short int, SVDWaveform > | StripWaveforms |
Map of all channels' waveforms in one sensor side. | |
typedef std::pair< StripWaveforms, StripWaveforms > | SensorWaveforms |
Waveforms of u- and v- channels in one sensor. | |
typedef std::map< VxdID, SensorWaveforms > | Waveforms |
Map of all waveforms in all sensors. | |
typedef std::vector< double > | nnFitterBinData |
Vector of values defined for bins, such as bin times or bin probabilities. | |
typedef std::vector< double > | nnFitterBins |
Vector of bin edges, nnFitterBinData.size() + 1. | |
typedef VXD::SensitiveDetector< SVDSimHit, SVDTrueHit > | SensitiveDetector |
The SVD Sensitive Detector class. | |
typedef double | apvSampleBaseType |
Vector of input samples in float form. | |
typedef std::array< apvSampleBaseType, nAPVSamples > | apvSamples |
vector od apvSample BaseType objects | |
typedef std::function< double(double)> | WaveformShape |
WaveformShape type. | |
Functions | |
double | w_expo (double t) |
Gamma waveform shape, x.exp(-x) This is only historically useful. | |
double | w_poly3 (double t) |
Polynomial waveform shape, x. | |
double | w_betaprime (double t) |
Beta-prime waveform shape, x^alpha/(1+x)^beta. | |
double | w_adjacentU (double t) |
Adjacent-channel waveform U-side. | |
double | w_adjacentV (double t) |
Adjacent-channel waveform V-side. | |
template<typename T > | |
void | zeroSuppress (T &a, double thr) |
pass zero suppression | |
template<typename T > | |
bool | pass3Samples (const T &a, double thr) |
pass 3-samples | |
double | tau_raw2real (double raw_tau) |
Convert Hao's raw tau (integral, in latency units) to correct betaprime scale. | |
TEST (NNTimeFitter, DISABLED_CompareNetworkCoefficient) | |
Compare NN fitter parameter dump from Python with internal data representation in C++ to verify that the network coefficients were transferred without a significant loss of accuracy. | |
TEST (NNTimeFitter, DISABLED_CompareFits) | |
Read a sample of fits from the Python NN suite and check that the C++ NN fitter produces the same results. | |
TEST (SVDModeByte, Constructor) | |
Check that both constructors yield the same result. | |
TEST (SVDModeByte, getters) | |
Check getters and setters. | |
TEST (SVDRecoDigit, ConstructEmpty) | |
Check empty object creation and data getters. | |
TEST (SVDRecoDigit, ConstructFromContainer) | |
Check object creation and data getters using a stl container of probabilities. | |
TEST (SVDRecoDigit, ToString) | |
Check object creation and data getters using a stl container of probabilities. | |
TEST (SVDRecoTimeBase, ConstructEmpty) | |
Check empty object creation and data getters. | |
TEST (SVDRecoTimeBase, ConstructFromContainer) | |
Check object creation and data getters. | |
TEST (SVDRecoTimeBase, toString) | |
Check object printout. | |
TEST (SVDShaperDigit, ConstructEmpty) | |
Check empty object creation and data getters. | |
TEST (SVDShaperDigit, ConstructFromContainer) | |
Check object creation and data getters using a stl container of samples. | |
TEST (SVDShaperDigit, ConstructFromCArray) | |
Check object creation and data getters using a c-array of samples. | |
TEST (SVDShaperDigit, ConstructDefaultTimeMode) | |
Check standard object creation without FADC time and mode information. | |
TEST (SVDShaperDigit, SampleTrimming) | |
test sample trimming | |
TEST (SVDShaperDigit, TrimmingFunction) | |
test sample trimming | |
TEST (SVDWaveform, Getters) | |
Check object creation and simple object getters. | |
TEST (SVDWaveform, Constructors) | |
Check the different constructors. | |
TEST (SVDWaveform, Assignment) | |
Check assignment operators. | |
TEST (SVDWaveform, Waveform) | |
Check the waveform values and relations. | |
TEST (SVDWaveform, toString) | |
Check the waveform string representation. | |
TEST (TNiel, output) | |
Check correct functioning of the class. | |
Variables | |
geometry::CreatorFactory< GeoSVDCreator > | GeoSVDFactory ("SVDCreator") |
Register the creator. | |
const std::size_t | nAPVSamples = 6 |
Number of APV samples. | |
const double | dt_APV = 31.44 * Unit::ns |
APV sampling time. | |
const apvSamples | apvTimeBase |
APV time base - times for the 6 signals. | |
Namespace to encapsulate code needed for simulation and reconstrucion of the SVD.
typedef double apvSampleBaseType |
Vector of input samples in float form.
Definition at line 38 of file SVDSimulationTools.h.
typedef std::array<apvSampleBaseType, nAPVSamples> apvSamples |
vector od apvSample BaseType objects
Definition at line 39 of file SVDSimulationTools.h.
typedef std::vector<double> nnFitterBinData |
Vector of values defined for bins, such as bin times or bin probabilities.
Definition at line 30 of file NNWaveFitTool.h.
typedef std::vector<double> nnFitterBins |
Vector of bin edges, nnFitterBinData.size() + 1.
Definition at line 33 of file NNWaveFitTool.h.
The SVD Sensitive Detector class.
Definition at line 24 of file SensitiveDetector.h.
typedef std::pair<StripWaveforms, StripWaveforms> SensorWaveforms |
Waveforms of u- and v- channels in one sensor.
Definition at line 44 of file SVDDigitizerModule.h.
typedef std::map<short int, SVDWaveform> StripWaveforms |
Map of all channels' waveforms in one sensor side.
Definition at line 41 of file SVDDigitizerModule.h.
typedef std::map<VxdID, SensorWaveforms> Waveforms |
Map of all waveforms in all sensors.
Definition at line 47 of file SVDDigitizerModule.h.
typedef std::function<double(double)> WaveformShape |
WaveformShape type.
This is the type for a naked waveform function, giving a single value for a properly scaled arguemnt. The functions are scaled to 1.0 at mode, location (shift) 0.0, and scale 1.0.
Definition at line 54 of file SVDSimulationTools.h.
|
inline |
pass 3-samples
Definition at line 193 of file SVDSimulationTools.h.
|
inline |
Convert Hao's raw tau (integral, in latency units) to correct betaprime scale.
Includes scaling and fit adjustmenta
Definition at line 205 of file SVDSimulationTools.h.
TEST | ( | NNTimeFitter | , |
DISABLED_CompareFits | |||
) |
Read a sample of fits from the Python NN suite and check that the C++ NN fitter produces the same results.
This is the result of select_t0_fits.columns: Index([ 'test', 'amplitude', 't0', 'tau', 'sigma', 's1', 's2', 's3', 's4', 's5', 's6', 'normed_tau', 't0_bin', 'abin', 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 'a_fit', 'a_sigma', 'chi2_ndf', 't_fit', 't_sigma', 't_true', 'tau', 'a_true', 't_bin', 'a_bin', 't_diff','a_diff'], dtype='object') Columns labeled by numerals contain probabilities.
Definition at line 53 of file NNFitterTest.cc.
TEST | ( | NNTimeFitter | , |
DISABLED_CompareNetworkCoefficient | |||
) |
Compare NN fitter parameter dump from Python with internal data representation in C++ to verify that the network coefficients were transferred without a significant loss of accuracy.
FIXME (Oct 12,2017: This test fails on buildbot, but ran successfully on all machines I tried.
Definition at line 35 of file NNFitterTest.cc.
TEST | ( | SVDModeByte | , |
Constructor | |||
) |
Check that both constructors yield the same result.
Definition at line 23 of file SVDModeByte.cc.
TEST | ( | SVDModeByte | , |
getters | |||
) |
Check getters and setters.
Definition at line 46 of file SVDModeByte.cc.
TEST | ( | SVDRecoDigit | , |
ConstructEmpty | |||
) |
Check empty object creation and data getters.
Definition at line 26 of file SVDRecoDigit.cc.
TEST | ( | SVDRecoDigit | , |
ConstructFromContainer | |||
) |
Check object creation and data getters using a stl container of probabilities.
Definition at line 47 of file SVDRecoDigit.cc.
TEST | ( | SVDRecoDigit | , |
ToString | |||
) |
Check object creation and data getters using a stl container of probabilities.
Definition at line 81 of file SVDRecoDigit.cc.
TEST | ( | SVDRecoTimeBase | , |
ConstructEmpty | |||
) |
Check empty object creation and data getters.
Definition at line 25 of file SVDRecoTimeBase.cc.
TEST | ( | SVDRecoTimeBase | , |
ConstructFromContainer | |||
) |
Check object creation and data getters.
Definition at line 41 of file SVDRecoTimeBase.cc.
TEST | ( | SVDRecoTimeBase | , |
toString | |||
) |
Check object printout.
Definition at line 58 of file SVDRecoTimeBase.cc.
TEST | ( | SVDShaperDigit | , |
ConstructDefaultTimeMode | |||
) |
Check standard object creation without FADC time and mode information.
Definition at line 90 of file SVDShaperDigit.cc.
TEST | ( | SVDShaperDigit | , |
ConstructEmpty | |||
) |
Check empty object creation and data getters.
Definition at line 26 of file SVDShaperDigit.cc.
TEST | ( | SVDShaperDigit | , |
ConstructFromCArray | |||
) |
Check object creation and data getters using a c-array of samples.
Definition at line 66 of file SVDShaperDigit.cc.
TEST | ( | SVDShaperDigit | , |
ConstructFromContainer | |||
) |
Check object creation and data getters using a stl container of samples.
Definition at line 43 of file SVDShaperDigit.cc.
TEST | ( | SVDShaperDigit | , |
SampleTrimming | |||
) |
test sample trimming
Definition at line 103 of file SVDShaperDigit.cc.
TEST | ( | SVDShaperDigit | , |
TrimmingFunction | |||
) |
test sample trimming
Definition at line 124 of file SVDShaperDigit.cc.
TEST | ( | SVDWaveform | , |
Assignment | |||
) |
Check assignment operators.
Definition at line 94 of file SVDWaveform.cc.
TEST | ( | SVDWaveform | , |
Constructors | |||
) |
Check the different constructors.
Definition at line 59 of file SVDWaveform.cc.
TEST | ( | SVDWaveform | , |
Getters | |||
) |
Check object creation and simple object getters.
Definition at line 27 of file SVDWaveform.cc.
TEST | ( | SVDWaveform | , |
toString | |||
) |
Check the waveform string representation.
Definition at line 156 of file SVDWaveform.cc.
TEST | ( | SVDWaveform | , |
Waveform | |||
) |
Check the waveform values and relations.
Definition at line 127 of file SVDWaveform.cc.
TEST | ( | TNiel | , |
output | |||
) |
Check correct functioning of the class.
Definition at line 25 of file niel_fun.cc.
|
inline |
Adjacent-channel waveform U-side.
The exact parametrisation is to be determined.
t | Properly scaled time, (t - t0)/tau. |
Definition at line 99 of file SVDSimulationTools.h.
|
inline |
Adjacent-channel waveform V-side.
The exact parametrisation is to be determined.
t | Properly scaled time, (t - t0)/tau. |
Definition at line 125 of file SVDSimulationTools.h.
|
inline |
Beta-prime waveform shape, x^alpha/(1+x)^beta.
This is the function for general use.
t | Properly scaled time, (t - t0)/tau. |
Definition at line 86 of file SVDSimulationTools.h.
|
inline |
Gamma waveform shape, x.exp(-x) This is only historically useful.
Use beta-prime instead.
t | properly scaled time, (t-t0)/tau |
Definition at line 61 of file SVDSimulationTools.h.
|
inline |
Polynomial waveform shape, x.
(1-x)^2 This is used in signal calibration in SVD hardware tests. Do not use for signal simulation.
t | properly scaled time, (t-t0)/tau |
Definition at line 73 of file SVDSimulationTools.h.
|
inline |
pass zero suppression
Definition at line 182 of file SVDSimulationTools.h.
const apvSamples apvTimeBase |
APV time base - times for the 6 signals.
Definition at line 42 of file SVDSimulationTools.h.
const double dt_APV = 31.44 * Unit::ns |
APV sampling time.
Definition at line 35 of file SVDSimulationTools.h.
const std::size_t nAPVSamples = 6 |
Number of APV samples.
Definition at line 32 of file SVDSimulationTools.h.