CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
HMassVSPart Class Reference

#include <Histograms.h>

Inherits Histograms.

Public Member Functions

void Clear () override
 
void Fill (const reco::Particle::LorentzVector &p41, const reco::Particle::LorentzVector &p42, const int charge, const double &weight=1.) override
 
void Fill (const reco::Particle::LorentzVector &p41, const reco::Particle::LorentzVector &p42, const reco::Particle::LorentzVector &p4Res, const double &weight=1.) override
 
void Fill (const CLHEP::HepLorentzVector &momentum1, const CLHEP::HepLorentzVector &momentum2, const CLHEP::HepLorentzVector &momentumRes, const double &weight=1.) override
 Used to fill 2D histograms for comparison of opposite charge muons quantities. More...
 
void Fill (const CLHEP::HepLorentzVector &momentum1, const CLHEP::HepLorentzVector &momentum2, const int charge, const double &weight=1.) override
 
 HMassVSPart (const TString &name, const double &minMass=0., const double &maxMass=150., const double maxPt=100.)
 
 HMassVSPart (const TString &name, TFile *file)
 
void Write () override
 
 ~HMassVSPart () override
 

Protected Attributes

TH2F * hMassVSCosThetaCS_
 
TProfile * hMassVSCosThetaCS_prof
 
TH2F * hMassVSEta_
 
TH2F * hMassVSEtaMinus_
 
TH3F * hMassVSEtaPhiMinus_
 
TH3F * hMassVSEtaPhiPlus_
 
TH2F * hMassVSEtaPlus_
 
TH3F * hMassVSEtaPlusEtaMinus_
 
TH2F * hMassVSEtaPlusMinusDiff_
 
TH2F * hMassVSPhiCS_
 
TH2F * hMassVSPhiMinus_
 
TH2F * hMassVSPhiPlus_
 
TH2F * hMassVSPhiPlusMinusDiff_
 
TH3F * hMassVSPhiPlusPhiMinus_
 
TH2F * hMassVSPt_
 

Detailed Description

Definition at line 778 of file Histograms.h.

Constructor & Destructor Documentation

◆ HMassVSPart() [1/2]

HMassVSPart::HMassVSPart ( const TString &  name,
const double &  minMass = 0.,
const double &  maxMass = 150.,
const double  maxPt = 100. 
)
inline

Definition at line 780 of file Histograms.h.

References hMassVSCosThetaCS_, hMassVSCosThetaCS_prof, hMassVSEta_, hMassVSEtaMinus_, hMassVSEtaPhiMinus_, hMassVSEtaPhiPlus_, hMassVSEtaPlus_, hMassVSEtaPlusEtaMinus_, hMassVSEtaPlusMinusDiff_, hMassVSPhiCS_, hMassVSPhiMinus_, hMassVSPhiPlus_, hMassVSPhiPlusMinusDiff_, hMassVSPhiPlusPhiMinus_, hMassVSPt_, B2GTnPMonitor_cfi::maxMass, PV_cfg::maxPt, B2GTnPMonitor_cfi::minMass, and Skims_PA_cff::name.

780  {
781  name_ = name;
782 
783  // Kinematical variables
784  // ---------------------
785  hMassVSPt_ = new TH2F(
786  name + "_MassVSPt", "resonance mass vs muon transverse momentum", 200, 0., maxPt, 6000, minMass, maxMass);
787 
788  hMassVSEta_ =
789  new TH2F(name + "_MassVSEta", "resonance mass vs muon pseudorapidity", 64, -6.4, 6.4, 6000, minMass, maxMass);
790  hMassVSEtaPlus_ = new TH2F(
791  name + "_MassVSEtaPlus", "resonance mass vs muon+ pseudorapidity", 64, -6.4, 6.4, 6000, minMass, maxMass);
792  hMassVSEtaMinus_ = new TH2F(
793  name + "_MassVSEtaMinus", "resonance mass vs muon- pseudorapidity", 64, -6.4, 6.4, 6000, minMass, maxMass);
794 
796  new TH2F(name + "_MassVSPhiPlus", "resonance mass vs muon+ phi angle", 64, -3.2, 3.2, 6000, minMass, maxMass);
798  new TH2F(name + "_MassVSPhiMinus", "resonance mass vs muon- phi angle", 64, -3.2, 3.2, 6000, minMass, maxMass);
799 
800  // J/Psi mass -----
801  // hMassVSEtaPhiPlus_ = new TH3F( name+"_MassVSEtaPhiPlus", "resonance mass vs muon+ phi/pseudorapidity",6, -3.2, 3.2, 20, -2.5, 2.5, 6000, minMass, maxMass );
802  // hMassVSEtaPhiMinus_ = new TH3F( name+"_MassVSEtaPhiMinus", "resonance mass vs muon- phi/pseudorapidity", 6, -3.2, 3.2, 20, -2.5, 2.5, 6000, minMass, maxMass );
803 
804  //Z mass -----------
805  hMassVSEtaPhiPlus_ = new TH3F(name + "_MassVSEtaPhiPlus",
806  "resonance mass vs muon+ phi/pseudorapidity",
807  16,
808  -3.2,
809  3.2,
810  20,
811  -2.4,
812  2.4,
813  300,
814  minMass,
815  maxMass);
816  hMassVSEtaPhiMinus_ = new TH3F(name + "_MassVSEtaPhiMinus",
817  "resonance mass vs muon- phi/pseudorapidity",
818  16,
819  -3.2,
820  3.2,
821  20,
822  -2.4,
823  2.4,
824  300,
825  minMass,
826  maxMass);
827 
828  hMassVSCosThetaCS_ = new TH2F(
829  name + "_MassVSCosThetaCS", "resonance mass vs cos(theta) (CS frame)", 40, -1., 1., 6000, minMass, maxMass);
830  hMassVSPhiCS_ =
831  new TH2F(name + "_MassVSPhiCS", "resonance mass vs phi (CS frame)", 64, -3.2, 3.2, 6000, minMass, maxMass);
832 
833  hMassVSPhiPlusPhiMinus_ = new TH3F(name + "_MassVSPhiPlusPhiMinus",
834  "resonance mass vs muon+ phi/muon- phi",
835  16,
836  -3.2,
837  3.2,
838  16,
839  -3.2,
840  3.2,
841  6000,
842  minMass,
843  maxMass);
844  hMassVSEtaPlusEtaMinus_ = new TH3F(name + "_MassVSEtaPlusEtaMinus",
845  "resonance mass vs muon+ eta/muon- eta",
846  16,
847  -3.2,
848  3.2,
849  16,
850  -3.2,
851  3.2,
852  6000,
853  minMass,
854  maxMass);
855 
856  hMassVSPhiPlusMinusDiff_ = new TH2F(name + "_MassVSPhiPlusMinusDiff",
857  "resonance mass vs delta phi between mu+/mu-",
858  64,
859  -6.4,
860  6.4,
861  6000,
862  minMass,
863  maxMass);
864  hMassVSEtaPlusMinusDiff_ = new TH2F(name + "_MassVSEtaPlusMinusDiff",
865  "resonance mass vs delta pseudorapidity between mu+/mu-",
866  32,
867  -4.4,
868  4.4,
869  6000,
870  minMass,
871  maxMass);
873  new TProfile(name + "_MassVScosTheta_prof", "resonance mass vs cosTheta", 40, -1., 1., 85., 95.);
874 
875  //hMassVSPt_prof = new TProfile (name+"_MassVSPt_prof", "resonance mass vs muon transverse momentum", 100, 0., 200., minMass, maxMass);
876  //hMassVSEta_prof = new TProfile (name+"_MassVSEta_prof", "resonance mass vs muon pseudorapidity", 30, -6., 6., minMass, maxMass);
877  //hMassVSPhiPlus_prof = new TProfile (name+"_MassVSPhiPlus_prof", "resonance mass vs muon+ phi angle", 32, -3.2, 3.2, minMass, maxMass);
878  //hMassVSPhiMinus_prof = new TProfile (name+"_MassVSPhiMinus_prof", "resonance mass vs muon- phi angle", 32, -3.2, 3.2, minMass, maxMass);
879  }
TH2F * hMassVSEtaMinus_
Definition: Histograms.h:1091
TH3F * hMassVSEtaPhiMinus_
Definition: Histograms.h:1089
TH2F * hMassVSEta_
Definition: Histograms.h:1082
TH3F * hMassVSPhiPlusPhiMinus_
Definition: Histograms.h:1096
TProfile * hMassVSCosThetaCS_prof
Definition: Histograms.h:1099
TH3F * hMassVSEtaPlusEtaMinus_
Definition: Histograms.h:1097
TH2F * hMassVSPhiCS_
Definition: Histograms.h:1086
TH2F * hMassVSEtaPlus_
Definition: Histograms.h:1090
TH2F * hMassVSCosThetaCS_
Definition: Histograms.h:1085
TH3F * hMassVSEtaPhiPlus_
Definition: Histograms.h:1088
maxPt
Definition: PV_cfg.py:223
TH2F * hMassVSPhiMinus_
Definition: Histograms.h:1084
TH2F * hMassVSEtaPlusMinusDiff_
Definition: Histograms.h:1094
TH2F * hMassVSPhiPlus_
Definition: Histograms.h:1083
TH2F * hMassVSPt_
Definition: Histograms.h:1081
TH2F * hMassVSPhiPlusMinusDiff_
Definition: Histograms.h:1093

