Definition at line 24 of file BaselineMostProbAve_tool.cc.
icarus_tool::BaselineMostProbAve::BaselineMostProbAve |
( |
const fhicl::ParameterSet & |
pset | ) |
|
|
explicit |
icarus_tool::BaselineMostProbAve::~BaselineMostProbAve |
( |
| ) |
|
void icarus_tool::BaselineMostProbAve::configure |
( |
const fhicl::ParameterSet & |
pset | ) |
|
|
overridevirtual |
float icarus_tool::BaselineMostProbAve::GetBaseline |
( |
const std::vector< float > & |
holder, |
|
|
raw::ChannelID_t |
channel, |
|
|
size_t |
roiStart, |
|
|
size_t |
roiLen |
|
) |
| const |
|
overridevirtual |
Implements icarus_tool::IBaseline.
Definition at line 69 of file BaselineMostProbAve_tool.cc.
79 float deconNoise = 1.26491 *
fSignalShaping->GetDeconNoise(channel);
80 int binRange = std::max(1,
int(std::round(deconNoise)));
82 size_t roiStop = roiStart + roiLen;
85 std::pair<float,int> baseFront =
GetBaseline(holder, binRange, roiStart, roiStart + halfLen);
86 std::pair<float,int> baseBack =
GetBaseline(holder, binRange, roiStop - halfLen, roiStop );
91 if (
std::abs(baseFront.first - baseBack.first) > 1.5 * deconNoise)
94 if (baseFront.second < 3 * baseBack.second / 2) base = baseFront.first;
95 else base = baseBack.first;
100 float rangeFront = baseFront.second;
101 float rangeBack = baseBack.second;
103 base = (baseFront.first/rangeFront + baseBack.first/rangeBack)*(rangeFront*rangeBack)/(rangeFront+rangeBack);
std::pair< float, int > icarus_tool::BaselineMostProbAve::GetBaseline |
( |
const std::vector< float > & |
holder, |
|
|
int |
binRange, |
|
|
size_t |
roiStart, |
|
|
size_t |
roiStop |
|
) |
| const |
|
private |
Definition at line 112 of file BaselineMostProbAve_tool.cc.
117 std::pair<double,int> base(0.,1);
120 if (roiStop > roiStart)
125 std::copy(holder.begin() + roiStart,holder.begin() + roiStop,temp.begin());
127 fWaveformTool.getTruncatedMean(temp, base.first, nTrunc, base.second);
std::vector< SigProcPrecision > TimeVec
void icarus_tool::BaselineMostProbAve::outputHistograms |
( |
art::TFileDirectory & |
histDir | ) |
const |
|
overridevirtual |
size_t icarus_tool::BaselineMostProbAve::fMaxROILength |
|
private |
icarus_signal_processing::WaveformTools<double> icarus_tool::BaselineMostProbAve::fWaveformTool |
|
private |
The documentation for this class was generated from the following file: