CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes | Friends
EBTestPulseClient Class Reference

#include <EBTestPulseClient.h>

Inheritance diagram for EBTestPulseClient:
EBClient

Public Member Functions

void analyze (void)
 Analyze. More...
 
void beginJob (void)
 BeginJob. More...
 
void beginRun (void)
 BeginRun. More...
 
void cleanup (void)
 Cleanup. More...
 
 EBTestPulseClient (const edm::ParameterSet &ps)
 Constructor. More...
 
void endJob (void)
 EndJob. More...
 
void endRun (void)
 EndRun. More...
 
int getEvtPerJob ()
 Get Functions. More...
 
int getEvtPerRun ()
 Returns the number of processed events in this Run. More...
 
void setup (void)
 Setup. More...
 
virtual ~EBTestPulseClient ()
 Destructor. More...
 
- Public Member Functions inherited from EBClient
virtual ~EBClient (void)
 

Private Attributes

float amplitudeThreshold_
 
float amplitudeThresholdPnG01_
 
float amplitudeThresholdPnG16_
 
bool cloneME_
 
bool debug_
 
DQMStoredqmStore_
 
bool enableCleanup_
 
TProfile2D * ha01_ [36]
 
TProfile2D * ha02_ [36]
 
TProfile2D * ha03_ [36]
 
TProfile2D * hs01_ [36]
 
TProfile2D * hs02_ [36]
 
TProfile2D * hs03_ [36]
 
TProfile * i01_ [36]
 
TProfile * i02_ [36]
 
TProfile * i03_ [36]
 
TProfile * i04_ [36]
 
int ievt_
 
int jevt_
 
MonitorElementme_hs01_ [36]
 
MonitorElementme_hs02_ [36]
 
MonitorElementme_hs03_ [36]
 
MonitorElementmea01_ [36]
 
MonitorElementmea02_ [36]
 
MonitorElementmea03_ [36]
 
MonitorElementmeg01_ [36]
 
MonitorElementmeg02_ [36]
 
MonitorElementmeg03_ [36]
 
MonitorElementmeg04_ [36]
 
MonitorElementmeg05_ [36]
 
MonitorElementmer04_ [36]
 
MonitorElementmer05_ [36]
 
std::vector< int > MGPAGains_
 
std::vector< int > MGPAGainsPN_
 
float pedPnDiscrepancyMean_ [2]
 
float pedPnExpectedMean_ [2]
 
float pedPnRMSThreshold_ [2]
 
float percentVariation_
 
std::string prefixME_
 
float RMSThreshold_
 
std::vector< int > superModules_
 
bool verbose_
 

Friends

class EBSummaryClient
 

Detailed Description

Definition at line 33 of file EBTestPulseClient.h.

Constructor & Destructor Documentation

EBTestPulseClient::EBTestPulseClient ( const edm::ParameterSet ps)

Constructor.

Definition at line 40 of file EBTestPulseClient.cc.

References amplitudeThreshold_, amplitudeThresholdPnG01_, amplitudeThresholdPnG16_, cloneME_, debug_, enableCleanup_, edm::ParameterSet::getUntrackedParameter(), ha01_, ha02_, ha03_, hs01_, hs02_, hs03_, i, i01_, i02_, i03_, i04_, ecalpyutils::ism(), me_hs01_, me_hs02_, me_hs03_, mea01_, mea02_, mea03_, meg01_, meg02_, meg03_, meg04_, meg05_, mer04_, mer05_, MGPAGains_, MGPAGainsPN_, pedPnDiscrepancyMean_, pedPnExpectedMean_, pedPnRMSThreshold_, percentVariation_, prefixME_, RMSThreshold_, superModules_, and verbose_.

40  {
41 
42  // cloneME switch
43  cloneME_ = ps.getUntrackedParameter<bool>("cloneME", true);
44 
45  // verbose switch
46  verbose_ = ps.getUntrackedParameter<bool>("verbose", true);
47 
48  // debug switch
49  debug_ = ps.getUntrackedParameter<bool>("debug", false);
50 
51  // prefixME path
52  prefixME_ = ps.getUntrackedParameter<std::string>("prefixME", "");
53 
54  // enableCleanup_ switch
55  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);
56 
57  // vector of selected Super Modules (Defaults to all 36).
58  superModules_.reserve(36);
59  for ( unsigned int i = 1; i <= 36; i++ ) superModules_.push_back(i);
60  superModules_ = ps.getUntrackedParameter<std::vector<int> >("superModules", superModules_);
61 
62  MGPAGains_.reserve(3);
63  for ( unsigned int i = 1; i <= 3; i++ ) MGPAGains_.push_back(i);
64  MGPAGains_ = ps.getUntrackedParameter<std::vector<int> >("MGPAGains", MGPAGains_);
65 
66  MGPAGainsPN_.reserve(2);
67  for ( unsigned int i = 1; i <= 3; i++ ) MGPAGainsPN_.push_back(i);
68  MGPAGainsPN_ = ps.getUntrackedParameter<std::vector<int> >("MGPAGainsPN", MGPAGainsPN_);
69 
70  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
71 
72  int ism = superModules_[i];
73 
74  ha01_[ism-1] = 0;
75  ha02_[ism-1] = 0;
76  ha03_[ism-1] = 0;
77 
78  hs01_[ism-1] = 0;
79  hs02_[ism-1] = 0;
80  hs03_[ism-1] = 0;
81 
82  i01_[ism-1] = 0;
83  i02_[ism-1] = 0;
84  i03_[ism-1] = 0;
85  i04_[ism-1] = 0;
86 
87  }
88 
89  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
90 
91  int ism = superModules_[i];
92 
93  meg01_[ism-1] = 0;
94  meg02_[ism-1] = 0;
95  meg03_[ism-1] = 0;
96 
97  meg04_[ism-1] = 0;
98  meg05_[ism-1] = 0;
99 
100  mea01_[ism-1] = 0;
101  mea02_[ism-1] = 0;
102  mea03_[ism-1] = 0;
103 
104  mer04_[ism-1] = 0;
105  mer05_[ism-1] = 0;
106 
107  me_hs01_[ism-1] = 0;
108  me_hs02_[ism-1] = 0;
109  me_hs03_[ism-1] = 0;
110 
111  }
112 
113  percentVariation_ = 0.2;
114  RMSThreshold_ = 300.0;
115 
116  amplitudeThreshold_ = 100.;
117 
118  amplitudeThresholdPnG01_ = 200./16.;
120 
121  pedPnExpectedMean_[0] = 750.0;
122  pedPnExpectedMean_[1] = 750.0;
123 
124  pedPnDiscrepancyMean_[0] = 100.0;
125  pedPnDiscrepancyMean_[1] = 100.0;
126 
127  pedPnRMSThreshold_[0] = 999.;
128  pedPnRMSThreshold_[1] = 999.;
129 
130 }
float pedPnDiscrepancyMean_[2]
TProfile * i02_[36]
T getUntrackedParameter(std::string const &, T const &) const
int i
Definition: DBlmapReader.cc:9
MonitorElement * meg05_[36]
TProfile2D * ha02_[36]
TProfile2D * ha03_[36]
MonitorElement * meg03_[36]
MonitorElement * mea01_[36]
MonitorElement * me_hs03_[36]
MonitorElement * meg02_[36]
MonitorElement * mer05_[36]
MonitorElement * mea03_[36]
MonitorElement * mea02_[36]
std::vector< int > MGPAGainsPN_
std::vector< int > MGPAGains_
TProfile2D * hs03_[36]
MonitorElement * meg04_[36]
TProfile * i01_[36]
TProfile2D * ha01_[36]
MonitorElement * me_hs02_[36]
TProfile2D * hs01_[36]
TProfile * i03_[36]
std::vector< int > superModules_
MonitorElement * mer04_[36]
MonitorElement * me_hs01_[36]
MonitorElement * meg01_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
TProfile2D * hs02_[36]
TProfile * i04_[36]
EBTestPulseClient::~EBTestPulseClient ( )
virtual

