9 #ifndef CLUSTERPARAMSALG_H
10 #define CLUSTERPARAMSALG_H
19 class GeometryUtilities;
43 int SetHits(
const std::vector<util::PxHit>&);
57 template <
typename Stream>
90 bool override_DoGetAverages =
false,
91 bool override_DoGetRoughAxis =
false,
92 bool override_DoGetProfileInfo =
false,
93 bool override_DoRefineStartPointsAndDirection =
false,
94 bool override_DoGetFinalSlope =
false,
95 bool override_DoTrackShowerSep =
false,
96 bool override_DoEndCharge =
false);
230 unsigned int nbins = 10);
245 unsigned int nbins = 10);
278 const std::vector<util::PxHit>&
376 unsigned int fit_first_bin,
377 unsigned int fit_end_bin);
400 template <
typename Stream>
405 stream <<
" <<ClusterParamsAlg::TimeReport>> starts...\n";
411 stream <<
" <<ClusterParamsAlg::TimeReport>> ends...\n";
const util::PxPoint & RoughStartPoint()
void GetRoughAxis(bool override=false)
bool fFinishedGetRoughAxis
void GetFinalSlope(util::GeometryUtilities const &gser, bool override=false)
std::vector< double > fCoarseChargeProfile
void SetRefineDirectionQMin(double qmin)
std::vector< std::string > fTimeRecord_ProcName
void FillPolygon(util::GeometryUtilities const &gser)
util::PxPoint fRoughBeginPoint
double IntegrateFitCharge(util::GeometryUtilities const &gser, double from_length, double to_length, unsigned int fit_first_bin, unsigned int fit_end_bin)
Integrates the charge between two positions in the cluster axis.
void GetProfileInfo(util::GeometryUtilities const &gser, bool override=false)
void setNeuralNetPath(std::string s)
std::vector< util::PxHit > fHitVector
tuple m
now if test mode generate materials, CRT shell, world, gdml header else just generate CRT shell for u...
bool fFinishedGetFinalSlope
double fProfileIntegralBackward
void RefineStartPoints(util::GeometryUtilities const &gser)
bool fFinishedRefineStartPointAndDirection
float MultipleHitDensity(util::GeometryUtilities const &gser)
Returns the number of multiple hits per wire.
const cluster_params & GetParams() const
double fProfileIntegralForward
cluster::cluster_params fParams
bool fFinishedGetEndCharges
void GetEndCharges(util::GeometryUtilities const &gser, bool override_=false)
const std::vector< util::PxHit > & GetHitVector() const
void TimeReport(Stream &stream) const
void TrackShowerSeparation(bool override=false)
std::vector< double > fTimeRecord_ProcTime
double EndCharge(util::GeometryUtilities const &gser, float length=1., unsigned int nbins=10)
Returns the expected charge at the end of the cluster.
bool fFinishedGetProfileInfo
void GetAverages(bool override=false)
std::vector< double > fChargeProfile
void SetMinNHits(size_t nhit)
void RefineDirection(bool override=false)
void RefineStartPointAndDirection(util::GeometryUtilities const &gser, bool override=false)
bool fFinishedRefineDirection
std::vector< double > fChargeProfileNew
util::PxPoint fRoughEndPoint
size_t fMinNHits
Cut value for # hits: below this value clusters are not evaluated.
int SetHits(const std::vector< util::PxHit > &)
bool fFinishedRefineStartPoints
then echo File list $list not found else cat $list while read file do echo $file sed s
const util::PxPoint & RoughEndPoint()
bool fFinishedTrackShowerSep
void FillParams(util::GeometryUtilities const &gser, bool override_DoGetAverages=false, bool override_DoGetRoughAxis=false, bool override_DoGetProfileInfo=false, bool override_DoRefineStartPointsAndDirection=false, bool override_DoGetFinalSlope=false, bool override_DoTrackShowerSep=false, bool override_DoEndCharge=false)
bool fFinishedGetAverages
void SetVerbose(bool yes=true)
static double LinearIntegral(double m, double q, double x1, double x2)
Returns the integral of f(x) = mx + q defined in [x1, x2].
std::string fNeuralNetPath
double StartCharge(util::GeometryUtilities const &gser, float length=1., unsigned int nbins=10)
Returns the expected charge at the beginning of the cluster.
std::vector< double > fChargeCutoffThreshold
float MultipleHitWires()
Returns the number of multiple hits per wire.
void GetFANNVector(std::vector< float > &data)