ATLAS Offline Software
Namespaces | Variables
dqt_zlumi_pandas.py File Reference

Go to the source code of this file.

Namespaces

 dqt_zlumi_pandas
 

Variables

 dqt_zlumi_pandas.format
 
 dqt_zlumi_pandas.level
 
 dqt_zlumi_pandas.parser = argparse.ArgumentParser()
 
 dqt_zlumi_pandas.type
 
 dqt_zlumi_pandas.str
 
 dqt_zlumi_pandas.help
 
 dqt_zlumi_pandas.default
 
 dqt_zlumi_pandas.action
 
 dqt_zlumi_pandas.args = parser.parse_args()
 
 dqt_zlumi_pandas.campaign = args.campaign
 
float dqt_zlumi_pandas.ZPURITYFACTOR = 0.9935
 
float dqt_zlumi_pandas.ZXSEC = 2.0675
 
list dqt_zlumi_pandas.zee_missing_lbs = []
 
list dqt_zlumi_pandas.zmumu_missing_lbs = []
 
int dqt_zlumi_pandas.ntoys = 10000000
 
bool dqt_zlumi_pandas.do_toys = False
 
 dqt_zlumi_pandas.fin = ROOT.TFile.Open(args.infile)
 
 dqt_zlumi_pandas.runname = None
 
 dqt_zlumi_pandas.runnumber = int(runname.replace('run_',''))
 
 dqt_zlumi_pandas.out_dir = args.outdir
 
string dqt_zlumi_pandas.lb_length_name = '%s/GLOBAL/DQTGlobalWZFinder/duration_vs_LB' % runname
 
string dqt_zlumi_pandas.livetime_name = '%s/GLOBAL/DQTGlobalWZFinder/avgLiveFrac_vs_LB' % runname
 
 dqt_zlumi_pandas.grlReader = ROOT.Root.TGoodRunsListReader(args.grl)
 
 dqt_zlumi_pandas.grl = grlReader.GetMergedGRLCollection()
 
string dqt_zlumi_pandas.grlname = 'grl_'+str(runnumber)+'.xml'
 
 dqt_zlumi_pandas.grl_file = doZLumi.makeGRL(runnumber, 'PHYS_StandardGRL_All_Good', grlname)
 
 dqt_zlumi_pandas.lb_length_old = fin.Get(lb_length_name)
 
 dqt_zlumi_pandas.lbmin
 
 dqt_zlumi_pandas.lbmax
 
 dqt_zlumi_pandas.lb_length = ROOT.TProfile('lb_length', 'LB length', int(lbmax-lbmin), lbmin, lbmax)
 
 dqt_zlumi_pandas.livetime = ROOT.TProfile('livetime', 'Livetime', int(lbmax-lbmin), lbmin, lbmax)
 
 dqt_zlumi_pandas.official_lum_zero = ROOT.TProfile('official_lum_zero', 'official inst luminosity', int(lbmax-lbmin), lbmin, lbmax)
 
 dqt_zlumi_pandas.official_mu = ROOT.TProfile('official_mu', 'official mu', int(lbmax-lbmin), lbmin, lbmax)
 
 dqt_zlumi_pandas.lblb = fetch_iovs("LBLB", runs=runnumber)
 
 dqt_zlumi_pandas.lbtime = inverse_lblb(lblb)
 
 dqt_zlumi_pandas.iovs_acct = fetch_iovs('COOLOFL_TRIGGER::/TRIGGER/OFLLUMI/LumiAccounting', lbtime.first.since, lbtime.last.until, tag=args.tag)
 
 dqt_zlumi_pandas.iovs_lum = fetch_iovs('COOLOFL_TRIGGER::%s' % args.lumifolder, lblb.first.since, lblb.last.until, tag=args.lumitag, channels=[0])
 
dictionary dqt_zlumi_pandas.lb_start_end = {}
 
dictionary dqt_zlumi_pandas.lb_lhcfill = {}
 