Destructor.

Definition at line 132 of file EBTestPulseClient.cc.

132  {
133 
134 }

Member Function Documentation

void EBTestPulseClient::analyze ( void  )
virtual

Analyze.

Implements EBClient.

Definition at line 666 of file EBTestPulseClient.cc.

References abs, amplitudeThreshold_, amplitudeThresholdPnG01_, amplitudeThresholdPnG16_, cloneME_, gather_cfg::cout, debug_, dqmStore_, EcalBarrel, MonitorElement::Fill(), spr::find(), DQMStore::get(), UtilsClient::getBinStatistics(), UtilsClient::getFirstNonEmptyChannel(), UtilsClient::getHisto(), ha01_, ha02_, ha03_, hs01_, hs02_, hs03_, i, i01_, i02_, i03_, i04_, Numbers::icEB(), ievt_, jevt_, UtilsClient::maskBinContent(), Masks::maskChannel(), Masks::maskPn(), me_hs01_, me_hs02_, me_hs03_, mea01_, mea02_, mea03_, meg01_, meg02_, meg03_, meg04_, meg05_, mer04_, mer05_, MGPAGains_, MGPAGainsPN_, EcalDQMStatusHelper::PEDESTAL_HIGH_GAIN_MEAN_ERROR, EcalDQMStatusHelper::PEDESTAL_HIGH_GAIN_RMS_ERROR, EcalDQMStatusHelper::PEDESTAL_LOW_GAIN_MEAN_ERROR, EcalDQMStatusHelper::PEDESTAL_LOW_GAIN_RMS_ERROR, pedPnDiscrepancyMean_, pedPnExpectedMean_, pedPnRMSThreshold_, percentVariation_, prefixME_, MonitorElement::Reset(), RMSThreshold_, Numbers::sEB(), MonitorElement::setBinContent(), MonitorElement::setBinError(), MonitorElement::setEntries(), superModules_, EcalDQMStatusHelper::TESTPULSE_HIGH_GAIN_MEAN_ERROR, EcalDQMStatusHelper::TESTPULSE_HIGH_GAIN_RMS_ERROR, EcalDQMStatusHelper::TESTPULSE_LOW_GAIN_MEAN_ERROR, EcalDQMStatusHelper::TESTPULSE_LOW_GAIN_RMS_ERROR, EcalDQMStatusHelper::TESTPULSE_MIDDLE_GAIN_MEAN_ERROR, and EcalDQMStatusHelper::TESTPULSE_MIDDLE_GAIN_RMS_ERROR.

