Belle II Software development
Chi2FacetRelationFilter.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10#include <tracking/trackFindingCDC/filters/facetRelation/BaseFacetRelationFilter.h>
11
12#include <cdc/topology/ISuperLayer.h>
13
14#include <array>
15#include <vector>
16#include <string>
17
18namespace Belle2 {
23 namespace TrackingUtilities {
24 class CDCFacet;
25 }
26 namespace TrackFindingCDC {
27
30
31 private:
34
35 public:
38
40 Chi2FacetRelationFilter(double chi2Cut, double penaltyWidth);
41
42 public:
44 void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) override;
45
47 void initialize() final;
48
49 public:
51 TrackingUtilities::Weight operator()(const TrackingUtilities::CDCFacet& fromFacet,
52 const TrackingUtilities::CDCFacet& toFacet) final;
53
54 private: // Parameters
56 std::vector<double> m_param_chi2CutByISuperLayer{130.0}; // first guess was 350;
57
59 double m_param_penaltyFactor = 200.0 / 130.0; // first guess was 800 / 350;
60
61 private: // Cached values
63 std::array<double, CDC::ISuperLayerUtil::c_N> m_chi2CutByISuperLayer{};
64
66 std::array<double, CDC::ISuperLayerUtil::c_N> m_penaltyWidthByISuperLayer{};
67 };
68 }
70}
The Module parameter list class.
std::vector< double > m_param_chi2CutByISuperLayer
Parameter : The chi2 cut values distinguished by superlayer.
double m_param_penaltyFactor
Parameter : The chi2 cut values distinguished by superlayer.
void initialize() final
Initialise the parameter caches before the processing starts.
Chi2FacetRelationFilter()
Constructor with the default chi2 cut value and width parameter.
std::array< double, CDC::ISuperLayerUtil::c_N > m_penaltyWidthByISuperLayer
Memory for the chi2 cut values distinguished by superlayer.
BaseFacetRelationFilter Super
Type of the super class.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the set of parameters of the filter to the module parameter list.
std::array< double, CDC::ISuperLayerUtil::c_N > m_chi2CutByISuperLayer
Memory for the chi2 cut values distinguished by superlayer.
Class representing a triple of neighboring oriented wire with additional trajectory information.
Definition CDCFacet.h:32
STL class.
Abstract base class for different kinds of events.
STL namespace.