◆ HMassVSPart() [2/2]

HMassVSPart::HMassVSPart ( const TString &  name,
TFile *  file 
)
inline

Definition at line 881 of file Histograms.h.

References geometryDiff::file, hMassVSCosThetaCS_prof, hMassVSEta_, hMassVSEtaMinus_, hMassVSEtaPhiMinus_, hMassVSEtaPhiPlus_, hMassVSEtaPlus_, hMassVSEtaPlusMinusDiff_, hMassVSPhiMinus_, hMassVSPhiPlus_, hMassVSPhiPlusMinusDiff_, hMassVSPt_, and Skims_PA_cff::name.

881  {
882  name_ = name;
883  hMassVSPt_ = (TH2F*)file->Get(name + "_MassVSPt");
884  hMassVSEta_ = (TH2F*)file->Get(name + "_MassVSEta");
885 
886  hMassVSEtaPhiPlus_ = (TH3F*)file->Get(name + "_MassVSEtaPlus");
887  hMassVSEtaPhiMinus_ = (TH3F*)file->Get(name + "_MassVSEtaMinus");
888  hMassVSEtaPlus_ = (TH2F*)file->Get(name + "_MassVSEtaPlus");
889  hMassVSEtaMinus_ = (TH2F*)file->Get(name + "_MassVSEtaMinus");
890 
891  hMassVSPhiPlusMinusDiff_ = (TH2F*)file->Get(name + "_MassVSPhiPlusMinusDiff");
892  hMassVSEtaPlusMinusDiff_ = (TH2F*)file->Get(name + "_MassVSEtaPlusMinusDiff");
893 
894  hMassVSPhiPlus_ = (TH2F*)file->Get(name + "_MassVSPhiPlus");
895  hMassVSPhiMinus_ = (TH2F*)file->Get(name + "_MassVSPhiMinus");
896 
897  hMassVSCosThetaCS_prof = (TProfile*)file->Get(name + "_MassVScosTheta_prof");
898  //hMassVSPt_prof = (TProfile *) file->Get(name+"_MassVSPt_prof");
899  //hMassVSEta_prof = (TProfile *) file->Get(name+"_MassVSEta_prof");
900  //hMassVSPhiPlus_prof = (TProfile *) file->Get(name+"_MassVSPhiPlus_prof");
901  //hMassVSPhiMinus_prof = (TProfile *) file->Get(name+"_MassVSPhiMinus_prof");
902  }
TH2F * hMassVSEtaMinus_
Definition: Histograms.h:1091
TH3F * hMassVSEtaPhiMinus_
Definition: Histograms.h:1089
TH2F * hMassVSEta_
Definition: Histograms.h:1082
TProfile * hMassVSCosThetaCS_prof
Definition: Histograms.h:1099
TH2F * hMassVSEtaPlus_
Definition: Histograms.h:1090
TH3F * hMassVSEtaPhiPlus_
Definition: Histograms.h:1088
TH2F * hMassVSPhiMinus_
Definition: Histograms.h:1084
TH2F * hMassVSEtaPlusMinusDiff_
Definition: Histograms.h:1094
TH2F * hMassVSPhiPlus_
Definition: Histograms.h:1083
TH2F * hMassVSPt_
Definition: Histograms.h:1081
TH2F * hMassVSPhiPlusMinusDiff_
Definition: Histograms.h:1093