666  {
667 
668  ievt_++;
669  jevt_++;
670  if ( ievt_ % 10 == 0 ) {
671  if ( debug_ ) std::cout << "EBTestPulseClient: ievt/jevt = " << ievt_ << "/" << jevt_ << std::endl;
672  }
673 
674  uint32_t bits01 = 0;
677 
678  uint32_t bits02 = 0;
681 
682  uint32_t bits03 = 0;
685 
686  uint32_t bits04 = 0;
689 
690  uint32_t bits05 = 0;
693 
694 
695  MonitorElement* me;
696 
697  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
698 
699  int ism = superModules_[i];
700 
701  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
702 
703  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/Gain01/EBTPT amplitude " + Numbers::sEB(ism) + " G01" );
704  ha01_[ism-1] = UtilsClient::getHisto( me, cloneME_, ha01_[ism-1] );
705 
706  }
707 
708  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
709 
710  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/Gain06/EBTPT amplitude " + Numbers::sEB(ism) + " G06" );
711  ha02_[ism-1] = UtilsClient::getHisto( me, cloneME_, ha02_[ism-1] );
712 
713  }
714 
715  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
716 
717  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/Gain12/EBTPT amplitude " + Numbers::sEB(ism) + " G12" );
718  ha03_[ism-1] = UtilsClient::getHisto( me, cloneME_, ha03_[ism-1] );
719 
720  }
721 
722  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
723 
724  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/Gain01/EBTPT shape " + Numbers::sEB(ism) + " G01" );
725  hs01_[ism-1] = UtilsClient::getHisto( me, cloneME_, hs01_[ism-1] );
726 
727  }
728 
729  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
730 
731  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/Gain06/EBTPT shape " + Numbers::sEB(ism) + " G06" );
732  hs02_[ism-1] = UtilsClient::getHisto( me, cloneME_, hs02_[ism-1] );
733 
734  }
735 
736  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
737 
738  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/Gain12/EBTPT shape " + Numbers::sEB(ism) + " G12" );
739  hs03_[ism-1] = UtilsClient::getHisto( me, cloneME_, hs03_[ism-1] );
740 
741  }
742 
743  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 1) != MGPAGainsPN_.end() ) {
744 
745  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/PN/Gain01/EBTPT PNs amplitude " + Numbers::sEB(ism) + " G01" );
746  i01_[ism-1] = UtilsClient::getHisto( me, cloneME_, i01_[ism-1] );
747 
748  }
749 
750 
751  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 16) != MGPAGainsPN_.end() ) {
752 
753  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/PN/Gain16/EBTPT PNs amplitude " + Numbers::sEB(ism) + " G16" );
754  i02_[ism-1] = UtilsClient::getHisto( me, cloneME_, i02_[ism-1] );
755 
756  }
757 
758  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 1) != MGPAGainsPN_.end() ) {
759 
760  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/PN/Gain01/EBTPT PNs pedestal " + Numbers::sEB(ism) + " G01" );
761  i03_[ism-1] = UtilsClient::getHisto( me, cloneME_, i03_[ism-1] );
762 
763  }
764 
765  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 16) != MGPAGainsPN_.end() ) {
766 
767  me = dqmStore_->get( prefixME_ + "/EBTestPulseTask/PN/Gain16/EBTPT PNs pedestal " + Numbers::sEB(ism) + " G16" );
768  i04_[ism-1] = UtilsClient::getHisto( me, cloneME_, i04_[ism-1] );
769 
770  }
771 
772  if ( meg01_[ism-1] ) meg01_[ism-1]->Reset();
773  if ( meg02_[ism-1] ) meg02_[ism-1]->Reset();
774  if ( meg03_[ism-1] ) meg03_[ism-1]->Reset();
775 
776  if ( meg04_[ism-1] ) meg04_[ism-1]->Reset();
777  if ( meg05_[ism-1] ) meg05_[ism-1]->Reset();
778 
779  if ( mea01_[ism-1] ) mea01_[ism-1]->Reset();
780  if ( mea02_[ism-1] ) mea02_[ism-1]->Reset();
781  if ( mea03_[ism-1] ) mea03_[ism-1]->Reset();
782 
783  if ( mer04_[ism-1] ) mer04_[ism-1]->Reset();
784  if ( mer05_[ism-1] ) mer05_[ism-1]->Reset();
785 
786  if ( me_hs01_[ism-1] ) me_hs01_[ism-1]->Reset();
787  if ( me_hs02_[ism-1] ) me_hs02_[ism-1]->Reset();
788  if ( me_hs03_[ism-1] ) me_hs03_[ism-1]->Reset();
789 
790  float meanAmpl01, meanAmpl02, meanAmpl03;
791 
792  int nCry01, nCry02, nCry03;
793 
794  meanAmpl01 = meanAmpl02 = meanAmpl03 = 0.;
795 
796  nCry01 = nCry02 = nCry03 = 0;
797 
798  for ( int ie = 1; ie <= 85; ie++ ) {
799  for ( int ip = 1; ip <= 20; ip++ ) {
800 
801  bool update01;
802  bool update02;
803  bool update03;
804 
805  float num01, num02, num03;
806  float mean01, mean02, mean03;
807  float rms01, rms02, rms03;
808 
809  update01 = UtilsClient::getBinStatistics(ha01_[ism-1], ie, ip, num01, mean01, rms01);
810  update02 = UtilsClient::getBinStatistics(ha02_[ism-1], ie, ip, num02, mean02, rms02);
811  update03 = UtilsClient::getBinStatistics(ha03_[ism-1], ie, ip, num03, mean03, rms03);
812 
813  if ( update01 ) {
814  meanAmpl01 += mean01;
815  nCry01++;
816  }
817 
818  if ( update02 ) {
819  meanAmpl02 += mean02;
820  nCry02++;
821  }
822 
823  if ( update03 ) {
824  meanAmpl03 += mean03;
825  nCry03++;
826  }
827 
828  }
829  }
830 
831  if ( nCry01 > 0 ) meanAmpl01 /= float (nCry01);
832  if ( nCry02 > 0 ) meanAmpl02 /= float (nCry02);
833  if ( nCry03 > 0 ) meanAmpl03 /= float (nCry03);
834 
835  for ( int ie = 1; ie <= 85; ie++ ) {
836  for ( int ip = 1; ip <= 20; ip++ ) {
837 
838  if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ie, ip, 2. );
839  if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ie, ip, 2. );
840  if ( meg03_[ism-1] ) meg03_[ism-1]->setBinContent( ie, ip, 2. );
841 
842  float numEventsinCry[3] = {0., 0., 0.};
843 
844  if ( ha01_[ism-1] ) numEventsinCry[0] = ha01_[ism-1]->GetBinEntries(ha01_[ism-1]->GetBin(ie, ip));
845  if ( ha02_[ism-1] ) numEventsinCry[1] = ha02_[ism-1]->GetBinEntries(ha02_[ism-1]->GetBin(ie, ip));
846  if ( ha03_[ism-1] ) numEventsinCry[2] = ha03_[ism-1]->GetBinEntries(ha03_[ism-1]->GetBin(ie, ip));
847 
848  bool update01;
849  bool update02;
850  bool update03;
851 
852  float num01, num02, num03;
853  float mean01, mean02, mean03;
854  float rms01, rms02, rms03;
855 
856  update01 = UtilsClient::getBinStatistics(ha01_[ism-1], ie, ip, num01, mean01, rms01);
857  update02 = UtilsClient::getBinStatistics(ha02_[ism-1], ie, ip, num02, mean02, rms02);
858  update03 = UtilsClient::getBinStatistics(ha03_[ism-1], ie, ip, num03, mean03, rms03);
859 
860  if ( update01 ) {
861 
862  float val;
863 
864  val = 1.;
865  if ( std::abs(mean01 - meanAmpl01) > std::abs(percentVariation_ * meanAmpl01) || mean01 < amplitudeThreshold_ )
866  val = 0.;
867  if ( rms01 > RMSThreshold_ )
868  val = 0.;
869  if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ie, ip, val );
870 
871  int ic = Numbers::icEB(ism, ie, ip);
872 
873  if ( mea01_[ism-1] ) {
874  if ( mean01 > 0. ) {
875  mea01_[ism-1]->setBinContent( ic, mean01 );
876  mea01_[ism-1]->setBinError( ic, rms01 );
877  } else {
878  mea01_[ism-1]->setEntries( 1.+mea01_[ism-1]->getEntries() );
879  }
880  }
881 
882  }
883 
884  if ( update02 ) {
885 
886  float val;
887 
888  val = 1.;
889  if ( std::abs(mean02 - meanAmpl02) > std::abs(percentVariation_ * meanAmpl02) || mean02 < amplitudeThreshold_ )
890  val = 0.;
891  if ( rms02 > RMSThreshold_ )
892  val = 0.;
893  if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ie, ip, val );
894 
895  int ic = Numbers::icEB(ism, ie, ip);
896 
897  if ( mea02_[ism-1] ) {
898  if ( mean02 > 0. ) {
899  mea02_[ism-1]->setBinContent( ic, mean02 );
900  mea02_[ism-1]->setBinError( ic, rms02 );
901  } else {
902  mea02_[ism-1]->setEntries( 1.+mea02_[ism-1]->getEntries() );
903  }
904  }
905 
906  }
907 
908  if ( update03 ) {
909 
910  float val;
911 
912  val = 1.;
913  if ( std::abs(mean03 - meanAmpl03) > std::abs(percentVariation_ * meanAmpl03) || mean03 < amplitudeThreshold_ )
914  val = 0.;
915  if ( rms03 > RMSThreshold_ )
916  val = 0.;
917  if ( meg03_[ism-1] ) meg03_[ism-1]->setBinContent( ie, ip, val );
918 
919  int ic = Numbers::icEB(ism, ie, ip);
920 
921  if ( mea03_[ism-1] ) {
922  if ( mean03 > 0. ) {
923  mea03_[ism-1]->setBinContent( ic, mean03 );
924  mea03_[ism-1]->setBinError( ic, rms03 );
925  } else {
926  mea03_[ism-1]->setEntries( 1.+mea03_[ism-1]->getEntries() );
927  }
928  }
929 
930  }
931 
932  if ( Masks::maskChannel(ism, ie, ip, bits01, EcalBarrel) ) UtilsClient::maskBinContent( meg01_[ism-1], ie, ip );
933  if ( Masks::maskChannel(ism, ie, ip, bits02, EcalBarrel) ) UtilsClient::maskBinContent( meg02_[ism-1], ie, ip );
934  if ( Masks::maskChannel(ism, ie, ip, bits03, EcalBarrel) ) UtilsClient::maskBinContent( meg03_[ism-1], ie, ip );
935 
936  }
937  }
938 
939  for ( int i = 1; i <= 10; i++ ) {
940 
941  if ( meg04_[ism-1] ) meg04_[ism-1]->setBinContent( i, 1, 2. );
942  if ( meg05_[ism-1] ) meg05_[ism-1]->setBinContent( i, 1, 2. );
943 
944  bool update01;
945  bool update02;
946  bool update03;
947  bool update04;
948 
949  float num01, num02, num03, num04;
950  float mean01, mean02, mean03, mean04;
951  float rms01, rms02, rms03, rms04;
952 
953  update01 = UtilsClient::getBinStatistics(i01_[ism-1], i, 0, num01, mean01, rms01);
954  update02 = UtilsClient::getBinStatistics(i02_[ism-1], i, 0, num02, mean02, rms02);
955  update03 = UtilsClient::getBinStatistics(i03_[ism-1], i, 0, num03, mean03, rms03);
956  update04 = UtilsClient::getBinStatistics(i04_[ism-1], i, 0, num04, mean04, rms04);
957 
958  if ( mer04_[ism-1] ) mer04_[ism-1]->Fill(rms03);
959  if ( mer05_[ism-1] ) mer05_[ism-1]->Fill(rms04);
960 
961  if ( update01 && update03 ) {
962 
963  float val;
964 
965  val = 1.;
966  if ( mean01 < amplitudeThresholdPnG01_ )
967  val = 0.;
968  if ( mean03 < pedPnExpectedMean_[0] - pedPnDiscrepancyMean_[0] ||
969  pedPnExpectedMean_[0] + pedPnDiscrepancyMean_[0] < mean03)
970  val = 0.;
971  if ( rms03 > pedPnRMSThreshold_[0] )
972  val = 0.;
973  if ( meg04_[ism-1] ) meg04_[ism-1]->setBinContent(i, 1, val);
974 
975  }
976 
977  if ( update02 && update04 ) {
978 
979  float val;
980 
981  val = 1.;
982  if ( mean02 < amplitudeThresholdPnG16_ )
983  val = 0.;
984  if ( mean04 < pedPnExpectedMean_[1] - pedPnDiscrepancyMean_[1] ||
985  pedPnExpectedMean_[1] + pedPnDiscrepancyMean_[1] < mean04)
986  val = 0.;
987  if ( rms04 > pedPnRMSThreshold_[1] )
988  val = 0.;
989  if ( meg05_[ism-1] ) meg05_[ism-1]->setBinContent(i, 1, val);
990 
991  }
992 
993  if ( Masks::maskPn(ism, i, bits01|bits04, EcalBarrel) ) UtilsClient::maskBinContent( meg04_[ism-1], i, 1 );
994  if ( Masks::maskPn(ism, i, bits03|bits05, EcalBarrel) ) UtilsClient::maskBinContent( meg05_[ism-1], i, 1 );
995 
996  }
997 
998  for ( int i = 1; i <= 10; i++ ) {
999 
1000  if ( hs01_[ism-1] ) {
1001  int ic = UtilsClient::getFirstNonEmptyChannel( hs01_[ism-1] );
1002  if ( me_hs01_[ism-1] ) {
1003  me_hs01_[ism-1]->setBinContent( i, hs01_[ism-1]->GetBinContent(ic, i) );
1004  me_hs01_[ism-1]->setBinError( i, hs01_[ism-1]->GetBinError(ic, i) );
1005  }
1006  }
1007 
1008  if ( hs02_[ism-1] ) {
1009  int ic = UtilsClient::getFirstNonEmptyChannel( hs02_[ism-1] );
1010  if ( me_hs02_[ism-1] ) {
1011  me_hs02_[ism-1]->setBinContent( i, hs02_[ism-1]->GetBinContent(ic, i) );
1012  me_hs02_[ism-1]->setBinError( i, hs02_[ism-1]->GetBinError(ic, i) );
1013  }
1014  }
1015 
1016  if ( hs03_[ism-1] ) {
1017  int ic = UtilsClient::getFirstNonEmptyChannel( hs03_[ism-1] );
1018  if ( me_hs03_[ism-1] ) {
1019  me_hs03_[ism-1]->setBinContent( i, hs03_[ism-1]->GetBinContent(ic, i) );
1020  me_hs03_[ism-1]->setBinError( i, hs03_[ism-1]->GetBinError(ic, i) );
1021  }
1022  }
1023 
1024  }
1025 
1026  }
1027 
1028 }
float pedPnDiscrepancyMean_[2]
TProfile * i02_[36]
int i
Definition: DBlmapReader.cc:9
void setBinContent(int binx, double content)
set content of bin (1-D)
static bool maskChannel(int ism, int i1, int i2, uint32_t bits, const EcalSubdetector subdet)
Definition: Masks.cc:60
static std::string sEB(const int ism)
Definition: Numbers.cc:87
static const int TESTPULSE_LOW_GAIN_RMS_ERROR
MonitorElement * meg05_[36]
TProfile2D * ha02_[36]
static T getHisto(const MonitorElement *me, bool clone=false, T ret=0)
Returns the histogram contained by the Monitor Element.
Definition: UtilsClient.h:91
static const int PEDESTAL_HIGH_GAIN_MEAN_ERROR
TProfile2D * ha03_[36]
MonitorElement * meg03_[36]
MonitorElement * mea01_[36]
MonitorElement * me_hs03_[36]
MonitorElement * meg02_[36]
#define abs(x)
Definition: mlp_lapack.h:159
MonitorElement * mer05_[36]
static const int TESTPULSE_MIDDLE_GAIN_MEAN_ERROR
static const int PEDESTAL_LOW_GAIN_RMS_ERROR
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
static void maskBinContent(const MonitorElement *me, const int ix, const int iy)
Mask the bin content.
Definition: UtilsClient.cc:231
static int icEB(const int ism, const int ix, const int iy)
Definition: Numbers.cc:898
MonitorElement * mea03_[36]
static const int PEDESTAL_HIGH_GAIN_RMS_ERROR
static bool maskPn(int ism, int i1, uint32_t bits, const EcalSubdetector subdet)
Definition: Masks.cc:112
void Fill(long long x)
MonitorElement * mea02_[36]
static const int TESTPULSE_MIDDLE_GAIN_RMS_ERROR
std::vector< int > MGPAGainsPN_
std::vector< int > MGPAGains_
TProfile2D * hs03_[36]
static const int TESTPULSE_HIGH_GAIN_RMS_ERROR
void setBinError(int binx, double error)
set uncertainty on content of bin (1-D)
MonitorElement * meg04_[36]
void setEntries(double nentries)
set # of entries
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1265
TProfile * i01_[36]
static const int PEDESTAL_LOW_GAIN_MEAN_ERROR
static bool getBinStatistics(TH1 *histo, const int ix, const int iy, float &num, float &mean, float &rms, float minEntries=1.)
Returns true if the bin contains good statistical data.
Definition: UtilsClient.cc:74
TProfile2D * ha01_[36]
static const int TESTPULSE_LOW_GAIN_MEAN_ERROR
MonitorElement * me_hs02_[36]
TProfile2D * hs01_[36]
TProfile * i03_[36]
std::vector< int > superModules_
tuple cout
Definition: gather_cfg.py:41
MonitorElement * mer04_[36]
static const int TESTPULSE_HIGH_GAIN_MEAN_ERROR
MonitorElement * me_hs01_[36]
MonitorElement * meg01_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
void Reset(void)
reset ME (ie. contents, errors, etc)
TProfile2D * hs02_[36]
TProfile * i04_[36]
static int getFirstNonEmptyChannel(const TProfile2D *histo)
Find the first non empty bin.
Definition: UtilsClient.cc:246
void EBTestPulseClient::beginJob ( void  )
virtual

