#include <CSCHitFromStripOnly.h>
Public Types | |
typedef std::array< CSCStripData, 100 > | PulseHeightMap |
Public Member Functions | |
CSCHitFromStripOnly (const edm::ParameterSet &ps) | |
bool | ganged () |
std::vector< CSCStripHit > | runStrip (const CSCDetId &id, const CSCLayer *layer, const CSCStripDigiCollection::Range &rstripd) |
void | setConditions (const CSCRecoConditions *reco) |
void | setGanged (bool ig) |
~CSCHitFromStripOnly () | |
Private Member Functions | |
void | fillPulseHeights (const CSCStripDigiCollection::Range &rstripd) |
Store SCA pulseheight information from strips in digis of one layer. More... | |
float | findHitOnStripPosition (const std::vector< CSCStripHitData > &data, const int ¢erStrip) |
Find position of hit in strip cluster in terms of strip #. More... | |
void | findMaxima (const CSCDetId &id) |
Find local maxima. More... | |
bool | isDeadStrip (const CSCDetId &id, int centralStrip, int nstrips) |
Is the strip 'bad'? More... | |
bool | isNearDeadStrip (const CSCDetId &id, int centralStrip, int nstrips) |
Is either neighbour 'bad'? More... | |
bool | isPeakOK (int iStrip, float heightCluster) |
float | makeCluster (int centerStrip) |
Make clusters using local maxima. More... | |
CSCStripHitData | makeStripData (int centerStrip, int offset) |
Private Attributes | |
CSCPedestalChoice * | calcped_ |
int | clusterSize |
float | gainWeight [80] |
bool | ganged_ |
CSCDetId | id_ |
const CSCLayer * | layer_ |
unsigned | nstrips_ |
const CSCRecoConditions * | recoConditions_ |
std::vector< float > | strips_adc |
std::vector< float > | strips_adcRaw |
std::vector< int > | theClosestMaximum |
std::vector< int > | theConsecutiveStrips |
std::vector< int > | theMaxima |
PulseHeightMap | thePulseHeightMap |
std::vector< int > | theStrips |
float | theThresholdForAPeak |
float | theThresholdForCluster |
int | tmax_cluster |
bool | useCalib |
Static Private Attributes | |
static const int | theClusterSize = 3 |
below)
Search for strip with ADC output exceeding theThresholdForAPeak. For each of these strips, build a cluster of strip of size theClusterSize (typically 5 strips). Finally, make a Strip Hit out of these clusters by finding the center-of-mass position of the hit The DetId, strip hit position, and peaking time are stored in a CSCStripHit collection.
Be careful with the ME_1/a chambers: the 48 strips are ganged into 16 channels, Each channel contains signals from three strips, each separated by 16 strips from the next.
Definition at line 34 of file CSCHitFromStripOnly.h.
typedef std::array<CSCStripData,100> CSCHitFromStripOnly::PulseHeightMap |
Definition at line 39 of file CSCHitFromStripOnly.h.
|
explicit |
Definition at line 22 of file CSCHitFromStripOnly.cc.
References calcped_, edm::ParameterSet::getParameter(), LogTrace, theThresholdForAPeak, theThresholdForCluster, and useCalib.
CSCHitFromStripOnly::~CSCHitFromStripOnly | ( | ) |
|
private |
Store SCA pulseheight information from strips in digis of one layer.
Definition at line 360 of file CSCHitFromStripOnly.cc.
References calcped_, popcon2dropbox::copy(), gainWeight, ganged(), id_, CSCPedestalChoice::pedestal(), recoConditions_, thePulseHeightMap, tmax, and useCalib.
Referenced by runStrip(), and setGanged().
|
private |
Find position of hit in strip cluster in terms of strip #.
Definition at line 510 of file CSCHitFromStripOnly.cc.
References popcon2dropbox::copy(), mps_fire::i, LogTrace, digi_MixPreMix_cfi::strip, strips_adc, strips_adcRaw, and w.
Referenced by makeCluster(), and setGanged().
|
private |
Find local maxima.
Definition at line 424 of file CSCHitFromStripOnly.cc.
References mps_fire::i, isDeadStrip(), isPeakOK(), gen::k, checklumidiff::l, nstrips_, theClosestMaximum, theConsecutiveStrips, theMaxima, and thePulseHeightMap.
Referenced by runStrip(), and setGanged().
|
inline |
Definition at line 51 of file CSCHitFromStripOnly.h.
References ganged_.
Referenced by fillPulseHeights(), and runStrip().
|
private |
Is the strip 'bad'?
Definition at line 568 of file CSCHitFromStripOnly.cc.
References CSCRecoConditions::badStrip(), recoConditions_, and theClusterSize.
Referenced by findMaxima(), runStrip(), and setGanged().
|
private |
Is either neighbour 'bad'?
Definition at line 560 of file CSCHitFromStripOnly.cc.
References CSCRecoConditions::nearBadStrip(), and recoConditions_.
Referenced by setGanged().
|
private |
Definition at line 496 of file CSCHitFromStripOnly.cc.
References mps_fire::i, thePulseHeightMap, theThresholdForAPeak, and theThresholdForCluster.
Referenced by findMaxima(), and setGanged().
|
private |
Make clusters using local maxima.
Definition at line 218 of file CSCHitFromStripOnly.cc.
References clusterSize, data, findHitOnStripPosition(), mps_fire::i, LogTrace, makeStripData(), nstrips_, theClusterSize, and theStrips.
Referenced by runStrip(), and setGanged().
|
private |
makeStripData
Definition at line 252 of file CSCHitFromStripOnly.cc.
References ecalMGPA::adc(), begin, clusterSize, popcon2dropbox::copy(), spr::find(), mps_fire::i, gen::k, LogTrace, min(), PFRecoTauDiscriminationByIsolation_cfi::offset, Validation_hcalonly_cfi::sign, theMaxima, thePulseHeightMap, tmax, and tmax_cluster.
Referenced by makeCluster(), and setGanged().
std::vector< CSCStripHit > CSCHitFromStripOnly::runStrip | ( | const CSCDetId & | id, |
const CSCLayer * | layer, | ||
const CSCStripDigiCollection::Range & | rstripd | ||
) |
fact (20.10.09);
L1A (Begin looping) Attempt to redefine theStrips, to encode L1A phase bits
L1A (end Looping)
L1A
Print statement to check StripHit content w/ LA1
Definition at line 61 of file CSCHitFromStripOnly.cc.
References funct::abs(), CSCLayer::chamber(), clusterSize, fillPulseHeights(), findMaxima(), gainWeight, ganged(), CSCChamberSpecs::gangedStrips(), hcalTTPDigis_cfi::id, id_, createfilelist::int, isDeadStrip(), layer_, LogTrace, makeCluster(), CSCChamberSpecs::nStrips(), nstrips_, recoConditions_, CSCDetId::ring(), setGanged(), CSCChamber::specs(), strips_adc, strips_adcRaw, CSCRecoConditions::stripWeights(), theClosestMaximum, theClusterSize, theConsecutiveStrips, theMaxima, theStrips, tmax_cluster, and useCalib.
Referenced by CSCRecHitDBuilder::build().
|
inline |
Definition at line 47 of file CSCHitFromStripOnly.h.
References trackingPlots::reco, and recoConditions_.
Referenced by CSCRecHitDBuilder::setConditions().
|
inline |
Definition at line 52 of file CSCHitFromStripOnly.h.
References data, fillPulseHeights(), findHitOnStripPosition(), findMaxima(), ganged_, isDeadStrip(), isNearDeadStrip(), isPeakOK(), makeCluster(), makeStripData(), and PFRecoTauDiscriminationByIsolation_cfi::offset.
Referenced by runStrip().
|
private |
Definition at line 92 of file CSCHitFromStripOnly.h.
Referenced by CSCHitFromStripOnly(), fillPulseHeights(), and ~CSCHitFromStripOnly().
|
private |
Definition at line 110 of file CSCHitFromStripOnly.h.
Referenced by makeCluster(), makeStripData(), and runStrip().
|
private |
Definition at line 89 of file CSCHitFromStripOnly.h.
Referenced by fillPulseHeights(), and runStrip().
|
private |
Definition at line 115 of file CSCHitFromStripOnly.h.
Referenced by ganged(), and setGanged().
|
private |
Definition at line 83 of file CSCHitFromStripOnly.h.
Referenced by fillPulseHeights(), and runStrip().
|
private |
Definition at line 84 of file CSCHitFromStripOnly.h.
Referenced by runStrip().
|
private |
Definition at line 87 of file CSCHitFromStripOnly.h.
Referenced by findMaxima(), makeCluster(), and runStrip().
|
private |
Definition at line 85 of file CSCHitFromStripOnly.h.
Referenced by fillPulseHeights(), isDeadStrip(), isNearDeadStrip(), runStrip(), and setConditions().
|
private |
Definition at line 111 of file CSCHitFromStripOnly.h.
Referenced by findHitOnStripPosition(), and runStrip().
|
private |
Definition at line 112 of file CSCHitFromStripOnly.h.
Referenced by findHitOnStripPosition(), and runStrip().
|
private |
Definition at line 106 of file CSCHitFromStripOnly.h.
Referenced by findMaxima(), and runStrip().
|
staticprivate |
Definition at line 96 of file CSCHitFromStripOnly.h.
Referenced by isDeadStrip(), makeCluster(), and runStrip().
|
private |
Definition at line 105 of file CSCHitFromStripOnly.h.
Referenced by findMaxima(), and runStrip().
|
private |
Definition at line 104 of file CSCHitFromStripOnly.h.
Referenced by findMaxima(), makeStripData(), and runStrip().
|
private |
Definition at line 102 of file CSCHitFromStripOnly.h.
Referenced by fillPulseHeights(), findMaxima(), isPeakOK(), and makeStripData().
|
private |
Definition at line 113 of file CSCHitFromStripOnly.h.
Referenced by makeCluster(), and runStrip().
|
private |
Definition at line 97 of file CSCHitFromStripOnly.h.
Referenced by CSCHitFromStripOnly(), and isPeakOK().
|
private |
Definition at line 98 of file CSCHitFromStripOnly.h.
Referenced by CSCHitFromStripOnly(), and isPeakOK().
|
private |
Definition at line 109 of file CSCHitFromStripOnly.h.
Referenced by makeStripData(), and runStrip().
|
private |
Definition at line 95 of file CSCHitFromStripOnly.h.
Referenced by CSCHitFromStripOnly(), fillPulseHeights(), and runStrip().