◆ ~HMassVSPart()

HMassVSPart::~HMassVSPart ( )
inlineoverride

Definition at line 904 of file Histograms.h.

References hMassVSCosThetaCS_, hMassVSCosThetaCS_prof, hMassVSEta_, hMassVSEtaMinus_, hMassVSEtaPhiMinus_, hMassVSEtaPhiPlus_, hMassVSEtaPlus_, hMassVSEtaPlusEtaMinus_, hMassVSEtaPlusMinusDiff_, hMassVSPhiCS_, hMassVSPhiMinus_, hMassVSPhiPlus_, hMassVSPhiPlusMinusDiff_, hMassVSPhiPlusPhiMinus_, and hMassVSPt_.

904  {
905  delete hMassVSPt_;
906  delete hMassVSEta_;
907  delete hMassVSPhiPlus_;
908  delete hMassVSPhiMinus_;
909  delete hMassVSEtaPhiPlus_;
910  delete hMassVSEtaPhiMinus_;
911  delete hMassVSEtaPlus_;
912  delete hMassVSEtaMinus_;
915  delete hMassVSCosThetaCS_;
916  delete hMassVSPhiCS_;
919  delete hMassVSCosThetaCS_prof;
920  }
TH2F * hMassVSEtaMinus_
Definition: Histograms.h:1091
TH3F * hMassVSEtaPhiMinus_
Definition: Histograms.h:1089
TH2F * hMassVSEta_
Definition: Histograms.h:1082
TH3F * hMassVSPhiPlusPhiMinus_
Definition: Histograms.h:1096
TProfile * hMassVSCosThetaCS_prof
Definition: Histograms.h:1099
TH3F * hMassVSEtaPlusEtaMinus_
Definition: Histograms.h:1097
TH2F * hMassVSPhiCS_
Definition: Histograms.h:1086
TH2F * hMassVSEtaPlus_
Definition: Histograms.h:1090
TH2F * hMassVSCosThetaCS_
Definition: Histograms.h:1085
TH3F * hMassVSEtaPhiPlus_
Definition: Histograms.h:1088
TH2F * hMassVSPhiMinus_
Definition: Histograms.h:1084
TH2F * hMassVSEtaPlusMinusDiff_
Definition: Histograms.h:1094
TH2F * hMassVSPhiPlus_
Definition: Histograms.h:1083
TH2F * hMassVSPt_
Definition: Histograms.h:1081
TH2F * hMassVSPhiPlusMinusDiff_
Definition: Histograms.h:1093

Member Function Documentation

◆ Clear()

void HMassVSPart::Clear ( )
inlineoverride

Definition at line 1055 of file Histograms.h.

References hMassVSCosThetaCS_, hMassVSCosThetaCS_prof, hMassVSEta_, hMassVSEtaMinus_, hMassVSEtaPhiMinus_, hMassVSEtaPhiPlus_, hMassVSEtaPlus_, hMassVSEtaPlusEtaMinus_, hMassVSEtaPlusMinusDiff_, hMassVSPhiCS_, hMassVSPhiMinus_, hMassVSPhiPlus_, hMassVSPhiPlusMinusDiff_, hMassVSPhiPlusPhiMinus_, and hMassVSPt_.

