Tags:
tag this topic
create new tag
view all tags
---+!! How to Calculate Luminosity %TOC% ---++ Creating the ntuple You will need to make sure that the luminosity data is in the ntuple. To do this ckeck that there is a GetIntergratedLuminosity branch in your ntuple if there is move onto the next section, else continue. You will need to add the following lines to the davinci python file which generates your ntuple. <verbatim>DaVinci().Lumi = True DaVinci().TupleFile = 'B2Dpi.root'</verbatim> The Lumi option has recently (the end of July 2010 ish) been set to true by default. This cases problems since it overwrites where the ntuplesvc put your ntuple. So if you have a line like <verbatim>NTupleSvc().Output = [ "FILE1 DATAFILE='B2Dpi_post_st_pete_580-onwards-test.root' TYP='ROOT' OPT='NEW'"]</verbatim> it now does nothing, so you can remove it and put the file name into the above TupleFile variable. ---++ Analysing the ntuple In your root macro you will need to add some stuff to open up the new branch of the ntuple and then loop over the values stored in it. Attached is a macro which just calculates the luminosity. Run it with root with root like so <verbatim>root 'Lumi.C(false, "/opt/ppd/lhcb/tbird/CKM-approved/ntuple/B2Dpi_str09.root",-1)'</verbatim> or for some speed with the g++root script defined over here HowToCompileRootMacros <verbatim>g++root Lumi.C && time ./Lumi.C.exe | tee output.txt</verbatim> The code I use in my main macro is below, the final values of the luminosity and its error are stored in totLumi and totLumiErr, so you will need to print or save these. <verbatim> TChain *lumiChain = new TChain("GetIntegratedLuminosity/LumiTuple"); lumiChain->Add(filename); Float_t IntegratedLuminosity; Float_t IntegratedLuminosityErr; TBranch *b_IntegratedLuminosity; TBranch *b_IntegratedLuminosityErr; lumiChain->SetBranchAddress("IntegratedLuminosity", &IntegratedLuminosity, &b_IntegratedLuminosity); lumiChain->SetBranchAddress("IntegratedLuminosityErr", &IntegratedLuminosityErr, &b_IntegratedLuminosityErr); Long64_t lnentries = lumiChain->GetEntries(); Long64_t lnbytes = 0, lnb = 0; Float_t totLumi = 0.0; Float_t totLumiErr = 0.0; for (Long64_t ljentry=0; ljentry<lnentries;ljentry++) { lnb = lumiChain->GetEntry(ljentry); lnbytes += lnb; totLumi += IntegratedLuminosity; totLumiErr += IntegratedLuminosityErr; }</verbatim> ---+++ Lumi Macro * [[%ATTACHURL%/Lumi.C][Lumi.C]]: Macro to calculate the intergrated luminosity in an ntuple
Attachments
Attachments
Topic attachments
I
Attachment
History
Action
Size
Date
Who
Comment
c
Lumi.C
r1
manage
48.7 K
2010-09-07 - 09:41
ThomasBird
Macro to calculate the intergrated luminosity in an ntuple
E
dit
|
A
ttach
|
Watch
|
P
rint version
|
H
istory
: r2
<
r1
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r2 - 2010-09-07
-
ThomasBird
Home
Site map
Atlas web
CMS web
Computing web
Documentation web
PPDITForum web
LHCb web
PPDLabSpace web
Sandbox web
TWiki web
LHCb Web
Create New Topic
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
P
P
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
Register User
E
dit
A
ttach
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback