10#include <calibration/CalibrationAlgorithm.h>
11#include <vxd/dataobjects/VxdID.h>
57 double FitLandau(std::vector<double>& signals);
Base class for calibration algorithms.
EResult
The result of calibration.
Class implementing the PXD median cluster charge calibration algorithm.
double EstimateCharge(VxdID sensorID, unsigned short uBin, unsigned short vBin)
Estimate median charge form collected clusters on part of PXD.
double FitLandau(std::vector< double > &signals)
calculate MPV of unsorted signal vector using a Landau fit
PXDChargeCalibrationAlgorithm()
Constructor set the prefix to PXDChargeCalibrationAlgorithm.
int minClusters
Minimum number of collected clusters for estimating median charge.
float noiseSigma
Artificial noise sigma for smearing cluster charge.
virtual EResult calibrate() override
Run algo on data.
int strategy
strategy to used for gain calibration, 0 for medians, 1 for landau fit
float safetyFactor
Safety factor for determining whether the collected number of clusters is enough.
double CalculateMedian(std::vector< double > &signals)
Calculate a median from unsorted signal vector. The input vector gets sorted.
bool forceContinue
Force continue in low statistics runs instead of returning c_NotEnoughData.
Class to uniquely identify a any structure of the PXD and SVD.
Abstract base class for different kinds of events.