1055  {
1056  hMassVSPt_->Clear();
1057  hMassVSEta_->Clear();
1058  hMassVSPhiPlus_->Clear();
1059  hMassVSPhiMinus_->Clear();
1060 
1061  hMassVSEtaPhiPlus_->Clear();
1062  hMassVSEtaPhiMinus_->Clear();
1063  hMassVSEtaPlus_->Clear();
1064  hMassVSEtaMinus_->Clear();
1065 
1066  hMassVSPhiPlusPhiMinus_->Clear();
1067  hMassVSEtaPlusEtaMinus_->Clear();
1068  hMassVSCosThetaCS_->Clear();
1069  hMassVSPhiCS_->Clear();
1070  hMassVSPhiPlusMinusDiff_->Clear();
1071  hMassVSEtaPlusMinusDiff_->Clear();
1072  hMassVSCosThetaCS_prof->Clear();
1073 
1074  //hMassVSPt_prof_->Clear();
1075  //hMassVSEta_prof_->Clear();
1076  //hMassVSPhiPlus_prof_->Clear();
1077  //hMassVSPhiMinus_prof_->Clear();
1078  }
TH2F * hMassVSEtaMinus_
Definition: Histograms.h:1091
TH3F * hMassVSEtaPhiMinus_
Definition: Histograms.h:1089
TH2F * hMassVSEta_
Definition: Histograms.h:1082
TH3F * hMassVSPhiPlusPhiMinus_
Definition: Histograms.h:1096
TProfile * hMassVSCosThetaCS_prof
Definition: Histograms.h:1099
TH3F * hMassVSEtaPlusEtaMinus_
Definition: Histograms.h:1097
TH2F * hMassVSPhiCS_
Definition: Histograms.h:1086
TH2F * hMassVSEtaPlus_
Definition: Histograms.h:1090
TH2F * hMassVSCosThetaCS_
Definition: Histograms.h:1085
TH3F * hMassVSEtaPhiPlus_
Definition: Histograms.h:1088
TH2F * hMassVSPhiMinus_
Definition: Histograms.h:1084
TH2F * hMassVSEtaPlusMinusDiff_
Definition: Histograms.h:1094
TH2F * hMassVSPhiPlus_
Definition: Histograms.h:1083
TH2F * hMassVSPt_
Definition: Histograms.h:1081
TH2F * hMassVSPhiPlusMinusDiff_
Definition: Histograms.h:1093

◆ Fill() [1/4]

void HMassVSPart::Fill ( const reco::Particle::LorentzVector p41,
const reco::Particle::LorentzVector p42,
const int  charge,
const double &  weight = 1. 
)
inlineoverride

Definition at line 922 of file Histograms.h.

References ALCARECOTkAlJpsiMuMu_cff::charge.

Referenced by Fill().

925  {
926  Fill(CLHEP::HepLorentzVector(p41.x(), p41.y(), p41.z(), p41.t()),
927  CLHEP::HepLorentzVector(p42.x(), p42.y(), p42.z(), p42.t()),
928  charge,
929  weight);
930  }
Definition: weight.py:1
void Fill(const reco::Particle::LorentzVector &p41, const reco::Particle::LorentzVector &p42, const int charge, const double &weight=1.) override
Definition: Histograms.h:922

◆ Fill() [2/4]

void HMassVSPart::Fill ( const reco::Particle::LorentzVector p41,
const reco::Particle::LorentzVector p42,
const reco::Particle::LorentzVector p4Res,
const double &  weight = 1. 
)
inlineoverride

Definition at line 932 of file Histograms.h.

References Fill().

935  {
936  Fill(CLHEP::HepLorentzVector(p41.x(), p41.y(), p41.z(), p41.t()),
937  CLHEP::HepLorentzVector(p42.x(), p42.y(), p42.z(), p42.t()),
938  CLHEP::HepLorentzVector(p4Res.x(), p4Res.y(), p4Res.z(), p4Res.t()),
939  weight);
940  }
Definition: weight.py:1
void Fill(const reco::Particle::LorentzVector &p41, const reco::Particle::LorentzVector &p42, const int charge, const double &weight=1.) override
Definition: Histograms.h:922

◆ Fill() [3/4]

void HMassVSPart::Fill ( const CLHEP::HepLorentzVector &  momentum1,
const CLHEP::HepLorentzVector &  momentum2,
const CLHEP::HepLorentzVector &  momentumRes,
const double &  weight = 1. 
)
inlineoverride

Used to fill 2D histograms for comparison of opposite charge muons quantities.

Definition at line 943 of file Histograms.h.

