![]() |
ATLAS Offline Software
|
Reconstructs Tile digitized pulses (ie, computes amplitude, time and pedestal) as a linear combination of the samples. More...
#include <TileRawChannelBuilderOpt2Filter.h>
Public Member Functions | |
| TileRawChannelBuilderOpt2Filter (const std::string &type, const std::string &name, const IInterface *parent) | |
| Constructor. | |
| ~TileRawChannelBuilderOpt2Filter () | |
| Destructor. | |
| virtual StatusCode | initialize () |
| Initialize method. | |
| virtual StatusCode | finalize () |
| Finalize method. | |
| virtual TileRawChannel * | rawChannel (const TileDigits *digits, const EventContext &ctx) |
| Builder virtual method to be implemented by subclasses. | |
| virtual StatusCode | createContainer (const EventContext &ctx) |
| Create container in SG with name given by parameter (m_rawChannelContainerKey) | |
| virtual StatusCode | commitContainer (const EventContext &ctx) |
| Commit RawChannelContiner in SG and make const. | |
| void | initLog (const EventContext &ctx) |
| void | endLog () |
| StatusCode | build (const TileDigitsCollection *collection, const EventContext &ctx) |
| void | resetDrawer () |
| void | resetOverflows (void) |
| Overflows_t & | getOverflowedChannels (void) |
| std::string | getTileRawChannelContainerID (void) |
| ServiceHandle< StoreGateSvc > & | evtStore () |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. | |
| const ServiceHandle< StoreGateSvc > & | detStore () const |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. | |
| virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. | |
| virtual StatusCode | sysStart () override |
| Handle START transition. | |
| virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. | |
| virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. | |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T, V, H > &t) |
| void | updateVHKA (Gaudi::Details::PropertyBase &) |
| MsgStream & | msg () const |
| bool | msgLvl (const MSG::Level lvl) const |
Static Public Member Functions | |
| static const InterfaceID & | interfaceID () |
| AlgTool InterfaceID. | |
| static double | correctAmp (double phase, bool of2=true) |
| Amplitude correction factor according to the time when using weights for tau=0 without iterations. | |
| static double | correctTime (double phase, bool of2=true) |
| Time correction factor. | |
| static int | CorruptedData (int ros, int drawer, int channel, int gain, const std::vector< float > &digits, float &dmin, float &dmax, float ADCmaxMinusEps, float ADCmaskValueMinusEps) |
| static const char * | BadPatternName (float ped) |
Protected Member Functions | |
| void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
| remove all handles from I/O resolution | |
| std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
| void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
| Add StoreName to extra input/output deps as needed. | |
Static Protected Attributes | |
| static const int | MAX_CHANNELS = 48 |
| static const int | MAX_DMUS = 16 |
Private Types | |
| typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
| double | filter (int ros, int drawer, int channel, int &gain, double &pedestal, double &litude, double &time, const EventContext &ctx) |
| int | findMaxDigitPosition () |
| Finds maximum digit position in the pulse. | |
| float | getPedestal (int ros, int drawer, int channel, int gain, const EventContext &ctx) |
| Apply the number of iterations needed for reconstruction by calling the Filter method. | |
| int | iterate (int ros, int drawer, int channel, int gain, double &pedestal, double &litude, double &time, double &chi2, const EventContext &ctx) |
| Computes A,time,ped using OF. | |
| double | compute (int ros, int drawer, int channel, int gain, double &pedestal, double &litude, double &time, double &phase, const EventContext &ctx) |
| void | ofc2int (int nDigits, double *w_off, short *w_int, short &scale) |
| void | fill_drawer_errors (const EventContext &ctx, const TileDigitsCollection *collection) |
| Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> | |
Private Attributes | |
| ToolHandle< ITileCondToolOfc > | m_tileCondToolOfc |
| ToolHandle< TileCondToolNoiseSample > | m_tileToolNoiseSample |
| Applies OF algorithm. | |
| int | m_maxIterations |
| maximum number of iteration to perform | |
| int | m_pedestalMode |
| pedestal mode to use | |
| bool | m_confTB |
| use testbeam configuration | |
| double | m_timeForConvergence |
| minimum time difference to quit iteration procedure | |
| bool | m_of2 |
| bool variable for OF method: true=> OF2; false=> OF1 | |
| bool | m_minus1Iter |
| bool variable for whether to apply -1 iteration (initial phase guess) | |
| bool | m_correctAmplitude |
| If true, resulting amplitude is corrected when using weights for tau=0 without iteration. | |
| bool | m_correctTimeNI |
| If true, resulting time is corrected when using method without iteration. | |
| bool | m_bestPhase |
| bool | m_emulateDsp |
| int | m_nSignal |
| internal counters | |
| int | m_nNegative |
| internal counters | |
| int | m_nCenter |
| internal counters | |
| int | m_nConst |
| internal counters | |
| int | m_nSamples |
| number of samples in the data | |
| int | m_t0SamplePosition |
| position of peak sample = (m_nSamples-1)/2 | |
| double | m_maxTime |
| max allowed time = 25*(m_nSamples-1)/2 | |
| double | m_minTime |
| min allowed time = -25*(m_nSamples-1)/2 | |
| std::vector< float > | m_digits |
| int | m_noiseThresholdHG |
| int | m_noiseThresholdLG |
| StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) | |
| StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) | |
| std::vector< SG::VarHandleKeyArray * > | m_vhka |
| bool | m_varHandleArraysDeclared |
Reconstructs Tile digitized pulses (ie, computes amplitude, time and pedestal) as a linear combination of the samples.
This class implements an energy reconstruction method known as Optimal Filtering. It takes as input the digital samples from the digitizer boards in the front-end electronics and outputs the amplitude, time and pedestal of the pulse. Full details and fundaments of the method can be found in the ATL-TILECAL-2005-001 note. Two different versions of the algorithms are currently used: OF1 (with 2 parameters: amplitude and time) and OF2 (with 3 parameters (amplitude, time and pedestal).
OFCs are calculated on-the-fly (using TileCondToolOfc) or are extracted from COOL database (TileCondToolOfcCool). In case of non-iterative procedure, optionally, the initial, "best phase", can be extracted from COOL DB by means of TileCondToolTiming.
Definition at line 47 of file TileRawChannelBuilderOpt2Filter.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
| TileRawChannelBuilderOpt2Filter::TileRawChannelBuilderOpt2Filter | ( | const std::string & | type, |
| const std::string & | name, | ||
| const IInterface * | parent ) |
Constructor.
Definition at line 52 of file TileRawChannelBuilderOpt2Filter.cxx.
| TileRawChannelBuilderOpt2Filter::~TileRawChannelBuilderOpt2Filter | ( | ) |
|
staticinherited |
Definition at line 458 of file TileRawChannelBuilder.cxx.
|
inherited |
Definition at line 492 of file TileRawChannelBuilder.cxx.
|
virtualinherited |
Commit RawChannelContiner in SG and make const.
Definition at line 544 of file TileRawChannelBuilder.cxx.
|
private |
Definition at line 557 of file TileRawChannelBuilderOpt2Filter.cxx.
|
staticinherited |
Amplitude correction factor according to the time when using weights for tau=0 without iterations.
Definition at line 646 of file TileRawChannelBuilder.cxx.
|
staticinherited |
Time correction factor.
Definition at line 705 of file TileRawChannelBuilder.cxx.
|
staticinherited |
Definition at line 723 of file TileRawChannelBuilder.cxx.
|
virtualinherited |
Create container in SG with name given by parameter (m_rawChannelContainerKey)
Definition at line 233 of file TileRawChannelBuilder.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 95 of file AthCommonDataStore.h.
|
inherited |
Definition at line 639 of file TileRawChannelBuilder.cxx.
|
inlineinherited |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 85 of file AthCommonDataStore.h.
|
protectedinherited |
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
|
privateinherited |
Definition at line 300 of file TileRawChannelBuilder.cxx.
|
private |
Definition at line 340 of file TileRawChannelBuilderOpt2Filter.cxx.
|
virtual |
Finalize method.
Reimplemented from TileRawChannelBuilder.
Definition at line 170 of file TileRawChannelBuilderOpt2Filter.cxx.
|
private |
Finds maximum digit position in the pulse.
Gets pedestal estimation for OF1
Definition at line 270 of file TileRawChannelBuilderOpt2Filter.cxx.
|
inherited |
Definition at line 38 of file TileRawChannelBuilder.cxx.
|
private |
Apply the number of iterations needed for reconstruction by calling the Filter method.
Definition at line 300 of file TileRawChannelBuilderOpt2Filter.cxx.
|
inherited |
Definition at line 42 of file TileRawChannelBuilder.cxx.
|
virtual |
Initialize method.
Reimplemented from TileRawChannelBuilder.
Definition at line 90 of file TileRawChannelBuilderOpt2Filter.cxx.
|
inherited |
Definition at line 246 of file TileRawChannelBuilder.cxx.
|
overridevirtualinherited |
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
static |
AlgTool InterfaceID.
Definition at line 45 of file TileRawChannelBuilderOpt2Filter.cxx.
|
private |
Computes A,time,ped using OF.
If iterations are required, the Iterator method is used
Definition at line 505 of file TileRawChannelBuilderOpt2Filter.cxx.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
private |
Definition at line 717 of file TileRawChannelBuilderOpt2Filter.cxx.
|
overridevirtualinherited |
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
virtual |
Builder virtual method to be implemented by subclasses.
| digits | Pointer to TileDigitsContainer |
Reimplemented from TileRawChannelBuilder.
Definition at line 192 of file TileRawChannelBuilderOpt2Filter.cxx.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
inherited |
Definition at line 29 of file TileRawChannelBuilder.cxx.
|
inherited |
Definition at line 34 of file TileRawChannelBuilder.cxx.
|
overridevirtualinherited |
Perform system initialization for an algorithm.
We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.
Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
protectedinherited |
indicates channels which were masked in background dataset
Definition at line 222 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 221 of file TileRawChannelBuilder.h.
|
protectedinherited |
correct amplitude if it's above amplitude threshold (in ADC counts)
Definition at line 152 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 210 of file TileRawChannelBuilder.h.
|
private |
Definition at line 96 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 138 of file TileRawChannelBuilder.h.
|
protectedinherited |
TileCabling instance.
Definition at line 182 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 179 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 142 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 193 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 196 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 192 of file TileRawChannelBuilder.h.
|
private |
use testbeam configuration
Definition at line 89 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
If true, resulting amplitude is corrected when using weights for tau=0 without iteration.
Definition at line 93 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 145 of file TileRawChannelBuilder.h.
|
private |
If true, resulting time is corrected when using method without iteration.
Definition at line 94 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 204 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 184 of file TileRawChannelBuilder.h.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
private |
Definition at line 109 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 120 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 125 of file TileRawChannelBuilder.h.
|
private |
Definition at line 97 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 208 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 195 of file TileRawChannelBuilder.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
protectedinherited |
Definition at line 218 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 220 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 140 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 217 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 219 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 191 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 189 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 190 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 188 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 215 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 209 of file TileRawChannelBuilder.h.
|
private |
maximum number of iteration to perform
Definition at line 87 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
max allowed time = 25*(m_nSamples-1)/2
Definition at line 105 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
min allowed time = -25*(m_nSamples-1)/2
Definition at line 106 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
bool variable for whether to apply -1 iteration (initial phase guess)
Definition at line 92 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
internal counters
Definition at line 100 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 199 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 198 of file TileRawChannelBuilder.h.
|
private |
internal counters
Definition at line 101 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
internal counters
Definition at line 99 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 163 of file TileRawChannelBuilder.h.
|
private |
Definition at line 111 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
Definition at line 112 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 212 of file TileRawChannelBuilder.h.
|
private |
number of samples in the data
Definition at line 103 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
internal counters
Definition at line 98 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
bool variable for OF method: true=> OF2; false=> OF1
Definition at line 91 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 203 of file TileRawChannelBuilder.h.
|
private |
pedestal mode to use
Definition at line 88 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 133 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 129 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 201 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 200 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 136 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 137 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 157 of file TileRawChannelBuilder.h.
|
private |
position of peak sample = (m_nSamples-1)/2
Definition at line 104 of file TileRawChannelBuilderOpt2Filter.h.
|
private |
Definition at line 69 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 161 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 160 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 172 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 216 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 166 of file TileRawChannelBuilder.h.
|
private |
Applies OF algorithm.
Definition at line 72 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
Definition at line 169 of file TileRawChannelBuilder.h.
|
private |
minimum time difference to quit iteration procedure
Definition at line 90 of file TileRawChannelBuilderOpt2Filter.h.
|
protectedinherited |
correct amplitude is time is below time max threshold
Definition at line 154 of file TileRawChannelBuilder.h.
|
protectedinherited |
correct amplitude is time is above time min threshold
Definition at line 153 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 187 of file TileRawChannelBuilder.h.
|
protectedinherited |
Definition at line 149 of file TileRawChannelBuilder.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.
|
staticprotectedinherited |
Definition at line 206 of file TileRawChannelBuilder.h.
|
staticprotectedinherited |
Definition at line 207 of file TileRawChannelBuilder.h.