Transcript in python

HLT (confirmation, generic)
HLT
(confirmation or generic)
[1st attempt]
Jose A. Hernando, Frederic Teubert
(03/4/04)
work in progress...
This is a status report
 Idea
• Reconstruct only a fraction tracks
• In hand:
 better PT estimation
 signal (secondary) vertices
 Data
• TDR DaVinci v9r3
 HLT Velo + VeloTT
 TrgForward tracking
 Offline vertices
1
HLT (confirmation, generic)
Previous results
• Selection of candidates
 To get 2 B-tracks reconstructed
abs(IP) [0.15,3] mm
• Secondary vertices (2 tracks)
 95%,90% of the times the track
with highest pt comes from the B
 Use the 4th first Pt candidates is
enough
 Create a 2 track vertex using this
order of track by pt:
[0,1][0,2][0,3][1,2][1,3][2,3]
• efficiency vs rejection
 95% eff (Bpipi,BsDsK) 10 KHz
 L1confirmation :
log(pt(0))+log(pt(1)
 Combine with z-distance between
2 vertices
 Mass related with l1confirmation
 Plans:
• What about other channels:
 Neutrals, electrons?, muons!
 We consider the bonus from L1!
 Working on it….
• Multi primary vertex
 We discover they were a problem!
 Many 2nd verteces (signal) are
from track of a second primary
vertex
 We made a treatment of the
multi primary vertex
• Combining the variables
 Cut (l1conf,Delta-Z) by “hand” to
get eff vs rejettion
 Can we combined in an
“automatic” way to cut only in one
variables?
• What is the b,c content?
2
Efficiency vs retention
Z distance vs log(pt1*pt2)
Eff vs retention
B0->; Bs->DsK
(black) B0->;
(white) Bs->DsK
KHz
what did it happen to the bonus (10 KHz)?: we are checking it
3
Dealing with multi primary verteces
 Multiple primary vertices
•
•
After L1-conf the sample has a good
number of 2 primary vertices!
We can see it in the z-distance between
the primary and the secondary
 Secondary vertex made with tracks
from the second primary vertex
 Method to deal with multi primary
vertices
1. Use off-line primary vertices 
2. Associate each track to the primary
vertex with smaller abs(IP)
3. Compute the # of candidates in abs(IP)
window [0.15,3] mm for each vertex
4. Consider the primary the one with more
candidates
5. Consider only the candidates of that
primary vertex
4
Combining variables: flattening
log(pt1*pt2)
Xflat = F(x)
Flatting the mim bias
Z-distance (SV-PV)
5
The phi-angle variable: flattening
cos(phi)
Xflat = F(x)
Flatting the mim bias
 Phi angle:
•
Angle in the transverse plane between:
 The separation of the secondary-primary vertex
 The total momentum (of the 2 tracks) in the secondary vertex
 About the variables:
•
•
•
•
L1-confirmation + bonus if the most powerful
Z-Distance is the less powerful (still some long tail…)
Phi is working good
They are “quite” independent
 How to combine them into one variable?
6
Combining flat variables
 Combining flat variables:
•
Easy to see the correlation, easy to define a cut
 Mim.bias(background) space “flat” if they are independent
 To make a one variable only
•
•
Define the distance in that space to a point (1.,1.)
dis = sqrt(x^2+y^2)
And flat this variable again
 Easy to add more variables
•
Improvement: weights for variables (x/w), and center the signal (x0,y0)
7
L2 variable: efficiency, retention, c and b content
 L2 trigger (“improved l1confirmation”)
•
•
•
We need to take into account the # events with no secondary vertex (mim.bias ~15%)
We maybe can go up to 8 KHz, with efficiency >90%
In the “by hand” cut we will be able to get a little more efficiency
 Retune and weight more l1confirmation
 Generic algorithm
•
There is a region where the l2 variable has a large (50,70) % of (b,b+c) content
 How much on KHz is that?, should we keep all this events?, how much time we save?
8
Efficiency vs retetion
 L2 efficiency vs rejection
•
•
•
•
8KHz with 92% efficiency (Bpipi,BsDsK), 5KHz with 90,~85%
L1- more weight?
Delta-Z benefices BsDsK and penalizes Bpipi,
Phi benefices again Bpipi
9
Conclusions and plans
 Conclusions
• Treatement of the multi primary
vertices, seems ok
• A method to combine different
variables
 Flat variables
 Distance in the flat-space
• Preliminary: 8 KHz, 92% eff
 But… the bonus
• Prelimainary:
 A fraction of mim.bias with
50%(70%) of b(b+c) content?
 Note:
• We use TDR data, DaVinci v9r3
• We use tracking TrgForward (HLT)
• We use Offline vertices!
 Plans
• More statistics
• The other channels (neutrals,e,mus)
• How many c/b we have after?
 Do we have a generic algorithm?
• Revisit-tune the flat variable
method
 To Play
• We do the full analysis in python
• We have a data in python
• We have developed a python
module
 (HIPYS similar to PAW)
• It is really SIMPLE and FAST to
work with python!!!!
10
PUB
HIPYS
Python is a great language… to make
analysis
• Python (clay), C++ (stone)
Python is:
• An scrip and a OO lenguage 
• Dynamically typed 
• Interpreted (interactive) 
• Has heterogeneous container 
• Has solved the persistency: 
 But.. The I/O is slow 
• So intuitive to use 
Histo1d,2d,xy
Manager (~HBOOK)
Ntuple
Ranges(~cuts)
Plotter (~PAW)
GNUplot
I have a kind of PAW (HIPYS) in PYTHON
• Create, display, 1d,2d,scatter histograms
• I can create and display histogram form ntuples
• I can apply cuts in ntuples variables
To make the flat variables:
• I can manipulate data ntuples:
• No way I do in PAW
 Slice in rows, columns, add more columns
• Maybe… in C++
 Make a histogram from a column
• But it is so…easy in Python
• I can manipulate data histograms:
• If only I will have some kind of “PAW”
 Get the range (different size of bins) and contents
 I do it!
DATA, ANALYSIS, “KUMACS” AND… I PLAY INTERACTIVE… ALL IN PYTHON… 11