BeginJob.

Implements EBClient.

Definition at line 136 of file EBTestPulseClient.cc.

References gather_cfg::cout, debug_, dqmStore_, ievt_, jevt_, and cmsCodeRules.cppFunctionSkipper::operator.

136  {
137 
139 
140  if ( debug_ ) std::cout << "EBTestPulseClient: beginJob" << std::endl;
141 
142  ievt_ = 0;
143  jevt_ = 0;
144 
145 }
tuple cout
Definition: gather_cfg.py:41
void EBTestPulseClient::beginRun ( void  )
virtual

BeginRun.

Implements EBClient.

Definition at line 147 of file EBTestPulseClient.cc.

References gather_cfg::cout, debug_, jevt_, and setup().

147  {
148 
149  if ( debug_ ) std::cout << "EBTestPulseClient: beginRun" << std::endl;
150 
151  jevt_ = 0;
152 
153  this->setup();
154 
155 }
void setup(void)
Setup.
tuple cout
Definition: gather_cfg.py:41
void EBTestPulseClient::cleanup ( void  )
virtual

Cleanup.

Implements EBClient.

Definition at line 322 of file EBTestPulseClient.cc.

References cloneME_, dqmStore_, enableCleanup_, edm::getName(), ha01_, ha02_, ha03_, hs01_, hs02_, hs03_, i, i01_, i02_, i03_, i04_, ecalpyutils::ism(), me_hs01_, me_hs02_, me_hs03_, mea01_, mea02_, mea03_, meg01_, meg02_, meg03_, meg04_, meg05_, mer04_, mer05_, prefixME_, DQMStore::removeElement(), DQMStore::setCurrentFolder(), and superModules_.

