CTPPSDiamondLocalTrackFitter::CTPPSDiamondLocalTrackFitter |
( |
const edm::ParameterSet & |
iConfig | ) |
|
|
explicit |
Definition at line 44 of file CTPPSDiamondLocalTrackFitter.cc.
49 produces<edm::DetSetVector<CTPPSDiamondLocalTrack> >();
T getParameter(std::string const &) const
CTPPSDiamondTrackRecognition trk_algo_45_
edm::EDGetTokenT< edm::DetSetVector< CTPPSDiamondRecHit > > recHitsToken_
CTPPSDiamondTrackRecognition trk_algo_56_
CTPPSDiamondLocalTrackFitter::~CTPPSDiamondLocalTrackFitter |
( |
| ) |
|
|
override |
Definition at line 100 of file CTPPSDiamondLocalTrackFitter.cc.
References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), DEFINE_FWK_MODULE, AlCaHLTBitMon_QueryRunRegistry::string, and funct::true.
104 ->setComment(
"input rechits collection to retrieve" );
107 trackingAlgoParams.
add<
double>(
"threshold", 1.5 )
108 ->setComment(
"minimal number of rechits to be observed before launching the track recognition algorithm" );
109 trackingAlgoParams.
add<
double>(
"thresholdFromMaximum", 0.5 );
110 trackingAlgoParams.
add<
double>(
"resolution", 0.01 )
111 ->setComment(
"spatial resolution on the horizontal coordinate (in mm)" );
112 trackingAlgoParams.
add<
double>(
"sigma", 0.1 );
113 trackingAlgoParams.
add<
double>(
"startFromX", -0.5 )
114 ->setComment(
"starting horizontal coordinate of rechits for the track recognition" );
115 trackingAlgoParams.
add<
double>(
"stopAtX", 19.5 )
116 ->setComment(
"ending horizontal coordinate of rechits for the track recognition" );
117 trackingAlgoParams.
add<
double>(
"tolerance", 0.1 )
118 ->setComment(
"tolerance used for checking if the track contains certain hit" );
120 trackingAlgoParams.
add<
std::string>(
"pixelEfficiencyFunction",
"(x>[0]-0.5*[1])*(x<[0]+0.5*[1])+0*[2]" )
121 ->setComment(
"efficiency function for single pixel\n" 122 "can be defined as:\n" 123 " * Precise: (TMath::Erf((x-[0]+0.5*[1])/([2]/4)+2)+1)*TMath::Erfc((x-[0]-0.5*[1])/([2]/4)-2)/4\n" 124 " * Fast: (x>[0]-0.5*[1])*(x<[0]+0.5*[1])+((x-[0]+0.5*[1]+[2])/[2])*(x>[0]-0.5*[1]-[2])*(x<[0]-0.5*[1])+(2-(x-[0]-0.5*[1]+[2])/[2])*(x>[0]+0.5*[1])*(x<[0]+0.5*[1]+[2])\n" 125 " * Legacy: (1/(1+exp(-(x-[0]+0.5*[1])/[2])))*(1/(1+exp((x-[0]-0.5*[1])/[2])))\n" 126 " * Default (sigma ignored): (x>[0]-0.5*[1])*(x<[0]+0.5*[1])+0*[2]\n" 128 " [0]: centre of pad\n" 129 " [1]: width of pad\n" 130 " [2]: sigma: distance between efficiency ~100 -> 0 outside width" );
132 trackingAlgoParams.
add<
double>(
"yPosition", 0.0 )
133 ->setComment(
"vertical offset of the outcoming track centre" );
134 trackingAlgoParams.
add<
double>(
"yWidth", 0.0 )
135 ->setComment(
"vertical track width" );
136 trackingAlgoParams.
add<
bool>(
"excludeSingleEdgeHits",
true )
137 ->setComment(
"exclude rechits with missing leading/trailing edge" );
140 ->setComment(
"list of parameters associated to the track recognition algorithm" );
142 descr.
add(
"ctppsDiamondLocalTracks", desc );
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition at line 56 of file CTPPSDiamondLocalTrackFitter.cc.
References CTPPSDiamondTrackRecognition::addHit(), CTPPSDiamondTrackRecognition::clear(), edm::Event::getByToken(), eostools::move(), CTPPSDiamondTrackRecognition::produceTracks(), edm::Event::put(), recHitsToken_, CTPPSDiamondRecHit::TIMESLICE_WITHOUT_LEADING, trk_algo_45_, and trk_algo_56_.
58 auto pOut = std::make_unique<edm::DetSetVector<CTPPSDiamondLocalTrack> >();
65 pOut->find_or_insert( id_45 );
72 for (
const auto& vec : *recHits ) {
74 for (
const auto&
hit : vec ) {
78 switch ( detid.arm() ) {
82 edm::LogWarning(
"CTPPSDiamondLocalTrackFitter") <<
"Invalid arm for rechit: " << detid.arm();
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
CTPPSDiamondTrackRecognition trk_algo_45_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::EDGetTokenT< edm::DetSetVector< CTPPSDiamondRecHit > > recHitsToken_
int produceTracks(edm::DetSet< CTPPSDiamondLocalTrack > &tracks) override
Produce a collection of tracks for the current station, given its hits collection.
CTPPSDiamondTrackRecognition trk_algo_56_
static constexpr int TIMESLICE_WITHOUT_LEADING
void addHit(const CTPPSDiamondRecHit &recHit) override
Feed a new hit to the tracks recognition algorithm.
Detector ID class for CTPPS Timing Diamond detectors. Bits [19:31] : Assigend in CTPPSDetId Calss Bit...
void clear() override
Reset internal state of a class instance.