Gamma-ray Large Area Space Telescope Efficiency Studies (Draft) Michael Kuss INFN Pisa Instrument Analysis Group Meeting 1 April 2005
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 2 Class Efficiency Class Efficiency is used for efficiency studies: Efficiency(const TString="tree.root", const TString="eff.root", TString geoFileName=""); ~Efficiency() { delete myEvent; delete myTracker; } void Go(int lastEntry=-1); // if Get_3_in_a_row would work on the array of TriggerDiagnostics in the // Header tree, it would be faster. But, currently, this array is in the // order of GTCC/GTRC. This stuff should get extracted from TreeMaker // and here, and go into it's own class. bool Get_3_in_a_row(const int layer) const; void Draw2D(TString plane="all", TCut="", float residualDist=1, float borderWidth=1) const; void GetEfficiency(const TString plane="all", const TCut="", const float residualDist=1, const float borderWidth=1, const bool draw=false) const; void DrawEfficiency(TString plane, TCut="", float residualDist=1, float borderWidth=1, bool draw=true) const; private: void PrintEfficiency(TString plane, float ineff, int hits, int missing) const;
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 3 General Procedure user> source cmt/setup.sh user> root root [0].x compile.C root [1] Efficiency* eff = new Efficiency(”tree.root”,”eff.root”,”geo.txt”) … opens tree.root for reading, eff.root for writing, and reads the geometry from geo.root. root [2] eff->Go()... reads events from the tree file. Selects events with a single straight track (both in x and y). Extrapolates the track into each plane and saves to a small tree: event id plane name extrapolated x position of the track extrapolated y position of the track the distance to the nearest active area (negative if in active area) the residual to the nearest cluster (sign is of extrapolated - data) and saves the small tree in the eff-file. root [3] eff->Draw2D(...) root [4] eff->GetEfficiency(...)
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 4 selecting tracks ?
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 5 Draw2D() of a tower eff->Draw2D(“all”,eventId<10000,1,5) of run dots: extrapolated positions green: in active area red: in inactive area magenta: in active area close to the edge (here, 5mm) crosses: missing hits ╬: “real” missing hits (if close to the edge, in gray) x: “fake” missing hits
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 6 Draw2D() of a tower (II) #17 #6265 #8315 Why are there so few green dots? The 3-in-a-row condition!
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 7 What are these crosses (I)?
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 8 What are these crosses (II)?
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 9 What are these crosses (III)?
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 10 Draw2D() of a plane eff->Draw2D("Y3") of run
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 11 GetEfficiency(“plane”) root [8] eff->GetEfficiency("plane") OBJ: TCut CUT Object Plane Ladder Wafer Efficiency Inefficiency Hits Missing hits plane Y % 4.8 % plane X % 0.7 % plane X % 11.3 % plane Y % 0.1 % plane Y % 0.5 % plane X % 0.2 % plane X % 0.9 % plane Y % 10.6 % plane Y % 11.8 % plane X % 0.5 % plane X % 0.3 % plane Y % 0.3 % plane Y % 1.6 % plane X % 0.3 % plane X % 0.1 % plane Y % 0.3 % plane Y % 0.2 % … tower 98.8 % 1.2 %
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 12 Cuts: the 3-in-a-row-condition Assumption: plane X16 has an efficiency of 90%. I let nature generate 100 events like the one above. I will find: 90 events like the one above 0 events with no hit in X16, because with that plane the events wouldn’t trigger I would deduce an efficiency of 100% Conclusion: I have to impose a 3-in-a-row condition without using the plane to be studied
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 13 Cuts: removing “fake” missing hits Condition: a missing hit is only a missing hit if also the hit of the other plane of the layer is missing. seems to remove tracks of missing hits due to stopped particles doesn’t remove too many “real” missing hits. Examples: o planes A and B with 99%: deduced eff % o planes A and B with 85%: deduced eff % o plane A with 85%, B with 99%: eff(A) 85.15%, eff(B) 99.15% Acceptable? Anyway, I should improve the algorithm!
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 14 Hits vs. Trigger Requests First 1000 events of : 20 good hit but missing TgrReq: 3, 58, 77, 82, 235, 244, 360, 363, 384, 539, 552, 675, 798, 826, 837, 851, 884, 953, 967, noise hit with missing TgrReq: 406, 448, TgrReq but no hit: 169, strange event: 688 All anomalies come with short ToT All events are at
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 15 Good Hit but no Trigger Request
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 16 Noise Hit but no Trigger Request
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 17 Trigger Request but no Hit
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 18 Strange Event
Instrument Analysis Group Meeting, 1 April 2005Michael Kuss 19 Attempt of an Explanation