1 #include "FancyTTreeInterpolator.h" 16 TFile f(
"testFancyTTreeInterpolatorOutput.root",
"recreate");
18 TChain* gpsChain =
new TChain(
"adu5PatTree");
19 const Int_t startRun = 331;
20 const Int_t endRun = 355;
22 for(Int_t run=startRun; run<endRun; run++){
23 char gpsFileName[1024];
24 sprintf(gpsFileName,
"root/run%d/gpsFile%d.root", run, run);
25 gpsChain->Add(gpsFileName);
30 treeInterp.add(
"pat->latitude",
"");
31 std::cout << treeInterp.fStringToGraph.find(
"pat->latitude")->first << std::endl;
32 int n = treeInterp.fStringToGraph.find(
"pat->latitude")->second->GetN();
33 std::cout << n << std::endl;
40 treeInterp.interp(
"pat->latitudea", 10000);
43 std::cout <<
"Caught something!" << std::endl;
48 Double_t someNum = treeInterp.interp(
"pat->latitude", 10000);
51 std::cout << someNum << std::endl;
52 std::cout << treeInterp.fStringToGraph.find(
"pat->latitude")->second->GetX()[0] << std::endl;
53 std::cout << treeInterp.fStringToGraph.find(
"pat->latitude")->second->GetX()[n-1] << std::endl;
56 std::cout <<
"Caught something!" << std::endl;
60 TGraph* gr = treeInterp.get(
"pat->latitude");
66 treeInterp.add(
"pat->heading",
"pat->heading > -500", 360.0);
67 TGraph* gr2 = treeInterp.get(
"pat->heading");
68 gr2->SetName(
"grHeadUnwrapped");
72 TGraph* gr3 =
new TGraph();
73 for(
int i=0; i<gr2->GetN(); i++){
74 Double_t xVal = gr2->GetX()[i];
75 Double_t yVal = treeInterp.interp(
"pat->heading", xVal);
76 gr3->SetPoint(i, xVal, yVal);
78 gr3->SetName(
"grHeadUnwrappedAndInterped");
83 treeInterp.add(
"pat->heading",
"pat->heading > -500");
84 TGraph* gr4 = treeInterp.get(
"pat->heading");
85 gr4->SetName(
"grHeadNoWrap");
A class to interpolate sparse, but continuous data in a TTree.