File indexing completed on 2024-04-06 12:31:59
0001 #include "DQMServices/Core/interface/DQMStore.h"
0002 #include "FWCore/Framework/interface/ESHandle.h"
0003 #include "FWCore/Framework/interface/Event.h"
0004 #include "FWCore/Framework/interface/Frameworkfwd.h"
0005 #include "FWCore/ServiceRegistry/interface/Service.h"
0006 #include "Validation/DTRecHits/interface/utils.h"
0007
0008 #include "DT4DSegmentClients.h"
0009 #include "Histograms.h"
0010
0011 using namespace std;
0012 using namespace edm;
0013
0014 DT4DSegmentClients::DT4DSegmentClients(edm::ParameterSet const &pset) {
0015 doall_ = pset.getUntrackedParameter<bool>("doall", false);
0016 }
0017
0018 DT4DSegmentClients::~DT4DSegmentClients() {}
0019
0020 void DT4DSegmentClients::dqmEndJob(DQMStore::IBooker &booker, DQMStore::IGetter &getter) {
0021 MonitorElement *hResAlpha = getter.get("DT/4DSegments/Res/4D_All_hResAlpha");
0022 MonitorElement *hResBeta = getter.get("DT/4DSegments/Res/4D_All_hResBeta");
0023 MonitorElement *hResX = getter.get("DT/4DSegments/Res/4D_All_hResX");
0024 MonitorElement *hResY = getter.get("DT/4DSegments/Res/4D_All_hResY");
0025 MonitorElement *hResBetaRZ = getter.get("DT/4DSegments/Res/4D_All_hResBetaRZ");
0026 MonitorElement *hResYRZ = getter.get("DT/4DSegments/Res/4D_All_hResYRZ");
0027
0028 MonitorElement *hResAlpha_W0 = getter.get("DT/4DSegments/Res/4D_W0_hResAlpha");
0029 MonitorElement *hResBeta_W0 = getter.get("DT/4DSegments/Res/4D_W0_hResBeta");
0030 MonitorElement *hResX_W0 = getter.get("DT/4DSegments/Res/4D_W0_hResX");
0031 MonitorElement *hResY_W0 = getter.get("DT/4DSegments/Res/4D_W0_hResY");
0032 MonitorElement *hResBetaRZ_W0 = getter.get("DT/4DSegments/Res/4D_W0_hResBetaRZ");
0033 MonitorElement *hResYRZ_W0 = getter.get("DT/4DSegments/Res/4D_W0_hResYRZ");
0034
0035 MonitorElement *hResAlpha_W1 = getter.get("DT/4DSegments/Res/4D_W1_hResAlpha");
0036 MonitorElement *hResBeta_W1 = getter.get("DT/4DSegments/Res/4D_W1_hResBeta");
0037 MonitorElement *hResX_W1 = getter.get("DT/4DSegments/Res/4D_W1_hResX");
0038 MonitorElement *hResY_W1 = getter.get("DT/4DSegments/Res/4D_W1_hResY");
0039 MonitorElement *hResBetaRZ_W1 = getter.get("DT/4DSegments/Res/4D_W1_hResBetaRZ");
0040 MonitorElement *hResYRZ_W1 = getter.get("DT/4DSegments/Res/4D_W1_hResYRZ");
0041
0042 MonitorElement *hResAlpha_W2 = getter.get("DT/4DSegments/Res/4D_W2_hResAlpha");
0043 MonitorElement *hResBeta_W2 = getter.get("DT/4DSegments/Res/4D_W2_hResBeta");
0044 MonitorElement *hResX_W2 = getter.get("DT/4DSegments/Res/4D_W2_hResX");
0045 MonitorElement *hResY_W2 = getter.get("DT/4DSegments/Res/4D_W2_hResY");
0046 MonitorElement *hResBetaRZ_W2 = getter.get("DT/4DSegments/Res/4D_W2_hResBetaRZ");
0047 MonitorElement *hResYRZ_W2 = getter.get("DT/4DSegments/Res/4D_W2_hResYRZ");
0048
0049 MonitorElement *hPullAlpha = getter.get("DT/4DSegments/Pull/4D_All_hPullAlpha");
0050 MonitorElement *hPullBeta = getter.get("DT/4DSegments/Pull/4D_All_hPullBeta");
0051 MonitorElement *hPullX = getter.get("DT/4DSegments/Pull/4D_All_hPullX");
0052 MonitorElement *hPullY = getter.get("DT/4DSegments/Pull/4D_All_hPullY");
0053 MonitorElement *hPullBetaRZ = getter.get("DT/4DSegments/Pull/4D_All_hPullBetaRZ");
0054 MonitorElement *hPullYRZ = getter.get("DT/4DSegments/Pull/4D_All_hPullYRZ");
0055
0056 MonitorElement *hPullAlpha_W0 = getter.get("DT/4DSegments/Pull/4D_W0_hPullAlpha");
0057 MonitorElement *hPullBeta_W0 = getter.get("DT/4DSegments/Pull/4D_W0_hPullBeta");
0058 MonitorElement *hPullX_W0 = getter.get("DT/4DSegments/Pull/4D_W0_hPullX");
0059 MonitorElement *hPullY_W0 = getter.get("DT/4DSegments/Pull/4D_W0_hPullY");
0060 MonitorElement *hPullBetaRZ_W0 = getter.get("DT/4DSegments/Pull/4D_W0_hPullBetaRZ");
0061 MonitorElement *hPullYRZ_W0 = getter.get("DT/4DSegments/Pull/4D_W0_hPullYRZ");
0062
0063 MonitorElement *hPullAlpha_W1 = getter.get("DT/4DSegments/Pull/4D_W1_hPullAlpha");
0064 MonitorElement *hPullBeta_W1 = getter.get("DT/4DSegments/Pull/4D_W1_hPullBeta");
0065 MonitorElement *hPullX_W1 = getter.get("DT/4DSegments/Pull/4D_W1_hPullX");
0066 MonitorElement *hPullY_W1 = getter.get("DT/4DSegments/Pull/4D_W1_hPullY");
0067 MonitorElement *hPullBetaRZ_W1 = getter.get("DT/4DSegments/Pull/4D_W1_hPullBetaRZ");
0068 MonitorElement *hPullYRZ_W1 = getter.get("DT/4DSegments/Pull/4D_W1_hPullYRZ");
0069
0070 MonitorElement *hPullAlpha_W2 = getter.get("DT/4DSegments/Pull/4D_W2_hPullAlpha");
0071 MonitorElement *hPullBeta_W2 = getter.get("DT/4DSegments/Pull/4D_W2_hPullBeta");
0072 MonitorElement *hPullX_W2 = getter.get("DT/4DSegments/Pull/4D_W2_hPullX");
0073 MonitorElement *hPullY_W2 = getter.get("DT/4DSegments/Pull/4D_W2_hPullY");
0074 MonitorElement *hPullBetaRZ_W2 = getter.get("DT/4DSegments/Pull/4D_W2_hPullBetaRZ");
0075 MonitorElement *hPullYRZ_W2 = getter.get("DT/4DSegments/Pull/4D_W2_hPullYRZ");
0076
0077 Tutils util;
0078 util.drawGFit(hResAlpha->getTH1(), -0.2, 0.2, -0.1, 0.1);
0079 util.drawGFit(hResBeta->getTH1(), -0.2, 0.2, -0.1, 0.1);
0080 util.drawGFit(hResX->getTH1(), -0.2, 0.2, -0.1, 0.1);
0081 util.drawGFit(hResY->getTH1(), -0.2, 0.2, -0.1, 0.1);
0082 util.drawGFit(hResBetaRZ->getTH1(), -0.2, 0.2, -0.1, 0.1);
0083 util.drawGFit(hResYRZ->getTH1(), -0.2, 0.2, -0.1, 0.1);
0084
0085 util.drawGFit(hResAlpha_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0086 util.drawGFit(hResBeta_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0087 util.drawGFit(hResX_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0088 util.drawGFit(hResY_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0089 util.drawGFit(hResBetaRZ_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0090 util.drawGFit(hResYRZ_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0091
0092 util.drawGFit(hResAlpha_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0093 util.drawGFit(hResBeta_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0094 util.drawGFit(hResX_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0095 util.drawGFit(hResY_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0096 util.drawGFit(hResBetaRZ_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0097 util.drawGFit(hResYRZ_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0098
0099 util.drawGFit(hResAlpha_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0100 util.drawGFit(hResBeta_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0101 util.drawGFit(hResX_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0102 util.drawGFit(hResY_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0103 util.drawGFit(hResBetaRZ_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0104 util.drawGFit(hResYRZ_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0105
0106 util.drawGFit(hPullAlpha->getTH1(), -0.2, 0.2, -0.1, 0.1);
0107 util.drawGFit(hPullBeta->getTH1(), -0.2, 0.2, -0.1, 0.1);
0108 util.drawGFit(hPullX->getTH1(), -0.2, 0.2, -0.1, 0.1);
0109 util.drawGFit(hPullY->getTH1(), -0.2, 0.2, -0.1, 0.1);
0110 util.drawGFit(hPullBetaRZ->getTH1(), -0.2, 0.2, -0.1, 0.1);
0111 util.drawGFit(hPullYRZ->getTH1(), -0.2, 0.2, -0.1, 0.1);
0112
0113 util.drawGFit(hPullAlpha_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0114 util.drawGFit(hPullBeta_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0115 util.drawGFit(hPullX_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0116 util.drawGFit(hPullY_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0117 util.drawGFit(hPullBetaRZ_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0118 util.drawGFit(hPullYRZ_W0->getTH1(), -0.2, 0.2, -0.1, 0.1);
0119
0120 util.drawGFit(hPullAlpha_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0121 util.drawGFit(hPullBeta_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0122 util.drawGFit(hPullX_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0123 util.drawGFit(hPullY_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0124 util.drawGFit(hPullBetaRZ_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0125 util.drawGFit(hPullYRZ_W1->getTH1(), -0.2, 0.2, -0.1, 0.1);
0126
0127 util.drawGFit(hPullAlpha_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0128 util.drawGFit(hPullBeta_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0129 util.drawGFit(hPullX_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0130 util.drawGFit(hPullY_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0131 util.drawGFit(hPullBetaRZ_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0132 util.drawGFit(hPullYRZ_W2->getTH1(), -0.2, 0.2, -0.1, 0.1);
0133
0134 if (doall_) {
0135 HEff4DHitHarvest hEff_S3RPhi("All", booker, getter);
0136 HEff4DHitHarvest hEff_S3RZ_W0("W0", booker, getter);
0137 HEff4DHitHarvest hEff_S3RZ_W1("W1", booker, getter);
0138 HEff4DHitHarvest hEff_S3RZ_W2("W2", booker, getter);
0139 }
0140 }
0141
0142
0143 #include "FWCore/Framework/interface/MakerMacros.h"
0144 DEFINE_FWK_MODULE(DT4DSegmentClients);