File indexing completed on 2024-04-06 12:25:53
0001 #ifndef RecoLocalCalo_HGCalRecProducers_ComputeClusterTime_h
0002 #define RecoLocalCalo_HGCalRecProducers_ComputeClusterTime_h
0003
0004
0005 #include <algorithm>
0006 #include <cmath>
0007 #include <numeric>
0008 #include <vector>
0009 #include <string>
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021 namespace hgcalsimclustertime {
0022
0023 class ComputeClusterTime {
0024 public:
0025 ComputeClusterTime(float Xmix, float Xmax, float Cterm, float Aterm);
0026 ComputeClusterTime();
0027
0028 void setParameters(float Xmix, float Xmax, float Cterm, float Aterm);
0029
0030
0031 float timeResolution(float xVal);
0032
0033 float getTimeError(std::string type, float xVal);
0034
0035
0036
0037
0038
0039 std::pair<float, float> fixSizeHighestDensity(std::vector<float>& time,
0040 std::vector<float> weight = std::vector<float>(),
0041 unsigned int minNhits = 3,
0042 float deltaT = 0.210,
0043 float timeWidthBy = 0.5);
0044
0045 private:
0046 float xMin_;
0047 float xMax_;
0048 float cTerm_;
0049 float aTerm_;
0050 };
0051
0052 }
0053
0054 #endif