Referenced by endJob(), and endRun().

322  {
323 
324  if ( ! enableCleanup_ ) return;
325 
326  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
327 
328  int ism = superModules_[i];
329 
330  if ( cloneME_ ) {
331  if ( ha01_[ism-1] ) delete ha01_[ism-1];
332  if ( ha02_[ism-1] ) delete ha02_[ism-1];
333  if ( ha03_[ism-1] ) delete ha03_[ism-1];
334 
335  if ( hs01_[ism-1] ) delete hs01_[ism-1];
336  if ( hs02_[ism-1] ) delete hs02_[ism-1];
337  if ( hs03_[ism-1] ) delete hs03_[ism-1];
338 
339  if ( i01_[ism-1] ) delete i01_[ism-1];
340  if ( i02_[ism-1] ) delete i02_[ism-1];
341  if ( i03_[ism-1] ) delete i03_[ism-1];
342  if ( i04_[ism-1] ) delete i04_[ism-1];
343  }
344 
345  ha01_[ism-1] = 0;
346  ha02_[ism-1] = 0;
347  ha03_[ism-1] = 0;
348 
349  hs01_[ism-1] = 0;
350  hs02_[ism-1] = 0;
351  hs03_[ism-1] = 0;
352 
353  i01_[ism-1] = 0;
354  i02_[ism-1] = 0;
355  i03_[ism-1] = 0;
356  i04_[ism-1] = 0;
357 
358  }
359 
360  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
361 
362  int ism = superModules_[i];
363 
364  dqmStore_->setCurrentFolder( prefixME_ + "/EBTestPulseClient" );
365 
366  if ( meg01_[ism-1] ) dqmStore_->removeElement( meg01_[ism-1]->getName() );
367  meg01_[ism-1] = 0;
368  if ( meg02_[ism-1] ) dqmStore_->removeElement( meg02_[ism-1]->getName() );
369  meg02_[ism-1] = 0;
370  if ( meg03_[ism-1] ) dqmStore_->removeElement( meg03_[ism-1]->getName() );
371  meg03_[ism-1] = 0;
372 
373  if ( meg04_[ism-1] ) dqmStore_->removeElement( meg04_[ism-1]->getName() );
374  meg04_[ism-1] = 0;
375  if ( meg05_[ism-1] ) dqmStore_->removeElement( meg05_[ism-1]->getName() );
376  meg05_[ism-1] = 0;
377 
378  if ( mea01_[ism-1] ) dqmStore_->removeElement( mea01_[ism-1]->getName() );
379  mea01_[ism-1] = 0;
380  if ( mea02_[ism-1] ) dqmStore_->removeElement( mea02_[ism-1]->getName() );
381  mea02_[ism-1] = 0;
382  if ( mea03_[ism-1] ) dqmStore_->removeElement( mea03_[ism-1]->getName() );
383  mea03_[ism-1] = 0;
384 
385  if ( mer04_[ism-1] ) dqmStore_->removeElement( mer04_[ism-1]->getName() );
386  mer04_[ism-1] = 0;
387  if ( mer05_[ism-1] ) dqmStore_->removeElement( mer05_[ism-1]->getName() );
388  mer05_[ism-1] = 0;
389 
390  if ( me_hs01_[ism-1] ) dqmStore_->removeElement( me_hs01_[ism-1]->getName() );
391  me_hs01_[ism-1] = 0;
392  if ( me_hs02_[ism-1] ) dqmStore_->removeElement( me_hs02_[ism-1]->getName() );
393  me_hs02_[ism-1] = 0;
394  if ( me_hs03_[ism-1] ) dqmStore_->removeElement( me_hs03_[ism-1]->getName() );
395  me_hs03_[ism-1] = 0;
396 
397  }
398 
399 }
TProfile * i02_[36]
int i
Definition: DBlmapReader.cc:9
MonitorElement * meg05_[36]
TProfile2D * ha02_[36]
TProfile2D * ha03_[36]
MonitorElement * meg03_[36]
MonitorElement * mea01_[36]
MonitorElement * me_hs03_[36]
MonitorElement * meg02_[36]
MonitorElement * mer05_[36]
MonitorElement * mea03_[36]
MonitorElement * mea02_[36]
void removeElement(const std::string &name)
Definition: DQMStore.cc:2353
TProfile2D * hs03_[36]
MonitorElement * meg04_[36]
std::string getName(Reflex::Type &cc)
Definition: ClassFiller.cc:18
TProfile * i01_[36]
TProfile2D * ha01_[36]
MonitorElement * me_hs02_[36]
TProfile2D * hs01_[36]
TProfile * i03_[36]
std::vector< int > superModules_
MonitorElement * mer04_[36]
MonitorElement * me_hs01_[36]
MonitorElement * meg01_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
TProfile2D * hs02_[36]
TProfile * i04_[36]
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:232
void EBTestPulseClient::endJob ( void  )
virtual

