#include <DQM/EcalEndcapMonitorClient/interface/EELedClient.h>
Definition at line 30 of file EELedClient.h.
EELedClient::EELedClient | ( | const edm::ParameterSet & | ps | ) |
Constructor.
Definition at line 49 of file EELedClient.cc.
References amplitudeThreshold_, amplitudeThresholdPnG01_, amplitudeThresholdPnG16_, cloneME_, debug_, enableCleanup_, edm::ParameterSet::getUntrackedParameter(), h01_, h02_, h03_, h04_, h09_, h10_, h13_, h14_, h15_, h16_, h21_, h22_, hs01_, hs02_, hs05_, hs06_, i, i01_, i02_, i05_, i06_, i09_, i10_, i13_, i14_, me_hs01_, me_hs02_, me_hs05_, me_hs06_, mea01_, mea02_, mea05_, mea06_, meaopn01_, meaopn02_, meaopn05_, meaopn06_, meg01_, meg02_, meg05_, meg06_, meg09_, meg10_, mepnprms01_, mepnprms02_, mepnprms05_, mepnprms06_, met01_, met02_, met05_, met06_, metav01_, metav02_, metav05_, metav06_, metrms01_, metrms02_, metrms05_, metrms06_, pedPnDiscrepancyMean_, pedPnExpectedMean_, pedPnRMSThreshold_, percentVariation_, prefixME_, superModules_, and verbose_.
00049 { 00050 00051 // cloneME switch 00052 cloneME_ = ps.getUntrackedParameter<bool>("cloneME", true); 00053 00054 // verbose switch 00055 verbose_ = ps.getUntrackedParameter<bool>("verbose", true); 00056 00057 // debug switch 00058 debug_ = ps.getUntrackedParameter<bool>("debug", false); 00059 00060 // prefixME path 00061 prefixME_ = ps.getUntrackedParameter<string>("prefixME", ""); 00062 00063 // enableCleanup_ switch 00064 enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false); 00065 00066 // vector of selected Super Modules (Defaults to all 18). 00067 superModules_.reserve(18); 00068 for ( unsigned int i = 1; i <= 18; i++ ) superModules_.push_back(i); 00069 superModules_ = ps.getUntrackedParameter<vector<int> >("superModules", superModules_); 00070 00071 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 00072 00073 int ism = superModules_[i]; 00074 00075 h01_[ism-1] = 0; 00076 h02_[ism-1] = 0; 00077 h03_[ism-1] = 0; 00078 h04_[ism-1] = 0; 00079 00080 h09_[ism-1] = 0; 00081 h10_[ism-1] = 0; 00082 00083 h13_[ism-1] = 0; 00084 h14_[ism-1] = 0; 00085 h15_[ism-1] = 0; 00086 h16_[ism-1] = 0; 00087 00088 h21_[ism-1] = 0; 00089 h22_[ism-1] = 0; 00090 00091 hs01_[ism-1] = 0; 00092 hs02_[ism-1] = 0; 00093 00094 hs05_[ism-1] = 0; 00095 hs06_[ism-1] = 0; 00096 00097 i01_[ism-1] = 0; 00098 i02_[ism-1] = 0; 00099 00100 i05_[ism-1] = 0; 00101 i06_[ism-1] = 0; 00102 00103 i09_[ism-1] = 0; 00104 i10_[ism-1] = 0; 00105 00106 i13_[ism-1] = 0; 00107 i14_[ism-1] = 0; 00108 00109 } 00110 00111 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 00112 00113 int ism = superModules_[i]; 00114 00115 meg01_[ism-1] = 0; 00116 meg02_[ism-1] = 0; 00117 00118 meg05_[ism-1] = 0; 00119 meg06_[ism-1] = 0; 00120 00121 meg09_[ism-1] = 0; 00122 meg10_[ism-1] = 0; 00123 00124 mea01_[ism-1] = 0; 00125 mea02_[ism-1] = 0; 00126 00127 mea05_[ism-1] = 0; 00128 mea06_[ism-1] = 0; 00129 00130 met01_[ism-1] = 0; 00131 met02_[ism-1] = 0; 00132 00133 met05_[ism-1] = 0; 00134 met06_[ism-1] = 0; 00135 00136 metav01_[ism-1] = 0; 00137 metav02_[ism-1] = 0; 00138 00139 metav05_[ism-1] = 0; 00140 metav06_[ism-1] = 0; 00141 00142 metrms01_[ism-1] = 0; 00143 metrms02_[ism-1] = 0; 00144 00145 metrms05_[ism-1] = 0; 00146 metrms06_[ism-1] = 0; 00147 00148 meaopn01_[ism-1] = 0; 00149 meaopn02_[ism-1] = 0; 00150 00151 meaopn05_[ism-1] = 0; 00152 meaopn06_[ism-1] = 0; 00153 00154 mepnprms01_[ism-1] = 0; 00155 mepnprms02_[ism-1] = 0; 00156 00157 mepnprms05_[ism-1] = 0; 00158 mepnprms06_[ism-1] = 0; 00159 00160 me_hs01_[ism-1] = 0; 00161 me_hs02_[ism-1] = 0; 00162 00163 me_hs05_[ism-1] = 0; 00164 me_hs06_[ism-1] = 0; 00165 00166 } 00167 00168 percentVariation_ = 0.4; 00169 00170 amplitudeThreshold_ = 10.; 00171 00172 amplitudeThresholdPnG01_ = 50.; 00173 amplitudeThresholdPnG16_ = 50.; 00174 00175 pedPnExpectedMean_[0] = 750.0; 00176 pedPnExpectedMean_[1] = 750.0; 00177 00178 pedPnDiscrepancyMean_[0] = 100.0; 00179 pedPnDiscrepancyMean_[1] = 100.0; 00180 00181 pedPnRMSThreshold_[0] = 1.0; // value at h4; expected nominal: 0.5 00182 pedPnRMSThreshold_[1] = 3.0; // value at h4; expected nominal: 1.6 00183 00184 }
EELedClient::~EELedClient | ( | ) | [virtual] |
Analyze.
Implements EEClient.
Definition at line 1266 of file EELedClient.cc.
References amplitudeThreshold_, amplitudeThresholdPnG01_, amplitudeThresholdPnG16_, cloneME_, GenMuonPlsPt100GeV_cfg::cout, debug_, dqmStore_, EcalEndcap, lat::endl(), EcalErrorMask::fetchDataSet(), MonitorElement::Fill(), DQMStore::get(), UtilsClient::getBinStatistics(), LogicID::getEcalLogicID(), UtilsClient::getFirstNonEmptyChannel(), EcalLogicID::getLogicID(), EcalErrorDictionary::getMask(), h01_, h02_, h03_, h04_, h09_, h10_, h13_, h14_, h15_, h16_, h21_, h22_, histo, hs01_, hs02_, hs05_, hs06_, i, i01_, i02_, i05_, i06_, i09_, i10_, i13_, i14_, Numbers::icEE(), ievt_, Numbers::indexEE(), Numbers::iSM(), Numbers::iTT(), Numbers::ix0EE(), Numbers::iy0EE(), jevt_, m, UtilsClient::maskBinContent(), me, me_hs01_, me_hs02_, me_hs05_, me_hs06_, mea01_, mea02_, mea05_, mea06_, meaopn01_, meaopn02_, meaopn05_, meaopn06_, meg01_, meg02_, meg05_, meg06_, meg09_, meg10_, mepnprms01_, mepnprms02_, mepnprms05_, mepnprms06_, met01_, met02_, met05_, met06_, metav01_, metav02_, metav05_, metav06_, metrms01_, metrms02_, metrms05_, metrms06_, pedPnDiscrepancyMean_, pedPnExpectedMean_, pedPnRMSThreshold_, percentVariation_, prefixME_, MonitorElement::Reset(), Numbers::sEE(), MonitorElement::setBinContent(), MonitorElement::setBinError(), MonitorElement::setEntries(), superModules_, and Numbers::validEE().
01266 { 01267 01268 ievt_++; 01269 jevt_++; 01270 if ( ievt_ % 10 == 0 ) { 01271 if ( debug_ ) cout << "EELedClient: ievt/jevt = " << ievt_ << "/" << jevt_ << endl; 01272 } 01273 01274 uint64_t bits01 = 0; 01275 bits01 |= EcalErrorDictionary::getMask("LED_MEAN_WARNING"); 01276 bits01 |= EcalErrorDictionary::getMask("LED_RMS_WARNING"); 01277 bits01 |= EcalErrorDictionary::getMask("LED_MEAN_OVER_PN_WARNING"); 01278 bits01 |= EcalErrorDictionary::getMask("LED_RMS_OVER_PN_WARNING"); 01279 01280 uint64_t bits02 = 0; 01281 bits02 |= EcalErrorDictionary::getMask("PEDESTAL_LOW_GAIN_MEAN_WARNING"); 01282 bits02 |= EcalErrorDictionary::getMask("PEDESTAL_LOW_GAIN_RMS_WARNING"); 01283 bits02 |= EcalErrorDictionary::getMask("PEDESTAL_LOW_GAIN_MEAN_ERROR"); 01284 bits02 |= EcalErrorDictionary::getMask("PEDESTAL_LOW_GAIN_RMS_ERROR"); 01285 01286 uint64_t bits03 = 0; 01287 bits03 |= EcalErrorDictionary::getMask("PEDESTAL_MIDDLE_GAIN_MEAN_WARNING"); 01288 bits03 |= EcalErrorDictionary::getMask("PEDESTAL_MIDDLE_GAIN_RMS_WARNING"); 01289 bits03 |= EcalErrorDictionary::getMask("PEDESTAL_MIDDLE_GAIN_MEAN_ERROR"); 01290 bits03 |= EcalErrorDictionary::getMask("PEDESTAL_MIDDLE_GAIN_RMS_ERROR"); 01291 01292 uint64_t bits04 = 0; 01293 bits04 |= EcalErrorDictionary::getMask("PEDESTAL_HIGH_GAIN_MEAN_WARNING"); 01294 bits04 |= EcalErrorDictionary::getMask("PEDESTAL_HIGH_GAIN_RMS_WARNING"); 01295 bits04 |= EcalErrorDictionary::getMask("PEDESTAL_HIGH_GAIN_MEAN_ERROR"); 01296 bits04 |= EcalErrorDictionary::getMask("PEDESTAL_HIGH_GAIN_RMS_ERROR"); 01297 01298 map<EcalLogicID, RunCrystalErrorsDat> mask1; 01299 map<EcalLogicID, RunPNErrorsDat> mask2; 01300 map<EcalLogicID, RunTTErrorsDat> mask3; 01301 01302 EcalErrorMask::fetchDataSet(&mask1); 01303 EcalErrorMask::fetchDataSet(&mask2); 01304 EcalErrorMask::fetchDataSet(&mask3); 01305 01306 char histo[200]; 01307 01308 MonitorElement* me; 01309 01310 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 01311 01312 int ism = superModules_[i]; 01313 01314 sprintf(histo, (prefixME_ + "/EELedTask/Led1/EELDT amplitude %s L1A").c_str(), Numbers::sEE(ism).c_str()); 01315 me = dqmStore_->get(histo); 01316 h01_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h01_[ism-1] ); 01317 01318 sprintf(histo, (prefixME_ + "/EELedTask/Led1/EELDT amplitude over PN %s L1A").c_str(), Numbers::sEE(ism).c_str()); 01319 me = dqmStore_->get(histo); 01320 h02_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h02_[ism-1] ); 01321 01322 sprintf(histo, (prefixME_ + "/EELedTask/Led2/EELDT amplitude %s L2A").c_str(), Numbers::sEE(ism).c_str()); 01323 me = dqmStore_->get(histo); 01324 h03_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h03_[ism-1] ); 01325 01326 sprintf(histo, (prefixME_ + "/EELedTask/Led2/EELDT amplitude over PN %s L2A").c_str(), Numbers::sEE(ism).c_str()); 01327 me = dqmStore_->get(histo); 01328 h04_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h04_[ism-1] ); 01329 01330 sprintf(histo, (prefixME_ + "/EELedTask/Led1/EELDT timing %s L1A").c_str(), Numbers::sEE(ism).c_str()); 01331 me = dqmStore_->get(histo); 01332 h09_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h09_[ism-1] ); 01333 01334 sprintf(histo, (prefixME_ + "/EELedTask/Led2/EELDT timing %s L2A").c_str(), Numbers::sEE(ism).c_str()); 01335 me = dqmStore_->get(histo); 01336 h10_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h10_[ism-1] ); 01337 01338 sprintf(histo, (prefixME_ + "/EELedTask/Led1/EELDT amplitude %s L1B").c_str(), Numbers::sEE(ism).c_str()); 01339 me = dqmStore_->get(histo); 01340 h13_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h13_[ism-1] ); 01341 01342 sprintf(histo, (prefixME_ + "/EELedTask/Led1/EELDT amplitude over PN %s L1B").c_str(), Numbers::sEE(ism).c_str()); 01343 me = dqmStore_->get(histo); 01344 h14_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h14_[ism-1] ); 01345 01346 sprintf(histo, (prefixME_ + "/EELedTask/Led2/EELDT amplitude %s L2B").c_str(), Numbers::sEE(ism).c_str()); 01347 me = dqmStore_->get(histo); 01348 h15_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h15_[ism-1] ); 01349 01350 sprintf(histo, (prefixME_ + "/EELedTask/Led2/EELDT amplitude over PN %s L2B").c_str(), Numbers::sEE(ism).c_str()); 01351 me = dqmStore_->get(histo); 01352 h16_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h16_[ism-1] ); 01353 01354 sprintf(histo, (prefixME_ + "/EELedTask/Led1/EELDT timing %s L1B").c_str(), Numbers::sEE(ism).c_str()); 01355 me = dqmStore_->get(histo); 01356 h21_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h21_[ism-1] ); 01357 01358 sprintf(histo, (prefixME_ + "/EELedTask/Led2/EELDT timing %s L2B").c_str(), Numbers::sEE(ism).c_str()); 01359 me = dqmStore_->get(histo); 01360 h22_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h22_[ism-1] ); 01361 01362 sprintf(histo, (prefixME_ + "/EELedTask/Led1/EELDT shape %s L1A").c_str(), Numbers::sEE(ism).c_str()); 01363 me = dqmStore_->get(histo); 01364 hs01_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, hs01_[ism-1] ); 01365 01366 sprintf(histo, (prefixME_ + "/EELedTask/Led2/EELDT shape %s L2A").c_str(), Numbers::sEE(ism).c_str()); 01367 me = dqmStore_->get(histo); 01368 hs02_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, hs02_[ism-1] ); 01369 01370 sprintf(histo, (prefixME_ + "/EELedTask/Led1/EELDT shape %s L1B").c_str(), Numbers::sEE(ism).c_str()); 01371 me = dqmStore_->get(histo); 01372 hs05_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, hs05_[ism-1] ); 01373 01374 sprintf(histo, (prefixME_ + "/EELedTask/Led2/EELDT shape %s L2B").c_str(), Numbers::sEE(ism).c_str()); 01375 me = dqmStore_->get(histo); 01376 hs06_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, hs06_[ism-1] ); 01377 01378 sprintf(histo, (prefixME_ + "/EELedTask/Led1/PN/Gain01/EEPDT PNs amplitude %s G01 L1").c_str(), Numbers::sEE(ism).c_str()); 01379 me = dqmStore_->get(histo); 01380 i01_[ism-1] = UtilsClient::getHisto<TProfile*>( me, cloneME_, i01_[ism-1] ); 01381 01382 sprintf(histo, (prefixME_ + "/EELedTask/Led2/PN/Gain01/EEPDT PNs amplitude %s G01 L2").c_str(), Numbers::sEE(ism).c_str()); 01383 me = dqmStore_->get(histo); 01384 i02_[ism-1] = UtilsClient::getHisto<TProfile*>( me, cloneME_, i02_[ism-1] ); 01385 01386 sprintf(histo, (prefixME_ + "/EELedTask/Led1/PN/Gain01/EEPDT PNs pedestal %s G01 L1").c_str(), Numbers::sEE(ism).c_str()); 01387 me = dqmStore_->get(histo); 01388 i05_[ism-1] = UtilsClient::getHisto<TProfile*>( me, cloneME_, i05_[ism-1] ); 01389 01390 sprintf(histo, (prefixME_ + "/EELedTask/Led2/PN/Gain01/EEPDT PNs pedestal %s G01 L2").c_str(), Numbers::sEE(ism).c_str()); 01391 me = dqmStore_->get(histo); 01392 i06_[ism-1] = UtilsClient::getHisto<TProfile*>( me, cloneME_, i06_[ism-1] ); 01393 01394 sprintf(histo, (prefixME_ + "/EELedTask/Led1/PN/Gain16/EEPDT PNs amplitude %s G16 L1").c_str(), Numbers::sEE(ism).c_str()); 01395 me = dqmStore_->get(histo); 01396 i09_[ism-1] = UtilsClient::getHisto<TProfile*>( me, cloneME_, i09_[ism-1] ); 01397 01398 sprintf(histo, (prefixME_ + "/EELedTask/Led2/PN/Gain16/EEPDT PNs amplitude %s G16 L2").c_str(), Numbers::sEE(ism).c_str()); 01399 me = dqmStore_->get(histo); 01400 i10_[ism-1] = UtilsClient::getHisto<TProfile*>( me, cloneME_, i10_[ism-1] ); 01401 01402 sprintf(histo, (prefixME_ + "/EELedTask/Led1/PN/Gain16/EEPDT PNs pedestal %s G16 L1").c_str(), Numbers::sEE(ism).c_str()); 01403 me = dqmStore_->get(histo); 01404 i13_[ism-1] = UtilsClient::getHisto<TProfile*>( me, cloneME_, i13_[ism-1] ); 01405 01406 sprintf(histo, (prefixME_ + "/EELedTask/Led2/PN/Gain16/EEPDT PNs pedestal %s G16 L2").c_str(), Numbers::sEE(ism).c_str()); 01407 me = dqmStore_->get(histo); 01408 i14_[ism-1] = UtilsClient::getHisto<TProfile*>( me, cloneME_, i14_[ism-1] ); 01409 01410 if ( meg01_[ism-1] ) meg01_[ism-1]->Reset(); 01411 if ( meg02_[ism-1] ) meg02_[ism-1]->Reset(); 01412 01413 if ( meg05_[ism-1] ) meg05_[ism-1]->Reset(); 01414 if ( meg06_[ism-1] ) meg06_[ism-1]->Reset(); 01415 01416 if ( meg09_[ism-1] ) meg09_[ism-1]->Reset(); 01417 if ( meg10_[ism-1] ) meg10_[ism-1]->Reset(); 01418 01419 if ( mea01_[ism-1] ) mea01_[ism-1]->Reset(); 01420 if ( mea02_[ism-1] ) mea02_[ism-1]->Reset(); 01421 01422 if ( mea05_[ism-1] ) mea05_[ism-1]->Reset(); 01423 if ( mea06_[ism-1] ) mea06_[ism-1]->Reset(); 01424 01425 if ( met01_[ism-1] ) met01_[ism-1]->Reset(); 01426 if ( met02_[ism-1] ) met02_[ism-1]->Reset(); 01427 01428 if ( met05_[ism-1] ) met05_[ism-1]->Reset(); 01429 if ( met06_[ism-1] ) met06_[ism-1]->Reset(); 01430 01431 if ( metav01_[ism-1] ) metav01_[ism-1]->Reset(); 01432 if ( metav02_[ism-1] ) metav02_[ism-1]->Reset(); 01433 01434 if ( metav05_[ism-1] ) metav05_[ism-1]->Reset(); 01435 if ( metav06_[ism-1] ) metav06_[ism-1]->Reset(); 01436 01437 if ( metrms01_[ism-1] ) metrms01_[ism-1]->Reset(); 01438 if ( metrms02_[ism-1] ) metrms02_[ism-1]->Reset(); 01439 01440 if ( metrms05_[ism-1] ) metrms05_[ism-1]->Reset(); 01441 if ( metrms06_[ism-1] ) metrms06_[ism-1]->Reset(); 01442 01443 if ( meaopn01_[ism-1] ) meaopn01_[ism-1]->Reset(); 01444 if ( meaopn02_[ism-1] ) meaopn02_[ism-1]->Reset(); 01445 01446 if ( meaopn05_[ism-1] ) meaopn05_[ism-1]->Reset(); 01447 if ( meaopn06_[ism-1] ) meaopn06_[ism-1]->Reset(); 01448 01449 if ( mepnprms01_[ism-1] ) mepnprms01_[ism-1]->Reset(); 01450 if ( mepnprms02_[ism-1] ) mepnprms02_[ism-1]->Reset(); 01451 01452 if ( mepnprms05_[ism-1] ) mepnprms05_[ism-1]->Reset(); 01453 if ( mepnprms06_[ism-1] ) mepnprms06_[ism-1]->Reset(); 01454 01455 if ( me_hs01_[ism-1] ) me_hs01_[ism-1]->Reset(); 01456 if ( me_hs02_[ism-1] ) me_hs02_[ism-1]->Reset(); 01457 01458 if ( me_hs05_[ism-1] ) me_hs05_[ism-1]->Reset(); 01459 if ( me_hs06_[ism-1] ) me_hs06_[ism-1]->Reset(); 01460 01461 float meanAmplL1A, meanAmplL2A; 01462 float meanAmplL1B, meanAmplL2B; 01463 01464 int nCryL1A, nCryL2A; 01465 int nCryL1B, nCryL2B; 01466 01467 meanAmplL1A = meanAmplL2A = 0.; 01468 meanAmplL1B = meanAmplL2B = 0.; 01469 01470 nCryL1A = nCryL2A = 0; 01471 nCryL1B = nCryL2B = 0; 01472 01473 for ( int ix = 1; ix <= 50; ix++ ) { 01474 for ( int iy = 1; iy <= 50; iy++ ) { 01475 01476 bool update01; 01477 bool update02; 01478 01479 bool update05; 01480 bool update06; 01481 01482 float num01, num02, num05, num06; 01483 float mean01, mean02, mean05, mean06; 01484 float rms01, rms02, rms05, rms06; 01485 01486 update01 = UtilsClient::getBinStatistics(h01_[ism-1], ix, iy, num01, mean01, rms01); 01487 update02 = UtilsClient::getBinStatistics(h03_[ism-1], ix, iy, num02, mean02, rms02); 01488 01489 update05 = UtilsClient::getBinStatistics(h13_[ism-1], ix, iy, num05, mean05, rms05); 01490 update06 = UtilsClient::getBinStatistics(h15_[ism-1], ix, iy, num06, mean06, rms06); 01491 01492 if ( update01 ) { 01493 meanAmplL1A += mean01; 01494 nCryL1A++; 01495 } 01496 01497 if ( update02 ) { 01498 meanAmplL2A += mean02; 01499 nCryL2A++; 01500 } 01501 01502 if ( update05 ) { 01503 meanAmplL1B += mean05; 01504 nCryL1B++; 01505 } 01506 01507 if ( update06 ) { 01508 meanAmplL2B += mean06; 01509 nCryL2B++; 01510 } 01511 01512 } 01513 } 01514 01515 if ( nCryL1A > 0 ) meanAmplL1A /= float (nCryL1A); 01516 if ( nCryL2A > 0 ) meanAmplL2A /= float (nCryL2A); 01517 01518 if ( nCryL1B > 0 ) meanAmplL1B /= float (nCryL1B); 01519 if ( nCryL2B > 0 ) meanAmplL2B /= float (nCryL2B); 01520 01521 for ( int ix = 1; ix <= 50; ix++ ) { 01522 for ( int iy = 1; iy <= 50; iy++ ) { 01523 01524 if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ix, iy, 6.); 01525 if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ix, iy, 6.); 01526 01527 int jx = ix + Numbers::ix0EE(ism); 01528 int jy = iy + Numbers::iy0EE(ism); 01529 01530 if ( ism >= 1 && ism <= 9 ) jx = 101 - jx; 01531 01532 if ( Numbers::validEE(ism, jx, jy) ) { 01533 if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ix, iy, 2.); 01534 if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ix, iy, 2.); 01535 } 01536 01537 bool update01; 01538 bool update02; 01539 bool update03; 01540 bool update04; 01541 01542 bool update09; 01543 bool update10; 01544 01545 bool update13; 01546 bool update14; 01547 bool update15; 01548 bool update16; 01549 01550 bool update21; 01551 bool update22; 01552 01553 float num01, num02, num03, num04; 01554 float num09, num10; 01555 float mean01, mean02, mean03, mean04; 01556 float mean09, mean10; 01557 float rms01, rms02, rms03, rms04; 01558 float rms09, rms10; 01559 01560 float num13, num14, num15, num16; 01561 float num21, num22; 01562 float mean13, mean14, mean15, mean16; 01563 float mean21, mean22; 01564 float rms13, rms14, rms15, rms16; 01565 float rms21, rms22; 01566 01567 update01 = UtilsClient::getBinStatistics(h01_[ism-1], ix, iy, num01, mean01, rms01); 01568 update02 = UtilsClient::getBinStatistics(h02_[ism-1], ix, iy, num02, mean02, rms02); 01569 update03 = UtilsClient::getBinStatistics(h03_[ism-1], ix, iy, num03, mean03, rms03); 01570 update04 = UtilsClient::getBinStatistics(h04_[ism-1], ix, iy, num04, mean04, rms04); 01571 01572 update09 = UtilsClient::getBinStatistics(h09_[ism-1], ix, iy, num09, mean09, rms09); 01573 update10 = UtilsClient::getBinStatistics(h10_[ism-1], ix, iy, num10, mean10, rms10); 01574 01575 // other SM half 01576 01577 update13 = UtilsClient::getBinStatistics(h13_[ism-1], ix, iy, num13, mean13, rms13); 01578 update14 = UtilsClient::getBinStatistics(h14_[ism-1], ix, iy, num14, mean14, rms14); 01579 update15 = UtilsClient::getBinStatistics(h15_[ism-1], ix, iy, num15, mean15, rms15); 01580 update16 = UtilsClient::getBinStatistics(h16_[ism-1], ix, iy, num16, mean16, rms16); 01581 01582 update21 = UtilsClient::getBinStatistics(h21_[ism-1], ix, iy, num21, mean21, rms21); 01583 update22 = UtilsClient::getBinStatistics(h22_[ism-1], ix, iy, num22, mean22, rms22); 01584 01585 if ( update01 ) { 01586 01587 float val; 01588 01589 val = 1.; 01590 if ( fabs(mean01 - meanAmplL1A) > fabs(percentVariation_ * meanAmplL1A) || mean01 < amplitudeThreshold_ ) 01591 val = 0.; 01592 if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ix, iy, val ); 01593 01594 int ic = Numbers::icEE(ism, jx, jy); 01595 01596 if ( ic != -1 ) { 01597 if ( mea01_[ism-1] ) { 01598 if ( mean01 > 0. ) { 01599 mea01_[ism-1]->setBinContent( ic, mean01 ); 01600 mea01_[ism-1]->setBinError( ic, rms01 ); 01601 } else { 01602 mea01_[ism-1]->setEntries( 1.+mea01_[ism-1]->getEntries() ); 01603 } 01604 } 01605 } 01606 01607 } 01608 01609 if ( update13 ) { 01610 01611 float val; 01612 01613 val = 1.; 01614 if ( fabs(mean13 - meanAmplL1B) > fabs(percentVariation_ * meanAmplL1B) || mean13 < amplitudeThreshold_ ) 01615 val = 0.; 01616 if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ix, iy, val ); 01617 01618 int ic = Numbers::icEE(ism, jx, jy); 01619 01620 if ( ic != -1 ) { 01621 if ( mea05_[ism-1] ) { 01622 if ( mean13 > 0. ) { 01623 mea05_[ism-1]->setBinContent( ic, mean13 ); 01624 mea05_[ism-1]->setBinError( ic, rms13 ); 01625 } else { 01626 mea05_[ism-1]->setEntries( 1.+mea05_[ism-1]->getEntries() ); 01627 } 01628 } 01629 } 01630 01631 } 01632 01633 if ( update03 ) { 01634 01635 float val; 01636 01637 val = 1.; 01638 if ( fabs(mean03 - meanAmplL2A) > fabs(percentVariation_ * meanAmplL2A) || mean03 < amplitudeThreshold_ ) 01639 val = 0.; 01640 if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ix, iy, val); 01641 01642 int ic = Numbers::icEE(ism, jx, jy); 01643 01644 if ( ic != -1 ) { 01645 if ( mea02_[ism-1] ) { 01646 if ( mean03 > 0. ) { 01647 mea02_[ism-1]->setBinContent( ic, mean03 ); 01648 mea02_[ism-1]->setBinError( ic, rms03 ); 01649 } else { 01650 mea02_[ism-1]->setEntries( 1.+mea02_[ism-1]->getEntries() ); 01651 } 01652 } 01653 } 01654 01655 } 01656 01657 if ( update15 ) { 01658 01659 float val; 01660 01661 val = 1.; 01662 if ( fabs(mean15 - meanAmplL2B) > fabs(percentVariation_ * meanAmplL2B) || mean15 < amplitudeThreshold_ ) 01663 val = 0.; 01664 if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ix, iy, val); 01665 01666 int ic = Numbers::icEE(ism, jx, jy); 01667 01668 if ( ic != -1 ) { 01669 if ( mea06_[ism-1] ) { 01670 if ( mean15 > 0. ) { 01671 mea06_[ism-1]->setBinContent( ic, mean15 ); 01672 mea06_[ism-1]->setBinError( ic, rms15 ); 01673 } else { 01674 mea06_[ism-1]->setEntries( 1.+mea06_[ism-1]->getEntries() ); 01675 } 01676 } 01677 } 01678 01679 } 01680 01681 if ( update02 ) { 01682 01683 int ic = Numbers::icEE(ism, jx, jy); 01684 01685 if ( ic != -1 ) { 01686 if ( meaopn01_[ism-1] ) { 01687 if ( mean02 > 0. ) { 01688 meaopn01_[ism-1]->setBinContent( ic, mean02 ); 01689 meaopn01_[ism-1]->setBinError( ic, rms02 ); 01690 } else { 01691 meaopn01_[ism-1]->setEntries( 1.+meaopn01_[ism-1]->getEntries() ); 01692 } 01693 } 01694 } 01695 01696 } 01697 01698 if ( update14 ) { 01699 01700 int ic = Numbers::icEE(ism, jx, jy); 01701 01702 if ( ic != -1 ) { 01703 if ( meaopn05_[ism-1] ) { 01704 if ( mean14 > 0. ) { 01705 meaopn05_[ism-1]->setBinContent( ic, mean14 ); 01706 meaopn05_[ism-1]->setBinError( ic, rms14 ); 01707 } else { 01708 meaopn05_[ism-1]->setEntries( 1.+meaopn05_[ism-1]->getEntries() ); 01709 } 01710 } 01711 } 01712 01713 } 01714 01715 if ( update04 ) { 01716 01717 int ic = Numbers::icEE(ism, jx, jy); 01718 01719 if ( ic != -1 ) { 01720 if ( meaopn02_[ism-1] ) { 01721 if ( mean04 > 0. ) { 01722 meaopn02_[ism-1]->setBinContent( ic, mean04 ); 01723 meaopn02_[ism-1]->setBinError( ic, rms04 ); 01724 } else { 01725 meaopn02_[ism-1]->setEntries( 1.+meaopn02_[ism-1]->getEntries() ); 01726 } 01727 } 01728 } 01729 01730 } 01731 01732 if ( update16 ) { 01733 01734 int ic = Numbers::icEE(ism, jx, jy); 01735 01736 if ( ic != -1 ) { 01737 if ( meaopn06_[ism-1] ) { 01738 if ( mean16 > 0. ) { 01739 meaopn06_[ism-1]->setBinContent( ic, mean16 ); 01740 meaopn06_[ism-1]->setBinError( ic, rms16 ); 01741 } else { 01742 meaopn06_[ism-1]->setEntries( 1.+meaopn06_[ism-1]->getEntries() ); 01743 } 01744 } 01745 } 01746 01747 } 01748 01749 if ( update09 ) { 01750 01751 int ic = Numbers::icEE(ism, jx, jy); 01752 01753 if ( ic != -1 ) { 01754 if ( met01_[ism-1] ) { 01755 if ( mean09 > 0. ) { 01756 met01_[ism-1]->setBinContent( ic, mean09 ); 01757 met01_[ism-1]->setBinError( ic, rms09 ); 01758 } else { 01759 met01_[ism-1]->setEntries(1.+met01_[ism-1]->getEntries()); 01760 } 01761 } 01762 01763 if ( metav01_[ism-1] ) metav01_[ism-1] ->Fill(mean09); 01764 if ( metrms01_[ism-1] ) metrms01_[ism-1]->Fill(rms09); 01765 } 01766 01767 } 01768 01769 if ( update21 ) { 01770 01771 int ic = Numbers::icEE(ism, jx, jy); 01772 01773 if ( ic != -1 ) { 01774 if ( met05_[ism-1] ) { 01775 if ( mean21 > 0. ) { 01776 met05_[ism-1]->setBinContent( ic, mean21 ); 01777 met05_[ism-1]->setBinError( ic, rms21 ); 01778 } else { 01779 met05_[ism-1]->setEntries(1.+met05_[ism-1]->getEntries()); 01780 } 01781 } 01782 01783 if ( metav05_[ism-1] ) metav05_[ism-1] ->Fill(mean21); 01784 if ( metrms05_[ism-1] ) metrms05_[ism-1]->Fill(rms21); 01785 } 01786 01787 } 01788 01789 if ( update10 ) { 01790 01791 int ic = Numbers::icEE(ism, jx, jy); 01792 01793 if ( ic != -1 ) { 01794 if ( met02_[ism-1] ) { 01795 if ( mean10 > 0. ) { 01796 met02_[ism-1]->setBinContent( ic, mean10 ); 01797 met02_[ism-1]->setBinError( ic, rms10 ); 01798 } else { 01799 met02_[ism-1]->setEntries(1.+met02_[ism-1]->getEntries()); 01800 } 01801 } 01802 01803 if ( metav02_[ism-1] ) metav02_[ism-1] ->Fill(mean10); 01804 if ( metrms02_[ism-1] ) metrms02_[ism-1]->Fill(rms10); 01805 } 01806 01807 } 01808 01809 if ( update22 ) { 01810 01811 int ic = Numbers::icEE(ism, jx, jy); 01812 01813 if ( ic != -1 ) { 01814 if ( met06_[ism-1] ) { 01815 if ( mean22 > 0. ) { 01816 met06_[ism-1]->setBinContent( ic, mean22 ); 01817 met06_[ism-1]->setBinError( ic, rms22 ); 01818 } else { 01819 met06_[ism-1]->setEntries(1.+met06_[ism-1]->getEntries()); 01820 } 01821 } 01822 01823 if ( metav06_[ism-1] ) metav06_[ism-1] ->Fill(mean22); 01824 if ( metrms06_[ism-1] ) metrms06_[ism-1]->Fill(rms22); 01825 } 01826 01827 } 01828 01829 // masking 01830 01831 if ( mask1.size() != 0 ) { 01832 map<EcalLogicID, RunCrystalErrorsDat>::const_iterator m; 01833 for (m = mask1.begin(); m != mask1.end(); m++) { 01834 01835 int jx = ix + Numbers::ix0EE(ism); 01836 int jy = iy + Numbers::iy0EE(ism); 01837 01838 if ( ism >= 1 && ism <= 9 ) jx = 101 - jx; 01839 01840 if ( ! Numbers::validEE(ism, jx, jy) ) continue; 01841 01842 int ic = Numbers::indexEE(ism, jx, jy); 01843 01844 if ( ic == -1 ) continue; 01845 01846 EcalLogicID ecid = m->first; 01847 01848 if ( ecid.getLogicID() == LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic).getLogicID() ) { 01849 if ( (m->second).getErrorBits() & bits01 ) { 01850 UtilsClient::maskBinContent( meg01_[ism-1], ix, iy ); 01851 UtilsClient::maskBinContent( meg02_[ism-1], ix, iy ); 01852 } 01853 } 01854 01855 } 01856 } 01857 01858 // TT masking 01859 01860 if ( mask3.size() != 0 ) { 01861 map<EcalLogicID, RunTTErrorsDat>::const_iterator m; 01862 for (m = mask3.begin(); m != mask3.end(); m++) { 01863 01864 EcalLogicID ecid = m->first; 01865 01866 int itt = Numbers::iTT(ism, EcalEndcap, ix, iy); 01867 01868 if ( ecid.getLogicID() == LogicID::getEcalLogicID("EE_readout_tower", Numbers::iSM(ism, EcalEndcap), itt).getLogicID() ) { 01869 if ( (m->second).getErrorBits() & bits01 ) { 01870 UtilsClient::maskBinContent( meg01_[ism-1], ix, iy ); UtilsClient::maskBinContent( meg02_[ism-1], ix, iy ); } 01871 } 01872 01873 } 01874 } 01875 01876 } 01877 } 01878 01879 for ( int i = 1; i <= 10; i++ ) { 01880 01881 if ( meg05_[ism-1] ) meg05_[ism-1]->setBinContent( i, 1, 2. ); 01882 if ( meg06_[ism-1] ) meg06_[ism-1]->setBinContent( i, 1, 2. ); 01883 01884 if ( meg09_[ism-1] ) meg09_[ism-1]->setBinContent( i, 1, 2. ); 01885 if ( meg10_[ism-1] ) meg10_[ism-1]->setBinContent( i, 1, 2. ); 01886 01887 bool update01; 01888 bool update02; 01889 01890 bool update05; 01891 bool update06; 01892 01893 bool update09; 01894 bool update10; 01895 01896 bool update13; 01897 bool update14; 01898 01899 float num01, num02, num05, num06; 01900 float num09, num10, num13, num14; 01901 float mean01, mean02, mean05, mean06; 01902 float mean09, mean10, mean13, mean14; 01903 float rms01, rms02, rms05, rms06; 01904 float rms09, rms10, rms13, rms14; 01905 01906 update01 = UtilsClient::getBinStatistics(i01_[ism-1], i, 0, num01, mean01, rms01); 01907 update02 = UtilsClient::getBinStatistics(i02_[ism-1], i, 0, num02, mean02, rms02); 01908 01909 update05 = UtilsClient::getBinStatistics(i05_[ism-1], i, 0, num05, mean05, rms05); 01910 update06 = UtilsClient::getBinStatistics(i06_[ism-1], i, 0, num06, mean06, rms06); 01911 01912 update09 = UtilsClient::getBinStatistics(i09_[ism-1], i, 0, num09, mean09, rms09); 01913 update10 = UtilsClient::getBinStatistics(i10_[ism-1], i, 0, num10, mean10, rms10); 01914 01915 update13 = UtilsClient::getBinStatistics(i13_[ism-1], i, 0, num13, mean13, rms13); 01916 update14 = UtilsClient::getBinStatistics(i14_[ism-1], i, 0, num14, mean14, rms14); 01917 01918 if ( update01 && update05 ) { 01919 01920 float val; 01921 01922 val = 1.; 01923 if ( mean01 < amplitudeThresholdPnG01_ ) 01924 val = 0.; 01925 if ( mean05 < pedPnExpectedMean_[0] - pedPnDiscrepancyMean_[0] || 01926 pedPnExpectedMean_[0] + pedPnDiscrepancyMean_[0] < mean05) 01927 val = 0.; 01928 if ( rms05 > pedPnRMSThreshold_[0] ) 01929 val = 0.; 01930 01931 if ( meg05_[ism-1] ) meg05_[ism-1]->setBinContent(i, 1, val); 01932 if ( mepnprms01_[ism-1] ) mepnprms01_[ism-1]->Fill(rms05); 01933 01934 } 01935 01936 if ( update02 && update06 ) { 01937 01938 float val; 01939 01940 val = 1.; 01941 if ( mean02 < amplitudeThresholdPnG01_ ) 01942 val = 0.; 01943 if ( mean06 < pedPnExpectedMean_[0] - pedPnDiscrepancyMean_[0] || 01944 pedPnExpectedMean_[0] + pedPnDiscrepancyMean_[0] < mean06) 01945 val = 0.; 01946 if ( rms06 > pedPnRMSThreshold_[0] ) 01947 val = 0.; 01948 01949 if ( meg06_[ism-1] ) meg06_[ism-1]->setBinContent(i, 1, val); 01950 if ( mepnprms02_[ism-1] ) mepnprms02_[ism-1]->Fill(rms06); 01951 01952 } 01953 01954 if ( update09 && update13 ) { 01955 01956 float val; 01957 01958 val = 1.; 01959 if ( mean09 < amplitudeThresholdPnG16_ ) 01960 val = 0.; 01961 if ( mean13 < pedPnExpectedMean_[1] - pedPnDiscrepancyMean_[1] || 01962 pedPnExpectedMean_[1] + pedPnDiscrepancyMean_[1] < mean13) 01963 val = 0.; 01964 if ( rms13 > pedPnRMSThreshold_[1] ) 01965 val = 0.; 01966 01967 if ( meg09_[ism-1] ) meg09_[ism-1]->setBinContent(i, 1, val); 01968 if ( mepnprms05_[ism-1] ) mepnprms05_[ism-1]->Fill(rms13); 01969 01970 } 01971 01972 if ( update10 && update14 ) { 01973 01974 float val; 01975 01976 val = 1.; 01977 if ( mean10 < amplitudeThresholdPnG16_ ) 01978 val = 0.; 01979 // if ( mean14 < pedestalThresholdPn_ ) 01980 if ( mean14 < pedPnExpectedMean_[1] - pedPnDiscrepancyMean_[1] || 01981 pedPnExpectedMean_[1] + pedPnDiscrepancyMean_[1] < mean14) 01982 val = 0.; 01983 if ( rms14 > pedPnRMSThreshold_[1] ) 01984 val = 0.; 01985 01986 if ( meg10_[ism-1] ) meg10_[ism-1]->setBinContent(i, 1, val); 01987 if ( mepnprms06_[ism-1] ) mepnprms06_[ism-1]->Fill(rms14); 01988 01989 } 01990 01991 // masking 01992 01993 if ( mask2.size() != 0 ) { 01994 map<EcalLogicID, RunPNErrorsDat>::const_iterator m; 01995 for (m = mask2.begin(); m != mask2.end(); m++) { 01996 01997 EcalLogicID ecid = m->first; 01998 01999 if ( ecid.getLogicID() == LogicID::getEcalLogicID("EE_LM_PN", Numbers::iSM(ism, EcalEndcap), i-1).getLogicID() ) { 02000 if ( (m->second).getErrorBits() & (bits01|bits02) ) { 02001 UtilsClient::maskBinContent( meg05_[ism-1], i, 1 ); 02002 UtilsClient::maskBinContent( meg06_[ism-1], i, 1 ); 02003 } 02004 if ( (m->second).getErrorBits() & (bits01|bits04) ) { 02005 UtilsClient::maskBinContent( meg09_[ism-1], i, 1 ); 02006 UtilsClient::maskBinContent( meg10_[ism-1], i, 1 ); 02007 } 02008 } 02009 02010 } 02011 } 02012 02013 } 02014 02015 for ( int i = 1; i <= 10; i++ ) { 02016 02017 if ( hs01_[ism-1] ) { 02018 int ic = UtilsClient::getFirstNonEmptyChannel( hs01_[ism-1] ); 02019 if ( me_hs01_[ism-1] ) { 02020 me_hs01_[ism-1]->setBinContent( i, hs01_[ism-1]->GetBinContent(ic, i) ); 02021 me_hs01_[ism-1]->setBinError( i, hs01_[ism-1]->GetBinError(ic, i) ); 02022 } 02023 } 02024 02025 if ( hs02_[ism-1] ) { 02026 int ic = UtilsClient::getFirstNonEmptyChannel( hs02_[ism-1] ); 02027 if ( me_hs02_[ism-1] ) { 02028 me_hs02_[ism-1]->setBinContent( i, hs02_[ism-1]->GetBinContent(ic, i) ); 02029 me_hs02_[ism-1]->setBinError( i, hs02_[ism-1]->GetBinError(ic, i) ); 02030 } 02031 } 02032 02033 if ( hs05_[ism-1] ) { 02034 int ic = UtilsClient::getFirstNonEmptyChannel( hs05_[ism-1] ); 02035 if ( me_hs05_[ism-1] ) { 02036 me_hs05_[ism-1]->setBinContent( i, hs05_[ism-1]->GetBinContent(ic, i) ); 02037 me_hs05_[ism-1]->setBinError( i, hs05_[ism-1]->GetBinError(ic, i) ); 02038 } 02039 } 02040 02041 if ( hs06_[ism-1] ) { 02042 int ic = UtilsClient::getFirstNonEmptyChannel( hs06_[ism-1] ); 02043 if ( me_hs06_[ism-1] ) { 02044 me_hs06_[ism-1]->setBinContent( i, hs06_[ism-1]->GetBinContent(ic, i) ); 02045 me_hs06_[ism-1]->setBinError( i, hs06_[ism-1]->GetBinError(ic, i) ); 02046 } 02047 } 02048 02049 } 02050 02051 } 02052 02053 }
BeginJob.
Implements EEClient.
Definition at line 190 of file EELedClient.cc.
References GenMuonPlsPt100GeV_cfg::cout, debug_, dqmStore_, lat::endl(), ievt_, and jevt_.
00190 { 00191 00192 dqmStore_ = dqmStore; 00193 00194 if ( debug_ ) cout << "EELedClient: beginJob" << endl; 00195 00196 ievt_ = 0; 00197 jevt_ = 0; 00198 00199 }
BeginRun.
Implements EEClient.
Definition at line 201 of file EELedClient.cc.
References GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), jevt_, and setup().
00201 { 00202 00203 if ( debug_ ) cout << "EELedClient: beginRun" << endl; 00204 00205 jevt_ = 0; 00206 00207 this->setup(); 00208 00209 }
Cleanup.
Implements EEClient.
Definition at line 502 of file EELedClient.cc.
References cloneME_, dqmStore_, enableCleanup_, edm::getName(), h01_, h02_, h03_, h04_, h09_, h10_, h13_, h14_, h15_, h16_, h21_, h22_, hs01_, hs02_, hs05_, hs06_, i, i01_, i02_, i05_, i06_, i09_, i10_, i13_, i14_, me_hs01_, me_hs02_, me_hs05_, me_hs06_, mea01_, mea02_, mea05_, mea06_, meaopn01_, meaopn02_, meaopn05_, meaopn06_, meg01_, meg02_, meg05_, meg06_, meg09_, meg10_, mepnprms01_, mepnprms02_, mepnprms05_, mepnprms06_, met01_, met02_, met05_, met06_, metav01_, metav02_, metav05_, metav06_, metrms01_, metrms02_, metrms05_, metrms06_, prefixME_, DQMStore::removeElement(), DQMStore::setCurrentFolder(), and superModules_.
Referenced by endJob(), and endRun().
00502 { 00503 00504 if ( ! enableCleanup_ ) return; 00505 00506 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 00507 00508 int ism = superModules_[i]; 00509 00510 if ( cloneME_ ) { 00511 if ( h01_[ism-1] ) delete h01_[ism-1]; 00512 if ( h02_[ism-1] ) delete h02_[ism-1]; 00513 if ( h03_[ism-1] ) delete h03_[ism-1]; 00514 if ( h04_[ism-1] ) delete h04_[ism-1]; 00515 00516 if ( h09_[ism-1] ) delete h09_[ism-1]; 00517 if ( h10_[ism-1] ) delete h10_[ism-1]; 00518 00519 if ( h13_[ism-1] ) delete h13_[ism-1]; 00520 if ( h14_[ism-1] ) delete h14_[ism-1]; 00521 if ( h15_[ism-1] ) delete h15_[ism-1]; 00522 if ( h16_[ism-1] ) delete h16_[ism-1]; 00523 00524 if ( h21_[ism-1] ) delete h21_[ism-1]; 00525 if ( h22_[ism-1] ) delete h22_[ism-1]; 00526 00527 if ( hs01_[ism-1] ) delete hs01_[ism-1]; 00528 if ( hs02_[ism-1] ) delete hs02_[ism-1]; 00529 00530 if ( hs05_[ism-1] ) delete hs05_[ism-1]; 00531 if ( hs06_[ism-1] ) delete hs06_[ism-1]; 00532 00533 if ( i01_[ism-1] ) delete i01_[ism-1]; 00534 if ( i02_[ism-1] ) delete i02_[ism-1]; 00535 00536 if ( i05_[ism-1] ) delete i05_[ism-1]; 00537 if ( i06_[ism-1] ) delete i06_[ism-1]; 00538 00539 if ( i09_[ism-1] ) delete i09_[ism-1]; 00540 if ( i10_[ism-1] ) delete i10_[ism-1]; 00541 00542 if ( i13_[ism-1] ) delete i13_[ism-1]; 00543 if ( i14_[ism-1] ) delete i14_[ism-1]; 00544 } 00545 00546 h01_[ism-1] = 0; 00547 h02_[ism-1] = 0; 00548 h03_[ism-1] = 0; 00549 h04_[ism-1] = 0; 00550 00551 h09_[ism-1] = 0; 00552 h10_[ism-1] = 0; 00553 00554 h13_[ism-1] = 0; 00555 h14_[ism-1] = 0; 00556 h15_[ism-1] = 0; 00557 h16_[ism-1] = 0; 00558 00559 h21_[ism-1] = 0; 00560 h22_[ism-1] = 0; 00561 00562 hs01_[ism-1] = 0; 00563 hs02_[ism-1] = 0; 00564 00565 hs05_[ism-1] = 0; 00566 hs06_[ism-1] = 0; 00567 00568 i01_[ism-1] = 0; 00569 i02_[ism-1] = 0; 00570 00571 i05_[ism-1] = 0; 00572 i06_[ism-1] = 0; 00573 00574 i09_[ism-1] = 0; 00575 i10_[ism-1] = 0; 00576 00577 i13_[ism-1] = 0; 00578 i14_[ism-1] = 0; 00579 00580 } 00581 00582 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 00583 00584 int ism = superModules_[i]; 00585 00586 dqmStore_->setCurrentFolder( prefixME_ + "/EELedClient" ); 00587 00588 if ( meg01_[ism-1] ) dqmStore_->removeElement( meg01_[ism-1]->getName() ); 00589 meg01_[ism-1] = 0; 00590 if ( meg02_[ism-1] ) dqmStore_->removeElement( meg02_[ism-1]->getName() ); 00591 meg02_[ism-1] = 0; 00592 00593 if ( meg05_[ism-1] ) dqmStore_->removeElement( meg05_[ism-1]->getName() ); 00594 meg05_[ism-1] = 0; 00595 if ( meg06_[ism-1] ) dqmStore_->removeElement( meg06_[ism-1]->getName() ); 00596 meg06_[ism-1] = 0; 00597 00598 if ( meg09_[ism-1] ) dqmStore_->removeElement( meg09_[ism-1]->getName() ); 00599 meg09_[ism-1] = 0; 00600 if ( meg10_[ism-1] ) dqmStore_->removeElement( meg10_[ism-1]->getName() ); 00601 meg10_[ism-1] = 0; 00602 00603 if ( mea01_[ism-1] ) dqmStore_->removeElement( mea01_[ism-1]->getName() ); 00604 mea01_[ism-1] = 0; 00605 if ( mea02_[ism-1] ) dqmStore_->removeElement( mea02_[ism-1]->getName() ); 00606 mea02_[ism-1] = 0; 00607 00608 if ( mea05_[ism-1] ) dqmStore_->removeElement( mea05_[ism-1]->getName() ); 00609 mea05_[ism-1] = 0; 00610 if ( mea06_[ism-1] ) dqmStore_->removeElement( mea06_[ism-1]->getName() ); 00611 mea06_[ism-1] = 0; 00612 00613 if ( met01_[ism-1] ) dqmStore_->removeElement( met01_[ism-1]->getName() ); 00614 met01_[ism-1] = 0; 00615 if ( met02_[ism-1] ) dqmStore_->removeElement( met02_[ism-1]->getName() ); 00616 met02_[ism-1] = 0; 00617 00618 if ( met05_[ism-1] ) dqmStore_->removeElement( met05_[ism-1]->getName() ); 00619 met05_[ism-1] = 0; 00620 if ( met06_[ism-1] ) dqmStore_->removeElement( met06_[ism-1]->getName() ); 00621 met06_[ism-1] = 0; 00622 00623 if ( metav01_[ism-1] ) dqmStore_->removeElement( metav01_[ism-1]->getName() ); 00624 metav01_[ism-1] = 0; 00625 if ( metav02_[ism-1] ) dqmStore_->removeElement( metav02_[ism-1]->getName() ); 00626 metav02_[ism-1] = 0; 00627 00628 if ( metav05_[ism-1] ) dqmStore_->removeElement( metav05_[ism-1]->getName() ); 00629 metav05_[ism-1] = 0; 00630 if ( metav06_[ism-1] ) dqmStore_->removeElement( metav06_[ism-1]->getName() ); 00631 metav06_[ism-1] = 0; 00632 00633 if ( metrms01_[ism-1] ) dqmStore_->removeElement( metrms01_[ism-1]->getName() ); 00634 metrms01_[ism-1] = 0; 00635 if ( metrms02_[ism-1] ) dqmStore_->removeElement( metrms02_[ism-1]->getName() ); 00636 metrms02_[ism-1] = 0; 00637 00638 if ( metrms05_[ism-1] ) dqmStore_->removeElement( metrms05_[ism-1]->getName() ); 00639 metrms05_[ism-1] = 0; 00640 if ( metrms06_[ism-1] ) dqmStore_->removeElement( metrms06_[ism-1]->getName() ); 00641 metrms06_[ism-1] = 0; 00642 00643 if ( meaopn01_[ism-1] ) dqmStore_->removeElement( meaopn01_[ism-1]->getName() ); 00644 meaopn01_[ism-1] = 0; 00645 if ( meaopn02_[ism-1] ) dqmStore_->removeElement( meaopn02_[ism-1]->getName() ); 00646 meaopn02_[ism-1] = 0; 00647 00648 if ( meaopn05_[ism-1] ) dqmStore_->removeElement( meaopn05_[ism-1]->getName() ); 00649 meaopn05_[ism-1] = 0; 00650 if ( meaopn06_[ism-1] ) dqmStore_->removeElement( meaopn06_[ism-1]->getName() ); 00651 meaopn06_[ism-1] = 0; 00652 00653 if ( mepnprms01_[ism-1] ) dqmStore_->removeElement( mepnprms01_[ism-1]->getName() ); 00654 mepnprms01_[ism-1] = 0; 00655 if ( mepnprms02_[ism-1] ) dqmStore_->removeElement( mepnprms02_[ism-1]->getName() ); 00656 mepnprms02_[ism-1] = 0; 00657 00658 if ( mepnprms05_[ism-1] ) dqmStore_->removeElement( mepnprms05_[ism-1]->getName() ); 00659 mepnprms05_[ism-1] = 0; 00660 if ( mepnprms06_[ism-1] ) dqmStore_->removeElement( mepnprms06_[ism-1]->getName() ); 00661 mepnprms06_[ism-1] = 0; 00662 00663 if ( me_hs01_[ism-1] ) dqmStore_->removeElement( me_hs01_[ism-1]->getName() ); 00664 me_hs01_[ism-1] = 0; 00665 if ( me_hs02_[ism-1] ) dqmStore_->removeElement( me_hs02_[ism-1]->getName() ); 00666 me_hs02_[ism-1] = 0; 00667 00668 if ( me_hs05_[ism-1] ) dqmStore_->removeElement( me_hs05_[ism-1]->getName() ); 00669 me_hs05_[ism-1] = 0; 00670 if ( me_hs06_[ism-1] ) dqmStore_->removeElement( me_hs06_[ism-1]->getName() ); 00671 me_hs06_[ism-1] = 0; 00672 00673 } 00674 00675 }
EndJob.
Implements EEClient.
Definition at line 211 of file EELedClient.cc.
References cleanup(), GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), and ievt_.
00211 { 00212 00213 if ( debug_ ) cout << "EELedClient: endJob, ievt = " << ievt_ << endl; 00214 00215 this->cleanup(); 00216 00217 }
EndRun.
Implements EEClient.
Definition at line 219 of file EELedClient.cc.
References cleanup(), GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), and jevt_.
00219 { 00220 00221 if ( debug_ ) cout << "EELedClient: endRun, jevt = " << jevt_ << endl; 00222 00223 this->cleanup(); 00224 00225 }
Get Functions.
Implements EEClient.
Definition at line 73 of file EELedClient.h.
References ievt_.
00073 { return ievt_; }
Setup.
Implements EEClient.
Definition at line 227 of file EELedClient.cc.
References DQMStore::book1D(), DQMStore::book2D(), dqmStore_, edm::getName(), histo, i, Numbers::ix0EE(), Numbers::iy0EE(), me_hs01_, me_hs02_, me_hs05_, me_hs06_, mea01_, mea02_, mea05_, mea06_, meaopn01_, meaopn02_, meaopn05_, meaopn06_, meg01_, meg02_, meg05_, meg06_, meg09_, meg10_, mepnprms01_, mepnprms02_, mepnprms05_, mepnprms06_, met01_, met02_, met05_, met06_, metav01_, metav02_, metav05_, metav06_, metrms01_, metrms02_, metrms05_, metrms06_, prefixME_, DQMStore::removeElement(), MonitorElement::Reset(), Numbers::sEE(), MonitorElement::setAxisTitle(), MonitorElement::setBinContent(), DQMStore::setCurrentFolder(), superModules_, and Numbers::validEE().
Referenced by beginRun().
00227 { 00228 00229 char histo[200]; 00230 00231 dqmStore_->setCurrentFolder( prefixME_ + "/EELedClient" ); 00232 00233 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 00234 00235 int ism = superModules_[i]; 00236 00237 if ( meg01_[ism-1] ) dqmStore_->removeElement( meg01_[ism-1]->getName() ); 00238 sprintf(histo, "EELDT led quality L1 %s", Numbers::sEE(ism).c_str()); 00239 meg01_[ism-1] = dqmStore_->book2D(histo, histo, 50, Numbers::ix0EE(ism)+0., Numbers::ix0EE(ism)+50., 50, Numbers::iy0EE(ism)+0., Numbers::iy0EE(ism)+50.); 00240 meg01_[ism-1]->setAxisTitle("jx", 1); 00241 meg01_[ism-1]->setAxisTitle("jy", 2); 00242 if ( meg02_[ism-1] ) dqmStore_->removeElement( meg02_[ism-1]->getName() ); 00243 sprintf(histo, "EELDT led quality L2 %s", Numbers::sEE(ism).c_str()); 00244 meg02_[ism-1] = dqmStore_->book2D(histo, histo, 50, Numbers::ix0EE(ism)+0., Numbers::ix0EE(ism)+50., 50, Numbers::iy0EE(ism)+0., Numbers::iy0EE(ism)+50.); 00245 meg02_[ism-1]->setAxisTitle("jx", 1); 00246 meg02_[ism-1]->setAxisTitle("jy", 2); 00247 00248 if ( meg05_[ism-1] ) dqmStore_->removeElement( meg05_[ism-1]->getName() ); 00249 sprintf(histo, "EELDT led quality L1 PNs G01 %s", Numbers::sEE(ism).c_str()); 00250 meg05_[ism-1] = dqmStore_->book2D(histo, histo, 10, 0., 10., 1, 0., 5.); 00251 meg05_[ism-1]->setAxisTitle("pseudo-strip", 1); 00252 meg05_[ism-1]->setAxisTitle("channel", 2); 00253 if ( meg06_[ism-1] ) dqmStore_->removeElement( meg06_[ism-1]->getName() ); 00254 sprintf(histo, "EELDT led quality L2 PNs G01 %s", Numbers::sEE(ism).c_str()); 00255 meg06_[ism-1] = dqmStore_->book2D(histo, histo, 10, 0., 10., 1, 0., 5.); 00256 meg06_[ism-1]->setAxisTitle("pseudo-strip", 1); 00257 meg06_[ism-1]->setAxisTitle("channel", 2); 00258 00259 if ( meg09_[ism-1] ) dqmStore_->removeElement( meg09_[ism-1]->getName() ); 00260 sprintf(histo, "EELDT led quality L1 PNs G16 %s", Numbers::sEE(ism).c_str()); 00261 meg09_[ism-1] = dqmStore_->book2D(histo, histo, 10, 0., 10., 1, 0., 5.); 00262 meg09_[ism-1]->setAxisTitle("pseudo-strip", 1); 00263 meg09_[ism-1]->setAxisTitle("channel", 2); 00264 if ( meg10_[ism-1] ) dqmStore_->removeElement( meg10_[ism-1]->getName() ); 00265 sprintf(histo, "EELDT led quality L2 PNs G16 %s", Numbers::sEE(ism).c_str()); 00266 meg10_[ism-1] = dqmStore_->book2D(histo, histo, 10, 0., 10., 1, 0., 5.); 00267 meg10_[ism-1]->setAxisTitle("pseudo-strip", 1); 00268 meg10_[ism-1]->setAxisTitle("channel", 2); 00269 00270 if ( mea01_[ism-1] ) dqmStore_->removeElement( mea01_[ism-1]->getName() );; 00271 sprintf(histo, "EELDT amplitude L1A %s", Numbers::sEE(ism).c_str()); 00272 mea01_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00273 mea01_[ism-1]->setAxisTitle("channel", 1); 00274 mea01_[ism-1]->setAxisTitle("amplitude", 2); 00275 if ( mea02_[ism-1] ) dqmStore_->removeElement( mea02_[ism-1]->getName() ); 00276 sprintf(histo, "EELDT amplitude L2A %s", Numbers::sEE(ism).c_str()); 00277 mea02_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00278 mea02_[ism-1]->setAxisTitle("channel", 1); 00279 mea02_[ism-1]->setAxisTitle("amplitude", 2); 00280 00281 if ( mea05_[ism-1] ) dqmStore_->removeElement( mea05_[ism-1]->getName() );; 00282 sprintf(histo, "EELDT amplitude L1B %s", Numbers::sEE(ism).c_str()); 00283 mea05_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00284 mea05_[ism-1]->setAxisTitle("channel", 1); 00285 mea05_[ism-1]->setAxisTitle("amplitude", 2); 00286 if ( mea06_[ism-1] ) dqmStore_->removeElement( mea06_[ism-1]->getName() ); 00287 sprintf(histo, "EELDT amplitude L2B %s", Numbers::sEE(ism).c_str()); 00288 mea06_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00289 mea06_[ism-1]->setAxisTitle("channel", 1); 00290 mea06_[ism-1]->setAxisTitle("amplitude", 2); 00291 00292 if ( met01_[ism-1] ) dqmStore_->removeElement( met01_[ism-1]->getName() ); 00293 sprintf(histo, "EELDT led timing L1A %s", Numbers::sEE(ism).c_str()); 00294 met01_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00295 met01_[ism-1]->setAxisTitle("channel", 1); 00296 met01_[ism-1]->setAxisTitle("jitter", 2); 00297 if ( met02_[ism-1] ) dqmStore_->removeElement( met02_[ism-1]->getName() ); 00298 sprintf(histo, "EELDT led timing L2A %s", Numbers::sEE(ism).c_str()); 00299 met02_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00300 met02_[ism-1]->setAxisTitle("channel", 1); 00301 met02_[ism-1]->setAxisTitle("jitter", 2); 00302 00303 if ( met05_[ism-1] ) dqmStore_->removeElement( met05_[ism-1]->getName() ); 00304 sprintf(histo, "EELDT led timing L1B %s", Numbers::sEE(ism).c_str()); 00305 met05_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00306 met05_[ism-1]->setAxisTitle("channel", 1); 00307 met05_[ism-1]->setAxisTitle("jitter", 2); 00308 if ( met06_[ism-1] ) dqmStore_->removeElement( met06_[ism-1]->getName() ); 00309 sprintf(histo, "EELDT led timing L2B %s", Numbers::sEE(ism).c_str()); 00310 met06_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00311 met06_[ism-1]->setAxisTitle("channel", 1); 00312 met06_[ism-1]->setAxisTitle("jitter", 2); 00313 00314 if ( metav01_[ism-1] ) dqmStore_->removeElement( metav01_[ism-1]->getName() ); 00315 sprintf(histo, "EELDT led timing mean L1A %s", Numbers::sEE(ism).c_str()); 00316 metav01_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 10.); 00317 metav01_[ism-1]->setAxisTitle("mean", 1); 00318 if ( metav02_[ism-1] ) dqmStore_->removeElement( metav02_[ism-1]->getName() ); 00319 sprintf(histo, "EELDT led timing mean L2A %s", Numbers::sEE(ism).c_str()); 00320 metav02_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 10.); 00321 metav02_[ism-1]->setAxisTitle("mean", 1); 00322 00323 if ( metav05_[ism-1] ) dqmStore_->removeElement( metav05_[ism-1]->getName() ); 00324 sprintf(histo, "EELDT led timing mean L1B %s", Numbers::sEE(ism).c_str()); 00325 metav05_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 10.); 00326 metav05_[ism-1]->setAxisTitle("mean", 1); 00327 if ( metav06_[ism-1] ) dqmStore_->removeElement( metav06_[ism-1]->getName() ); 00328 sprintf(histo, "EELDT led timing mean L2B %s", Numbers::sEE(ism).c_str()); 00329 metav06_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 10.); 00330 metav06_[ism-1]->setAxisTitle("mean", 1); 00331 00332 if ( metrms01_[ism-1] ) dqmStore_->removeElement( metrms01_[ism-1]->getName() ); 00333 sprintf(histo, "EELDT led timing rms L1A %s", Numbers::sEE(ism).c_str()); 00334 metrms01_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 0.5); 00335 metrms01_[ism-1]->setAxisTitle("rms", 1); 00336 if ( metrms02_[ism-1] ) dqmStore_->removeElement( metrms02_[ism-1]->getName() ); 00337 sprintf(histo, "EELDT led timing rms L2A %s", Numbers::sEE(ism).c_str()); 00338 metrms02_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 0.5); 00339 metrms02_[ism-1]->setAxisTitle("rms", 1); 00340 00341 if ( metrms05_[ism-1] ) dqmStore_->removeElement( metrms05_[ism-1]->getName() ); 00342 sprintf(histo, "EELDT led timing rms L1B %s", Numbers::sEE(ism).c_str()); 00343 metrms05_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 0.5); 00344 metrms05_[ism-1]->setAxisTitle("rms", 1); 00345 if ( metrms06_[ism-1] ) dqmStore_->removeElement( metrms06_[ism-1]->getName() ); 00346 sprintf(histo, "EELDT led timing rms L2B %s", Numbers::sEE(ism).c_str()); 00347 metrms06_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 0.5); 00348 metrms06_[ism-1]->setAxisTitle("rms", 1); 00349 00350 if ( meaopn01_[ism-1] ) dqmStore_->removeElement( meaopn01_[ism-1]->getName() ); 00351 sprintf(histo, "EELDT amplitude over PN L1A %s", Numbers::sEE(ism).c_str()); 00352 meaopn01_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00353 meaopn01_[ism-1]->setAxisTitle("channel", 1); 00354 meaopn01_[ism-1]->setAxisTitle("amplitude/PN", 2); 00355 if ( meaopn02_[ism-1] ) dqmStore_->removeElement( meaopn02_[ism-1]->getName() ); 00356 sprintf(histo, "EELDT amplitude over PN L2A %s", Numbers::sEE(ism).c_str()); 00357 meaopn02_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00358 meaopn02_[ism-1]->setAxisTitle("channel", 1); 00359 meaopn02_[ism-1]->setAxisTitle("amplitude/PN", 2); 00360 00361 if ( meaopn05_[ism-1] ) dqmStore_->removeElement( meaopn05_[ism-1]->getName() ); 00362 sprintf(histo, "EELDT amplitude over PN L1B %s", Numbers::sEE(ism).c_str()); 00363 meaopn05_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00364 meaopn05_[ism-1]->setAxisTitle("channel", 1); 00365 meaopn05_[ism-1]->setAxisTitle("amplitude/PN", 2); 00366 if ( meaopn06_[ism-1] ) dqmStore_->removeElement( meaopn06_[ism-1]->getName() ); 00367 sprintf(histo, "EELDT amplitude over PN L2B %s", Numbers::sEE(ism).c_str()); 00368 meaopn06_[ism-1] = dqmStore_->book1D(histo, histo, 850, 0., 850.); 00369 meaopn06_[ism-1]->setAxisTitle("channel", 1); 00370 meaopn06_[ism-1]->setAxisTitle("amplitude/PN", 2); 00371 00372 if ( mepnprms01_[ism-1] ) dqmStore_->removeElement( mepnprms01_[ism-1]->getName() ); 00373 sprintf(histo, "EEPDT PNs pedestal rms %s G01 L1", Numbers::sEE(ism).c_str()); 00374 mepnprms01_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 10.); 00375 mepnprms01_[ism-1]->setAxisTitle("rms", 1); 00376 if ( mepnprms02_[ism-1] ) dqmStore_->removeElement( mepnprms02_[ism-1]->getName() ); 00377 sprintf(histo, "EEPDT PNs pedestal rms %s G01 L2", Numbers::sEE(ism).c_str()); 00378 mepnprms02_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 10.); 00379 mepnprms02_[ism-1]->setAxisTitle("rms", 1); 00380 00381 if ( mepnprms05_[ism-1] ) dqmStore_->removeElement( mepnprms05_[ism-1]->getName() ); 00382 sprintf(histo, "EEPDT PNs pedestal rms %s G16 L1", Numbers::sEE(ism).c_str()); 00383 mepnprms05_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 10.); 00384 mepnprms05_[ism-1]->setAxisTitle("rms", 1); 00385 if ( mepnprms06_[ism-1] ) dqmStore_->removeElement( mepnprms06_[ism-1]->getName() ); 00386 sprintf(histo, "EEPDT PNs pedestal rms %s G16 L2", Numbers::sEE(ism).c_str()); 00387 mepnprms06_[ism-1] = dqmStore_->book1D(histo, histo, 100, 0., 10.); 00388 mepnprms06_[ism-1]->setAxisTitle("rms", 1); 00389 00390 if ( me_hs01_[ism-1] ) dqmStore_->removeElement( me_hs01_[ism-1]->getName() ); 00391 sprintf(histo, "EELDT led shape L1A %s", Numbers::sEE(ism).c_str()); 00392 me_hs01_[ism-1] = dqmStore_->book1D(histo, histo, 10, 0., 10.); 00393 me_hs01_[ism-1]->setAxisTitle("sample", 1); 00394 me_hs01_[ism-1]->setAxisTitle("amplitude", 2); 00395 if ( me_hs02_[ism-1] ) dqmStore_->removeElement( me_hs02_[ism-1]->getName() ); 00396 sprintf(histo, "EELDT led shape L2A %s", Numbers::sEE(ism).c_str()); 00397 me_hs02_[ism-1] = dqmStore_->book1D(histo, histo, 10, 0., 10.); 00398 me_hs02_[ism-1]->setAxisTitle("sample", 1); 00399 me_hs02_[ism-1]->setAxisTitle("amplitude", 2); 00400 00401 if ( me_hs05_[ism-1] ) dqmStore_->removeElement( me_hs05_[ism-1]->getName() ); 00402 sprintf(histo, "EELDT led shape L1B %s", Numbers::sEE(ism).c_str()); 00403 me_hs05_[ism-1] = dqmStore_->book1D(histo, histo, 10, 0., 10.); 00404 me_hs05_[ism-1]->setAxisTitle("sample", 1); 00405 me_hs05_[ism-1]->setAxisTitle("amplitude", 2); 00406 if ( me_hs06_[ism-1] ) dqmStore_->removeElement( me_hs06_[ism-1]->getName() ); 00407 sprintf(histo, "EELDT led shape L2B %s", Numbers::sEE(ism).c_str()); 00408 me_hs06_[ism-1] = dqmStore_->book1D(histo, histo, 10, 0., 10.); 00409 me_hs06_[ism-1]->setAxisTitle("sample", 1); 00410 me_hs06_[ism-1]->setAxisTitle("amplitude", 2); 00411 00412 } 00413 00414 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 00415 00416 int ism = superModules_[i]; 00417 00418 if ( meg01_[ism-1] ) meg01_[ism-1]->Reset(); 00419 if ( meg02_[ism-1] ) meg02_[ism-1]->Reset(); 00420 00421 if ( meg05_[ism-1] ) meg05_[ism-1]->Reset(); 00422 if ( meg06_[ism-1] ) meg06_[ism-1]->Reset(); 00423 00424 if ( meg09_[ism-1] ) meg09_[ism-1]->Reset(); 00425 if ( meg10_[ism-1] ) meg10_[ism-1]->Reset(); 00426 00427 for ( int ix = 1; ix <= 50; ix++ ) { 00428 for ( int iy = 1; iy <= 50; iy++ ) { 00429 00430 if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ix, iy, 6. ); 00431 if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ix, iy, 6. ); 00432 00433 int jx = ix + Numbers::ix0EE(ism); 00434 int jy = iy + Numbers::iy0EE(ism); 00435 00436 if ( ism >= 1 && ism <= 9 ) jx = 101 - jx; 00437 00438 if ( Numbers::validEE(ism, jx, jy) ) { 00439 if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ix, iy, 2. ); 00440 if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ix, iy, 2. ); 00441 } 00442 00443 } 00444 } 00445 00446 for ( int i = 1; i <= 10; i++ ) { 00447 00448 if ( meg05_[ism-1] ) meg05_[ism-1]->setBinContent( i, 1, 2. ); 00449 if ( meg06_[ism-1] ) meg06_[ism-1]->setBinContent( i, 1, 2. ); 00450 00451 if ( meg09_[ism-1] ) meg09_[ism-1]->setBinContent( i, 1, 2. ); 00452 if ( meg10_[ism-1] ) meg10_[ism-1]->setBinContent( i, 1, 2. ); 00453 00454 } 00455 00456 if ( mea01_[ism-1] ) mea01_[ism-1]->Reset(); 00457 if ( mea02_[ism-1] ) mea02_[ism-1]->Reset(); 00458 00459 if ( mea05_[ism-1] ) mea05_[ism-1]->Reset(); 00460 if ( mea06_[ism-1] ) mea06_[ism-1]->Reset(); 00461 00462 if ( met01_[ism-1] ) met01_[ism-1]->Reset(); 00463 if ( met02_[ism-1] ) met02_[ism-1]->Reset(); 00464 00465 if ( met05_[ism-1] ) met05_[ism-1]->Reset(); 00466 if ( met06_[ism-1] ) met06_[ism-1]->Reset(); 00467 00468 if ( metav01_[ism-1] ) metav01_[ism-1]->Reset(); 00469 if ( metav02_[ism-1] ) metav02_[ism-1]->Reset(); 00470 00471 if ( metav05_[ism-1] ) metav05_[ism-1]->Reset(); 00472 if ( metav06_[ism-1] ) metav06_[ism-1]->Reset(); 00473 00474 if ( metrms01_[ism-1] ) metrms01_[ism-1]->Reset(); 00475 if ( metrms02_[ism-1] ) metrms02_[ism-1]->Reset(); 00476 00477 if ( metrms05_[ism-1] ) metrms05_[ism-1]->Reset(); 00478 if ( metrms06_[ism-1] ) metrms06_[ism-1]->Reset(); 00479 00480 if ( meaopn01_[ism-1] ) meaopn01_[ism-1]->Reset(); 00481 if ( meaopn02_[ism-1] ) meaopn02_[ism-1]->Reset(); 00482 00483 if ( meaopn05_[ism-1] ) meaopn05_[ism-1]->Reset(); 00484 if ( meaopn06_[ism-1] ) meaopn06_[ism-1]->Reset(); 00485 00486 if ( mepnprms01_[ism-1] ) mepnprms01_[ism-1]->Reset(); 00487 if ( mepnprms02_[ism-1] ) mepnprms02_[ism-1]->Reset(); 00488 00489 if ( mepnprms05_[ism-1] ) mepnprms05_[ism-1]->Reset(); 00490 if ( mepnprms06_[ism-1] ) mepnprms06_[ism-1]->Reset(); 00491 00492 if ( me_hs01_[ism-1] ) me_hs01_[ism-1]->Reset(); 00493 if ( me_hs02_[ism-1] ) me_hs02_[ism-1]->Reset(); 00494 00495 if ( me_hs05_[ism-1] ) me_hs05_[ism-1]->Reset(); 00496 if ( me_hs06_[ism-1] ) me_hs06_[ism-1]->Reset(); 00497 00498 } 00499 00500 }
bool EELedClient::writeDb | ( | EcalCondDBInterface * | econn, | |
RunIOV * | runiov, | |||
MonRunIOV * | moniov, | |||
bool & | status, | |||
bool | flag | |||
) | [virtual] |
WriteDB.
Implements EEClient.
Definition at line 677 of file EELedClient.cc.
References TestMuL1L2Filter_cff::cerr, GenMuonPlsPt100GeV_cfg::cout, e, EcalEndcap, lat::endl(), UtilsClient::getBinQuality(), UtilsClient::getBinStatistics(), UtilsClient::getBinStatus(), LogicID::getEcalLogicID(), h01_, h02_, h03_, h04_, h09_, h10_, h13_, h14_, h15_, h16_, h21_, h22_, i, i01_, i02_, i05_, i06_, i09_, i10_, i13_, i14_, Numbers::icEE(), Numbers::indexEE(), EcalCondDBInterface::insertDataArraySet(), Numbers::iSM(), Numbers::ix0EE(), Numbers::iy0EE(), meg01_, meg02_, meg05_, meg06_, meg09_, meg10_, UtilsClient::printBadChannels(), Numbers::sEE(), MonPNLed1Dat::setADCMeanG1(), MonPNLed2Dat::setADCMeanG1(), MonPNLed1Dat::setADCMeanG16(), MonPNLed2Dat::setADCMeanG16(), MonPNLed2Dat::setADCRMSG1(), MonPNLed1Dat::setADCRMSG1(), MonPNLed1Dat::setADCRMSG16(), MonPNLed2Dat::setADCRMSG16(), MonPNLed2Dat::setPedMeanG1(), MonPNLed1Dat::setPedMeanG1(), MonPNLed2Dat::setPedMeanG16(), MonPNLed1Dat::setPedMeanG16(), MonPNLed2Dat::setPedRMSG1(), MonPNLed1Dat::setPedRMSG1(), MonPNLed1Dat::setPedRMSG16(), MonPNLed2Dat::setPedRMSG16(), MonLed1Dat::setTaskStatus(), MonPNLed1Dat::setTaskStatus(), ITimingDat::setTaskStatus(), MonPNLed2Dat::setTaskStatus(), MonLed2Dat::setTaskStatus(), ITimingDat::setTimingMean(), ITimingDat::setTimingRMS(), MonLed1Dat::setVPTMean(), MonLed2Dat::setVPTMean(), MonLed1Dat::setVPTOverPNMean(), MonLed2Dat::setVPTOverPNMean(), MonLed2Dat::setVPTOverPNRMS(), MonLed1Dat::setVPTOverPNRMS(), MonLed1Dat::setVPTRMS(), MonLed2Dat::setVPTRMS(), superModules_, Numbers::validEE(), and verbose_.
00677 { 00678 00679 status = true; 00680 00681 if ( ! flag ) return false; 00682 00683 EcalLogicID ecid; 00684 00685 MonLed1Dat vpt_l1; 00686 map<EcalLogicID, MonLed1Dat> dataset1_l1; 00687 MonLed2Dat vpt_l2; 00688 map<EcalLogicID, MonLed2Dat> dataset1_l2; 00689 00690 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 00691 00692 int ism = superModules_[i]; 00693 00694 if ( verbose_ ) { 00695 cout << " " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 00696 cout << endl; 00697 } 00698 00699 if ( verbose_ ) { 00700 UtilsClient::printBadChannels(meg01_[ism-1], h01_[ism-1]); 00701 UtilsClient::printBadChannels(meg01_[ism-1], h13_[ism-1]); 00702 UtilsClient::printBadChannels(meg02_[ism-1], h03_[ism-1]); 00703 UtilsClient::printBadChannels(meg02_[ism-1], h15_[ism-1]); 00704 } 00705 00706 for ( int ix = 1; ix <= 50; ix++ ) { 00707 for ( int iy = 1; iy <= 50; iy++ ) { 00708 00709 int jx = ix + Numbers::ix0EE(ism); 00710 int jy = iy + Numbers::iy0EE(ism); 00711 00712 if ( ism >= 1 && ism <= 9 ) jx = 101 - jx; 00713 00714 if ( ! Numbers::validEE(ism, jx, jy) ) continue; 00715 00716 bool update01; 00717 bool update02; 00718 bool update03; 00719 bool update04; 00720 00721 bool update09; 00722 bool update10; 00723 bool update11; 00724 bool update12; 00725 00726 float num01, num02, num03, num04; 00727 float mean01, mean02, mean03, mean04; 00728 float rms01, rms02, rms03, rms04; 00729 00730 float num09, num10, num11, num12; 00731 float mean09, mean10, mean11, mean12; 00732 float rms09, rms10, rms11, rms12; 00733 00734 update01 = UtilsClient::getBinStatistics(h01_[ism-1], ix, iy, num01, mean01, rms01); 00735 update02 = UtilsClient::getBinStatistics(h02_[ism-1], ix, iy, num02, mean02, rms02); 00736 update03 = UtilsClient::getBinStatistics(h03_[ism-1], ix, iy, num03, mean03, rms03); 00737 update04 = UtilsClient::getBinStatistics(h04_[ism-1], ix, iy, num04, mean04, rms04); 00738 00739 update09 = UtilsClient::getBinStatistics(h13_[ism-1], ix, iy, num09, mean09, rms09); 00740 update10 = UtilsClient::getBinStatistics(h14_[ism-1], ix, iy, num10, mean10, rms10); 00741 update11 = UtilsClient::getBinStatistics(h15_[ism-1], ix, iy, num11, mean11, rms11); 00742 update12 = UtilsClient::getBinStatistics(h16_[ism-1], ix, iy, num12, mean12, rms12); 00743 00744 if ( update01 || update02 ) { 00745 00746 if ( Numbers::icEE(ism, jx, jy) == 1 ) { 00747 00748 if ( verbose_ ) { 00749 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 00750 cout << "L1A (" << Numbers::ix0EE(i+1)+ix << "," << Numbers::iy0EE(i+1)+iy << ") " << num01 << " " << mean01 << " " << rms01 << endl; 00751 cout << endl; 00752 } 00753 00754 } 00755 00756 vpt_l1.setVPTMean(mean01); 00757 vpt_l1.setVPTRMS(rms01); 00758 00759 vpt_l1.setVPTOverPNMean(mean02); 00760 vpt_l1.setVPTOverPNRMS(rms02); 00761 00762 if ( UtilsClient::getBinStatus(meg01_[ism-1], ix, iy) ) { 00763 vpt_l1.setTaskStatus(true); 00764 } else { 00765 vpt_l1.setTaskStatus(false); 00766 } 00767 00768 status = status && UtilsClient::getBinQuality(meg01_[ism-1], ix, iy); 00769 00770 int ic = Numbers::indexEE(ism, jx, jy); 00771 00772 if ( ic == -1 ) continue; 00773 00774 if ( econn ) { 00775 ecid = LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic); 00776 dataset1_l1[ecid] = vpt_l1; 00777 } 00778 00779 } 00780 00781 if ( update09 || update10 ) { 00782 00783 if ( Numbers::icEE(ism, jx, jy) == 1 ) { 00784 00785 if ( verbose_ ) { 00786 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 00787 cout << "L1B (" << Numbers::ix0EE(i+1)+ix << "," << Numbers::iy0EE(i+1)+iy << ") " << num09 << " " << mean09 << " " << rms09 << endl; 00788 cout << endl; 00789 } 00790 00791 } 00792 00793 vpt_l1.setVPTMean(mean09); 00794 vpt_l1.setVPTRMS(rms09); 00795 00796 vpt_l1.setVPTOverPNMean(mean10); 00797 vpt_l1.setVPTOverPNRMS(rms10); 00798 00799 if ( UtilsClient::getBinStatus(meg01_[ism-1], ix, iy) ) { 00800 vpt_l1.setTaskStatus(true); 00801 } else { 00802 vpt_l1.setTaskStatus(false); 00803 } 00804 00805 status = status && UtilsClient::getBinQuality(meg01_[ism-1], ix, iy); 00806 00807 int ic = Numbers::indexEE(ism, jx, jy); 00808 00809 if ( ic == -1 ) continue; 00810 00811 if ( econn ) { 00812 ecid = LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic); 00813 dataset1_l1[ecid] = vpt_l1; 00814 } 00815 00816 } 00817 00818 if ( update03 || update04 ) { 00819 00820 if ( Numbers::icEE(ism, jx, jy) == 1 ) { 00821 00822 if ( verbose_ ) { 00823 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 00824 cout << "L2A (" << Numbers::ix0EE(i+1)+ix << "," << Numbers::iy0EE(i+1)+iy << ") " << num03 << " " << mean03 << " " << rms03 << endl; 00825 cout << endl; 00826 } 00827 00828 } 00829 00830 vpt_l2.setVPTMean(mean03); 00831 vpt_l2.setVPTRMS(rms03); 00832 00833 vpt_l2.setVPTOverPNMean(mean04); 00834 vpt_l2.setVPTOverPNRMS(rms04); 00835 00836 if ( UtilsClient::getBinStatus(meg02_[ism-1], ix, iy) ) { 00837 vpt_l2.setTaskStatus(true); 00838 } else { 00839 vpt_l2.setTaskStatus(false); 00840 } 00841 00842 status = status && UtilsClient::getBinQuality(meg02_[ism-1], ix, iy); 00843 00844 int ic = Numbers::indexEE(ism, jx, jy); 00845 00846 if ( ic == -1 ) continue; 00847 00848 if ( econn ) { 00849 ecid = LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic); 00850 dataset1_l2[ecid] = vpt_l2; 00851 } 00852 00853 } 00854 00855 if ( update11 || update12 ) { 00856 00857 if ( Numbers::icEE(ism, jx, jy) == 1 ) { 00858 00859 if ( verbose_ ) { 00860 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 00861 cout << "L2B (" << Numbers::ix0EE(i+1)+ix << "," << Numbers::iy0EE(i+1)+iy << ") " << num11 << " " << mean11 << " " << rms11 << endl; 00862 cout << endl; 00863 } 00864 00865 } 00866 00867 vpt_l2.setVPTMean(mean11); 00868 vpt_l2.setVPTRMS(rms11); 00869 00870 vpt_l2.setVPTOverPNMean(mean12); 00871 vpt_l2.setVPTOverPNRMS(rms12); 00872 00873 if ( UtilsClient::getBinStatus(meg02_[ism-1], ix, iy) ) { 00874 vpt_l2.setTaskStatus(true); 00875 } else { 00876 vpt_l2.setTaskStatus(false); 00877 } 00878 00879 status = status && UtilsClient::getBinQuality(meg02_[ism-1], ix, iy); 00880 00881 int ic = Numbers::indexEE(ism, jx, jy); 00882 00883 if ( ic == -1 ) continue; 00884 00885 if ( econn ) { 00886 ecid = LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic); 00887 dataset1_l2[ecid] = vpt_l2; 00888 } 00889 00890 } 00891 00892 } 00893 } 00894 00895 } 00896 00897 if ( econn ) { 00898 try { 00899 if ( verbose_ ) cout << "Inserting MonLedDat ..." << endl; 00900 if ( dataset1_l1.size() != 0 ) econn->insertDataArraySet(&dataset1_l1, moniov); 00901 if ( dataset1_l2.size() != 0 ) econn->insertDataArraySet(&dataset1_l2, moniov); 00902 if ( verbose_ ) cout << "done." << endl; 00903 } catch (runtime_error &e) { 00904 cerr << e.what() << endl; 00905 } 00906 } 00907 00908 if ( verbose_ ) cout << endl; 00909 00910 MonPNLed1Dat pn_l1; 00911 map<EcalLogicID, MonPNLed1Dat> dataset2_l1; 00912 MonPNLed2Dat pn_l2; 00913 map<EcalLogicID, MonPNLed2Dat> dataset2_l2; 00914 00915 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 00916 00917 int ism = superModules_[i]; 00918 00919 if ( verbose_ ) { 00920 cout << " " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 00921 cout << endl; 00922 } 00923 00924 if ( verbose_ ) { 00925 UtilsClient::printBadChannels(meg05_[ism-1], i01_[ism-1]); 00926 UtilsClient::printBadChannels(meg05_[ism-1], i05_[ism-1]); 00927 UtilsClient::printBadChannels(meg06_[ism-1], i02_[ism-1]); 00928 UtilsClient::printBadChannels(meg06_[ism-1], i06_[ism-1]); 00929 00930 UtilsClient::printBadChannels(meg09_[ism-1], i09_[ism-1]); 00931 UtilsClient::printBadChannels(meg09_[ism-1], i13_[ism-1]); 00932 UtilsClient::printBadChannels(meg10_[ism-1], i10_[ism-1]); 00933 UtilsClient::printBadChannels(meg10_[ism-1], i14_[ism-1]); 00934 } 00935 00936 for ( int i = 1; i <= 10; i++ ) { 00937 00938 bool update01; 00939 bool update02; 00940 00941 bool update05; 00942 bool update06; 00943 00944 bool update09; 00945 bool update10; 00946 00947 bool update13; 00948 bool update14; 00949 00950 float num01, num02, num05, num06; 00951 float num09, num10, num13, num14; 00952 float mean01, mean02, mean05, mean06; 00953 float mean09, mean10, mean13, mean14; 00954 float rms01, rms02, rms05, rms06; 00955 float rms09, rms10, rms13, rms14; 00956 00957 update01 = UtilsClient::getBinStatistics(i01_[ism-1], i, 0, num01, mean01, rms01); 00958 update02 = UtilsClient::getBinStatistics(i02_[ism-1], i, 0, num02, mean02, rms02); 00959 00960 update05 = UtilsClient::getBinStatistics(i05_[ism-1], i, 0, num05, mean05, rms05); 00961 update06 = UtilsClient::getBinStatistics(i06_[ism-1], i, 0, num06, mean06, rms06); 00962 00963 update09 = UtilsClient::getBinStatistics(i09_[ism-1], i, 0, num09, mean09, rms09); 00964 update10 = UtilsClient::getBinStatistics(i10_[ism-1], i, 0, num10, mean10, rms10); 00965 00966 update13 = UtilsClient::getBinStatistics(i13_[ism-1], i, 0, num13, mean13, rms13); 00967 update14 = UtilsClient::getBinStatistics(i14_[ism-1], i, 0, num14, mean14, rms14); 00968 00969 if ( update01 || update05 || update09 || update13 ) { 00970 00971 if ( i == 1 ) { 00972 00973 if ( verbose_ ) { 00974 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 00975 cout << "PNs (" << i << ") L1 G01 " << num01 << " " << mean01 << " " << rms01 << endl; 00976 cout << "PNs (" << i << ") L1 G16 " << num09 << " " << mean09 << " " << rms09 << endl; 00977 cout << endl; 00978 } 00979 00980 } 00981 00982 pn_l1.setADCMeanG1(mean01); 00983 pn_l1.setADCRMSG1(rms01); 00984 00985 pn_l1.setPedMeanG1(mean05); 00986 pn_l1.setPedRMSG1(rms05); 00987 00988 pn_l1.setADCMeanG16(mean09); 00989 pn_l1.setADCRMSG16(rms09); 00990 00991 pn_l1.setPedMeanG16(mean13); 00992 pn_l1.setPedRMSG16(rms13); 00993 00994 if ( UtilsClient::getBinStatus(meg05_[ism-1], i, 1) || 00995 UtilsClient::getBinStatus(meg09_[ism-1], i, 1) ) { 00996 pn_l1.setTaskStatus(true); 00997 } else { 00998 pn_l1.setTaskStatus(false); 00999 } 01000 01001 status = status && ( UtilsClient::getBinQuality(meg05_[ism-1], i, 1) || 01002 UtilsClient::getBinQuality(meg09_[ism-1], i, 1) ); 01003 01004 if ( econn ) { 01005 ecid = LogicID::getEcalLogicID("EE_LM_PN", Numbers::iSM(ism, EcalEndcap), i-1); 01006 dataset2_l1[ecid] = pn_l1; 01007 } 01008 01009 } 01010 01011 if ( update02 || update06 || update10 || update14 ) { 01012 01013 if ( i == 1 ) { 01014 01015 if ( verbose_ ) { 01016 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 01017 cout << "PNs (" << i << ") L2 G01 " << num02 << " " << mean02 << " " << rms02 << endl; 01018 cout << "PNs (" << i << ") L2 G16 " << num10 << " " << mean10 << " " << rms10 << endl; 01019 cout << endl; 01020 } 01021 01022 } 01023 01024 pn_l2.setADCMeanG1(mean02); 01025 pn_l2.setADCRMSG1(rms02); 01026 01027 pn_l2.setPedMeanG1(mean06); 01028 pn_l2.setPedRMSG1(rms06); 01029 01030 pn_l2.setADCMeanG16(mean10); 01031 pn_l2.setADCRMSG16(rms10); 01032 01033 pn_l2.setPedMeanG16(mean14); 01034 pn_l2.setPedRMSG16(rms14); 01035 01036 if ( UtilsClient::getBinStatus(meg06_[ism-1], i, 1) || 01037 UtilsClient::getBinStatus(meg10_[ism-1], i, 1) ) { 01038 pn_l2.setTaskStatus(true); 01039 } else { 01040 pn_l2.setTaskStatus(false); 01041 } 01042 01043 status = status && ( UtilsClient::getBinQuality(meg06_[ism-1], i, 1) || 01044 UtilsClient::getBinQuality(meg10_[ism-1], i, 1) ); 01045 01046 if ( econn ) { 01047 ecid = LogicID::getEcalLogicID("EE_LM_PN", Numbers::iSM(ism, EcalEndcap), i-1); 01048 dataset2_l2[ecid] = pn_l2; 01049 } 01050 01051 } 01052 01053 } 01054 01055 } 01056 01057 if ( econn ) { 01058 try { 01059 if ( verbose_ ) cout << "Inserting MonPnDat ..." << endl; 01060 if ( dataset2_l1.size() != 0 ) econn->insertDataArraySet(&dataset2_l1, moniov); 01061 if ( dataset2_l2.size() != 0 ) econn->insertDataArraySet(&dataset2_l2, moniov); 01062 if ( verbose_ ) cout << "done." << endl; 01063 } catch (runtime_error &e) { 01064 cerr << e.what() << endl; 01065 } 01066 } 01067 01068 if ( verbose_ ) cout << endl; 01069 01070 MonTimingLed1CrystalDat t_l1; 01071 map<EcalLogicID, MonTimingLed1CrystalDat> dataset3_l1; 01072 MonTimingLed2CrystalDat t_l2; 01073 map<EcalLogicID, MonTimingLed2CrystalDat> dataset3_l2; 01074 01075 for ( unsigned int i=0; i<superModules_.size(); i++ ) { 01076 01077 int ism = superModules_[i]; 01078 01079 if ( verbose_ ) { 01080 cout << " " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 01081 cout << endl; 01082 } 01083 01084 for ( int ix = 1; ix <= 50; ix++ ) { 01085 for ( int iy = 1; iy <= 50; iy++ ) { 01086 01087 int jx = ix + Numbers::ix0EE(ism); 01088 int jy = iy + Numbers::iy0EE(ism); 01089 01090 if ( ism >= 1 && ism <= 9 ) jx = 101 - jx; 01091 01092 if ( ! Numbers::validEE(ism, jx, jy) ) continue; 01093 01094 bool update01; 01095 bool update02; 01096 01097 bool update05; 01098 bool update06; 01099 01100 float num01, num02, num05, num06; 01101 float mean01, mean02, mean05, mean06; 01102 float rms01, rms02, rms05, rms06; 01103 01104 update01 = UtilsClient::getBinStatistics(h09_[ism-1], ix, iy, num01, mean01, rms01); 01105 update02 = UtilsClient::getBinStatistics(h10_[ism-1], ix, iy, num02, mean02, rms02); 01106 01107 update05 = UtilsClient::getBinStatistics(h21_[ism-1], ix, iy, num05, mean05, rms05); 01108 update06 = UtilsClient::getBinStatistics(h22_[ism-1], ix, iy, num06, mean06, rms06); 01109 01110 if ( update01 ) { 01111 01112 if ( Numbers::icEE(ism, ix, iy) == 1 ) { 01113 01114 if ( verbose_ ) { 01115 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 01116 cout << "L1A crystal (" << Numbers::ix0EE(i+1)+ix << "," << Numbers::iy0EE(i+1)+iy << ") " << num01 << " " << mean01 << " " << rms01 << endl; 01117 cout << endl; 01118 } 01119 01120 } 01121 01122 t_l1.setTimingMean(mean01); 01123 t_l1.setTimingRMS(rms01); 01124 01125 if ( UtilsClient::getBinStatus(meg01_[ism-1], ix, iy) ) { 01126 t_l1.setTaskStatus(true); 01127 } else { 01128 t_l1.setTaskStatus(false); 01129 } 01130 01131 status = status && UtilsClient::getBinQuality(meg01_[ism-1], ix, iy); 01132 01133 int ic = Numbers::indexEE(ism, ix, iy); 01134 01135 if ( ic == -1 ) continue; 01136 01137 if ( econn ) { 01138 ecid = LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic); 01139 dataset3_l1[ecid] = t_l1; 01140 } 01141 01142 } 01143 01144 if ( update05 ) { 01145 01146 if ( Numbers::icEE(ism, ix, iy) == 1 ) { 01147 01148 if ( verbose_ ) { 01149 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 01150 cout << "L1B crystal (" << Numbers::ix0EE(i+1)+ix << "," << Numbers::iy0EE(i+1)+iy << ") " << num05 << " " << mean05 << " " << rms05 << endl; 01151 cout << endl; 01152 } 01153 01154 } 01155 01156 t_l1.setTimingMean(mean05); 01157 t_l1.setTimingRMS(rms05); 01158 01159 if ( UtilsClient::getBinStatus(meg01_[ism-1], ix, iy) ) { 01160 t_l1.setTaskStatus(true); 01161 } else { 01162 t_l1.setTaskStatus(false); 01163 } 01164 01165 status = status && UtilsClient::getBinQuality(meg01_[ism-1], ix, iy); 01166 01167 int ic = Numbers::indexEE(ism, ix, iy); 01168 01169 if ( ic == -1 ) continue; 01170 01171 if ( econn ) { 01172 ecid = LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic); 01173 dataset3_l1[ecid] = t_l1; 01174 } 01175 01176 } 01177 01178 if ( update02 ) { 01179 01180 if ( Numbers::icEE(ism, ix, iy) == 1 ) { 01181 01182 if ( verbose_ ) { 01183 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 01184 cout << "L2A crystal (" << Numbers::ix0EE(i+1)+ix << "," << Numbers::iy0EE(i+1)+iy << ") " << num02 << " " << mean02 << " " << rms02 << endl; 01185 cout << endl; 01186 } 01187 01188 } 01189 01190 t_l2.setTimingMean(mean02); 01191 t_l2.setTimingRMS(rms02); 01192 01193 if ( UtilsClient::getBinStatus(meg02_[ism-1], ix, iy) ) { 01194 t_l2.setTaskStatus(true); 01195 } else { 01196 t_l2.setTaskStatus(false); 01197 } 01198 01199 status = status && UtilsClient::getBinQuality(meg02_[ism-1], ix, iy); 01200 01201 int ic = Numbers::indexEE(ism, ix, iy); 01202 01203 if ( ic == -1 ) continue; 01204 01205 if ( econn ) { 01206 ecid = LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic); 01207 dataset3_l2[ecid] = t_l2; 01208 } 01209 01210 } 01211 01212 if ( update06 ) { 01213 01214 if ( Numbers::icEE(ism, ix, iy) == 1 ) { 01215 01216 if ( verbose_ ) { 01217 cout << "Preparing dataset for " << Numbers::sEE(ism) << " (ism=" << ism << ")" << endl; 01218 cout << "L2B crystal (" << Numbers::ix0EE(i+1)+ix << "," << Numbers::iy0EE(i+1)+iy << ") " << num06 << " " << mean06 << " " << rms06 << endl; 01219 cout << endl; 01220 } 01221 01222 } 01223 01224 t_l2.setTimingMean(mean06); 01225 t_l2.setTimingRMS(rms06); 01226 01227 if ( UtilsClient::getBinStatus(meg02_[ism-1], ix, iy) ) { 01228 t_l2.setTaskStatus(true); 01229 } else { 01230 t_l2.setTaskStatus(false); 01231 } 01232 01233 status = status && UtilsClient::getBinQuality(meg02_[ism-1], ix, iy); 01234 01235 int ic = Numbers::indexEE(ism, ix, iy); 01236 01237 if ( ic == -1 ) continue; 01238 01239 if ( econn ) { 01240 ecid = LogicID::getEcalLogicID("EE_crystal_number", Numbers::iSM(ism, EcalEndcap), ic); 01241 dataset3_l2[ecid] = t_l2; 01242 } 01243 01244 } 01245 01246 } 01247 } 01248 01249 } 01250 01251 if ( econn ) { 01252 try { 01253 if ( verbose_ ) cout << "Inserting MonTimingLaserCrystalDat ..." << endl; 01254 if ( dataset3_l1.size() != 0 ) econn->insertDataArraySet(&dataset3_l1, moniov); 01255 if ( dataset3_l2.size() != 0 ) econn->insertDataArraySet(&dataset3_l2, moniov); 01256 if ( verbose_ ) cout << "done." << endl; 01257 } catch (runtime_error &e) { 01258 cerr << e.what() << endl; 01259 } 01260 } 01261 01262 return true; 01263 01264 }
friend class EESummaryClient [friend] |
Definition at line 32 of file EELedClient.h.
float EELedClient::amplitudeThreshold_ [private] |
float EELedClient::amplitudeThresholdPnG01_ [private] |
float EELedClient::amplitudeThresholdPnG16_ [private] |
bool EELedClient::cloneME_ [private] |
bool EELedClient::debug_ [private] |
Definition at line 84 of file EELedClient.h.
Referenced by analyze(), beginJob(), beginRun(), EELedClient(), endJob(), and endRun().
DQMStore* EELedClient::dqmStore_ [private] |
Definition at line 92 of file EELedClient.h.
Referenced by analyze(), beginJob(), cleanup(), and setup().
bool EELedClient::enableCleanup_ [private] |
TProfile2D* EELedClient::h01_[18] [private] |
Definition at line 94 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h02_[18] [private] |
Definition at line 95 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h03_[18] [private] |
Definition at line 96 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h04_[18] [private] |
Definition at line 97 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h09_[18] [private] |
Definition at line 99 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h10_[18] [private] |
Definition at line 100 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h13_[18] [private] |
Definition at line 102 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h14_[18] [private] |
Definition at line 103 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h15_[18] [private] |
Definition at line 104 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h16_[18] [private] |
Definition at line 105 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h21_[18] [private] |
Definition at line 107 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::h22_[18] [private] |
Definition at line 108 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile2D* EELedClient::hs01_[18] [private] |
Definition at line 110 of file EELedClient.h.
Referenced by analyze(), cleanup(), and EELedClient().
TProfile2D* EELedClient::hs02_[18] [private] |
Definition at line 111 of file EELedClient.h.
Referenced by analyze(), cleanup(), and EELedClient().
TProfile2D* EELedClient::hs05_[18] [private] |
Definition at line 113 of file EELedClient.h.
Referenced by analyze(), cleanup(), and EELedClient().
TProfile2D* EELedClient::hs06_[18] [private] |
Definition at line 114 of file EELedClient.h.
Referenced by analyze(), cleanup(), and EELedClient().
TProfile* EELedClient::i01_[18] [private] |
Definition at line 167 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile* EELedClient::i02_[18] [private] |
Definition at line 168 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile* EELedClient::i05_[18] [private] |
Definition at line 170 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile* EELedClient::i06_[18] [private] |
Definition at line 171 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile* EELedClient::i09_[18] [private] |
Definition at line 173 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile* EELedClient::i10_[18] [private] |
Definition at line 174 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile* EELedClient::i13_[18] [private] |
Definition at line 176 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
TProfile* EELedClient::i14_[18] [private] |
Definition at line 177 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and writeDb().
int EELedClient::ievt_ [private] |
Definition at line 78 of file EELedClient.h.
Referenced by analyze(), beginJob(), endJob(), and getEvtPerJob().
int EELedClient::jevt_ [private] |
Definition at line 79 of file EELedClient.h.
Referenced by analyze(), beginJob(), beginRun(), endRun(), and getEvtPerRun().
MonitorElement* EELedClient::me_hs01_[36] [private] |
Definition at line 161 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::me_hs02_[36] [private] |
Definition at line 162 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::me_hs05_[36] [private] |
Definition at line 164 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::me_hs06_[36] [private] |
Definition at line 165 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::mea01_[18] [private] |
Definition at line 125 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::mea02_[18] [private] |
Definition at line 126 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::mea05_[18] [private] |
Definition at line 128 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::mea06_[18] [private] |
Definition at line 129 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::meaopn01_[18] [private] |
Definition at line 149 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::meaopn02_[18] [private] |
Definition at line 150 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::meaopn05_[18] [private] |
Definition at line 152 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::meaopn06_[18] [private] |
Definition at line 153 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::meg01_[18] [private] |
Definition at line 116 of file EELedClient.h.
Referenced by EESummaryClient::analyze(), analyze(), cleanup(), EELedClient(), setup(), and writeDb().
MonitorElement* EELedClient::meg02_[18] [private] |
Definition at line 117 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), setup(), and writeDb().
MonitorElement* EELedClient::meg05_[18] [private] |
Definition at line 119 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), setup(), and writeDb().
MonitorElement* EELedClient::meg06_[18] [private] |
Definition at line 120 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), setup(), and writeDb().
MonitorElement* EELedClient::meg09_[18] [private] |
Definition at line 122 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), setup(), and writeDb().
MonitorElement* EELedClient::meg10_[18] [private] |
Definition at line 123 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), setup(), and writeDb().
MonitorElement* EELedClient::mepnprms01_[18] [private] |
Definition at line 155 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::mepnprms02_[18] [private] |
Definition at line 156 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::mepnprms05_[18] [private] |
Definition at line 158 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::mepnprms06_[18] [private] |
Definition at line 159 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::met01_[18] [private] |
Definition at line 131 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::met02_[18] [private] |
Definition at line 132 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::met05_[18] [private] |
Definition at line 134 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::met06_[18] [private] |
Definition at line 135 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::metav01_[18] [private] |
Definition at line 137 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::metav02_[18] [private] |
Definition at line 138 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::metav05_[18] [private] |
Definition at line 140 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::metav06_[18] [private] |
Definition at line 141 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::metrms01_[18] [private] |
Definition at line 143 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::metrms02_[18] [private] |
Definition at line 144 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::metrms05_[18] [private] |
Definition at line 146 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
MonitorElement* EELedClient::metrms06_[18] [private] |
Definition at line 147 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
float EELedClient::pedPnDiscrepancyMean_[2] [private] |
float EELedClient::pedPnExpectedMean_[2] [private] |
float EELedClient::pedPnRMSThreshold_[2] [private] |
float EELedClient::percentVariation_ [private] |
std::string EELedClient::prefixME_ [private] |
Definition at line 86 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), and setup().
std::vector<int> EELedClient::superModules_ [private] |
Definition at line 90 of file EELedClient.h.
Referenced by analyze(), cleanup(), EELedClient(), setup(), and writeDb().
bool EELedClient::verbose_ [private] |