References hMassVSCosThetaCS_, hMassVSCosThetaCS_prof, hMassVSEtaPlusEtaMinus_, hMassVSEtaPlusMinusDiff_, hMassVSPhiCS_, hMassVSPhiPlusMinusDiff_, hMassVSPhiPlusPhiMinus_, amptDefaultParameters_cff::mu, RPCpg::mubar, BPhysicsValidation_cfi::muminus, BPhysicsValidation_cfi::muplus, funct::pow(), dttmaxenums::R, mathSSE::sqrt(), and mps_merge::weight.

946  {
947  /************************************************************************
948  *
949  * Observable: cos(theta) = 2 Q^-1 (Q^2+Qt^2)^-(1/2) (mu^+ mubar^- - mu^- mubar^+)
950  * (computed in Collins-Soper frame)
951  *
952  ************************************************************************/
953 
954  double costhetaCS, phiCS;
955 
956  const CLHEP::HepLorentzVector& mu = momentum1;
957  const CLHEP::HepLorentzVector& mubar = momentum2;
958  CLHEP::HepLorentzVector Q(mu + mubar);
959  double muplus = 1.0 / sqrt(2.0) * (mu.e() + mu.z());
960  double muminus = 1.0 / sqrt(2.0) * (mu.e() - mu.z());
961  double mubarplus = 1.0 / sqrt(2.0) * (mubar.e() + mubar.z());
962  double mubarminus = 1.0 / sqrt(2.0) * (mubar.e() - mubar.z());
963  //double costheta = 2.0 / Q.Mag() / sqrt(pow(Q.Mag(), 2) + pow(Q.Pt(), 2)) * (muplus * mubarminus - muminus * mubarplus);
964  costhetaCS = 2.0 / Q.mag() / sqrt(pow(Q.mag(), 2) + pow(Q.perp(), 2)) * (muplus * mubarminus - muminus * mubarplus);
965  if (momentumRes.rapidity() < 0)
966  costhetaCS = -costhetaCS;
967 
968  /************************************************************************
969  *
970  * 3) tanphi = (Q^2 + Qt^2)^1/2 / Q (Dt dot R unit) /(Dt dot Qt unit)
971  *
972  ************************************************************************/
973 
974  // unit vector on R direction
975  CLHEP::HepLorentzVector Pbeam(0., 0., 3500., 3500.);
976  CLHEP::Hep3Vector R = Pbeam.vect().cross(Q.vect());
977  CLHEP::Hep3Vector Runit = R.unit();
978 
979  // unit vector on Qt
980  CLHEP::Hep3Vector Qt = Q.vect();
981  Qt.setZ(0);
982  CLHEP::Hep3Vector Qtunit = Qt.unit();
983 
984  CLHEP::HepLorentzVector D(mu - mubar);
985  CLHEP::Hep3Vector Dt = D.vect();
986  Dt.setZ(0);
987  double tanphi = sqrt(pow(Q.mag(), 2) + pow(Q.perp(), 2)) / Q.mag() * Dt.dot(Runit) / Dt.dot(Qtunit);
988  if (momentumRes.rapidity() < 0)
989  tanphi = -tanphi;
990  phiCS = atan(tanphi);
991 
992  hMassVSPhiCS_->Fill(phiCS, momentumRes.m(), weight);
993  hMassVSCosThetaCS_->Fill(costhetaCS, momentumRes.m(), weight);
994  hMassVSCosThetaCS_prof->Fill(costhetaCS, momentumRes.m());
995  /*************************************************************************
996  *************************************************************************/
997 
998  hMassVSPhiPlusPhiMinus_->Fill(momentum1.phi(), momentum2.phi(), momentumRes.m(), weight);
999  hMassVSEtaPlusEtaMinus_->Fill(momentum1.eta(), momentum2.eta(), momentumRes.m(), weight);
1000 
1001  hMassVSPhiPlusMinusDiff_->Fill((momentum1.phi() - momentum2.phi()), momentumRes.m(), weight);
1002  hMassVSEtaPlusMinusDiff_->Fill((momentum1.eta() - momentum2.eta()), momentumRes.m(), weight);
1003  }
TH3F * hMassVSPhiPlusPhiMinus_
Definition: Histograms.h:1096
TProfile * hMassVSCosThetaCS_prof
Definition: Histograms.h:1099
TH3F * hMassVSEtaPlusEtaMinus_
Definition: Histograms.h:1097
TH2F * hMassVSPhiCS_
Definition: Histograms.h:1086
T sqrt(T t)
Definition: SSEVec.h:19
const int mubar
Definition: Constants.h:23
TH2F * hMassVSCosThetaCS_
Definition: Histograms.h:1085
DecomposeProduct< arg, typename Div::arg > D
Definition: Factorize.h:141
TH2F * hMassVSEtaPlusMinusDiff_
Definition: Histograms.h:1094
TH2F * hMassVSPhiPlusMinusDiff_
Definition: Histograms.h:1093
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29