EndJob.

Implements EBClient.

Definition at line 157 of file EBTestPulseClient.cc.

References cleanup(), gather_cfg::cout, debug_, and ievt_.

157  {
158 
159  if ( debug_ ) std::cout << "EBTestPulseClient: std::endlJob, ievt = " << ievt_ << std::endl;
160 
161  this->cleanup();
162 
163 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:41
void EBTestPulseClient::endRun ( void  )
virtual

EndRun.

Implements EBClient.

Definition at line 165 of file EBTestPulseClient.cc.

References cleanup(), gather_cfg::cout, debug_, and jevt_.

165  {
166 
167  if ( debug_ ) std::cout << "EBTestPulseClient: std::endlRun, jevt = " << jevt_ << std::endl;
168 
169  this->cleanup();
170 
171 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:41
int EBTestPulseClient::getEvtPerJob ( void  )
inlinevirtual

Get Functions.

Implements EBClient.

Definition at line 72 of file EBTestPulseClient.h.

References ievt_.

72 { return ievt_; }
int EBTestPulseClient::getEvtPerRun ( void  )
inlinevirtual

Returns the number of processed events in this Run.

Implements EBClient.

Definition at line 73 of file EBTestPulseClient.h.

References jevt_.

73 { return jevt_; }
void EBTestPulseClient::setup ( void  )
virtual

Setup.

Implements EBClient.

Definition at line 173 of file EBTestPulseClient.cc.

References DQMStore::book1D(), DQMStore::book2D(), dqmStore_, spr::find(), edm::getName(), i, ecalpyutils::ism(), me_hs01_, me_hs02_, me_hs03_, mea01_, mea02_, mea03_, meg01_, meg02_, meg03_, meg04_, meg05_, mer04_, mer05_, MGPAGains_, MGPAGainsPN_, mergeVDriftHistosByStation::name, prefixME_, DQMStore::removeElement(), MonitorElement::Reset(), Numbers::sEB(), MonitorElement::setAxisTitle(), MonitorElement::setBinContent(), DQMStore::setCurrentFolder(), and superModules_.

Referenced by beginRun().

173  {
174 
175  std::string name;
176 
177  dqmStore_->setCurrentFolder( prefixME_ + "/EBTestPulseClient" );
178 
179  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
180 
181  int ism = superModules_[i];
182 
183  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
184  if ( meg01_[ism-1] ) dqmStore_->removeElement( meg01_[ism-1]->getName() );
185  name = "EBTPT test pulse quality G01 " + Numbers::sEB(ism);
186  meg01_[ism-1] = dqmStore_->book2D(name, name, 85, 0., 85., 20, 0., 20.);
187  meg01_[ism-1]->setAxisTitle("ieta", 1);
188  meg01_[ism-1]->setAxisTitle("iphi", 2);
189  }
190  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
191  if ( meg02_[ism-1] ) dqmStore_->removeElement( meg02_[ism-1]->getName() );
192  name = "EBTPT test pulse quality G06 " + Numbers::sEB(ism);
193  meg02_[ism-1] = dqmStore_->book2D(name, name, 85, 0., 85., 20, 0., 20.);
194  meg02_[ism-1]->setAxisTitle("ieta", 1);
195  meg02_[ism-1]->setAxisTitle("iphi", 2);
196  }
197  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
198  if ( meg03_[ism-1] ) dqmStore_->removeElement( meg03_[ism-1]->getName() );
199  name = "EBTPT test pulse quality G12 " + Numbers::sEB(ism);
200  meg03_[ism-1] = dqmStore_->book2D(name, name, 85, 0., 85., 20, 0., 20.);
201  meg03_[ism-1]->setAxisTitle("ieta", 1);
202  meg03_[ism-1]->setAxisTitle("iphi", 2);
203  }
204 
205  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 1) != MGPAGainsPN_.end() ) {
206  if ( meg04_[ism-1] ) dqmStore_->removeElement( meg04_[ism-1]->getName() );
207  name = "EBTPT test pulse quality PNs G01 " + Numbers::sEB(ism);
208  meg04_[ism-1] = dqmStore_->book2D(name, name, 10, 0., 10., 1, 0., 5.);
209  meg04_[ism-1]->setAxisTitle("pseudo-strip", 1);
210  meg04_[ism-1]->setAxisTitle("channel", 2);
211  }
212  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 16) != MGPAGainsPN_.end() ) {
213  if ( meg05_[ism-1] ) dqmStore_->removeElement( meg05_[ism-1]->getName() );
214  name = "EBTPT test pulse quality PNs G16 " + Numbers::sEB(ism);
215  meg05_[ism-1] = dqmStore_->book2D(name, name, 10, 0., 10., 1, 0., 5.);
216  meg05_[ism-1]->setAxisTitle("pseudo-strip", 1);
217  meg05_[ism-1]->setAxisTitle("channel", 2);
218  }
219 
220  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
221  if ( mea01_[ism-1] ) dqmStore_->removeElement( mea01_[ism-1]->getName() );
222  name = "EBTPT test pulse amplitude G01 " + Numbers::sEB(ism);
223  mea01_[ism-1] = dqmStore_->book1D(name, name, 1700, 0., 1700.);
224  mea01_[ism-1]->setAxisTitle("channel", 1);
225  mea01_[ism-1]->setAxisTitle("amplitude", 2);
226  }
227  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
228  if ( mea02_[ism-1] ) dqmStore_->removeElement( mea02_[ism-1]->getName() );
229  name = "EBTPT test pulse amplitude G06 " + Numbers::sEB(ism);
230  mea02_[ism-1] = dqmStore_->book1D(name, name, 1700, 0., 1700.);
231  mea02_[ism-1]->setAxisTitle("channel", 1);
232  mea02_[ism-1]->setAxisTitle("amplitude", 2);
233  }
234  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
235  if ( mea03_[ism-1] ) dqmStore_->removeElement( mea03_[ism-1]->getName() );
236  name = "EBTPT test pulse amplitude G12 " + Numbers::sEB(ism);
237  mea03_[ism-1] = dqmStore_->book1D(name, name, 1700, 0., 1700.);
238  mea03_[ism-1]->setAxisTitle("channel", 1);
239  mea03_[ism-1]->setAxisTitle("amplitude", 2);
240  }
241 
242  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 1) != MGPAGainsPN_.end() ) {
243  if ( mer04_[ism-1] ) dqmStore_->removeElement( mer04_[ism-1]->getName() );
244  name = "EBTPT PNs pedestal rms " + Numbers::sEB(ism) + " G01";
245  mer04_[ism-1] = dqmStore_->book1D(name, name, 100, 0., 10.);
246  mer04_[ism-1]->setAxisTitle("rms", 1);
247  }
248  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 16) != MGPAGainsPN_.end() ) {
249  if ( mer05_[ism-1] ) dqmStore_->removeElement( mer05_[ism-1]->getName() );
250  name = "EBTPT PNs pedestal rms " + Numbers::sEB(ism) + " G16";
251  mer05_[ism-1] = dqmStore_->book1D(name, name, 100, 0., 10.);
252  mer05_[ism-1]->setAxisTitle("rms", 1);
253  }
254 
255  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
256  if ( me_hs01_[ism-1] ) dqmStore_->removeElement( me_hs01_[ism-1]->getName() );
257  name = "EBTPT test pulse shape G01 " + Numbers::sEB(ism);
258  me_hs01_[ism-1] = dqmStore_->book1D(name, name, 10, 0., 10.);
259  me_hs01_[ism-1]->setAxisTitle("sample", 1);
260  me_hs01_[ism-1]->setAxisTitle("amplitude", 2);
261  }
262  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
263  if ( me_hs02_[ism-1] ) dqmStore_->removeElement( me_hs02_[ism-1]->getName() );
264  name = "EBTPT test pulse shape G06 " + Numbers::sEB(ism);
265  me_hs02_[ism-1] = dqmStore_->book1D(name, name, 10, 0., 10.);
266  me_hs02_[ism-1]->setAxisTitle("sample", 1);
267  me_hs02_[ism-1]->setAxisTitle("amplitude", 2);
268  }
269  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
270  if ( me_hs03_[ism-1] ) dqmStore_->removeElement( me_hs03_[ism-1]->getName() );
271  name = "EBTPT test pulse shape G12 " + Numbers::sEB(ism);
272  me_hs03_[ism-1] = dqmStore_->book1D(name, name, 10, 0., 10.);
273  me_hs03_[ism-1]->setAxisTitle("sample", 1);
274  me_hs03_[ism-1]->setAxisTitle("amplitude", 2);
275  }
276 
277  }
278 
279  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
280 
281  int ism = superModules_[i];
282 
283  if ( meg01_[ism-1] ) meg01_[ism-1]->Reset();
284  if ( meg02_[ism-1] ) meg02_[ism-1]->Reset();
285  if ( meg03_[ism-1] ) meg03_[ism-1]->Reset();
286 
287  if ( meg04_[ism-1] ) meg04_[ism-1]->Reset();
288  if ( meg05_[ism-1] ) meg05_[ism-1]->Reset();
289 
290  for ( int ie = 1; ie <= 85; ie++ ) {
291  for ( int ip = 1; ip <= 20; ip++ ) {
292 
293  if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ie, ip, 2. );
294  if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ie, ip, 2. );
295  if ( meg03_[ism-1] ) meg03_[ism-1]->setBinContent( ie, ip, 2. );
296 
297  }
298  }
299 
300  for ( int i = 1; i <= 10; i++ ) {
301 
302  if ( meg04_[ism-1] ) meg04_[ism-1]->setBinContent( i, 1, 2. );
303  if ( meg05_[ism-1] ) meg05_[ism-1]->setBinContent( i, 1, 2. );
304 
305  }
306 
307  if ( mea01_[ism-1] ) mea01_[ism-1]->Reset();
308  if ( mea02_[ism-1] ) mea02_[ism-1]->Reset();
309  if ( mea03_[ism-1] ) mea03_[ism-1]->Reset();
310 
311  if ( mer04_[ism-1] ) mer04_[ism-1]->Reset();
312  if ( mer05_[ism-1] ) mer05_[ism-1]->Reset();
313 
314  if ( me_hs01_[ism-1] ) me_hs01_[ism-1]->Reset();
315  if ( me_hs02_[ism-1] ) me_hs02_[ism-1]->Reset();
316  if ( me_hs03_[ism-1] ) me_hs03_[ism-1]->Reset();
317 
318  }
319 
320 }
int i
Definition: DBlmapReader.cc:9
void setBinContent(int binx, double content)
set content of bin (1-D)
static std::string sEB(const int ism)
Definition: Numbers.cc:87
MonitorElement * meg05_[36]
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:514
MonitorElement * meg03_[36]
MonitorElement * mea01_[36]
MonitorElement * me_hs03_[36]
MonitorElement * meg02_[36]
MonitorElement * mer05_[36]
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
MonitorElement * mea03_[36]
MonitorElement * mea02_[36]
std::vector< int > MGPAGainsPN_
std::vector< int > MGPAGains_
void removeElement(const std::string &name)
Definition: DQMStore.cc:2353
MonitorElement * meg04_[36]
std::string getName(Reflex::Type &cc)
Definition: ClassFiller.cc:18
MonitorElement * me_hs02_[36]
std::vector< int > superModules_
MonitorElement * mer04_[36]
MonitorElement * me_hs01_[36]
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
Definition: DQMStore.cc:642
MonitorElement * meg01_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void Reset(void)
reset ME (ie. contents, errors, etc)
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:232