list dqt_zlumi_pandas.offlumiov = [_ for _ in iovs_lum if _.since.lumi==iov.LumiBlock]
 
 dqt_zlumi_pandas.lb_full = lb_length.Clone('lb_full').ProjectionX()
 
 dqt_zlumi_pandas.divisor = lb_length.Clone('divisor').ProjectionX()
 
 dqt_zlumi_pandas.px = livetime.ProjectionX()
 
 dqt_zlumi_pandas.hto = fin.Get('%s/GLOBAL/DQTGlobalWZFinder/m_ele_template_os' % (runname))
 
 dqt_zlumi_pandas.hts = fin.Get('%s/GLOBAL/DQTGlobalWZFinder/m_ele_template_ss' % (runname))
 
dictionary dqt_zlumi_pandas.o_recoeff_fit = {}
 
dictionary dqt_zlumi_pandas.o_recoerr_fit = {}
 
list dqt_zlumi_pandas.lb_minus_one_reco_eff = [1.0, 1.0, 1.0]
 
 dqt_zlumi_pandas.this_lb = int(lb_full.GetBinCenter(ibin))
 
string dqt_zlumi_pandas.lb = "lb_" + str(this_lb)
 
 dqt_zlumi_pandas.pileup = round(official_mu[ibin])
 
 dqt_zlumi_pandas.hmo = fin.Get('%s/%s/GLOBAL/DQTGlobalWZFinder/m_ele_tight_good_os' % (runname, lb))
 
 dqt_zlumi_pandas.hms = fin.Get('%s/%s/GLOBAL/DQTGlobalWZFinder/m_ele_tight_good_ss' % (runname, lb))
 
 dqt_zlumi_pandas.hno = fin.Get('%s/%s/GLOBAL/DQTGlobalWZFinder/m_ele_tight_bad_os' % (runname, lb))
 
 dqt_zlumi_pandas.hns = fin.Get('%s/%s/GLOBAL/DQTGlobalWZFinder/m_ele_tight_bad_ss' % (runname, lb))
 
 dqt_zlumi_pandas.eff = 0
 
 dqt_zlumi_pandas.err = 0
 
int dqt_zlumi_pandas.weight = 1/pow(err, 2)
 
 dqt_zlumi_pandas.arr_rec_eff = array('d')
 
 dqt_zlumi_pandas.arr_rec_err = array('d')
 
 dqt_zlumi_pandas.arr_mu = array('d')
 
 dqt_zlumi_pandas.tg_fit = ROOT.TGraphErrors(len(arr_mu), arr_mu, arr_rec_eff, ROOT.nullptr, arr_rec_err)
 
string dqt_zlumi_pandas.fit_type = "pol0"
 
 dqt_zlumi_pandas.csvfile = open(out_dir, 'w')
 
 dqt_zlumi_pandas.csvwriter = csv.writer(csvfile, delimiter=',')
 
dictionary dqt_zlumi_pandas.lb_minus_one_trig_eff = {}
 
bool dqt_zlumi_pandas.bad_database = False
 
dictionary dqt_zlumi_pandas.out_dict = {}
 
 dqt_zlumi_pandas.loclivetime = divisor[ibin]
 
dictionary dqt_zlumi_pandas.this_fill = lb_lhcfill[this_lb]
 
int dqt_zlumi_pandas.passgrl = 1
 
string dqt_zlumi_pandas.hname = runname + '/lb_'+str(int(ibin+lbmin-0.5))+'/GLOBAL/DQTGlobalWZFinder/m_Z_mass_opsele'
 
 dqt_zlumi_pandas.h = fin.Get('%s/%s/GLOBAL/DQTGlobalWZFinder/m_eltrigtp_matches_os' % (runname, lb))
 
float dqt_zlumi_pandas.ACCEPTANCE = 0.2971
 
 dqt_zlumi_pandas.z_m = fin.Get(hname).Integral()
 
 dqt_zlumi_pandas.z_merr = math.sqrt(z_m)
 