◆ Fill() [4/4]

void HMassVSPart::Fill ( const CLHEP::HepLorentzVector &  momentum1,
const CLHEP::HepLorentzVector &  momentum2,
const int  charge,
const double &  weight = 1. 
)
inlineoverride

Definition at line 1005 of file Histograms.h.

References ALCARECOTkAlJpsiMuMu_cff::charge, hMassVSEta_, hMassVSEtaMinus_, hMassVSEtaPhiMinus_, hMassVSEtaPhiPlus_, hMassVSEtaPlus_, hMassVSPhiMinus_, hMassVSPhiPlus_, hMassVSPt_, LogDebug, and mps_merge::weight.

1008  {
1009  hMassVSPt_->Fill(momentum1.perp(), momentum2.m(), weight);
1010  //hMassVSPt_prof_->Fill(momentum1.perp(),momentum2.m());
1011 
1012  hMassVSEta_->Fill(momentum1.eta(), momentum2.m(), weight);
1013  //hMassVSEta_prof_->Fill(momentum1.eta(),momentum2.m());
1014 
1015  if (charge > 0) {
1016  hMassVSPhiPlus_->Fill(momentum1.phi(), momentum2.m(), weight);
1017  hMassVSEtaPlus_->Fill(momentum1.eta(), momentum2.m(), weight);
1018  hMassVSEtaPhiPlus_->Fill(momentum1.phi(), momentum1.eta(), momentum2.m(), weight);
1019  } else if (charge < 0) {
1020  hMassVSPhiMinus_->Fill(momentum1.phi(), momentum2.m(), weight);
1021  hMassVSEtaMinus_->Fill(momentum1.eta(), momentum2.m(), weight);
1022  hMassVSEtaPhiMinus_->Fill(momentum1.phi(), momentum1.eta(), momentum2.m(), weight);
1023  } else {
1024  LogDebug("Histograms") << "HMassVSPart: wrong charge value = " << charge << std::endl;
1025  abort();
1026  }
1027  }
TH2F * hMassVSEtaMinus_
Definition: Histograms.h:1091
TH3F * hMassVSEtaPhiMinus_
Definition: Histograms.h:1089
TH2F * hMassVSEta_
Definition: Histograms.h:1082
TH2F * hMassVSEtaPlus_
Definition: Histograms.h:1090
TH3F * hMassVSEtaPhiPlus_
Definition: Histograms.h:1088
TH2F * hMassVSPhiMinus_
Definition: Histograms.h:1084
TH2F * hMassVSPhiPlus_
Definition: Histograms.h:1083
TH2F * hMassVSPt_
Definition: Histograms.h:1081
#define LogDebug(id)

◆ Write()

void HMassVSPart::Write ( )
inlineoverride

Definition at line 1029 of file Histograms.h.

References hMassVSCosThetaCS_, hMassVSCosThetaCS_prof, hMassVSEta_, hMassVSEtaMinus_, hMassVSEtaPhiMinus_, hMassVSEtaPhiPlus_, hMassVSEtaPlus_, hMassVSEtaPlusEtaMinus_, hMassVSEtaPlusMinusDiff_, hMassVSPhiCS_, hMassVSPhiMinus_, hMassVSPhiPlus_, hMassVSPhiPlusMinusDiff_, hMassVSPhiPlusPhiMinus_, and hMassVSPt_.