Friends And Related Function Documentation

friend class EBSummaryClient
friend

Definition at line 35 of file EBTestPulseClient.h.

Member Data Documentation

float EBTestPulseClient::amplitudeThreshold_
private

Definition at line 130 of file EBTestPulseClient.h.

Referenced by analyze(), and EBTestPulseClient().

float EBTestPulseClient::amplitudeThresholdPnG01_
private

Definition at line 134 of file EBTestPulseClient.h.

Referenced by analyze(), and EBTestPulseClient().

float EBTestPulseClient::amplitudeThresholdPnG16_
private

Definition at line 135 of file EBTestPulseClient.h.

Referenced by analyze(), and EBTestPulseClient().

bool EBTestPulseClient::cloneME_
private

Definition at line 80 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

bool EBTestPulseClient::debug_
private

Definition at line 83 of file EBTestPulseClient.h.

Referenced by analyze(), beginJob(), beginRun(), EBTestPulseClient(), endJob(), and endRun().

DQMStore* EBTestPulseClient::dqmStore_
private

Definition at line 93 of file EBTestPulseClient.h.

Referenced by analyze(), beginJob(), cleanup(), and setup().

bool EBTestPulseClient::enableCleanup_
private

Definition at line 87 of file EBTestPulseClient.h.

Referenced by cleanup(), and EBTestPulseClient().

