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