1029  {
1030  hMassVSPt_->Write();
1031  hMassVSEta_->Write();
1032  hMassVSPhiPlus_->Write();
1033  hMassVSPhiMinus_->Write();
1034 
1035  hMassVSEtaPhiPlus_->Write();
1036  hMassVSEtaPhiMinus_->Write();
1037  hMassVSEtaPlus_->Write();
1038  hMassVSEtaMinus_->Write();
1039 
1040  hMassVSPhiPlusPhiMinus_->Write();
1041  hMassVSEtaPlusEtaMinus_->Write();
1042  hMassVSCosThetaCS_->Write();
1043  hMassVSPhiCS_->Write();
1044 
1045  hMassVSPhiPlusMinusDiff_->Write();
1046  hMassVSEtaPlusMinusDiff_->Write();
1047  hMassVSCosThetaCS_prof->Write();
1048 
1049  //hMassVSPt_prof_->Write();
1050  //hMassVSEta_prof_->Write();
1051  //hMassVSPhiPlus_prof_->Write();
1052  //hMassVSPhiMinus_prof_->Write();
1053  }
TH2F * hMassVSEtaMinus_
Definition: Histograms.h:1091
TH3F * hMassVSEtaPhiMinus_
Definition: Histograms.h:1089
TH2F * hMassVSEta_
Definition: Histograms.h:1082
TH3F * hMassVSPhiPlusPhiMinus_
Definition: Histograms.h:1096
TProfile * hMassVSCosThetaCS_prof
Definition: Histograms.h:1099
TH3F * hMassVSEtaPlusEtaMinus_
Definition: Histograms.h:1097
TH2F * hMassVSPhiCS_
Definition: Histograms.h:1086
TH2F * hMassVSEtaPlus_
Definition: Histograms.h:1090
TH2F * hMassVSCosThetaCS_
Definition: Histograms.h:1085
TH3F * hMassVSEtaPhiPlus_
Definition: Histograms.h:1088
TH2F * hMassVSPhiMinus_
Definition: Histograms.h:1084
TH2F * hMassVSEtaPlusMinusDiff_
Definition: Histograms.h:1094
TH2F * hMassVSPhiPlus_
Definition: Histograms.h:1083
TH2F * hMassVSPt_
Definition: Histograms.h:1081
TH2F * hMassVSPhiPlusMinusDiff_
Definition: Histograms.h:1093

Member Data Documentation

◆ hMassVSCosThetaCS_

TH2F* HMassVSPart::hMassVSCosThetaCS_
protected

Definition at line 1085 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSCosThetaCS_prof

TProfile* HMassVSPart::hMassVSCosThetaCS_prof
protected

Definition at line 1099 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSEta_

TH2F* HMassVSPart::hMassVSEta_
protected

Definition at line 1082 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSEtaMinus_

TH2F* HMassVSPart::hMassVSEtaMinus_
protected

Definition at line 1091 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSEtaPhiMinus_

TH3F* HMassVSPart::hMassVSEtaPhiMinus_
protected

Definition at line 1089 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSEtaPhiPlus_

TH3F* HMassVSPart::hMassVSEtaPhiPlus_
protected

Definition at line 1088 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSEtaPlus_

TH2F* HMassVSPart::hMassVSEtaPlus_
protected

Definition at line 1090 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSEtaPlusEtaMinus_

TH3F* HMassVSPart::hMassVSEtaPlusEtaMinus_
protected

Definition at line 1097 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSEtaPlusMinusDiff_

TH2F* HMassVSPart::hMassVSEtaPlusMinusDiff_
protected

Definition at line 1094 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSPhiCS_

TH2F* HMassVSPart::hMassVSPhiCS_
protected

Definition at line 1086 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSPhiMinus_

TH2F* HMassVSPart::hMassVSPhiMinus_
protected

Definition at line 1084 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSPhiPlus_

TH2F* HMassVSPart::hMassVSPhiPlus_
protected

Definition at line 1083 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSPhiPlusMinusDiff_

TH2F* HMassVSPart::hMassVSPhiPlusMinusDiff_
protected

Definition at line 1093 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSPhiPlusPhiMinus_

TH3F* HMassVSPart::hMassVSPhiPlusPhiMinus_
protected

Definition at line 1096 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().

◆ hMassVSPt_

TH2F* HMassVSPart::hMassVSPt_
protected

Definition at line 1081 of file Histograms.h.

Referenced by Clear(), Fill(), HMassVSPart(), Write(), and ~HMassVSPart().