TProfile2D* EBTestPulseClient::ha01_[36]
private

Definition at line 95 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile2D* EBTestPulseClient::ha02_[36]
private

Definition at line 96 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile2D* EBTestPulseClient::ha03_[36]
private

Definition at line 97 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile2D* EBTestPulseClient::hs01_[36]
private

Definition at line 99 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile2D* EBTestPulseClient::hs02_[36]
private

Definition at line 100 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile2D* EBTestPulseClient::hs03_[36]
private

Definition at line 101 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile* EBTestPulseClient::i01_[36]
private

Definition at line 121 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile* EBTestPulseClient::i02_[36]
private

Definition at line 122 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile* EBTestPulseClient::i03_[36]
private

Definition at line 123 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

TProfile* EBTestPulseClient::i04_[36]
private

Definition at line 124 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), and EBTestPulseClient().

int EBTestPulseClient::ievt_
private

Definition at line 77 of file EBTestPulseClient.h.

Referenced by analyze(), beginJob(), endJob(), and getEvtPerJob().

int EBTestPulseClient::jevt_
private

Definition at line 78 of file EBTestPulseClient.h.

Referenced by analyze(), beginJob(), beginRun(), endRun(), and getEvtPerRun().

MonitorElement* EBTestPulseClient::me_hs01_[36]
private

Definition at line 117 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), EBTestPulseClient(), and setup().

MonitorElement* EBTestPulseClient::me_hs02_[36]
private

Definition at line 118 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), EBTestPulseClient(), and setup().

MonitorElement* EBTestPulseClient::me_hs03_[36]
private

Definition at line 119 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), EBTestPulseClient(), and setup().

MonitorElement* EBTestPulseClient::mea01_[36]
private
MonitorElement* EBTestPulseClient::mea02_[36]
private
MonitorElement* EBTestPulseClient::mea03_[36]
private
MonitorElement* EBTestPulseClient::meg01_[36]
private
MonitorElement* EBTestPulseClient::meg02_[36]
private
MonitorElement* EBTestPulseClient::meg03_[36]
private
MonitorElement* EBTestPulseClient::meg04_[36]
private
MonitorElement* EBTestPulseClient::meg05_[36]
private
MonitorElement* EBTestPulseClient::mer04_[36]
private

Definition at line 114 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), EBTestPulseClient(), and setup().

MonitorElement* EBTestPulseClient::mer05_[36]
private

Definition at line 115 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), EBTestPulseClient(), and setup().

std::vector<int> EBTestPulseClient::MGPAGains_
private

Definition at line 90 of file EBTestPulseClient.h.

Referenced by analyze(), EBTestPulseClient(), and setup().

std::vector<int> EBTestPulseClient::MGPAGainsPN_
private

Definition at line 91 of file EBTestPulseClient.h.

Referenced by analyze(), EBTestPulseClient(), and setup().

float EBTestPulseClient::pedPnDiscrepancyMean_[2]
private

Definition at line 137 of file EBTestPulseClient.h.

Referenced by analyze(), and EBTestPulseClient().

float EBTestPulseClient::pedPnExpectedMean_[2]
private

Definition at line 136 of file EBTestPulseClient.h.

Referenced by analyze(), and EBTestPulseClient().

float EBTestPulseClient::pedPnRMSThreshold_[2]
private

Definition at line 138 of file EBTestPulseClient.h.

Referenced by analyze(), and EBTestPulseClient().

float EBTestPulseClient::percentVariation_
private

Definition at line 128 of file EBTestPulseClient.h.

Referenced by analyze(), and EBTestPulseClient().

std::string EBTestPulseClient::prefixME_
private

Definition at line 85 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), EBTestPulseClient(), and setup().

float EBTestPulseClient::RMSThreshold_
private

Definition at line 129 of file EBTestPulseClient.h.

Referenced by analyze(), and EBTestPulseClient().

std::vector<int> EBTestPulseClient::superModules_
private

Definition at line 89 of file EBTestPulseClient.h.

Referenced by analyze(), cleanup(), EBTestPulseClient(), and setup().

bool EBTestPulseClient::verbose_
private

Definition at line 82 of file EBTestPulseClient.h.

Referenced by EBTestPulseClient().