![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
does calibration of the CSC chambers
More...
#include <CscCalcPed.h>
|
| CscCalcPed (const std::string &name, ISvcLocator *pSvcLocator) |
|
| ~CscCalcPed ()=default |
|
StatusCode | initialize (void) |
| basic required functions More...
|
|
StatusCode | execute (void) |
|
StatusCode | finalize (void) |
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
does calibration of the CSC chambers
- Author
- lampe.nosp@m.n@ph.nosp@m.ysics.nosp@m..ari.nosp@m.zona..nosp@m.edu
Description
CscCalcPed is an algorithm that cycles through calibration events and generates the pedestals. A root file is also generated where the user can view the validity of the constants.
Definition at line 44 of file CscCalcPed.h.
◆ StoreGateSvc_t
◆ CscCalcPed()
MuonCalib::CscCalcPed::CscCalcPed |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ ~CscCalcPed()
MuonCalib::CscCalcPed::~CscCalcPed |
( |
| ) |
|
|
default |
◆ calculateParameters()
StatusCode MuonCalib::CscCalcPed::calculateParameters |
( |
| ) |
|
|
private |
Finalize functions.
Definition at line 498 of file CscCalcPed.cxx.
505 for(
unsigned int stripHash = 0 ;stripHash <=
m_maxStripHash; stripHash++)
507 if(stripHash < 50 || stripHash%1000 == 0)
510 ATH_MSG_VERBOSE((
float)clock()/((
float)CLOCKS_PER_SEC) <<
" is the time");
513 TH1I * ampHist = (*m_ampHists)[stripHash];
517 if(ampHist->GetEntries() >0)
520 float histMean = ampHist->GetMean();
521 float histRMS = ampHist->GetRMS();
522 float histRMSError = ampHist->GetRMSError();
524 float lowbound = histMean - 3*histRMS;
525 float highbound = histMean + 3*histRMS;
528 int result = ampHist->Fit(
"gaus",
"QL",
"",lowbound,highbound);
530 TF1 * fittedFunction = ampHist->GetFunction(
"gaus");
531 double meanError = fittedFunction->GetParError(1);
532 double sigma = fittedFunction->GetParameter(2);
533 double sigmaError = fittedFunction->GetParError(2);
534 double chi2 = fittedFunction->GetChisquare();
535 int ndf = fittedFunction->GetNDF();
545 int num = (
int)ampHist->GetEntries();
546 int thr = ampHist->GetNbinsX() + 1;
547 double maxSum = 0.001*
num;
554 }
while ((thr>0)&&(
sum<maxSum));
557 double threshold = ampHist->GetXaxis()->GetBinLowEdge(thr) +1;
578 return StatusCode::SUCCESS;
◆ calOutput0()
StatusCode MuonCalib::CscCalcPed::calOutput0 |
( |
| ) |
|
|
private |
Definition at line 604 of file CscCalcPed.cxx.
611 return StatusCode::RECOVERABLE;
619 out <<
"END_HEADER\n";
628 for(;pedItr!= pedEnd;++pedItr,++noiseItr, ++rmsItr)
630 int hashId = (*pedItr)->hashId();
631 double ped = (*pedItr)->value();
632 double noise = (*noiseItr)->value();
633 double rms = (*rmsItr)->value();
638 m_idHelperSvc->cscIdHelper().get_id(hashId,
id, &channelContext);
648 m_idHelperSvc->cscIdHelper().get_module_hash(
id,chamberHash);
652 out <<
" " << chamberHash;
662 return StatusCode::SUCCESS;
◆ calOutput1()
StatusCode MuonCalib::CscCalcPed::calOutput1 |
( |
| ) |
|
|
private |
Definition at line 667 of file CscCalcPed.cxx.
672 out.open(onlineFileName.c_str());
676 return StatusCode::RECOVERABLE;
692 for(;pedItr!= pedEnd;++pedItr,++noiseItr, ++rmsItr, ++f001Itr)
694 int hashId = (*pedItr)->hashId();
695 double ped = (*pedItr)->value();
696 double noise = (*noiseItr)->value();
698 double f001 = (*f001Itr)->value();
701 std::string onlineHexId;
704 readCdo->indexToStringId(&
m_idHelperSvc->cscIdHelper(), hashId,
"CHANNEL", onlineHexId).ignore();
709 m_idHelperSvc->cscIdHelper().get_id(hashId,
id, &channelContext);
718 char orientationChar = (
m_idHelperSvc->cscIdHelper().measuresPhi(
id) ?
'Y':
'X');
722 m_idHelperSvc->cscIdHelper().get_module_hash(
id,chamberHash);
725 out.setf(std::ios::right);
726 out << std::setfill(
'0') << std::setw(8) << onlineHexId;
728 << std::setw(2) << chamberHash << orientationChar << (
m_idHelperSvc->cscIdHelper().wireLayer(
id)-1)
730 << std::setw(3) <<
m_idHelperSvc->cscIdHelper().strip(
id) -1 <<
" " ;
731 out.setf(std::ios::fixed);
734 out <<
" " << std::setprecision(3) << std::setw(8) <<
ped <<
" 0000.00";
735 out <<
" " << std::setprecision(3) << std::setw(8) <<
noise <<
" 0000.000";
742 return StatusCode::SUCCESS;
◆ calOutput3()
StatusCode MuonCalib::CscCalcPed::calOutput3 |
( |
| ) |
|
|
private |
Definition at line 747 of file CscCalcPed.cxx.
753 return StatusCode::RECOVERABLE;
755 out <<
"03-00 <END_HEADER>";
762 out <<
"\n<END_FILE>";
765 return StatusCode::SUCCESS;
◆ collectEventInfo()
StatusCode MuonCalib::CscCalcPed::collectEventInfo |
( |
| ) |
|
|
private |
event loop functions
Definition at line 346 of file CscCalcPed.cxx.
357 if (sc_read != StatusCode::SUCCESS)
360 return StatusCode::FAILURE;
365 if(rawDataContainer->
size() == 0)
368 return StatusCode::FAILURE;
378 for(
const auto rod : *rawDataContainer)
389 for(
const auto cluster: *
rod)
392 int numStrips = cluster->width();
393 int samplesPerStrip = (cluster->samples()).
size()/numStrips;
395 ATH_MSG_VERBOSE(
"About to collect info from " << numStrips <<
" strips");
396 for(
int stripItr = 0; stripItr <numStrips; stripItr++)
406 int stripHash = cscChannelHashId;
409 m_idHelperSvc->cscIdHelper().get_id(stripHash, stripId, &channelContext);
417 << stripHash <<
") from the wrong multilayer has appeared in the data. Its string id is " <<
m_idHelperSvc->cscIdHelper().show_to_string(stripId)
422 << stripHash <<
" " << cscChannelHashId);
438 m_idHelperSvc->cscIdHelper().get_channel_hash(stripId, newHash );
454 cluster->samples(stripItr,samplesPerStrip,
samples);
460 for(
const auto & thisSample:
samples)
462 (*m_ampHists)[stripHash]->Fill(thisSample);
464 (*((*m_sampHists)[stripHash]))[sampCnt]->Fill(thisSample);
467 TH2F* prodHist =
nullptr;
469 prodHist = (*m_bitProds)[stripHash];
479 " has online threshold breach. Sample: " << thisSample <<
" Thold: "
489 ATH_MSG_DEBUG(
"There is an empty rod (CscRawDataContainer).");
492 return StatusCode::SUCCESS;
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode MuonCalib::CscCalcPed::execute |
( |
void |
| ) |
|
Definition at line 284 of file CscCalcPed.cxx.
292 ATH_MSG_ERROR(
"There was an error collecting information from the RDO this event.");
293 return StatusCode::RECOVERABLE;
296 return StatusCode::SUCCESS;
◆ extraDeps_update_handler()
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
◆ extraOutputDeps()
const DataObjIDColl & AthAlgorithm::extraOutputDeps |
( |
| ) |
const |
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 50 of file AthAlgorithm.cxx.
57 return Algorithm::extraOutputDeps();
◆ fillBitHist()
StatusCode MuonCalib::CscCalcPed::fillBitHist |
( |
TH1I * |
bitHist, |
|
|
const uint16_t & |
val, |
|
|
TH2F * |
bitProds |
|
) |
| |
|
inlineprivate |
Definition at line 139 of file CscCalcPed.h.
142 return StatusCode::RECOVERABLE;
145 std::bitset<12> bitVal(
val);
147 for(
unsigned int bitIndex = 0; bitIndex <
m_numBits; bitIndex++){
148 if(bitVal[bitIndex]){
149 bitHist->Fill(bitIndex);
151 for(
unsigned int bitIndex2 = 0 ; bitIndex2 <= bitIndex ; bitIndex2++) {
152 if(bitVal[bitIndex2]){
153 bitProds->Fill(bitIndex,bitIndex2);
154 if(bitIndex != bitIndex2)
155 bitProds->Fill(bitIndex2,bitIndex);
165 return StatusCode::SUCCESS;
◆ finalize()
StatusCode MuonCalib::CscCalcPed::finalize |
( |
void |
| ) |
|
Definition at line 299 of file CscCalcPed.cxx.
303 return StatusCode::FAILURE;
318 return StatusCode::FAILURE;
328 return StatusCode::FAILURE;
337 return StatusCode::FAILURE;
341 return StatusCode::SUCCESS;
◆ GetMinMax()
template<typename dataType >
dataType MuonCalib::CscCalcPed::GetMinMax |
( |
std::vector< dataType > & |
vec | ) |
|
|
inlineprivate |
Definition at line 74 of file CscCalcPed.h.
75 const auto [pMin, pMax] = std::minmax_element(
vec.begin(),
vec.end());
◆ hashToChamberName()
StatusCode MuonCalib::CscCalcPed::hashToChamberName |
( |
IdentifierHash |
, |
|
|
std::string |
|
|
) |
| |
|
private |
◆ initialize()
StatusCode MuonCalib::CscCalcPed::initialize |
( |
void |
| ) |
|
basic required functions
Store Gate active store
Definition at line 68 of file CscCalcPed.cxx.
73 ATH_MSG_FATAL(
"Either specify an OnlineCalibFile or set CompareOnlineCalibFile to false");
74 return StatusCode::FAILURE;
88 IToolSvc* toolSvc=
nullptr;
99 const std::vector<Identifier> &
ids =
m_idHelperSvc->cscIdHelper().idVector();
104 for(
const auto &thisChamberId:
ids)
106 std::vector<Identifier> stripVect;
107 m_idHelperSvc->cscIdHelper().idChannels(thisChamberId,stripVect);
111 for(
const auto & thisStrip: stripVect)
114 m_idHelperSvc->cscIdHelper().get_channel_hash(thisStrip,stripHash);
125 for(
unsigned int stripItr = 0 ; stripItr <=
m_maxStripHash; stripItr++)
131 m_idHelperSvc->cscIdHelper().get_id(stripHash, stripId, &channelContext);
133 int chamLayer =
m_idHelperSvc->cscIdHelper().chamberLayer(stripId);
138 int stripNumber =
m_idHelperSvc->cscIdHelper().strip(stripId);
139 int wireLayer =
m_idHelperSvc->cscIdHelper().wireLayer(stripId);
140 char orientation =
m_idHelperSvc->cscIdHelper().measuresPhi(stripId) ?
'Y':
'X';
143 char name[30],titleSeed[600];
148 sprintf(
name,
"ampHist%u",stripItr);
149 sprintf(titleSeed,
"Amplitude Histogram for eta %d, sector %d, layer %d%c, strip %d",
155 hist->GetXaxis()->SetTitle(
"Amplitude (ADC value)");
156 hist->GetYaxis()->SetTitle(
"Counts");
162 sprintf(
name,
"sampHist%u_%d",stripItr,
cnt);
163 sprintf(titleSeed,
"Amplitude Histogram for eta %d, sector %d, layer %d%c, strip %d, sample %d",
177 sprintf(
name,
"bitHist%u",stripItr);
178 sprintf(titleSeed,
"Bit histogram for eta %d, sector %d, layer %d%c strip %d",
182 hist->GetXaxis()->SetTitle(
"Bit");
183 hist->GetYaxis()->SetTitle(
"Counts");
223 if(!
ifile.is_open()){
225 return StatusCode::FAILURE;
229 unsigned int onlineId;
236 return StatusCode::FAILURE;
243 while(
ifile >> std::hex >> onlineId >> std::dec) {
248 double thold = f001 + 2*
rms;
249 ATH_MSG_VERBOSE(
"onlid: " << std::hex << onlineId << std::dec <<
" hash: " << hashId <<
" rms: " <<
rms <<
" f001: " << f001 <<
" thold: " << thold);
258 if(chanCnt != 30720){
259 ATH_MSG_FATAL(
"Did not retrieve expected 30720 channels from online database! Retrieved: " << chanCnt);
260 ATH_MSG_FATAL(
"Last onlineId read: " << std::hex << onlineId << std::dec);
261 return StatusCode::FAILURE;
280 return StatusCode::SUCCESS;
◆ inputHandles()
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.
◆ makeBitCorrelation()
Definition at line 859 of file CscCalcPed.cxx.
867 for(
unsigned int hashItr =0; hashItr <=
m_maxStripHash; hashItr++) {
871 m_idHelperSvc->cscIdHelper().get_id(stripHash, stripId, &channelContext);
873 int chamLayer =
m_idHelperSvc->cscIdHelper().chamberLayer(stripId);
879 int stripNumber =
m_idHelperSvc->cscIdHelper().strip(stripId);
880 int wireLayer =
m_idHelperSvc->cscIdHelper().wireLayer(stripId);
881 char orientation =
m_idHelperSvc->cscIdHelper().measuresPhi(stripId) ?
'Y':
'X';
885 std::stringstream
name;
886 name <<
"h_bitCorr_sector_" << std::setfill(
'0') << std::setw(2) << sector <<
887 "_lay_" << wireLayer << orientation <<
"_strip_" << std::setw(3) << stripNumber;
888 std::stringstream
title;
889 title <<
"h_bitCorr_sector_" << std::setfill(
'0') << std::setw(2) << sector <<
890 "_lay_" << wireLayer << orientation <<
"_strip_" << std::setw(3) << stripNumber;
898 (*correlations)[hashItr] = correlationHist;
902 double n = (*m_ampHists)[hashItr]->GetEntries();
903 TH1I * bitHist = (*m_bitHists)[hashItr];
904 TH2F * bitProds = (*m_bitProds)[hashItr];
905 for(
unsigned int bit1 = 1; bit1 <=
m_numBits; bit1++){
906 for(
unsigned int bit2 = 1; bit2 <=bit1; bit2++){
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ onlineToOfflineHashId()
void MuonCalib::CscCalcPed::onlineToOfflineHashId |
( |
const unsigned int & |
onlineId, |
|
|
unsigned int & |
hashId |
|
) |
| const |
|
private |
Definition at line 933 of file CscCalcPed.cxx.
936 int phi = ((onlineId >> 13)&0x7)+1;
937 int eta = ((((onlineId >> 12)&0
x1) == 1) ? 1:-1);
938 int chamLay = ((onlineId>>11)&0
x1) +1;
939 int wireLay = ((onlineId>>9)&0x3) +1;
940 int measuresPhi = ((onlineId >> 8)&0
x1);
944 if( measuresPhi &&
eta == 1){
945 strip = 48 - ((onlineId)&0xff) ;
948 strip = ((onlineId)&0xff) +1;
954 m_idHelperSvc->cscIdHelper().get_channel_hash(chanId, chanHash);
956 hashId = (
unsigned int)chanHash;
◆ outputHandles()
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.
◆ outputParameter3()
Definition at line 770 of file CscCalcPed.cxx.
776 out <<
"<NEW_PAR> " <<
results.parName() <<
"\n";
777 std::string idString;
781 for(; resItr != resEnd; ++resItr){
782 unsigned int hashId = (*resItr)->hashId();
783 double value = (*resItr)->value();
784 std::string idString;
786 readCdo->indexToStringId(&
m_idHelperSvc->cscIdHelper(), hashId,
"CHANNEL", idString).ignore();
788 out << idString <<
" " <<
value <<
"\n";
◆ renounce()
◆ renounceArray()
◆ storeGateRecord()
StatusCode MuonCalib::CscCalcPed::storeGateRecord |
( |
| ) |
|
|
private |
Definition at line 798 of file CscCalcPed.cxx.
802 bool thereIsAnError =
false;
804 std::string histKey =
"cscPedCalibReport";
805 ATH_MSG_DEBUG(
"Recording pedestal amplitude histograms to TDS with key " << histKey);
824 ATH_MSG_ERROR(
"Failed to record CscCalibReportPed to storegate");
825 thereIsAnError =
true;
832 std::string
key =
"CscCalibResultPed";
848 thereIsAnError =
true;
853 return StatusCode::RECOVERABLE;
855 return StatusCode::SUCCESS;
◆ sysInitialize()
StatusCode AthAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ writeCalibrationFile()
StatusCode MuonCalib::CscCalcPed::writeCalibrationFile |
( |
| ) |
|
|
private |
◆ m_ampHistHighBound
unsigned int MuonCalib::CscCalcPed::m_ampHistHighBound |
|
private |
◆ m_ampHistLowBound
unsigned int MuonCalib::CscCalcPed::m_ampHistLowBound |
|
private |
◆ m_ampHistNumBins
unsigned int MuonCalib::CscCalcPed::m_ampHistNumBins |
|
private |
◆ m_ampHists
◆ m_bitCorrelation
◆ m_bitHists
◆ m_bitProds
◆ m_calOutputVersion
std::string MuonCalib::CscCalcPed::m_calOutputVersion |
|
private |
◆ m_chronoSvc
IChronoStatSvc* MuonCalib::CscCalcPed::m_chronoSvc |
|
private |
◆ m_cmt_parameter
std::string MuonCalib::CscCalcPed::m_cmt_parameter |
|
private |
◆ m_crossTalkFix
double* MuonCalib::CscCalcPed::m_crossTalkFix |
|
private |
◆ m_cscRdoDecoderTool
◆ m_detStore
◆ m_doBitHists
bool MuonCalib::CscCalcPed::m_doBitHists |
|
private |
◆ m_doCorrelation
bool MuonCalib::CscCalcPed::m_doCorrelation |
|
private |
◆ m_doF001
bool MuonCalib::CscCalcPed::m_doF001 |
|
private |
◆ m_doOnlineDbFile
bool MuonCalib::CscCalcPed::m_doOnlineDbFile |
|
private |
◆ m_doSampleHists
bool MuonCalib::CscCalcPed::m_doSampleHists |
|
private |
◆ m_eventCnt
int MuonCalib::CscCalcPed::m_eventCnt |
|
private |
◆ m_evtStore
◆ m_expectedChamberLayer
int MuonCalib::CscCalcPed::m_expectedChamberLayer |
|
private |
◆ m_extendedExtraObjects
DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_f001s
◆ m_idHelperSvc
◆ m_maxStripHash
unsigned int MuonCalib::CscCalcPed::m_maxStripHash |
|
private |
◆ m_noises
◆ m_numBits
const unsigned int MuonCalib::CscCalcPed::m_numBits |
|
private |
◆ m_numSamplesExpected
int MuonCalib::CscCalcPed::m_numSamplesExpected |
|
private |
◆ m_onlineDbFile
std::string MuonCalib::CscCalcPed::m_onlineDbFile |
|
private |
filename for file with online database information
Definition at line 100 of file CscCalcPed.h.
◆ m_onlineTHoldBreaches
◆ m_onlineThresholdFailureCount
std::vector<int> MuonCalib::CscCalcPed::m_onlineThresholdFailureCount |
|
private |
◆ m_onlineThresholds
std::vector<int> MuonCalib::CscCalcPed::m_onlineThresholds |
|
private |
◆ m_outputFileName
std::string MuonCalib::CscCalcPed::m_outputFileName |
|
private |
Parameters input through joboptions.
Definition at line 90 of file CscCalcPed.h.
◆ m_peds
◆ m_readKey
◆ m_rmses
◆ m_sampHists
◆ m_thresholdMultiplier
float MuonCalib::CscCalcPed::m_thresholdMultiplier |
|
private |
◆ m_titlePostfix
std::string MuonCalib::CscCalcPed::m_titlePostfix |
|
private |
◆ m_titlePrefix
std::string MuonCalib::CscCalcPed::m_titlePrefix |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
void onlineToOfflineHashId(const unsigned int &onlineId, unsigned int &hashId) const
IChronoStatSvc * m_chronoSvc
constexpr uint8_t stationPhi
station Phi 1 to 8
Const iterator class for DataVector/DataList.
Scalar phi() const
phi method
DataVector< TH1I > * m_ampHists
ToolHandle< Muon::ICSC_RDO_Decoder > m_cscRdoDecoderTool
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
float m_thresholdMultiplier
Scalar eta() const
pseudorapidity method
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
SG::ReadCondHandleKey< CscCondDbData > m_readKey
size_t size() const
Duplicate of fullSize for backwards compatability.
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
unsigned int m_ampHistNumBins
StatusCode fillBitHist(TH1I *bitHist, const uint16_t &val, TH2F *bitProds)
StatusCode calculateParameters()
Finalize functions.
std::vector< size_t > vec
#define ATH_MSG_VERBOSE(x)
std::vector< int > m_onlineThresholds
const unsigned int m_numBits
DataVector< TH2F > * m_bitProds
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
StatusCode collectEventInfo()
event loop functions
virtual void setOwner(IDataHandleHolder *o)=0
std::string m_outputFileName
Parameters input through joboptions.
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysInitialize() override
Override sysInitialize.
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
(Non-const) Iterator class for DataVector/DataList.
CscCalibResultCollection * m_f001s
::StatusCode StatusCode
StatusCode definition for legacy code.
DataVector< TH1F > * m_bitCorrelation
double chi2(TH1 *h0, TH1 *h1)
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
unsigned int m_ampHistLowBound
std::string m_titlePrefix
CscCalibResultCollection * m_noises
double GetBinContent(int) const
std::string m_onlineDbFile
filename for file with online database information
void SetBinContent(int, double)
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
std::string m_titlePostfix
CscCalibResultCollection * m_rmses
void resize(size_type sz)
Resizes the collection to the specified number of elements.
CscCalibResultCollection * m_onlineTHoldBreaches
value_type push_back(value_type pElem)
Add an element to the end of the collection.
StatusCode initialize(bool used=true)
unsigned int m_maxStripHash
Internally global variables.
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
DataVector< DataVector< TH1I > > * m_sampHists
StatusCode writeCalibrationFile()
DataObjIDColl m_extendedExtraObjects
std::string getString() const
Provide a string form of the identifier - hexadecimal.
#define ATH_MSG_WARNING(x)
This container provides access to collections of CSC RDOs and a mechanism for recording them.
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
int m_expectedChamberLayer
unsigned int m_ampHistHighBound
AthAlgorithm()
Default constructor:
double GetBinContent(int) const
void outputParameter3(const CscCalibResultCollection &results, std::ofstream &out)
DataVector< TH2F > * makeBitCorrelation()
constexpr uint8_t stationEta
1 to 3
std::string m_calOutputVersion
CscCalibResultCollection * m_peds
size_type size() const noexcept
Returns the number of elements in the collection.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
DataVector< TH1I > * m_bitHists
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Services and tools.
StatusCode storeGateRecord()
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
std::vector< int > m_onlineThresholdFailureCount