|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef ZMUMUVALIDATIONEXAMPLE_h
6 #define ZMUMUVALIDATIONEXAMPLE_h
18 #include "TProfile2D.h"
19 #include "TLorentzVector.h"
243 void correctMomentum(TH1* h_corrections, TLorentzVector* muon_pos, TLorentzVector* muon_neg,
int use_lambda);
251 void correctZd0( TH1* h_corrections, TLorentzVector* muon_pos, TLorentzVector* muon_neg,
double& zd0_muon_p,
double& zd0_muon_n);
266 ,
string s_treeName =
"DefaultParams"
267 , std::string
const & s_outFileName =
"ZmumuValidationExampleOutput.root"
void profileZwithIterativeGaussFit(TH3 *hist, TH2 *mu_graph, TH2 *sigma_graph, int num_bins, TH2 *mu_err_graph=0, TH2 *sigma_err_graph=0)
TH3 * delta_vs_etaphi_truth
TH1 * lambdacorrections_vs_eta
TH2 * deltacorrections_vs_etaphi
TH3 * pcorrected_mass_vs_etaphi
ZmumuValidationExample(std::list< std::string > const &s_fileNames, string s_treeName="DefaultParams", std::string const &s_outFileName="ZmumuValidationExampleOutput.root", bool isMC=false)
std::string m_outfilename
void fillEtaPhiHistogram(TH3 *hist, TLorentzVector *v_pos, TLorentzVector *v_neg, int use_lambda)
TH1 * lambdacorrected_mass
TH2 * delta_M2_vs_zpt_truth
TH2 * lambdacorrections_vs_etaphi_truth_err
TH2 * d0deltacorrections_vs_etaphi
void correctMomentum(TH1 *h_corrections, TLorentzVector *muon_pos, TLorentzVector *muon_neg, int use_lambda)
TH2 * lambdacorrections_vs_etaphi_err
TCanvas * TempCanvasIterGaussFit
TProfile2D * delta_M2_vs_etaphi_pos
const std::list< std::string > m_fileNames
TH3 * lambda_vs_etaphi_truth
~ZmumuValidationExample()
void fillQoverPtHistograms(TLorentzVector *v_pos, TLorentzVector *v_neg)
TProfile2D * delta_M2_vs_etaphi_neg
void SetEtaBins(int newbins=20)
int IterativeGaussFit(TH1 *hist, double &mu, double &mu_err, double &sigma, double &sigma_err)
void loopThroughEvents(unsigned int maxItr)
TH3 * lambdacorrected_mass_vs_etaphi
TH2 * truth_mass_bias_vs_eta
void setBranchAddresses()
TH1 * lambdacorrections_vs_eta_truth
TH2 * lambda_vs_eta_truth
void fillZd0EtaPhiHistogram(TH3 *hist, TLorentzVector *v_pos, TLorentzVector *v_neg, double z0_muon_p, double z0_muon_n)
TH2 * truth_mom_bias_vs_eta
void SymmetrizeHisto(TH2 *hist)
TH1 * truth_mom_biascorrections_vs_eta
double charge(const T &p)
TH2 * z0deltacorrections_vs_etaphi
void SetPrintLevel(int newprintlevel=0)
void fillEtaHistogram(TH2 *hist, TLorentzVector *v_pos, TLorentzVector *v_neg, int use_lambda, int charge=0)
TH2 * deltacorrections_vs_etaphi_truth
void HistogramConditioning(TH1 *hist)
void fillHistogram(TH1 *hist, TLorentzVector *v_pos, TLorentzVector *v_neg, int fill_lambda, int charge=0)
void writeToFile(int iteration)
void loop(unsigned maxEvents=0)
TH2 * lambdacorrections_vs_etaphi
void SetPhiBins(int newbins=20)
TH2 * z0deltacorrections_vs_etaphi_err
TH1 * truth_mass_biascorrections_vs_eta
void correctZd0(TH1 *h_corrections, TLorentzVector *muon_pos, TLorentzVector *muon_neg, double &zd0_muon_p, double &zd0_muon_n)
TH2 * lambdacorrections_vs_etaphi_truth
void fillZd0Histogram(TH1 *hist, double z0_muon_p, double z0_muon_n, int pn)
TH2 * lambdacorrections_vs_etaphi_RMS
void profileYwithIterativeGaussFit(TH2 *hist, TH1 *mu_graph=0, TH1 *sigma_graph=0, int num_bins=1)
TH2 * deltacorrections_vs_etaphi_truth_err
TProfile2D * prof_pt_vs_etaphi
TH2 * deltacorrections_vs_etaphi_err
TH2 * d0deltacorrections_vs_etaphi_err