int dqt_zlumi_pandas.N1 = 0
 
 dqt_zlumi_pandas.N2 = h.GetBinContent(3)
 
 dqt_zlumi_pandas.eff_trig
 
 dqt_zlumi_pandas.err_trig
 
 dqt_zlumi_pandas.arr_trig
 
 dqt_zlumi_pandas.arr_NZ
 
 dqt_zlumi_pandas.bin1 = hmo.GetXaxis().FindBin(86000)
 
 dqt_zlumi_pandas.bin2 = hmo.GetXaxis().FindBin(95000)
 
 dqt_zlumi_pandas.eff_reco
 
 dqt_zlumi_pandas.err_reco
 
 dqt_zlumi_pandas.arr_reco
 
 dqt_zlumi_pandas.bin3 = hmo.GetXaxis().FindBin(120000)
 
 dqt_zlumi_pandas.bin4 = hmo.GetXaxis().FindBin(250000)
 
 dqt_zlumi_pandas.matchos_peak = hmo.Integral(bin1, bin2)
 
 dqt_zlumi_pandas.matchos_tail = hmo.Integral(bin3, bin4)
 
 dqt_zlumi_pandas.matchss_tail = hms.Integral(bin3, bin4)
 
 dqt_zlumi_pandas.nomatchos_peak = hno.Integral(bin1, bin2)
 
 dqt_zlumi_pandas.nomatchos_tail = hno.Integral(bin3, bin4)
 
 dqt_zlumi_pandas.templateos_peak = hto.Integral(bin1, bin2)
 
 dqt_zlumi_pandas.templateos_tail = hto.Integral(bin3, bin4)
 
 dqt_zlumi_pandas.templatess_tail = hts.Integral(bin3, bin4)
 
int dqt_zlumi_pandas.defaulted_reco_eff = 0
 
int dqt_zlumi_pandas.defaulted_trig_eff = 0
 
tuple dqt_zlumi_pandas.arr_comb = (1.0 - (1.0 - arr_trig)**2) * (arr_reco)**2
 
tuple dqt_zlumi_pandas.nonan_arr_comb = arr_comb[~np.isnan(arr_comb)]
 
 dqt_zlumi_pandas.eff_comb = np.median(nonan_arr_comb)
 
tuple dqt_zlumi_pandas.err_comb = nonan_arr_comb.std()
 
float dqt_zlumi_pandas.eff_Acomb = ACCEPTANCE * eff_comb
 
float dqt_zlumi_pandas.err_Acomb = ACCEPTANCE * err_comb
 
tuple dqt_zlumi_pandas.effcy = arr_comb * dq_cf.correction(official_mu[ibin], channel, campaign, runnumber)
 
tuple dqt_zlumi_pandas.effcyerr = err_comb * dq_cf.correction(official_mu[ibin], channel, campaign, runnumber)
 
float dqt_zlumi_pandas.zlumi = 0.0
 
float dqt_zlumi_pandas.CORRECTIONS = ZPURITYFACTOR/ACCEPTANCE/ZXSEC
 
 dqt_zlumi_pandas.arr_zlumi = np.divide(arr_NZ, effcy) * (CORRECTIONS)/loclivetime
 
 dqt_zlumi_pandas.zlumistat = arr_zlumi.std()
 
float dqt_zlumi_pandas.zrate = zlumi / CORRECTIONS
 
int dqt_zlumi_pandas.lumi_index = len(out_dict['Zee'])-3
 
int dqt_zlumi_pandas.error_index = len(out_dict['Zee'])-2
 
tuple dqt_zlumi_pandas.zll_lumi = (out_dict['Zee'][lumi_index] + out_dict['Zmumu'][lumi_index])/2
 
float dqt_zlumi_pandas.zll_lumi_err = 0.5 * math.sqrt( pow(out_dict['Zee'][error_index], 2) + pow(out_dict['Zmumu'][error_index], 2) )
 
list dqt_zlumi_pandas.out_write = [this_fill, runnumber, this_lb, lb_start_end[this_lb][0], lb_start_end[this_lb][1], loclivetime, lb_full[ibin], official_lum_zero[ibin], official_mu[ibin], passgrl] + out_dict["Zee"] + out_dict["Zmumu"] + [zll_lumi, zll_lumi_err]