Hi Heather,
This limitation (to 16 operands) was present in 3.0.06 and fixed in
3.1.01.
Cheers,
Philippe.
-----Original Message-----
From: owner-roottalk@pcroot.cern.ch
[mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Heather Kelly
Sent: Thursday, October 04, 2001 3:03 PM
To: roottalk@pcroot.cern.ch
Subject: [ROOT] Odd behavior with TTree::Draw and TCut on Windows
Hi,
I am using Root 3.00.06 on Windows. We have seen some odd behavior. We
have a TNtuple - so we are using a simple ROOT file. We find that at times
the results of applying a series of TCuts when calling TDraw creates
histograms with a varying number of entries.
Here is an example:
{
TFile *f1 = new TFile("backgndavgpdr100000TUP0494.root");
TTree *t1=(TTree*)f1->Get("PDR/t1");
TCut L1V = "((vetoword==0||vetoword>127.)&&(ntothit-nhitsiderow3-
nhitsiderow2)<3.)||(Trig_Bits&16)";
TCut L1T = "Trig_Bits>3.";
TCut L2T = "(TKR_No_Tracks>0.&&ACD_DOCA>25.)||(Trig_Bits&16)";
}
root [1] t1->Draw("ACD_DOCA", L1V&&L1T&&L2T)
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
(Int_t)961
root [2] t1->Draw("ACD_DOCA", L1V&&L1T&&L2T)
(Int_t)961
root [3] t1->Draw("ACD_DOCA", L1V&&L1T&&L2T)
(Int_t)961
root [4] t1->Draw("ACD_DOCA", L1V&&L1T&&L2T)
(Int_t)961
root [5] t1->Draw("ACD_DOCA", L1V&&L1T&&L2T)
(Int_t)1210
That last call to t1->Draw, produces a histogram with 1210 entries rather
than 961.
Please note, I cannot reproduce this odd behavior on Linux. The result of
applying these cuts is always the same and correct.
It seems as though the L2T cut is truncated sometimes - cutting off the
final: "||(Trig_Bits&16)", causing the different results.
Is there a limit to the size of the expression that can be passed to
TTree::Draw?
Thanks,
Heather
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:51:02 MET