]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Transition to NewIO
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 11 Jul 2003 13:01:35 +0000 (13:01 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 11 Jul 2003 13:01:35 +0000 (13:01 +0000)
96 files changed:
ITS/oldmacros/AliBarrelReconstruction4ITS.C [deleted file]
ITS/oldmacros/AliBarrelReconstructionV2.C [deleted file]
ITS/oldmacros/AliCascadeComparison.C [deleted file]
ITS/oldmacros/AliCascadeFindVertices.C [deleted file]
ITS/oldmacros/AliITSComparisonV1.C [deleted file]
ITS/oldmacros/AliITSComparisonV2.C [deleted file]
ITS/oldmacros/AliITSDigits2Clusters.C [deleted file]
ITS/oldmacros/AliITSFindClusters.C [deleted file]
ITS/oldmacros/AliITSFindClustersDubna.C [deleted file]
ITS/oldmacros/AliITSFindClustersV2.C [deleted file]
ITS/oldmacros/AliITSFindTracksV2.C [deleted file]
ITS/oldmacros/AliITSHits2Digits.C [deleted file]
ITS/oldmacros/AliITSHits2DigitsDefault.C [deleted file]
ITS/oldmacros/AliITSHits2DigitsDubna.C [deleted file]
ITS/oldmacros/AliITSHits2SDigits.C [deleted file]
ITS/oldmacros/AliITSHits2SDigitsDefault.C [deleted file]
ITS/oldmacros/AliITSHitsToDigitsDefault.C [deleted file]
ITS/oldmacros/AliITSHitsToSDigits.C [deleted file]
ITS/oldmacros/AliITSHitsToSDigitsDefault.C [deleted file]
ITS/oldmacros/AliITSPrintHits.C [deleted file]
ITS/oldmacros/AliITSPropagateBackV2.C [deleted file]
ITS/oldmacros/AliITSplotgeom.C [deleted file]
ITS/oldmacros/AliITSsDigits2Digits.C [deleted file]
ITS/oldmacros/AliITStest.C [deleted file]
ITS/oldmacros/AliITStestDubna.C [deleted file]
ITS/oldmacros/AliITStestV2.C [deleted file]
ITS/oldmacros/AliITStestV2.C.bck [deleted file]
ITS/oldmacros/AliTPCComparison4ITS.C [deleted file]
ITS/oldmacros/AliTPCtracknew.C [deleted file]
ITS/oldmacros/AliTPCtracks.C [deleted file]
ITS/oldmacros/AliV0Comparison.C [deleted file]
ITS/oldmacros/AliV0FindVertices.C [deleted file]
ITS/oldmacros/AlignITSmacro.C [deleted file]
ITS/oldmacros/AlignITSmacro2.C [deleted file]
ITS/oldmacros/AlignITSmacro3.C [deleted file]
ITS/oldmacros/AlignITSmacro3A.C [deleted file]
ITS/oldmacros/AlignITSmacro3B.C [deleted file]
ITS/oldmacros/AlignITSmacro3C.C [deleted file]
ITS/oldmacros/AlignITSmacro3R.C [deleted file]
ITS/oldmacros/AlignITSmacro3Rphi.C [deleted file]
ITS/oldmacros/AlignITSmacro3Z.C [deleted file]
ITS/oldmacros/Config_pid.C [deleted file]
ITS/oldmacros/GeneralTest.C [deleted file]
ITS/oldmacros/ITSDigitsToClusters.C [deleted file]
ITS/oldmacros/ITSDigitsToClustersDubna.C [deleted file]
ITS/oldmacros/ITSDisplayTracks.C [deleted file]
ITS/oldmacros/ITSHitsToFastPoints.C [deleted file]
ITS/oldmacros/ITSOccupancy.C [deleted file]
ITS/oldmacros/ITSPIDtest.C [deleted file]
ITS/oldmacros/ITSPlotAllTracks.C [deleted file]
ITS/oldmacros/ITSPlotFakeTracks.C [deleted file]
ITS/oldmacros/ITSPlotTracks.C [deleted file]
ITS/oldmacros/ITSRF.C [deleted file]
ITS/oldmacros/ITSReadPlotData.C [deleted file]
ITS/oldmacros/ITSdigitsTest.C [deleted file]
ITS/oldmacros/ITSfastrecpoints.C [deleted file]
ITS/oldmacros/ITSgeoplot.C [deleted file]
ITS/oldmacros/ITShitOccupancy.C [deleted file]
ITS/oldmacros/ITShuffman.C [deleted file]
ITS/oldmacros/ITSlego.C [deleted file]
ITS/oldmacros/ITSmixedpoints.C [deleted file]
ITS/oldmacros/ITSneuralCompleteEval.C [deleted file]
ITS/oldmacros/ITSneuralTracking.C [deleted file]
ITS/oldmacros/ITSreadClustTestSPD.C [deleted file]
ITS/oldmacros/ITSreadClustTestSPDDubna.C [deleted file]
ITS/oldmacros/ITSreadRecPointsTest.C [deleted file]
ITS/oldmacros/ITSreadTest.C [deleted file]
ITS/oldmacros/ITSsddanalysis.C [deleted file]
ITS/oldmacros/ITSsddtest.C [deleted file]
ITS/oldmacros/ITSstoreFindableTracks.C [deleted file]
ITS/oldmacros/ITSstream.C [deleted file]
ITS/oldmacros/ITStestSDD.C [deleted file]
ITS/oldmacros/ITStracking.C [deleted file]
ITS/oldmacros/ITStrackingGeneral.C [deleted file]
ITS/oldmacros/ITStracks.C [deleted file]
ITS/oldmacros/ReadITSTracks.C [deleted file]
ITS/oldmacros/SPD_ntuple.C [deleted file]
ITS/oldmacros/SPD_ntuple_Dubna.C [deleted file]
ITS/oldmacros/SPDclusterTest.C [deleted file]
ITS/oldmacros/SPDclusterTestDubna.C [deleted file]
ITS/oldmacros/SSD_ntuple.C [deleted file]
ITS/oldmacros/SSDrecpointTest.C [deleted file]
ITS/oldmacros/SetConvConst.C [deleted file]
ITS/oldmacros/TPCtracking.C [deleted file]
ITS/oldmacros/TPCtracks.C [deleted file]
ITS/oldmacros/VertexMacro.C [deleted file]
ITS/oldmacros/dEdXgeant.C [deleted file]
ITS/oldmacros/debug.C [deleted file]
ITS/oldmacros/dedxanal.C [deleted file]
ITS/oldmacros/grunITS.C [deleted file]
ITS/oldmacros/list.txt [deleted file]
ITS/oldmacros/list.txt.bck [deleted file]
ITS/oldmacros/load_particles.C [deleted file]
ITS/oldmacros/save_pid.C [deleted file]
ITS/oldmacros/save_pidV2.C [deleted file]
ITS/oldmacros/scan_pidV2.C [deleted file]

diff --git a/ITS/oldmacros/AliBarrelReconstruction4ITS.C b/ITS/oldmacros/AliBarrelReconstruction4ITS.C
deleted file mode 100644 (file)
index aeb5493..0000000
+++ /dev/null
@@ -1,435 +0,0 @@
-/****************************************************************************
- * This macro is supposed to do reconstruction in the barrel ALICE trackers *
- * (Make sure you have TPC digits and ITS hits before using this macro !!!) *
- * It does the following steps (April 12, 2001):                            *
- *                   1) TPC cluster finding                                 *
- *                   2) TPC track finding                                   *
- *                   3) ITS cluster finding V2 (via fast points !)          *
- *                   4) ITS track finding V2                                *
- *                   5) ITS back track propagation V2                       *
- *                   6) TPC back track propagation                          *
- *                (Origin: I.Belikov, CERN, Jouri.Belikov@cern.ch)          *
- ****************************************************************************/
-
-#ifndef __CINT__
-  #include "alles.h"
-  #include "AliMagF.h"
-  #include "AliTPCtracker.h"
-
-  #include "AliITS.h"
-  #include "AliITSgeom.h"
-  #include "AliITSRecPoint.h"
-  #include "AliITSclusterV2.h"
-  #include "AliITSsimulationFastPoints.h"
-  #include "AliITStrackerV2.h"
-#endif
-
-Int_t TPCFindClusters(const Char_t *inname, const Char_t *outname, Int_t n);
-Int_t TPCFindTracks(const Char_t *inname, const Char_t *outname, Int_t n);
-Int_t TPCSortTracks(const Char_t *inname, const Char_t *inname2, const Char_t *outname,  Int_t n);
-Int_t TPCPropagateBack(const Char_t *inname, const Char_t *outname);
-
-Int_t ITSFindClusters(const Char_t *inname,  const Char_t *outname, Int_t n);
-Int_t ITSFindTracks(const Char_t *inname, const Char_t *inname2, const Char_t *outname, Int_t n);
-Int_t ITSPropagateBack(const Char_t *inname, const Char_t *outname);
-
-
-Int_t AliBarrelReconstruction4ITS(Int_t n=1) {
-   const Char_t *TPCdigName="rfio:galice.root";
-   const Char_t *TPCclsName="AliTPCclusters.root";
-   const Char_t *TPCtrkName="AliTPCtracks.root";
-   const Char_t *TPCtrkNameS="AliTPCtracksSorted.root";
-
-
-   const Char_t *ITSdigName="rfio:galice.root";
-   const Char_t *ITSclsName="AliITSclustersV2.root";
-   const Char_t *ITStrkName="AliITStracksV2.root";
-
-   AliKalmanTrack::SetConvConst(100/0.299792458/0.2/gAlice->Field()->Factor());
-
-    
-// ********** Find TPC clusters *********** //
-   if (TPCFindClusters(TPCdigName,TPCclsName, n)) {
-      cerr<<"Failed to get TPC clusters !\n";
-      return 1;
-   }      
-
-// ********** Find TPC tracks *********** //
-    if (TPCFindTracks(TPCclsName,TPCtrkName,n)) {
-      cerr<<"Failed to get TPC tracks !\n";
-      return 1;
-    }
-  
-// ********** Sort and label TPC tracks *********** //
-   if (TPCSortTracks(TPCclsName,TPCtrkName,TPCtrkNameS,n)) {
-      cerr<<"Failed to sort TPC tracks !\n";
-      return 1;
-    }
-/*   
-// ********** Find ITS clusters *********** //
-   if (ITSFindClusters(ITSdigName,ITSclsName,n)) {
-      cerr<<"Failed to get ITS clusters !\n";
-      return 1;
-   }
-   
-// ********** Find ITS tracks *********** //
-   {
-     //TFile *clsFile=TFile::Open(ITSclsName);
-   if (ITSFindTracks(TPCtrkNameS,ITSclsName,ITStrkName,n)) {
-      cerr<<"Failed to get ITS tracks !\n";
-      return 1;
-   }
-   //clsFile->Close();
-   }
-   return 1;
-// ********** Back propagation of the ITS tracks *********** //
-   {TFile *clsFile=TFile::Open(ITSclsName);
-   if (ITSPropagateBack(ITStrkName,TPCtrkNameS)) {
-      cerr<<"Failed to propagate back the ITS tracks !\n";
-      return 1;
-   }
-   clsFile->Close();}
-
-
-// ********** Back propagation of the TPC tracks *********** //
-   {TFile *clsFile=TFile::Open(TPCclsName);
-   if (TPCPropagateBack(TPCtrkName,TPCtrkName)) {
-      cerr<<"Failed to propagate back the TPC tracks !\n";
-      return 1;
-   }
-   clsFile->Close();}
-*/
-   return 0;
-}
-
-
-Int_t TPCFindClusters(const Char_t *inname, const Char_t *outname, Int_t n) {
-   Int_t rc=0;
-   const Char_t *name="TPCFindClusters";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-
-   AliTPCParam *param=(AliTPCParam *)in->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-   AliTPCv2 tpc;
-   tpc.SetParam(param);
-
-   //tpc.Digits2Clusters(out); //MI change
-   for (Int_t i=0;i<n;i++){
-     printf("Processing event %d\n",i);
-     tpc.Digits2Clusters(out,i);
-     //         AliTPCclusterer::Digits2Clusters(dig, out, i);
-   }
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t TPCFindTracks(const Char_t *inname, const Char_t *outname, Int_t n) {
-   Int_t rc=0;
-   const Char_t *name="TPCFindTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-   AliTPCParam *param=(AliTPCParam *)in->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-
-   //AliTPCtracker *tracker=new AliTPCtracker(param);
-   //rc=tracker->Clusters2Tracks(0,out);
-   //delete tracker;
-
-   for (Int_t i=0;i<n;i++){
-     printf("Processing event %d\n",i);
-     AliTPCtracker *tracker = new AliTPCtracker(param,i);
-     //Int_t rc=
-       tracker->Clusters2Tracks(0,out);
-     delete tracker;
-   }
-
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-Int_t TPCSortTracks(const Char_t *inname, const Char_t *inname2, const Char_t * outname,  Int_t eventn){
-   Int_t rc=0;
-   const Char_t *name="TPCSortTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   TFile *out =TFile::Open(outname,"recreate");
-   TFile *in1 =TFile::Open(inname);
-   TFile *in2 =TFile::Open(inname2);
-
-
-   AliTPCParam *param=(AliTPCParam *)in1->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-
-
-
-   // loop over events 
-   for (Int_t event=0;event<eventn; event++){
-     TObjArray tarray(10000);
-     AliTPCtrack *iotrack=0;
-     Int_t i;
-
-
-     in2->cd();
-     char   tname[100];
-     sprintf(tname,"TreeT_TPC_%d",event);
-
-     TTree *tracktree=(TTree*)in2->Get(tname);
-     TBranch *tbranch=tracktree->GetBranch("tracks");
-     Int_t nentr=(Int_t)tracktree->GetEntries();
-     for (i=0; i<nentr; i++) {
-       iotrack=new AliTPCtrack;
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-       tarray.AddLast(iotrack);
-     }   
-     tarray.Sort();
-     // in2->Close();
-     
-     //assign thacks GEANT labels
-     in1->cd();
-     AliTPCtracker *tracker = new AliTPCtracker(param,event);
-     tracker->LoadInnerSectors();
-     tracker->LoadOuterSectors();
-     for (i=0; i<nentr; i++) {
-       iotrack=(AliTPCtrack*)tarray.UncheckedAt(i);
-       tracker->CookLabel(iotrack,0.1);
-     }   
-     delete tracker;
-     //in->Close();
-     //end of GEANT label assignment
-     
-     tracktree=new TTree(tname,"Tree with TPC tracks");
-     tracktree->Branch("tracks","AliTPCtrack",&iotrack,32000,0);
-     for (i=0; i<nentr; i++) {
-       iotrack=(AliTPCtrack*)tarray.UncheckedAt(i);
-       tracktree->Fill();
-     }
-     out->cd();
-     tracktree->Write();
-   }
-
-   out->Close();
-   in2->Close();
-   in1->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSFindClusters(const Char_t *inname, const Char_t *outname, Int_t n) {
-   Int_t rc=0;
-   const Char_t *name="ITSFindClusters";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname,"update");
-
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-      cerr<<"Can't get gAlice !\n";
-      return 1;
-   }
-
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   if (!ITS) { cerr<<"Can't get the ITS !\n"; return 1;}
-   AliITSgeom *geom=ITS->GetITSgeom();
-   out->cd();   
-   geom->Write();
-     
-   Int_t ev=0;
-   for (ev = 0; ev<n; ev++){
-     in->cd();   // !!!! MI directory must point to galice. - othervise problem with Tree -connection
-     gAlice->GetEvent(ev);
-     //gAlice->TreeR()->Reset();   //reset reconstructed tree
-
-     
-     TTree *pTree=gAlice->TreeR();
-     if (!pTree){
-       gAlice->MakeTree("R");
-       pTree = gAlice->TreeR();
-     }
-     TBranch *branch=pTree->GetBranch("ITSRecPoints");
-     if (!branch) {
-       //if not reconstructed ITS branch do reconstruction 
-       ITS->MakeBranch("R",0);
-       //////////////// Taken from ITSHitsToFastPoints.C ///////////////////////
-       AliITSsimulationFastPoints *sim = new AliITSsimulationFastPoints();
-       for (Int_t i=0;i<3;i++) { ITS->SetSimulationModel(i,sim); }
-       Int_t nsignal=25;
-       Int_t size=-1;
-       Int_t bgr_ev=Int_t(ev/nsignal);
-       ITS->HitsToFastRecPoints(ev,bgr_ev,size," ","All"," ");
-       //////////////////////////////////////////////////////////////////////////
-       gAlice->GetEvent(ev);   //MI comment  - in HitsToFast... they reset treeR to 0 
-       //they overwrite full reconstructed event ???? ... so lets connect TreeR one more
-       //time
-     }
-
-
-     
-     out->cd();
-     TClonesArray *clusters=new TClonesArray("AliITSclusterV2",10000);
-     char   cname[100];
-     sprintf(cname,"TreeC_ITS_%d",ev);
-  
-     TTree *cTree=new TTree(cname,"ITS clusters");
-     cTree->Branch("Clusters",&clusters);
-     
-     pTree=gAlice->TreeR();
-     if (!pTree) { cerr<<"Can't get TreeR !\n"; return 1; }
-     branch=pTree->GetBranch("ITSRecPoints");
-     if (!branch) { cerr<<"Can't get ITSRecPoints branch !\n"; return 1;}
-     TClonesArray *points=new TClonesArray("AliITSRecPoint",10000);
-     branch->SetAddress(&points);
-     
-     TClonesArray &cl=*clusters;
-     Int_t nclusters=0;
-     Int_t nentr=(Int_t)pTree->GetEntries();
-     AliITSgeom *geom=ITS->GetITSgeom();
-
-     for (Int_t i=0; i<nentr; i++) {
-       if (!pTree->GetEvent(i)) {cTree->Fill(); continue;}
-       Int_t lay,lad,det; geom->GetModuleId(i,lay,lad,det);
-       Float_t x,y,zshift; geom->GetTrans(lay,lad,det,x,y,zshift); 
-       Double_t rot[9];    geom->GetRotMatrix(lay,lad,det,rot);
-       Double_t yshift = x*rot[0] + y*rot[1];
-       Int_t ndet=(lad-1)*geom->GetNdetectors(lay) + (det-1);
-       Int_t ncl=points->GetEntriesFast();
-       nclusters+=ncl;
-       for (Int_t j=0; j<ncl; j++) {
-        AliITSRecPoint *p=(AliITSRecPoint*)points->UncheckedAt(j);
-        Float_t lp[5];
-        lp[0]=-p->GetX()-yshift; if (lay==1) lp[0]=-lp[0];
-        lp[1]=p->GetZ()+zshift;
-        lp[2]=p->GetSigmaX2();
-        lp[3]=p->GetSigmaZ2();
-        lp[4]=p->GetQ();
-        Int_t lab[6]; 
-        lab[0]=p->GetLabel(0);lab[1]=p->GetLabel(1);lab[2]=p->GetLabel(2);
-        lab[3]=ndet;
-        
-        Int_t label=lab[0];
-        TParticle *part=(TParticle*)gAlice->Particle(label);
-        label=-3;
-        while (part->P() < 0.005) {
-          Int_t m=part->GetFirstMother();
-          if (m<0) {cerr<<"Primary momentum: "<<part->P()<<endl; break;}
-          label=m;
-          part=(TParticle*)gAlice->Particle(label);
-        }
-        if      (lab[1]<0) lab[1]=label;
-        else if (lab[2]<0) lab[2]=label;
-        else cerr<<"No empty labels !\n";
-        
-        new(cl[j]) AliITSclusterV2(lab,lp);
-       }
-       cTree->Fill(); clusters->Delete();
-       points->Delete();
-     }
-     cTree->Write();
-     cerr<<"Number of clusters: "<<nclusters<<endl;
-     delete cTree; delete clusters; delete points;
-
-   }
-
-   delete gAlice; gAlice=0;
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSFindTracks(const Char_t * inname, const Char_t *inname2, const Char_t *outname, Int_t n) {
-   Int_t rc=0;
-   const Char_t *name="ITSFindTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-   TFile *in2 =TFile::Open(inname2);
-
-   AliITSgeom *geom=(AliITSgeom*)gFile->Get("AliITSgeom");
-   if (!geom) { cerr<<"can't get ITS geometry !\n"; return 1;}
-
-
-   for (Int_t i=0;i<n;i++){
-     AliITStrackerV2 tracker(geom,i);
-     rc=tracker.Clusters2Tracks(in,out);
-   }
-
-   in->Close();
-   in2->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSPropagateBack(const Char_t *inname, const Char_t *outname) {
-   
-  Int_t rc=0;
-  /*
-   const Char_t *name="ITSPropagateBack";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   AliITSgeom *geom=(AliITSgeom*)gFile->Get("AliITSgeom");
-   if (!geom) { cerr<<"can't get ITS geometry !\n"; return 1;}
-   AliITStrackerV2 tracker(geom);
-
-   TFile *out=TFile::Open(outname,"update");
-   TFile *in =TFile::Open(inname);
-   rc=tracker.PropagateBack(in,out);
-   in->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-  */
-   return rc;
-}
-
-Int_t TPCPropagateBack(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="TPCPropagateBack";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   AliTPCParam *param=(AliTPCParam *)gFile->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-   AliTPCtracker *tracker=new AliTPCtracker(param);
-
-   TFile *out=TFile::Open(outname,"update");
-   TFile *in =TFile::Open(inname);
-   rc=tracker->PropagateBack(in,out);
-   delete tracker;
-   in->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
diff --git a/ITS/oldmacros/AliBarrelReconstructionV2.C b/ITS/oldmacros/AliBarrelReconstructionV2.C
deleted file mode 100644 (file)
index f15ba9b..0000000
+++ /dev/null
@@ -1,459 +0,0 @@
-/****************************************************************************
- * This macro is supposed to do reconstruction in the barrel ALICE trackers *
- * (Make sure you have TPC digits and ITS hits before using this macro !!!) *
- * It does the following steps (April 12, 2001):                            *
- *                   1) TPC cluster finding                                 *
- *                   2) TPC track finding                                   *
- *                   3) ITS cluster finding V2 (via fast points !)          *
- *                   4) ITS track finding V2                                *
- *                   5) ITS back track propagation V2                       *
- *                   6) TPC back track propagation                          *
- *                (Origin: I.Belikov, CERN, Jouri.Belikov@cern.ch)          *
- ****************************************************************************/
-
-#ifndef __CINT__
-  #include "alles.h"
-  #include "AliMagF.h"
-  #include "AliTPCtracker.h"
-
-  #include "AliITS.h"
-  #include "AliITSgeom.h"
-  #include "AliITSRecPoint.h"
-  #include "AliITSclusterV2.h"
-  #include "AliITSsimulationFastPoints.h"
-  #include "AliITStrackerV2.h"
-  #include<iostream.h>
-#endif
-
-Int_t TPCFindClusters(const Char_t *inname, const Char_t *outname, Int_t n);
-Int_t TPCFindTracks(const Char_t *inname, const Char_t *outname, Int_t n);
-Int_t TPCSortTracks(const Char_t *inname, const Char_t *inname2, const Char_t *outname,  Int_t n);
-Int_t TPCPropagateBack(const Char_t *inname, const Char_t *outname);
-
-Int_t ITSFindClusters(const Char_t *inname,  const Char_t *outname, Int_t n);
-Int_t ITSFindTracks(const Char_t *inname, const Char_t *inname2, const Char_t *outname, Int_t n);
-Int_t ITSPropagateBack(const Char_t *inname, const Char_t *outname);
-
-
-Int_t AliBarrelReconstructionV2(Int_t n=1) {
-  //const Char_t *TPCdigName="rfio:galice.root";
-   const Char_t *TPCdigName="galice.root";
-   const Char_t *TPCclsName="AliTPCclusters.root";
-   const Char_t *TPCtrkName="AliTPCtracks.root";
-   const Char_t *TPCtrkNameS="AliTPCtracksSorted.root";
-
-
-   //const Char_t *ITSdigName="rfio:galice.root";
-   const Char_t *ITSdigName="galice.root";
-   const Char_t *ITSclsName="AliITSclustersV2.root";
-   const Char_t *ITStrkName="AliITStracksV2.root";
-
-   AliKalmanTrack::SetConvConst(100/0.299792458/0.2/gAlice->Field()->Factor());
-
-    
-// ********** Find TPC clusters *********** //
-   if (TPCFindClusters(TPCdigName,TPCclsName, n)) {
-      cerr<<"Failed to get TPC clusters !\n";
-      return 1;
-   }      
-
-// ********** Find TPC tracks *********** //
-    if (TPCFindTracks(TPCclsName,TPCtrkName,n)) {
-      cerr<<"Failed to get TPC tracks !\n";
-      return 1;
-    }
-  
-// ********** Sort and label TPC tracks *********** //
-   if (TPCSortTracks(TPCclsName,TPCtrkName,TPCtrkNameS,n)) {
-      cerr<<"Failed to sort TPC tracks !\n";
-      return 1;
-    }
-
-// ********** Find ITS clusters *********** //
-   if (ITSFindClusters(ITSdigName,ITSclsName,n)) {
-      cerr<<"Failed to get ITS clusters !\n";
-      return 1;
-   }
-
-// ********** Find ITS tracks *********** //
-   {
-     //TFile *clsFile=TFile::Open(ITSclsName);
-   if (ITSFindTracks(TPCtrkNameS,ITSclsName,ITStrkName,n)) {
-      cerr<<"Failed to get ITS tracks !\n";
-      return 1;
-   }
-   //clsFile->Close();
-   }
-   return 1;
-// ********** Back propagation of the ITS tracks *********** //
-   {TFile *clsFile=TFile::Open(ITSclsName);
-   if (ITSPropagateBack(ITStrkName,TPCtrkNameS)) {
-      cerr<<"Failed to propagate back the ITS tracks !\n";
-      return 1;
-   }
-   clsFile->Close();}
-
-
-// ********** Back propagation of the TPC tracks *********** //
-   {TFile *clsFile=TFile::Open(TPCclsName);
-   if (TPCPropagateBack(TPCtrkName,TPCtrkName)) {
-      cerr<<"Failed to propagate back the TPC tracks !\n";
-      return 1;
-   }
-   clsFile->Close();}
-
-   return 0;
-}
-
-
-Int_t TPCFindClusters(const Char_t *inname, const Char_t *outname, Int_t n) {
-   Int_t rc=0;
-   const Char_t *name="TPCFindClusters";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-
-   AliTPCParam *param=(AliTPCParam *)in->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-   AliTPCv2 tpc;
-   tpc.SetParam(param);
-
-   //tpc.Digits2Clusters(out); //MI change
-   cout<<"TPCFindClusters: nev ="<<n<<endl;
-   for (Int_t i=0;i<n;i++){
-     printf("Processing event %d\n",i);
-     tpc.Digits2Clusters(out,i);
-     //         AliTPCclusterer::Digits2Clusters(dig, out, i);
-   }
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t TPCFindTracks(const Char_t *inname, const Char_t *outname, Int_t n) {
-   Int_t rc=0;
-   const Char_t *name="TPCFindTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-   AliTPCParam *param=(AliTPCParam *)in->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-
-   //AliTPCtracker *tracker=new AliTPCtracker(param);
-   //rc=tracker->Clusters2Tracks(0,out);
-   //delete tracker;
-   cout<<"TPCFindTracks: nev ="<<n<<endl;
-
-   for (Int_t i=0;i<n;i++){
-     printf("Processing event %d\n",i);
-     AliTPCtracker *tracker = new AliTPCtracker(param,i);
-     //Int_t rc=
-       tracker->Clusters2Tracks(0,out);
-     delete tracker;
-   }
-
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-Int_t TPCSortTracks(const Char_t *inname, const Char_t *inname2, const Char_t * outname,  Int_t eventn){
-   Int_t rc=0;
-   const Char_t *name="TPCSortTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   TFile *out =TFile::Open(outname,"recreate");
-   TFile *in1 =TFile::Open(inname);
-   TFile *in2 =TFile::Open(inname2);
-
-
-   AliTPCParam *param=(AliTPCParam *)in1->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-
-   cout<<"TPCSortedtracks: nev ="<<eventn<<endl;
-
-
-   // loop over events 
-   for (Int_t event=0;event<eventn; event++){
-     TObjArray tarray(10000);
-     AliTPCtrack *iotrack=0;
-     Int_t i;
-
-
-     in2->cd();
-     char   tname[100];
-     sprintf(tname,"TreeT_TPC_%d",event);
-
-     TTree *tracktree=(TTree*)in2->Get(tname);
-     TBranch *tbranch=tracktree->GetBranch("tracks");
-     Int_t nentr=(Int_t)tracktree->GetEntries();
-     for (i=0; i<nentr; i++) {
-       iotrack=new AliTPCtrack;
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-       tarray.AddLast(iotrack);
-     }   
-     tarray.Sort();
-     // in2->Close();
-     
-     //assign thacks GEANT labels
-     in1->cd();
-     AliTPCtracker *tracker = new AliTPCtracker(param,event);
-     tracker->LoadInnerSectors();
-     tracker->LoadOuterSectors();
-     for (i=0; i<nentr; i++) {
-       iotrack=(AliTPCtrack*)tarray.UncheckedAt(i);
-       tracker->CookLabel(iotrack,0.1);
-     }   
-     delete tracker;
-     //in->Close();
-     //end of GEANT label assignment
-     
-     tracktree=new TTree(tname,"Tree with TPC tracks");
-     tracktree->Branch("tracks","AliTPCtrack",&iotrack,32000,0);
-     for (i=0; i<nentr; i++) {
-       iotrack=(AliTPCtrack*)tarray.UncheckedAt(i);
-       tracktree->Fill();
-     }
-     out->cd();
-     tracktree->Write();
-   }
-
-   out->Close();
-   in2->Close();
-   in1->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSFindClusters(const Char_t *inname, const Char_t *outname, Int_t n) {
-   Int_t rc=0;
-   const Char_t *name="ITSFindClusters";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname,"update");
-
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-      cerr<<"Can't get gAlice !\n";
-      return 1;
-   }
-
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   if (!ITS) { cerr<<"Can't get the ITS !\n"; return 1;}
-   AliITSgeom *geom=ITS->GetITSgeom();
-   out->cd();   
-   geom->Write();
-     
-   cout<<"ITSFindClusters: nev ="<<n<<endl;
-   Int_t ev=0;
-   for (ev = 0; ev<n; ev++){
-     in->cd();   // !!!! MI directory must point to galice. - othervise problem with Tree -connection
-     gAlice->GetEvent(ev);
-     //gAlice->TreeR()->Reset();   //reset reconstructed tree
-
-     
-     TTree *pTree=gAlice->TreeR();
-     if (!pTree){
-       gAlice->MakeTree("R");
-       pTree = gAlice->TreeR();
-     }
-     TBranch *branch=pTree->GetBranch("ITSRecPoints");
-     /*
-     if (!branch) {
-       //if not reconstructed ITS branch do reconstruction 
-       ITS->MakeBranch("R",0);
-
-       //////////////// Taken from ITSHitsToFastPoints.C ///////////////////////
-       AliITSsimulationFastPoints *sim = new AliITSsimulationFastPoints();
-       for (Int_t i=0;i<3;i++) { ITS->SetSimulationModel(i,sim); }
-       Int_t nsignal=25;
-       Int_t size=-1;
-       Int_t bgr_ev=Int_t(ev/nsignal);
-       ITS->HitsToFastRecPoints(ev,bgr_ev,size," ","All"," ");
-       //////////////////////////////////////////////////////////////////////////
-       gAlice->GetEvent(ev);   //MI comment  - in HitsToFast... they reset treeR to 0 
-       //they overwrite full reconstructed event ???? ... so lets connect TreeR one more
-       //time
-     }
-     */
-
-     
-     out->cd();
-     TClonesArray *clusters=new TClonesArray("AliITSclusterV2",10000);
-     char   cname[100];
-     sprintf(cname,"TreeC_ITS_%d",ev);
-  
-     TTree *cTree=new TTree(cname,"ITS clusters");
-     cTree->Branch("Clusters",&clusters);
-     
-     pTree=gAlice->TreeR();
-     if (!pTree) { cerr<<"Can't get TreeR !\n"; return 1; }
-     branch=pTree->GetBranch("ITSRecPoints");
-     if (!branch) { cerr<<"Can't get ITSRecPoints branch !\n"; return 1;}
-     TClonesArray *points=new TClonesArray("AliITSRecPoint",10000);
-     branch->SetAddress(&points);
-     
-     TClonesArray &cl=*clusters;
-     Int_t nclusters=0;
-     Int_t nentr=(Int_t)pTree->GetEntries();
-     Int_t lab[6]; 
-     Float_t lp[5];
-     AliITSgeom *geom=ITS->GetITSgeom();
-
-     cout<<"!!!! nentr ="<<nentr<<endl;
-     for (Int_t i=0; i<nentr; i++) {
-       if (!pTree->GetEvent(i)) {cTree->Fill(); continue;}
-       Int_t lay,lad,det; geom->GetModuleId(i,lay,lad,det);
-       Float_t x,y,zshift; geom->GetTrans(lay,lad,det,x,y,zshift); 
-       Double_t rot[9];    geom->GetRotMatrix(lay,lad,det,rot);
-       Double_t yshift = x*rot[0] + y*rot[1];
-       Int_t ndet=(lad-1)*geom->GetNdetectors(lay) + (det-1);
-       Int_t ncl=points->GetEntriesFast();
-       nclusters+=ncl;
-
-     Float_t kmip=1.;
-     if(lay<5&&lay>2){kmip=280.;}; // b.b.
-     if(lay<7&&lay>4){kmip=38.;};
-
-
-       for (Int_t j=0; j<ncl; j++) {
-        AliITSRecPoint *p=(AliITSRecPoint*)points->UncheckedAt(j);
-        lp[0]=-p->GetX()-yshift; if (lay==1) lp[0]=-lp[0];
-        lp[1]=p->GetZ()+zshift;
-        lp[2]=p->GetSigmaX2();
-        lp[3]=p->GetSigmaZ2();
-        lp[4]=p->GetQ(); lp[4]/=kmip;    // b.b.
-        if(ncl==11)cout<<"mod,cl,Q ="<<i<<","<<j<<","<<lp[4]<<endl;
-        lab[0]=p->GetLabel(0);lab[1]=p->GetLabel(1);lab[2]=p->GetLabel(2);
-        lab[3]=ndet;
-        
-        Int_t label=lab[0];
-        if(label>=0) { // b.b.
-        TParticle *part=(TParticle*)gAlice->Particle(label);
-        label=-3;
-        while (part->P() < 0.005) {
-          Int_t m=part->GetFirstMother();
-          if (m<0) {cerr<<"Primary momentum: "<<part->P()<<endl; break;}
-          label=m;
-          part=(TParticle*)gAlice->Particle(label);
-        }
-        }
-        if      (lab[1]<0) lab[1]=label;
-        else if (lab[2]<0) lab[2]=label;
-        else cerr<<"No empty labels !\n";
-        
-        new(cl[j]) AliITSclusterV2(lab,lp);
-       }
-       cTree->Fill(); clusters->Delete();
-       points->Delete();
-     }
-     cTree->Write();
-     cerr<<"Number of clusters: "<<nclusters<<endl;
-     delete cTree; delete clusters; delete points;
-
-   }
-
-   delete gAlice; gAlice=0;
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSFindTracks(const Char_t * inname, const Char_t *inname2, const Char_t *outname, Int_t n) {
-   Int_t rc=0;
-   const Char_t *name="ITSFindTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-   TFile *in2 =TFile::Open(inname2);
-
-   AliITSgeom *geom=(AliITSgeom*)gFile->Get("AliITSgeom");
-   if (!geom) { cerr<<"can't get ITS geometry !\n"; return 1;}
-
-   cout<<"ITSFindtracks: nev ="<<n<<endl;
-
-   for (Int_t i=0;i<n;i++){
-     AliITStrackerV2 tracker(geom,i);
-     rc=tracker.Clusters2Tracks(in,out);
-   }
-
-   in->Close();
-   in2->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSPropagateBack(const Char_t *inname, const Char_t *outname) {
-   
-  Int_t rc=0;
-  /*
-   const Char_t *name="ITSPropagateBack";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   AliITSgeom *geom=(AliITSgeom*)gFile->Get("AliITSgeom");
-   if (!geom) { cerr<<"can't get ITS geometry !\n"; return 1;}
-   AliITStrackerV2 tracker(geom);
-
-   TFile *out=TFile::Open(outname,"update");
-   TFile *in =TFile::Open(inname);
-   rc=tracker.PropagateBack(in,out);
-   in->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-  */
-   return rc;
-}
-
-Int_t TPCPropagateBack(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="TPCPropagateBack";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   AliTPCParam *param=(AliTPCParam *)gFile->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-   AliTPCtracker *tracker=new AliTPCtracker(param);
-
-   TFile *out=TFile::Open(outname,"update");
-   TFile *in =TFile::Open(inname);
-   rc=tracker->PropagateBack(in,out);
-   delete tracker;
-   in->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-
-
-
-
diff --git a/ITS/oldmacros/AliCascadeComparison.C b/ITS/oldmacros/AliCascadeComparison.C
deleted file mode 100644 (file)
index bffb293..0000000
+++ /dev/null
@@ -1,384 +0,0 @@
-/****************************************************************************
- *           Very important, delicate and rather obscure macro.             *
- *                                                                          *
- *               Creates list of "findable" cascades,                       *
- *             calculates efficiency, resolutions etc.                      *
- *                                                                          *
- *  Origin: Christian Kuhn, IReS, Strasbourg, christian.kuhn@ires.in2p3.fr  *
- ****************************************************************************/
-
-#ifndef __CINT__
-  #include <iostream.h>
-  #include <fstream.h>
-
-  #include "TH1.h"
-  #include "TFile.h"
-  #include "TTree.h"
-  #include "TObjArray.h"
-  #include "TStyle.h"
-  #include "TCanvas.h"
-  #include "TLine.h"
-  #include "TText.h"
-  #include "TParticle.h"
-  #include "TStopwatch.h"
-
-  #include "AliRun.h"
-  #include "AliPDG.h"
-  #include "AliCascadeVertex.h"
-#endif
-
-struct GoodCascade {
-  Int_t nlab,plab;   // V0's daughter labels
-  Int_t blab;        // Bachelor label
-  Int_t code;
-  Float_t px,py,pz;
-  Float_t x,y,z;
-};
-Int_t good_cascades(GoodCascade *gt, Int_t max);
-
-Int_t AliCascadeComparison(Int_t code=3312) {
-  //code= 3312; //kXiMinus 
-  //code=-3312; //kXiPlusBar
-  //code= 3334; //kOmegaMinus
-  //code=-3334; //kOmegaPlusBar
-
-   cerr<<"Doing comparison...\n";
-
-   const Double_t cascadeWindow=0.05, cascadeWidth=0.015; 
-   Double_t cascadeMass=0.5;
-   switch (code) {
-   case kXiMinus:
-   case kXiPlusBar:    cascadeMass=1.32131; break;
-   case kOmegaMinus: 
-   case kOmegaPlusBar: cascadeMass=1.67245; break;
-   default: cerr<<"Invalid PDG code !\n"; return 1;
-   }
-
-   TStopwatch timer;
-
-   /*** Load reconstructed cascades ***/
-   TFile *cf=TFile::Open("AliCascadeVertices.root");
-   if (!cf->IsOpen()){cerr<<"Can't open AliCascadeVertices.root !\n";return 2;}
-   TObjArray carray(1000);
-   TTree *cTree=(TTree*)cf->Get("TreeCasc");
-   TBranch *branch=cTree->GetBranch("cascades");
-   Int_t nentr=(Int_t)cTree->GetEntries();
-   for (Int_t i=0; i<nentr; i++) {
-       AliCascadeVertex *iovertex=new AliCascadeVertex; 
-       branch->SetAddress(&iovertex);
-       cTree->GetEvent(i);
-       carray.AddLast(iovertex);
-   }
-   delete cTree;
-   cf->Close();
-
-   /*** Check if the file with the "good" cascades exists ***/
-   GoodCascade gc[100];
-   Int_t ngood=0;
-   ifstream in("good_cascades");
-   if (in) {
-      cerr<<"Reading good cascades...\n";
-      while (in>>gc[ngood].nlab>>gc[ngood].plab>>
-                gc[ngood].blab>>gc[ngood].code>>
-                 gc[ngood].px>>gc[ngood].py>>gc[ngood].pz>>
-                 gc[ngood].x >>gc[ngood].y >>gc[ngood].z) {
-         ngood++;
-         cerr<<ngood<<'\r';
-         if (ngood==100) {
-            cerr<<"Too many good cascades !\n";
-            break;
-         }
-      }
-      if (!in.eof()) cerr<<"Read error (good_cascades) !\n";
-   } else {
-     /*** generate a file with the "good" cascades ***/
-      cerr<<"Marking good cascades (this will take a while)...\n";
-      ngood=good_cascades(gc,100);
-      ofstream out("good_cascades");
-      if (out) {
-         for (Int_t ngd=0; ngd<ngood; ngd++)            
-            out<<gc[ngd].nlab<<' '<<gc[ngd].plab<<' '<<
-                gc[ngd].blab<<' '<<gc[ngd].code<<' '<<
-                 gc[ngd].px<<' '<<gc[ngd].py<<' '<<gc[ngd].pz<<' '<<
-                 gc[ngd].x <<' '<<gc[ngd].y <<' '<<gc[ngd].z <<endl;
-      } else cerr<<"Can not open file (good_cascades) !\n";
-      out.close();
-   }
-
-   /*** create some histograms ***/
-   TH1F *hp=new TH1F("hp","Angular Resolution",30,-30.,30.); //phi resolution 
-   hp->SetXTitle("(mrad)"); hp->SetFillColor(2);
-   TH1F *hl=new TH1F("hl","Lambda Resolution",30,-30,30);
-   hl->SetXTitle("(mrad)"); hl->SetFillColor(1); hl->SetFillStyle(3013); 
-   TH1F *hpt=new TH1F("hpt","Relative Pt Resolution",30,-10.,10.); 
-   hpt->SetXTitle("(%)"); hpt->SetFillColor(2); 
-
-   TH1F *hx=new TH1F("hx","Position Resolution (X,Y)",30,-3.,3.); //x res. 
-   hx->SetXTitle("(mm)"); hx->SetFillColor(6);
-   TH1F *hy=new TH1F("hy","Position Resolution (Y)",30,-3.,3.);   //y res
-   hy->SetXTitle("(mm)"); hy->SetFillColor(1); hy->SetFillStyle(3013);
-   TH1F *hz=new TH1F("hz","Position Resolution (Z)",30,-3.,3.);   //z res. 
-   hz->SetXTitle("(mm)"); hz->SetFillColor(6);
-
-   Double_t pmin=0.2, pmax=4.2; Int_t nchan=20;
-   TH1F *hgood=new TH1F("hgood","Good Cascades",nchan,pmin,pmax);    
-   TH1F *hfound=new TH1F("hfound","Found Cascades",nchan,pmin,pmax);
-   TH1F *hfake=new TH1F("hfake","Fake Cascades",nchan,pmin,pmax);
-   TH1F *hg=new TH1F("hg","Efficiency for Good Cascades",nchan,pmin,pmax);
-   hg->SetLineColor(4); hg->SetLineWidth(2);
-   TH1F *hf=new TH1F("hf","Probability of Fake Cascades",nchan,pmin,pmax);
-   hf->SetFillColor(1); hf->SetFillStyle(3013); hf->SetLineWidth(2);
-
-   Double_t mmin=cascadeMass-cascadeWindow, mmax=cascadeMass+cascadeWindow;
-   TH1F *cs =new TH1F("cs","Cascade Effective Mass",40, mmin, mmax);
-   cs->SetXTitle("(GeV)"); cs->SetFillColor(6);
-
-   Double_t pxg=0.,pyg=0.,ptg=0.;
-   Int_t nlab=-1, plab=-1, blab=-1;
-   Int_t i;
-   for (i=0; i<nentr; i++) {
-       AliCascadeVertex *cascade=(AliCascadeVertex*)carray.UncheckedAt(i);
-       cascade->GetV0labels(nlab,plab); 
-       nlab=TMath::Abs(nlab); plab=TMath::Abs(plab);
-       blab=TMath::Abs(cascade->GetBachelorLabel());
-
-       cascade->ChangeMassHypothesis(code);
-
-       Double_t mass=cascade->GetEffMass();
-       cs->Fill(mass);
-
-       if (TMath::Abs(mass-cascadeMass)>cascadeWidth) continue;
-
-       Int_t j;
-       for (j=0; j<ngood; j++) {
-          if (gc[j].code != cascade->GetPdgCode()) continue;
-          if (gc[j].nlab == nlab)
-          if (gc[j].plab == plab)
-          if (gc[j].blab == blab) break;
-       }
-
-       Double_t px,py,pz; cascade->GetPxPyPz(px,py,pz);
-       Double_t pt=TMath::Sqrt(px*px+py*py);
-
-       if (j==ngood) {
-          hfake->Fill(pt);
-          cerr<<"Fake cascade: ("<<nlab<<","<<plab<<","<<blab<<")\n";
-          continue;
-       }
-
-       pxg=gc[j].px; pyg=gc[j].py; ptg=TMath::Sqrt(pxg*pxg+pyg*pyg);
-       Double_t phig=TMath::ATan2(pyg,pxg), phi=TMath::ATan2(py,px);
-       Double_t lamg=TMath::ATan2(gc[j].pz,ptg), lam=TMath::ATan2(pz,pt);
-       hp->Fill((phi - phig)*1000.);
-       hl->Fill((lam - lamg)*1000.);
-       hpt->Fill((1/pt - 1/ptg)/(1/ptg)*100.);
-
-       Double_t x,y,z; cascade->GetXYZ(x,y,z);
-       hx->Fill((x-gc[j].x)*10);
-       hy->Fill((y-gc[j].y)*10);
-       hz->Fill((z-gc[j].z)*10);
-
-       hfound->Fill(ptg);
-       gc[j].nlab=-1;
-
-   }
-   for (i=0; i<ngood; i++) {
-      if (gc[i].code != code) continue;
-      pxg=gc[i].px; pyg=gc[i].py; ptg=TMath::Sqrt(pxg*pxg+pyg*pyg);
-      hgood->Fill(ptg);
-      nlab=gc[i].nlab; plab=gc[i].plab; blab=gc[i].blab;
-      if (nlab < 0) continue;
-     cerr<<"Cascade ("<<nlab<<','<<plab<<","<<blab<<") has not been found !\n";
-   }
-
-   carray.Delete();
-
-   Stat_t ng=hgood->GetEntries();
-   Stat_t nf=hfound->GetEntries();
-
-   cerr<<"Number of found cascades: "<<nentr<<" ("<<nf<<" in the peak)\n";
-   cerr<<"Number of good cascades: "<<ng<<endl;
-
-   if (ng!=0) 
-      cerr<<"Integral efficiency is about "<<nf/ng*100.<<" %\n";
-
-   gStyle->SetOptStat(111110);
-   gStyle->SetOptFit(1);
-
-   TCanvas *c1=new TCanvas("c1","",0,0,580,610);
-   c1->Divide(2,2);
-
-   c1->cd(1);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10); 
-   //hp->Fit("gaus");
-   hp->Draw();
-   hl->Draw("same"); c1->cd();
-
-   c1->cd(2);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10);
-   //hpt->Fit("gaus"); c1->cd();
-   hpt->Draw(); c1->cd();
-
-   c1->cd(3);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10); 
-   //hx->Fit("gaus"); 
-   hx->Draw(); 
-   hy->Draw("same"); c1->cd();
-
-   c1->cd(4);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10);
-   //hz->Fit("gaus");
-   hz->Draw();
-
-
-   TCanvas *c2=new TCanvas("c2","",600,0,580,610);
-   c2->Divide(1,2);
-
-   c2->cd(1);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10);
-   hfound->Sumw2(); hgood->Sumw2(); hfake->Sumw2();
-   hg->Divide(hfound,hgood,1,1.,"b");
-   hf->Divide(hfake,hgood,1,1.,"b");
-   hg->SetMaximum(1.4);
-   hg->SetYTitle("Cascade reconstruction efficiency");
-   hg->SetXTitle("Pt (GeV/c)");
-   hg->Draw();
-
-   TLine *line1 = new TLine(pmin,1.0,pmax,1.0); line1->SetLineStyle(4);
-   line1->Draw("same");
-   TLine *line2 = new TLine(pmin,0.9,pmax,0.9); line2->SetLineStyle(4);
-   line2->Draw("same");
-
-   hf->SetFillColor(1);
-   hf->SetFillStyle(3013);
-   hf->SetLineColor(2);
-   hf->SetLineWidth(2);
-   hf->Draw("histsame");
-   TText *text = new TText(0.461176,0.248448,"Fake cascades");
-   text->SetTextSize(0.05);
-   text->Draw();
-   text = new TText(0.453919,1.11408,"Good cascades");
-   text->SetTextSize(0.05);
-   text->Draw();
-
-
-   c2->cd(2);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10);
-   cs->SetXTitle("(GeV/c)"); 
-   //cs->Fit("gaus","","",cascadeMass-cascadeWidth,cascadeMass+cascadeWidth);
-   cs->Draw();
-   Double_t max=cs->GetMaximum();
-   TLine *line3 = 
-      new TLine(cascadeMass-cascadeWidth,0.,cascadeMass-cascadeWidth,max);
-   line3->Draw("same");
-   TLine *line4 = 
-      new TLine(cascadeMass+cascadeWidth,0.,cascadeMass+cascadeWidth,max);
-   line4->Draw("same");
-
-   timer.Stop(); timer.Print();
-
-   return 0;
-}
-
-
-
-Int_t good_cascades(GoodCascade *gc, Int_t max) {
-   Int_t nc=0;
-   /*** Get information about the cuts ***/
-   Double_t r2min=0.9*0.9;
-   Double_t r2max=2.9*2.9;
-
-   /*** Get labels of the "good" tracks ***/
-   Double_t dd; Int_t id, label[15000], ngt=0;
-   ifstream in("good_tracks_its");
-   if (!in) {
-     cerr<<"Can't open the file good_tracks_its \n";
-     return nc;
-   }
-   while (in>>label[ngt]>>id>>dd>>dd>>dd>>dd>>dd>>dd) {
-     ngt++;
-     if (ngt>=15000) {
-       cerr<<"Too many good ITS tracks !\n";
-       return nc;
-     }
-   }   
-   if (!in.eof()) {
-      cerr<<"Read error (good_tracks_its) !\n";
-      return nc;
-   }
-
-   /*** Get an access to the kinematics ***/
-   if (gAlice) {delete gAlice; gAlice=0;}
-
-   TFile *file=TFile::Open("galice.root");
-   if (!file->IsOpen()) {cerr<<"Can't open galice.root !\n"; exit(4);}
-   if (!(gAlice=(AliRun*)file->Get("gAlice"))) {
-     cerr<<"gAlice has not been found on galice.root !\n";
-     exit(5);
-   }
-
-   Int_t np=gAlice->GetEvent(0);
-   while (np--) {
-      cerr<<np<<'\r';
-      TParticle *cp=gAlice->Particle(np);
-
-      /*** only these cascades are "good" ***/
-      Int_t code=cp->GetPdgCode();
-      if (code!=kXiMinus)    if (code!=kXiPlusBar)
-      if (code!=kOmegaMinus) if (code!=kOmegaPlusBar) continue; 
-
-      /*** daughter tracks must be "good" ***/
-      Int_t v0lab=cp->GetFirstDaughter(), blab=cp->GetLastDaughter();
-      if (v0lab==blab) continue;
-      if (v0lab<0) continue;
-      if (blab<0) continue;
-
-      TParticle *p0=gAlice->Particle(v0lab);
-      TParticle *bp=gAlice->Particle(blab);
-      if ((p0->GetPdgCode()!=kLambda0) && (p0->GetPdgCode()!=kLambda0Bar)) {
-         TParticle *p=p0; p0=bp; bp=p;
-         Int_t i=v0lab; v0lab=blab; blab=i;         
-         if ((p0->GetPdgCode()!=kLambda0) && (p0->GetPdgCode()!=kLambda0Bar))
-                                                                   continue;
-      }
-
-      /** is the bachelor "good" ? **/
-      Int_t i;
-      for (i=0; i<ngt; i++) if (label[i]==blab) break;
-      if (i==ngt) continue; 
-
-      /** is the V0 "good" ? **/
-      Int_t plab=p0->GetFirstDaughter(), nlab=p0->GetLastDaughter();
-      if (nlab==plab) continue;
-      if (nlab<0) continue;
-      if (plab<0) continue;
-
-      for (i=0; i<ngt; i++) if (label[i]==nlab) break;
-      if (i==ngt) continue;
-      for (i=0; i<ngt; i++) if (label[i]==plab) break;
-      if (i==ngt) continue;
-
-      /*** fiducial volume ***/
-      Double_t x=bp->Vx(), y=bp->Vy(), r2=x*x+y*y; //bachelor
-      if (r2<r2min) continue;
-      if (r2>r2max) continue;
-      TParticle *pp=gAlice->Particle(plab);
-      x=pp->Vx(); y=pp->Vy(); r2=x*x+y*y;                      //V0
-      if (r2<r2min) continue;
-      if (r2>r2max) continue;
-
-      if (gAlice->Particle(plab)->GetPDG()->Charge() < 0.) {
-         i=plab; plab=nlab; nlab=i;
-      }
-
-      gc[nc].code=code;
-      gc[nc].plab=plab;   gc[nc].nlab=nlab; gc[nc].blab=blab;
-      gc[nc].px=cp->Px(); gc[nc].py=cp->Py(); gc[nc].pz=cp->Pz();
-      gc[nc].x=bp->Vx(); gc[nc].y=bp->Vy(); gc[nc].z=bp->Vz();
-      nc++;
-
-   }
-
-
-   return nc;
-}
diff --git a/ITS/oldmacros/AliCascadeFindVertices.C b/ITS/oldmacros/AliCascadeFindVertices.C
deleted file mode 100644 (file)
index 44eb584..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-#ifndef __CINT__
-  #include <iostream.h>
-  #include "AliCascadeVertexer.h"
-  #include "TFile.h"
-  #include "TStopwatch.h"
-#endif
-
-Int_t AliCascadeFindVertices() {
-   cerr<<"Looking for cascade vertices...\n";
-
-   TFile *out=TFile::Open("AliCascadeVertices.root","new");
-   if (!out->IsOpen()) {
-      cerr<<"Delete old AliCascadeVertices.root !\n"; return 1;
-   }
-   TFile *in=TFile::Open("AliITStracksV2.root");
-   if (!in->IsOpen()) {cerr<<"Can't open AliITStracksV2.root !\n"; return 2;}
-
-   TFile *file=TFile::Open("AliV0vertices.root");
-   if (!file->IsOpen()) {
-      cerr<<"Can't open AliV0vertices.root !\n";return 3;
-   }
-   Double_t cuts[]={33.,  // max. allowed chi2
-                    0.015,// min. allowed V0 impact parameter 
-                    0.05, // window around the Lambda mass 
-                    0.015,// min. allowed track impact parameter 
-                    0.060,// max. allowed DCA between a V0 and a track
-                    0.997,// max. allowed cosine of the cascade pointing angle
-                    0.9,  // min. radius of the fiducial volume
-                    2.9   // max. radius of the fiducial volume
-                   };
-   TStopwatch timer;
-   AliCascadeVertexer *vertexer=new AliCascadeVertexer(cuts);
-   Int_t rc=vertexer->V0sTracks2CascadeVertices(in,out);
-   delete vertexer;
-   timer.Stop(); timer.Print();
-    
-   file->Close();
-   in->Close();
-   out->Close();
-
-   return rc;
-}
diff --git a/ITS/oldmacros/AliITSComparisonV1.C b/ITS/oldmacros/AliITSComparisonV1.C
deleted file mode 100644 (file)
index e7166c4..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-#include "iostream.h"
-
-
-  void AliITSComparisonV1(Int_t evNumber1=0,Int_t evNumber2=0) {
-
-  const char *filename="itstracks.root";
-  
-  ///////////////// Dynamically link some shared libs ////////////////////////////////
-  
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-  } else {
-    delete gAlice;
-    gAlice=0;
-  }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-   if (!file) file = new TFile(filename);
-   
-   ifstream in("itsgood_tracks"); 
-//
-//   Loop over events 
-//
-
-   char tname[30];
-
-     
-  struct GoodTrack {
-   Int_t fEventN;  
-    Int_t lab,code;
-    Float_t px,py,pz,x,y,z,pxg,pyg,pzg,ptg;
-    Bool_t flag;
-  };   
-    Int_t i;
-  GoodTrack gt[50000]; 
-  Int_t ngood=0;  
-  cerr<<"Reading itsgood tracks...\n";
-  while (in>>gt[ngood].fEventN>>gt[ngood].lab>>gt[ngood].code
-         >>gt[ngood].px >>gt[ngood].py>>gt[ngood].pz
-         >>gt[ngood].x  >>gt[ngood].y >>gt[ngood].z
-         >>gt[ngood].pxg  >>gt[ngood].pyg >>gt[ngood].pzg
-         >>gt[ngood].ptg >>gt[ngood].flag) {
-    ngood++;
-    cerr<<ngood<<'\r';
-    if (ngood==50000) {
-      cerr<<"Too many good tracks !\n";
-      break;
-    }
-  }
-  if (!in.eof()) cerr<<"Read error (itsgood_tracks) !\n";
-   ofstream out1 ("AliITSTrag.out");
-  Int_t countpos=0,countneg=0;
-
-   
-  //for (i=0; i<ngood; i++) out1 << gt[i].ptg << "\n";
-  for (i=0; i<ngood; i++) {
-    out1 << gt[i].ptg << "\n";
-    Int_t codpar=gt[i].code;
-    if(codpar==2212 || codpar==-11 || codpar==-13 || codpar==211 || codpar==321 || codpar==3222
-        || codpar==213 || codpar==323 || codpar==10323 || codpar==3224 || codpar==2224 || codpar==2214
-        || codpar==-1114 || codpar==-3112 || codpar==-3312 || codpar==3224 || codpar==-3114 || codpar==-3314
-        || codpar==411 || codpar==431 || codpar==413 || codpar==433 || codpar==-15 || codpar==4232
-        || codpar==4222 || codpar==4322 || codpar==4422 || codpar==4412 || codpar==4432 || codpar==4224 
-        ||codpar==4214 || codpar==4324 || codpar==4424 || codpar==4414 || codpar==4434 || codpar==4444)
-    countpos++;
-        if(codpar==-2212 || codpar==11 || codpar==13 || codpar==-211 || codpar==-321 || codpar==3112
-        || codpar==-213 || codpar==-323 || codpar==-10323 || codpar==3114 || codpar==1114 || codpar==-2224
-        || codpar==-2214 || codpar==33112 || codpar==-3222 || codpar==3114 || codpar==3314 || codpar==3334 
-        || codpar==-3224 || codpar==-411 || codpar==-431 || codpar==-413 || codpar==-433 || codpar==15 
-        || codpar==-4422 || codpar==-4432 || codpar==-4214 || codpar==-4324 || codpar==-4424 || codpar==-4434 
-        || codpar==-444)
-        countneg++;               
-  }
-  out1.close();
-   ofstream out ("AliITSTra.out"); 
-///   definition of nm of good track for each event
-   TVector ntrackevtpc(evNumber2-evNumber1 +1);
-   Int_t nchange=-1;
-   Int_t nmev=-100;
-   
-   
-    Int_t i;
-    for( i =0; i<ngood ; i++){ 
-    if(gt[i].fEventN != nmev ){
-    nmev=gt[i].fEventN;
-    nchange++; 
-    }
-    if(nmev == gt[i].fEventN) ntrackevtpc(nchange)++;
-    }  
-//////////////////////////////////////////////////////////////     
-    
-   for (Int_t nev=evNumber1; nev<= evNumber2; nev++) {
-
-
-   sprintf(tname,"TreeT%d",nev);
-   TTree *tracktree=(TTree*)file->Get(tname);
-   TBranch *tbranch=tracktree->GetBranch("ITStracks");
-   cout<<" nev = "<<nev<<"\n";   
-       //cout<<" open the file \n"; 
-       
-   Int_t nentr=tracktree->GetEntries();
-
-   TObjArray tarray(nentr);
-  // AliITSIOTrack *iotrack=0;
-   printf("nentr %d\n",nentr);
-       
-   for (Int_t i=0; i<nentr; i++) {
-      AliITSIOTrack *iotrack=new AliITSIOTrack;
-      // tarray.AddAt(new AliITSIOTrack,i);
-      // iotrack=(AliITSiotrack*)tarray.UncheckedAt(i);
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-       tarray.AddLast(iotrack);
-   }
-       //file->Close();                 
-       
-         AliITSIOTrack *iotrack;
-   for (Int_t i=0; i<nentr; i++) {
-     AliITSIOTrack *iotrack=new AliITSIOTrack;         
-        iotrack=(AliITSIOTrack*)tarray.UncheckedAt(i);
-        if(!iotrack) continue;
-     Int_t labITS=iotrack->GetLabel();
-     Int_t labTPC=iotrack->GetTPCLabel();   
-         Double_t phistate=iotrack->GetStatePhi();
-         Double_t tgl=iotrack->GetStateTgl();  
-         Double_t Zstate=iotrack->GetStateZ();
-         Double_t Dr=iotrack->GetStateD();               
-         Double_t C=iotrack->GetStateC();
-         Double_t px=iotrack->GetPx();
-         Double_t py=iotrack->GetPy();   
-         Double_t pz=iotrack->GetPz(); 
-         Double_t pt=TMath::Sqrt(px*px+py*py);
-         Int_t c = iotrack->GetCharge(); 
-         Double_t x=iotrack->GetX();
-         Double_t y=iotrack->GetY();
-         Double_t z= iotrack->GetZ();
-         Double_t Dz=iotrack->GetDz(); 
-
-         
-     // cout<<" track label = "<<label<<"\n";
-     // cout<<" phi z D tanl C = "<<phistate<<" "<<Zstate<<" "<<Dr<<" "<<tgl<<" "<<C<<"\n";      
-         
-  //  Int_t ilab=TMath::Abs(iotrack->GetLabel());
-    Int_t flaglab=0;   
-    Int_t iii=0;
-   Double_t ptg=0.,pxg=0.,pyg=0.,pzg=0.;
-       Double_t xo=0., yo=0., zo=0.;    
-
-    Int_t mingood=0, maxgood=0, jj=0;
-    if(nev==evNumber1) mingood=0;
-    else
-    {for(jj=evNumber1; jj<nev; jj++) mingood += ntrackevtpc(jj);}
-     for(jj=evNumber1; jj<=nev; jj++) maxgood+= ntrackevtpc(jj);    
-
-   Int_t ilab=TMath::Abs(labTPC);
-   // for (iii=0;iii<ngood;iii++) {
-   for(iii=mingood; iii<maxgood; iii++){
-        //cout<<" ilab, gt[iii].lab = "<<ilab<<" "<<gt[iii].lab<<"\n"; getchar();
-      if (ilab==gt[iii].lab) { 
-       flaglab=1;
-       ptg=gt[iii].ptg; 
-       pxg=gt[iii].pxg;
-       pyg=gt[iii].pyg;
-       pzg=gt[iii].pzg;
-       xo=gt[iii].x;
-       yo=gt[iii].y;
-       zo=gt[iii].z;                   
-       break;
-      }
-    }   
-
-    if (!flaglab) continue;  
-    //cout<<" j =  " <<j<<"\n";  getchar();                                        
-   TVector dataOut(10);
-    Int_t kkk=0;
-    
-    dataOut(kkk) = ptg; kkk++; dataOut(kkk)=labITS; kkk++; dataOut(kkk)=labTPC; kkk++; 
-  
-      ///////////////////////////////
-      Double_t difpt= (pt-ptg)/ptg*100.;
-      //cout<<" difpt = "<<difpt<<"\n"; getchar();                                     
-      dataOut(kkk)=difpt; kkk++;                                             
-      Double_t lambdag=TMath::ATan(pzg/ptg);
-      Double_t   lam=TMath::ATan(tgl);      
-      Double_t diflam = (lam - lambdag)*1000.;
-      dataOut(kkk) = diflam; kkk++;                                        
-      Double_t phig=TMath::ATan2(pyg,pxg);  if(phig<0) phig=2.*TMath::Pi()+phig;       
-     // Double_t phi=phivertex;
-       Double_t phi=TMath::ACos(px/pt);
-     Double_t duepi=2.*TMath::Pi();     
-     if(phi>duepi) phi-=duepi;
-     if(phi<0.) phi+=duepi;      
-      Double_t signC=0.; 
-      if(c>0) signC=1.; else signC=-1.;
-         Double_t Dtot= TMath::Sqrt(Dr*Dr+Dz*Dz);       
-      Double_t difphi = (phi - phig)*1000.;
-      dataOut(kkk)=difphi; kkk++;
-      dataOut(kkk)=Dtot*1.e4; kkk++;
-      dataOut(kkk)=Dr*1.e4; kkk++;
-      dataOut(kkk)=Dz*1.e4; kkk++;
-      dataOut(kkk)=signC; kkk++; 
-      Int_t r;
-      for (r=0; r<10; r++) { out<<dataOut(r)<<" ";}
-      out<<"\n";
-      kkk=0;               
-
-    delete iotrack;             
-   }  
-  //out.close(); 
-   }   // event loop 
-  out.close();
-  in.close();   
-  file->Close();      
-}
-
diff --git a/ITS/oldmacros/AliITSComparisonV2.C b/ITS/oldmacros/AliITSComparisonV2.C
deleted file mode 100644 (file)
index 04fe342..0000000
+++ /dev/null
@@ -1,324 +0,0 @@
-#ifndef __CINT__
-  #include <iostream.h>
-  #include <fstream.h>
-
-  #include "AliRun.h"
-  #include "AliITS.h"
-  #include "AliITSgeom.h"
-  #include "AliITStrackerV2.h"
-  #include "AliITStrackV2.h"
-  #include "AliITSclusterV2.h"
-
-  #include "TFile.h"
-  #include "TTree.h"
-  #include "TH1.h"
-  #include "TObjArray.h"
-  #include "TStyle.h"
-  #include "TCanvas.h"
-  #include "TLine.h"
-  #include "TText.h"
-  #include "TParticle.h"
-#endif
-
-struct GoodTrackITS {
-  Int_t lab;
-  Int_t code;
-  Float_t px,py,pz;
-  Float_t x,y,z;
-};
-
-Int_t AliITSComparisonV2(Int_t event=0) {
-   cerr<<"Doing comparison...\n";
-
-   const Int_t MAX=15000;
-   Int_t good_tracks_its(GoodTrackITS *gt, const Int_t max, const Int_t event);
-
-   Int_t nentr=0; TObjArray tarray(2000);
-   {/* Load tracks */ 
-     TFile *tf=TFile::Open("AliITStracksV2.root");
-     if (!tf->IsOpen()) {cerr<<"Can't open AliITStracksV2.root !\n"; return 3;}
-     char tname[100]; sprintf(tname,"TreeT_ITS_%d",event);
-     TTree *tracktree=(TTree*)tf->Get(tname);
-     if (!tracktree) {cerr<<"Can't get a tree with ITS tracks !\n"; return 4;}
-     TBranch *tbranch=tracktree->GetBranch("tracks");
-     nentr=(Int_t)tracktree->GetEntries();
-     for (Int_t i=0; i<nentr; i++) {
-        AliITStrackV2 *iotrack=new AliITStrackV2;
-        tbranch->SetAddress(&iotrack);
-        tracktree->GetEvent(i);
-        tarray.AddLast(iotrack);
-        /*if (itsLabel != 1234) continue;
-        Int_t nc=iotrack->GetNumberOfClusters();
-        for (Int_t k=0; k<nc; k++) {
-          Int_t index=iotrack->GetClusterIndex(k);
-          AliITSclusterV2 *c=tracker.GetCluster(index);
-          cout<<c->GetLabel(0)<<' '<<c->GetLabel(1)<<' '<<c->GetLabel(2)<<endl;
-       }*/
-     }
-     delete tracktree; //Thanks to Mariana Bondila
-     tf->Close();
-   }
-
-   /* Generate a list of "good" tracks */
-   GoodTrackITS gt[MAX];
-   Int_t ngood=0;
-   ifstream in("good_tracks_its");
-   if (in) {
-      cerr<<"Reading good tracks...\n";
-      while (in>>gt[ngood].lab>>gt[ngood].code>>
-                 gt[ngood].px>>gt[ngood].py>>gt[ngood].pz>>
-                 gt[ngood].x >>gt[ngood].y >>gt[ngood].z) {
-         ngood++;
-         cerr<<ngood<<'\r';
-         if (ngood==MAX) {
-            cerr<<"Too many good tracks !\n";
-            break;
-         }
-      }
-      if (!in.eof()) cerr<<"Read error (good_tracks_its) !\n";
-   } else {
-      cerr<<"Marking good tracks (this will take a while)...\n";
-      ngood=good_tracks_its(gt,MAX,event);
-      ofstream out("good_tracks_its");
-      if (out) {
-       for (Int_t ngd=0; ngd<ngood; ngd++)
-         out<<gt[ngd].lab<<' '<<gt[ngd].code<<' '
-             <<gt[ngd].px<<' '<<gt[ngd].py<<' '<<gt[ngd].pz<<' '
-             <<gt[ngd].x <<' '<<gt[ngd].y <<' '<<gt[ngd].z <<endl;
-      } else cerr<<"Can not open file (good_tracks_its) !\n";
-      out.close();
-   }
-   cerr<<"Number of good tracks : "<<ngood<<endl;
-
-   TH1F *hp=new TH1F("hp","PHI resolution",50,-20.,20.); hp->SetFillColor(4);
-   TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-20,20);hl->SetFillColor(4);
-   TH1F *hpt=new TH1F("hpt","Relative Pt resolution",30,-10.,10.); 
-   hpt->SetFillColor(2); 
-   TH1F *hmpt=new TH1F("hmpt","Transverse impact parameter",30,-300,300); 
-   hmpt->SetFillColor(6);
-   TH1F *hz=new TH1F("hz","Longitudinal impact parameter",30,-300,300); 
-   //hmpt->SetFillColor(6);
-
-   AliITStrackV2 *trk=(AliITStrackV2*)tarray.UncheckedAt(0);
-   Double_t pmin=0.1*(100/0.299792458/0.2/trk->GetConvConst());
-   Double_t pmax=6.0+pmin;
-
-   TH1F *hgood=new TH1F("hgood","Good tracks",30,pmin,pmax);    
-   TH1F *hfound=new TH1F("hfound","Found tracks",30,pmin,pmax);
-   TH1F *hfake=new TH1F("hfake","Fake tracks",30,pmin,pmax);
-   TH1F *hg=new TH1F("hg","",30,pmin,pmax); //efficiency for good tracks
-   hg->SetLineColor(4); hg->SetLineWidth(2);
-   TH1F *hf=new TH1F("hf","Efficiency for fake tracks",30,pmin,pmax);
-   hf->SetFillColor(1); hf->SetFillStyle(3013); hf->SetLineWidth(2);
-
-   TH1F *hptw=new TH1F("hptw","Weghted pt",30,pmax,pmin);
-
-   while (ngood--) {
-      Int_t lab=gt[ngood].lab, tlab=-1;
-      Double_t pxg=gt[ngood].px, pyg=gt[ngood].py, pzg=gt[ngood].pz;
-      Double_t ptg=TMath::Sqrt(pxg*pxg+pyg*pyg);
-
-      if (ptg<pmin) continue;
-
-      hgood->Fill(ptg);
-
-      AliITStrackV2 *track=0;
-      Int_t j;
-      for (j=0; j<nentr; j++) {
-          track=(AliITStrackV2*)tarray.UncheckedAt(j);
-          tlab=track->GetLabel();
-          if (lab==TMath::Abs(tlab)) break;
-      }
-      if (j==nentr) {
-       cerr<<"Track "<<lab<<" was not found !\n";
-        continue;
-      }
-      track->PropagateTo(3.,0.0028,65.19);
-      track->PropagateToVertex();
-
-      if (lab==tlab) hfound->Fill(ptg);
-      else { hfake->Fill(ptg); cerr<<lab<<" fake\n";}
-
-      Double_t xv,par[5]; track->GetExternalParameters(xv,par);
-      Float_t phi=TMath::ASin(par[2]) + track->GetAlpha();
-      if (phi<-TMath::Pi()) phi+=2*TMath::Pi();
-      if (phi>=TMath::Pi()) phi-=2*TMath::Pi();
-      Float_t lam=TMath::ATan(par[3]); 
-      Float_t pt_1=TMath::Abs(par[4]);
-
-      Double_t phig=TMath::ATan2(pyg,pxg);
-      hp->Fill((phi - phig)*1000.);
-
-      Double_t lamg=TMath::ATan2(pzg,ptg);
-      hl->Fill((lam - lamg)*1000.);
-
-      Double_t d=10000*track->GetD();
-      hmpt->Fill(d);
-
-      hptw->Fill(ptg,TMath::Abs(d));
-
-      Double_t z=10000*track->GetZ();
-      hz->Fill(z);
-
-//if (TMath::Abs(gt[ngood].code)==11 && ptg>4.)
-      hpt->Fill((pt_1 - 1/ptg)/(1/ptg)*100.);
-
-   }
-
-   Stat_t ng=hgood->GetEntries(); cerr<<"Good tracks "<<ng<<endl;
-   Stat_t nf=hfound->GetEntries();
-   if (ng!=0) 
-      cerr<<"Integral efficiency is about "<<nf/ng*100.<<" %\n";
-
-   gStyle->SetOptStat(111110);
-   gStyle->SetOptFit(1);
-
-   TCanvas *c1=new TCanvas("c1","",0,0,700,850);
-
-   TPad *p1=new TPad("p1","",0,0.3,.5,.6); p1->Draw();
-   p1->cd(); p1->SetFillColor(42); p1->SetFrameFillColor(10); 
-   hp->SetFillColor(4);  hp->SetXTitle("(mrad)"); hp->Fit("gaus"); c1->cd();
-
-   TPad *p2=new TPad("p2","",0.5,.3,1,.6); p2->Draw(); 
-   p2->cd(); p2->SetFillColor(42); p2->SetFrameFillColor(10);
-   hl->SetXTitle("(mrad)"); hl->Fit("gaus"); c1->cd();
-
-   TPad *p3=new TPad("p3","",0,0,0.5,0.3); p3->Draw();
-   p3->cd(); p3->SetFillColor(42); p3->SetFrameFillColor(10); 
-   hpt->SetXTitle("(%)"); hpt->Fit("gaus"); c1->cd();
-
-   TPad *p4=new TPad("p4","",0.5,0,1,0.3); p4->Draw();
-   p4->cd(); p4->SetFillColor(42); p4->SetFrameFillColor(10);
-   hmpt->SetXTitle("(micron)"); hmpt->Fit("gaus"); hz->Draw("same"); c1->cd();
-   //hfound->Sumw2();
-   //hptw->Sumw2(); 
-   //hg->SetMaximum(333);
-   //hg->SetYTitle("Impact Parameter Resolution (micron)");
-   //hg->SetXTitle("Pt (GeV/c)");
-   //hg->GetXaxis()->SetRange(0,10);
-   //hg->Divide(hptw,hfound,1,1.);
-   //hg->DrawCopy(); c1->cd();
-   
-
-   TPad *p5=new TPad("p5","",0,0.6,1,1); p5->Draw(); p5->cd(); 
-   p5->SetFillColor(41); p5->SetFrameFillColor(10);
-   hfound->Sumw2(); hgood->Sumw2(); hfake->Sumw2();
-   hg->Divide(hfound,hgood,1,1.,"b");
-   hf->Divide(hfake,hgood,1,1.,"b");
-   hg->SetMaximum(1.4);
-   hg->SetYTitle("Tracking efficiency");
-   hg->SetXTitle("Pt (GeV/c)");
-   hg->Draw();
-
-   TLine *line1 = new TLine(pmin,1.0,pmax,1.0); line1->SetLineStyle(4);
-   line1->Draw("same");
-   TLine *line2 = new TLine(pmin,0.9,pmax,0.9); line2->SetLineStyle(4);
-   line2->Draw("same");
-
-   hf->SetFillColor(1);
-   hf->SetFillStyle(3013);
-   hf->SetLineColor(2);
-   hf->SetLineWidth(2);
-   hf->Draw("histsame");
-   TText *text = new TText(0.461176,0.248448,"Fake tracks");
-   text->SetTextSize(0.05);
-   text->Draw();
-   text = new TText(0.453919,1.11408,"Good tracks");
-   text->SetTextSize(0.05);
-   text->Draw();
-
-   return 0;
-}
-
-Int_t good_tracks_its(GoodTrackITS *gt, const Int_t max, const Int_t event) {
-   if (gAlice) {delete gAlice; gAlice=0;}
-
-   TFile *file=TFile::Open("galice.root");
-   if (!file->IsOpen()) {cerr<<"Can't open galice.root !\n"; exit(4);}
-   if (!(gAlice=(AliRun*)file->Get("gAlice"))) {
-     cerr<<"gAlice have not been found on galice.root !\n";
-     exit(5);
-   }
-
-   Int_t np=gAlice->GetEvent(event);
-
-   Int_t *good=new Int_t[np];
-   Int_t k;
-   for (k=0; k<np; k++) good[k]=0;
-
-   AliITS *ITS=(AliITS*)gAlice->GetDetector("ITS");
-   if (!ITS) {
-      cerr<<"can't get ITS !\n"; exit(8);
-   }
-   AliITSgeom *geom=ITS->GetITSgeom();
-   if (!geom) {
-      cerr<<"can't get ITS geometry !\n"; exit(9);
-   }
-
-   TFile *cf=TFile::Open("AliITSclustersV2.root");
-   if (!cf->IsOpen()){
-      cerr<<"Can't open AliITSclustersV2.root !\n"; exit(6);
-   }
-   char cname[100]; sprintf(cname,"TreeC_ITS_%d",event);
-   TTree *cTree=(TTree*)cf->Get(cname);
-   if (!cTree) {
-      cerr<<"Can't get cTree !\n"; exit(7);
-   }
-   TBranch *branch=cTree->GetBranch("Clusters");
-   if (!branch) {
-      cerr<<"Can't get clusters branch !\n"; exit(8);
-   }
-   TClonesArray *clusters=new TClonesArray("AliITSclusterV2",10000);
-   branch->SetAddress(&clusters);
-
-   Int_t entr=(Int_t)cTree->GetEntries();
-   for (k=0; k<entr; k++) {
-     cTree->GetEvent(k);
-     Int_t ncl=clusters->GetEntriesFast(); if (ncl==0) continue;
-     Int_t lay,lad,det;  geom->GetModuleId(k,lay,lad,det);
-     if (lay<1 || lay>6) {
-       cerr<<"wrong layer !\n"; exit(10);
-     }
-     while (ncl--) {
-        AliITSclusterV2 *pnt=(AliITSclusterV2*)clusters->UncheckedAt(ncl);
-        Int_t l0=pnt->GetLabel(0);
-        Int_t l1=pnt->GetLabel(1);
-        Int_t l2=pnt->GetLabel(2);
-        Int_t mask=1<<(lay-1);
-        if (l0>=0) good[l0]|=mask; 
-        if (l1>=0) good[l1]|=mask; 
-        if (l2>=0) good[l2]|=mask;
-     }
-   }
-   clusters->Delete(); delete clusters;
-   delete cTree; //Thanks to Mariana Bondila
-   cf->Close();
-
-   ifstream in("good_tracks_tpc");
-   if (!in) {
-     cerr<<"can't get good_tracks_tpc !\n"; exit(11);
-   }
-   Int_t nt=0;
-   Double_t px,py,pz,x,y,z;
-   Int_t code,lab;
-   while (in>>lab>>code>>px>>py>>pz>>x>>y>>z) {
-      if (good[lab] != 0x3F) continue;
-      TParticle *p = (TParticle*)gAlice->Particle(lab);
-      gt[nt].lab=lab;
-      gt[nt].code=p->GetPdgCode();
-//**** px py pz - in global coordinate system
-      gt[nt].px=p->Px(); gt[nt].py=p->Py(); gt[nt].pz=p->Pz();
-      gt[nt].x=gt[nt].y=gt[nt].z=0.;
-      nt++;
-      if (nt==max) {cerr<<"Too many good tracks !\n"; break;}
-   }
-
-   delete[] good;
-
-   delete gAlice; gAlice=0;
-   file->Close();
-
-   return nt;
-}
-
-
diff --git a/ITS/oldmacros/AliITSDigits2Clusters.C b/ITS/oldmacros/AliITSDigits2Clusters.C
deleted file mode 100644 (file)
index 8dc5b6d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-void AliITSDigits2Clusters(const char *filename="galice.root"){
-    AliITSreconstruction *itsr = new AliITSreconstruction(filename);
-    itsr->Exec(); 
-    delete itsr;
-}
diff --git a/ITS/oldmacros/AliITSFindClusters.C b/ITS/oldmacros/AliITSFindClusters.C
deleted file mode 100644 (file)
index cc74a05..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-Int_t AliITSFindClusters() {
-
-  printf("FindClusters\n");
-
-  TFile *in=TFile::Open("galice.root","UPDATE");
-  if (!in->IsOpen()) {cerr<<"Can't open galice.root !\n"; return 2;}
-
-  in->ls();
-
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-     cerr<<"gAlice have not been found on galice.root !\n";
-     return 2;
-   }
-
-
-   gAlice->GetEvent(0);
-
-   AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS"); 
-   if (!ITS) {
-     cerr<<"ITSFindClusters.C : AliITS object not found on file\n";
-     return 3;
-   }
-   Int_t ver = ITS->IsVersion(); 
-   cerr<<"ITS version "<<ver<<" has been found !\n";
-
-    ITS->MakeTreeC();
-// Set the models for cluster finding
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-   // SPD
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig0  = ITS->DigitsAddress(0);
-   TClonesArray *recp0  = ITS->ClustersAddress(0);
-   AliITSClusterFinderSPD *rec0=new AliITSClusterFinderSPD(seg0,dig0,recp0);
-   ITS->SetReconstructionModel(0,rec0);
-   // test
-   printf("SPD dimensions %f %f \n",seg0->Dx(),seg0->Dz());
-   printf("SPD npixels %d %d \n",seg0->Npz(),seg0->Npx());
-
-
-   // SDD
-   AliITSDetType *iDetType=ITS->DetType(1);
-   AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->GetSegmentationModel();
-   if (!seg1) seg1 = new AliITSsegmentationSDD(geom);
-   AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-   if (!res1) res1=new AliITSresponseSDD();
-   Float_t baseline,noise;
-   res1->GetNoiseParam(noise,baseline);
-   Float_t noise_after_el = res1->GetNoiseAfterElectronics();
-   Float_t thres = baseline;
-   thres += (4.*noise_after_el);  // TB // (4.*noise_after_el);
-   printf("thres %f\n",thres);
-//   res1->Print();
-   TClonesArray *dig1  = ITS->DigitsAddress(1);
-   TClonesArray *recp1  = ITS->ClustersAddress(1);
-   AliITSClusterFinderSDD *rec1=new AliITSClusterFinderSDD(seg1,res1,dig1,recp1);
-   rec1->SetCutAmplitude((int)thres);
-   ITS->SetReconstructionModel(1,rec1);
-
-
-   // SSD
-   AliITSDetType *iDetType=ITS->DetType(2);
-   AliITSsegmentationSSD *seg2=(AliITSsegmentationSSD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig2  = ITS->DigitsAddress(2);
-   AliITSClusterFinderSSD *rec2=new AliITSClusterFinderSSD(seg2,dig2);
-   ITS->SetReconstructionModel(2,rec2);
-   // test
-   printf("SSD dimensions %f %f \n",seg2->Dx(),seg2->Dz());
-   printf("SSD nstrips %d %d \n",seg2->Npz(),seg2->Npx());
-
-
-
-   if(!gAlice->TreeR()) gAlice->MakeTree("R");
-   //make branch
-   ITS->MakeBranch("R");
-
-   TStopwatch timer;
-
-   cerr<<"Looking for clusters...\n";
-   timer.Start();
-   ITS->DigitsToRecPoints(0,0,"All");
-   timer.Stop(); timer.Print();
-
-   delete gAlice; gAlice=0;
-
-   in->Close();
-
-   return 0;
-}
diff --git a/ITS/oldmacros/AliITSFindClustersDubna.C b/ITS/oldmacros/AliITSFindClustersDubna.C
deleted file mode 100644 (file)
index 4380cb9..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-Int_t AliITSFindClustersDubna() {
-
-  printf("FindClusters\n");
-
-  TFile *in=TFile::Open("galice.root","UPDATE");
-  if (!in->IsOpen()) {cerr<<"Can't open galice.root !\n"; return 2;}
-
-  in->ls();
-
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-     cerr<<"gAlice have not been found on galice.root !\n";
-     return 2;
-   }
-
-
-   gAlice->GetEvent(0);
-
-   AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS"); 
-   if (!ITS) {
-     cerr<<"ITSFindClusters.C : AliITS object not found on file\n";
-     return 3;
-   }
-   Int_t ver = ITS->IsVersion(); 
-   cerr<<"ITS version "<<ver<<" has been found !\n";
-
-   ITS->MakeTreeC();
-// Set the models for cluster finding
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-   // SPD
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig0  = ITS->DigitsAddress(0);
-   TClonesArray *recp0  = ITS->ClustersAddress(0);
-   AliITSClusterFinderSPDdubna *rec0=new AliITSClusterFinderSPDdubna(seg0,dig0,recp0);
-   ITS->SetReconstructionModel(0,rec0);
-
-   // SDD
-   AliITSDetType *iDetType=ITS->DetType(1);
-   AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->GetSegmentationModel();
-   if (!seg1) seg1 = new AliITSsegmentationSDD(geom);
-   AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-   if (!res1) res1=new AliITSresponseSDD();
-   Float_t baseline,noise;
-   res1->GetNoiseParam(noise,baseline);
-   Float_t noise_after_el = res1->GetNoiseAfterElectronics();
-   Float_t thres = baseline;
-   thres += (4.*noise_after_el);  // TB // (4.*noise_after_el);
-   printf("thres %f\n",thres);
-   res1->Print();
-   TClonesArray *dig1  = ITS->DigitsAddress(1);
-   TClonesArray *recp1  = ITS->ClustersAddress(1);
-   AliITSClusterFinderSDD *rec1=new AliITSClusterFinderSDD(seg1,res1,dig1,recp1);
-   rec1->SetCutAmplitude((int)thres);
-   ITS->SetReconstructionModel(1,rec1);
-
-
-   // SSD
-   AliITSDetType *iDetType=ITS->DetType(2);
-   AliITSsegmentationSSD *seg2=(AliITSsegmentationSSD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig2  = ITS->DigitsAddress(2);
-   AliITSClusterFinderSSD *rec2=new AliITSClusterFinderSSD(seg2,dig2);
-   ITS->SetReconstructionModel(2,rec2);
-   // test
-   printf("SSD dimensions %f %f \n",seg2->Dx(),seg2->Dz());
-   printf("SSD nstrips %d %d \n",seg2->Npz(),seg2->Npx());
-
-
-
-   if(!gAlice->TreeR()) gAlice->MakeTree("R");
-   //make branch
-   ITS->MakeBranch("R");
-
-   TStopwatch timer;
-
-   switch (ver) {
-   case 5:
-      cerr<<"Looking for clusters...\n";
-      {
-       timer.Start();
-       ITS->DigitsToRecPoints(0,0,"All");
-      }
-      break;
-   default:
-      cerr<<"Invalid ITS version !\n";
-      return 5;
-   }
-
-   timer.Stop(); timer.Print();
-
-   delete rec0;
-   delete rec1;
-   delete rec2;
-
-
-   delete gAlice; gAlice=0;
-
-   in->Close();
-
-   return 0;
-}
diff --git a/ITS/oldmacros/AliITSFindClustersV2.C b/ITS/oldmacros/AliITSFindClustersV2.C
deleted file mode 100644 (file)
index 2842449..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-#ifndef __CINT__
-  #include <iostream.h>
-
-  #include "AliRun.h"
-  #include "AliITS.h"
-  #include "AliITSgeom.h"
-  #include "AliITSRecPoint.h"
-  #include "AliITSclusterV2.h"
-
-  #include "TFile.h"
-  #include "TTree.h"
-  #include "TParticle.h"
-#endif
-
-Int_t AliITSFindClustersV2() {
-/****************************************************************
- *  This macro converts AliITSRecPoint(s) to AliITSclusterV2(s) *
- ****************************************************************/
-   cerr<<"AliITSRecPoint(s) -> AliITSclusterV2(s)...\n";
-
-   if (gAlice) {delete gAlice; gAlice=0;}
-
-   TFile *in=TFile::Open("galice.root");
-   if (!in->IsOpen()) { cerr<<"Can't open galice.root !\n"; return 1; }
-
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-      cerr<<"Can't find gAlice !\n";
-      return 2;
-   }
-   gAlice->GetEvent(0);
-
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   if (!ITS) { cerr<<"Can't find the ITS !\n"; return 3; }
-   AliITSgeom *geom=ITS->GetITSgeom();
-   TFile *out=TFile::Open("AliITSclustersV2.root","new");
-   if (!out->IsOpen()) {
-      cerr<<"Delete old AliITSclustersV2.root !\n"; 
-      return 4;
-   }
-   geom->Write();
-
-   TClonesArray *clusters=new TClonesArray("AliITSclusterV2",10000);
-   TTree *cTree=new TTree("TreeC_ITS_0","ITS clusters");
-   cTree->Branch("Clusters",&clusters);
-
-   TTree *pTree=gAlice->TreeR();
-   if (!pTree) { cerr<<"Can't get TreeR !\n"; return 5; }
-   TBranch *branch=pTree->GetBranch("ITSRecPoints");
-   if (!branch) { cerr<<"Can't get ITSRecPoints branch !\n"; return 6; }
-   TClonesArray *points=new TClonesArray("AliITSRecPoint",10000);
-   branch->SetAddress(&points);
-
-   TClonesArray &cl=*clusters;
-   Int_t nclusters=0;
-   Int_t nentr=(Int_t)pTree->GetEntries();
-
-   cerr<<"Number of entries: "<<nentr<<endl;
-
-   Float_t lp[5]; Int_t lab[6]; //Why can't it be inside a loop ?
-
-   for (Int_t i=0; i<nentr; i++) {
-       points->Clear();
-       pTree->GetEvent(i);
-       Int_t ncl=points->GetEntriesFast(); if (ncl==0){cTree->Fill();continue;}
-       Int_t lay,lad,det; geom->GetModuleId(i,lay,lad,det);
-       Float_t x,y,zshift; geom->GetTrans(lay,lad,det,x,y,zshift); 
-       Double_t rot[9];    geom->GetRotMatrix(lay,lad,det,rot);
-       Double_t yshift = x*rot[0] + y*rot[1];
-       Int_t ndet=(lad-1)*geom->GetNdetectors(lay) + (det-1);
-       nclusters+=ncl;
-
-       Float_t kmip=1; // ADC->mip normalization factor for the SDD and SSD 
-       if(lay==4 || lay==3){kmip=280.;};
-       if(lay==6 || lay==5){kmip=38.;};
-
-       for (Int_t j=0; j<ncl; j++) {
-          AliITSRecPoint *p=(AliITSRecPoint*)points->UncheckedAt(j);
-          //Float_t lp[5];
-          lp[0]=-p->GetX()-yshift; if (lay==1) lp[0]=-lp[0];
-          lp[1]=p->GetZ()+zshift;
-          lp[2]=p->GetSigmaX2();
-          lp[3]=p->GetSigmaZ2();
-          lp[4]=p->GetQ(); lp[4]/=kmip;
-          //Int_t lab[6]; 
-          lab[0]=p->GetLabel(0);lab[1]=p->GetLabel(1);lab[2]=p->GetLabel(2);
-          lab[3]=ndet;
-
-          Int_t label=lab[0];
-          if (label>=0) {
-             TParticle *part=(TParticle*)gAlice->Particle(label);
-             label=-3;
-             while (part->P() < 0.005) {
-                Int_t m=part->GetFirstMother();
-                if (m<0) {cerr<<"Primary momentum: "<<part->P()<<endl; break;}
-                label=m;
-                part=(TParticle*)gAlice->Particle(label);
-             }
-             if      (lab[1]<0) lab[1]=label;
-             else if (lab[2]<0) lab[2]=label;
-             else cerr<<"No empty labels !\n";
-         }
-
-          new(cl[j]) AliITSclusterV2(lab,lp);
-       }
-       cTree->Fill(); clusters->Delete();
-       points->Delete();
-   }
-   cTree->Write();
-
-   cerr<<"Number of clusters: "<<nclusters<<endl;
-
-   delete cTree; delete clusters; delete points;
-
-   delete gAlice; gAlice=0;
-
-   in->Close();
-   out->Close();
-
-   return 0;
-
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/AliITSFindTracksV2.C b/ITS/oldmacros/AliITSFindTracksV2.C
deleted file mode 100644 (file)
index 00ac80a..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-#ifndef __CINT__
-  #include <iostream.h>
-  #include "AliITSgeom.h"
-  #include "AliITStrackerV2.h"
-
-  #include "TFile.h"
-  #include "TStopwatch.h"
-#endif
-
-Int_t AliITSFindTracksV2() {
-   cerr<<"Looking for tracks...\n";
-
-   TFile *out=TFile::Open("AliITStracksV2.root","new");
-   if (!out->IsOpen()) {cerr<<"Delete old AliITStracksV2.root !\n"; return 1;}
-
-   TFile *in=TFile::Open("AliTPCtracks.root");
-   if (!in->IsOpen()) {cerr<<"Can't open AliTPCtracks.root !\n"; return 2;}
-
-   TFile *file=TFile::Open("AliITSclustersV2.root");
-   if (!file->IsOpen()) {cerr<<"Can't open AliITSclustersV2.root !\n";return 3;}
-
-   AliITSgeom *geom=(AliITSgeom*)file->Get("AliITSgeom");
-
-   TStopwatch timer;
-   AliITStrackerV2 tracker(geom);
-
-   //Double_t xyz[]={0.,0.,0.}; tracker.SetVertex(xyz);  //primary vertex
-   //Int_t flag[]={1};                                   //some default flags
-   //flag[0]= 0; tracker.SetupFirstPass(flag);           //no constraint
-   //flag[0]=-1; tracker.SetupSecondPass(flag);          //skip second pass
-
-   Int_t rc=tracker.Clusters2Tracks(in,out);
-   timer.Stop(); timer.Print();
-
-   delete geom; //Thanks to Mariana Bondila
-
-   file->Close();
-   in->Close();
-   out->Close();
-
-   return rc;
-}
diff --git a/ITS/oldmacros/AliITSHits2Digits.C b/ITS/oldmacros/AliITSHits2Digits.C
deleted file mode 100644 (file)
index e4b89df..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-Int_t AliITSHits2Digits(const char *inFile = "galice.root"){
-    ////////////////////////////////////////////////////////////////////
-    //      This macro will take hits from a galice.root file and 
-    // produce digits for the ITS using the settings for the detector 
-    // simulations defined in this file. It will measure the time 
-    // required to do so and the increase in the galice.root file. 
-    // There is only one input, that of the name of the root file 
-    // containing the hits and to which the digits will be written to. 
-    // This macro will process all of the events on the root file.
-    ////////////////////////////////////////////////////////////////////
-
-    // Dynamically link some shared libs
-    if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-    } // end if
-
-    // Connect the Root Galice file containing Geometry, Kine and Hits
-  
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(inFile);
-    if (file) {file->Close(); delete file;}
-    cout << "AliITSHits2Digits" << endl;
-    file = new TFile(inFile,"UPDATE");
-    if (!file->IsOpen()) {
-       cerr<<"Can't open "<<inFile<<" !" << endl;
-       return 1;
-    } // end if !file
-    file->ls();
-
-    // Get AliRun object from file or return if not on file
-    if (gAlice) delete gAlice;
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (!gAlice) {
-       cerr << "AliITSITSHits2Digits.C : AliRun object not found on file"
-           << endl;
-       return 2;
-    } // end if !gAlice
-
-    AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS");      
-    if (!ITS) {
-       cerr<<"AliITSHits2Digits.C : AliITS object not found on file" 
-           << endl;
-       return 3;
-    }  // end if !ITS
-    if(!(ITS->GetITSgeom())){
-       cerr << " AliITSgeom not found. Can't digitize with out it." << endl;
-       return 4;
-    } // end if
-
-    // SPD
-    cout << "Changing from Default SPD simulation, and responce." << endl;
-    AliITSDetType *iDetType=ITS->DetType(0);
-    AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->
-       GetSegmentationModel();
-    AliITSresponseSPD *res0 = (AliITSresponseSPD*)iDetType->GetResponseModel();
-    AliITSsimulationSPD *sim0=new AliITSsimulationSPD(seg0,res0);
-    ITS->SetSimulationModel(0,sim0);
-    // test
-    cout << "SPD dimensions " << seg0->Dx() << " " << seg0->Dz() << endl;
-    cout << "SPD npixels " << seg0->Npz() << " " << seg0->Npx() << endl;
-    cout << "SPD pitches " << seg0->Dpz(0) << " " << seg0->Dpx(0) << endl;
-    // end test
-
-    // SDD
-    cout << "Changing from Default SDD simulation, and responce." << endl;
-    //Set response functions
-    Float_t baseline = 10.;
-    Float_t noise = 1.75;
-    // SDD compression param: 2 fDecrease, 2fTmin, 2fTmax or disable,
-    // 2 fTolerance
-    AliITSDetType *iDetType=ITS->DetType(1);
-    AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-    if (!res1) {
-       res1=new AliITSresponseSDD();
-       ITS->SetResponseModel(1,res1);
-    } // end if !res1
-    Float_t fCutAmp = baseline + 2.*noise;
-    Int_t cp[8]={0,0,fCutAmp,fCutAmp,0,0,0,0}; //1D
-
-    //res1->SetZeroSupp("2D");
-    res1->SetZeroSupp("1D");
-    res1->SetNoiseParam(noise,baseline);
-    res1->SetDo10to8(kTRUE);
-    res1->SetCompressParam(cp);
-    res1->SetMinVal(4);
-    res1->SetDiffCoeff(3.6,40.);
-    AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->
-       GetSegmentationModel();
-    if (!seg1) {
-       seg1 = new AliITSsegmentationSDD(ITS->GetITSgeom(),res1);
-       ITS->SetSegmentationModel(1,seg1);
-    } // end if !seg1
-    AliITSsimulationSDD *sim1 = new AliITSsimulationSDD(seg1,res1);
-    sim1->SetDoFFT(1);
-    sim1->SetCheckNoise(kFALSE);
-    ITS->SetSimulationModel(1,sim1);
-
-    // SSD
-    cout << "Changing from Default SSD simulation, and responce." << endl;
-    AliITSDetType *iDetType = ITS->DetType(2);
-    AliITSsegmentationSSD *seg2 = (AliITSsegmentationSSD*)iDetType->
-       GetSegmentationModel();
-    AliITSresponseSSD *res2 = (AliITSresponseSSD*)iDetType->GetResponseModel();
-    res2->SetSigmaSpread(3.,2.);
-    AliITSsimulationSSD *sim2 = new AliITSsimulationSSD(seg2,res2);
-    ITS->SetSimulationModel(2,sim2);
-
-    cout << "Digitizing ITS..." << endl;
-
-    TStopwatch timer;
-    Long_t size0 = file->GetSize();
-    timer.Start();
-    gAlice->Hits2Digits("ITS");
-    timer.Stop(); timer.Print();
-
-    file->Close();
-    Long_t size1 = file->GetSize();
-    cout << "File size before = " << size0 << " file size after = " << size1;
-    cout << "Increase in file size is " << size1-size0 << " Bytes" << endl;
-    delete file;
-    return 0;
-};
-
diff --git a/ITS/oldmacros/AliITSHits2DigitsDefault.C b/ITS/oldmacros/AliITSHits2DigitsDefault.C
deleted file mode 100644 (file)
index d42c47a..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-Int_t AliITSHits2DigitsDefault(const char *inFile = "galice.root"){
-    ////////////////////////////////////////////////////////////////////
-    //      This macro will take hits from a galice.root file and 
-    // produce digits for the ITS using the standard detector 
-    // simulations. It will measure the time required to do so and the
-    // increase in the galice.root file. There is only one input, that
-    // of the name of the root file containing the hits and to which the
-    // digits will be written to. This macro will process all of the 
-    // events on the root file.
-    ////////////////////////////////////////////////////////////////////
-
-    // Dynamically link some shared libs
-    if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-    } // end if
-
-    // Connect the Root Galice file containing Geometry, Kine and Hits
-  
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(inFile);
-    if (file) {file->Close(); delete file;}
-    cout << "AliITSHits2DigitsDefault" << endl;
-    file = new TFile(inFile,"UPDATE");
-    if (!file->IsOpen()) {
-       cerr<<"Can't open "<<inFile<<" !" << endl;
-       return 1;
-    } // end if !file
-    file->ls();
-
-    // Get AliRun object from file or return if not on file
-    if (gAlice) delete gAlice;
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (!gAlice) {
-       cerr << "AliITSITSHits2Digits.C : AliRun object not found on file"
-           << endl;
-       return 2;
-    } // end if !gAlice
-
-    AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS");      
-    if (!ITS) {
-       cerr<<"ITSHits2Digits.C : AliITS object not found on file" << endl;
-       return 3;
-    }  // end if !ITS
-    if(!(ITS->GetITSgeom())){
-       cerr << " AliITSgeom not found. Can't digitize with out it." << endl;
-       return 4;
-    } // end if
-    cout << "Digitizing ITS..." << endl;
-
-    TStopwatch timer;
-    Long_t size0 = file->GetSize();
-    timer.Start();
-    gAlice->Hits2Digits("ITS");
-    timer.Stop(); timer.Print();
-
-    file->Close();
-    Long_t size1 = file->GetSize();
-    cout << "File size before = " << size0 << " file size after = " << size1;
-    cout << "Increase in file size is " << size1-size0 << " Bytes" << endl;
-    delete file;
-    return 0;
-};
-
diff --git a/ITS/oldmacros/AliITSHits2DigitsDubna.C b/ITS/oldmacros/AliITSHits2DigitsDubna.C
deleted file mode 100644 (file)
index a03ca1c..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-Int_t AliITSHits2DigitsDubna(const char *inFile = "galice.root"){
-    ////////////////////////////////////////////////////////////////////
-    //      This macro will take hits from a galice.root file and 
-    // produce digits for the ITS using the settings for the detector 
-    // simulations defined in this file. Specificaly it replaces the
-    // default SPD simulation with that of Dubna It will measure the 
-    // time required to do so and the increase in the galice.root file. 
-    // There is only one input, that of the name of the root file 
-    // containing the hits and to which the digits will be written to. 
-    // This macro will process all of the events on the root file.
-    ////////////////////////////////////////////////////////////////////
-
-    // Dynamically link some shared libs
-    if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-    } // end if
-
-    // Connect the Root Galice file containing Geometry, Kine and Hits
-
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(inFile);
-    if (file) {file->Close(); delete file;}
-    cout << "AliITSHits2DigitsDubna" << endl;
-    file = new TFile(inFile,"UPDATE");
-    if (!file->IsOpen()) {
-       cerr<<"Can't open "<<inFile<<" !" << endl;
-       return 1;
-    } // end if
-    file->ls();
-
-    // Get AliRun object from file or return if not on file
-    if (gAlice) delete gAlice;
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (!gAlice) {
-       cerr<<"AliITSHits2DigitsDubna.C : AliRun object not found on file"
-           << endl;
-       return 2;
-    } // end if !gAlice
-
-    AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS");      
-    if (!ITS) {
-       cerr<<"ITSHits2Digits.C : AliITS object not found on file" << endl;
-       return 3;
-    }  // end if !ITS
-    if(!(ITS->GetITSgeom())){
-       cerr << " AliITSgeom not found. Can't digitize with out it." << endl;
-       return 4;
-    } // end if
-
-    // SPD
-    cout << "Changing from Default SPD simulation, and responce." << endl;
-    AliITSDetType *iDetType=ITS->DetType(0);
-    AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->
-       GetSegmentationModel();
-    AliITSresponseSPDdubna *res0 = new AliITSresponseSPDdubna();
-    ITS->SetResponseModel(0,res0);
-    AliITSsimulationSPDdubna *sim0=new AliITSsimulationSPDdubna(seg0,res0);
-    ITS->SetSimulationModel(0,sim0);
-    // test
-    cout << "SPD dimensions " << seg0->Dx() << " " << seg0->Dz() << endl;
-    cout << "SPD npixels " << seg0->Npz() << " " << seg0->Npx() << endl;
-    cout << "SPD pitches " << seg0->Dpz(0) << " " << seg0->Dpx(0) << endl;
-    // end test
-
-    // SDD
-    cout << "Changing from Default SDD simulation, and responce." << endl;
-    //Set response functions
-    Float_t baseline = 10.;
-    Float_t noise = 1.75;
-    // SDD compression param: 2 fDecrease, 2fTmin, 2fTmax or disable,
-    // 2 fTolerance
-    AliITSDetType *iDetType=ITS->DetType(1);
-    AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-    if (!res1) {
-       res1=new AliITSresponseSDD();
-       ITS->SetResponseModel(1,res1);
-    } // end if !res1
-    Float_t fCutAmp = baseline + 2.*noise;
-    Int_t cp[8]={0,0,fCutAmp,fCutAmp,0,0,0,0}; //1D
-
-    //res1->SetZeroSupp("2D");
-    res1->SetZeroSupp("1D");
-    res1->SetNoiseParam(noise,baseline);
-    res1->SetDo10to8(kTRUE);
-    res1->SetCompressParam(cp);
-    res1->SetMinVal(4);
-    res1->SetDiffCoeff(3.6,40.);
-    AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->
-       GetSegmentationModel();
-    if (!seg1) {
-       seg1 = new AliITSsegmentationSDD(ITS->GetITSgeom(),res1);
-       ITS->SetSegmentationModel(1,seg1);
-    } // end if !seg1
-    AliITSsimulationSDD *sim1 = new AliITSsimulationSDD(seg1,res1);
-    sim1->SetDoFFT(1);
-    sim1->SetCheckNoise(kFALSE);
-    ITS->SetSimulationModel(1,sim1);
-
-    // SSD
-    cout << "Changing from Default SSD simulation, and responce." << endl;
-    AliITSDetType *iDetType = ITS->DetType(2);
-    AliITSsegmentationSSD *seg2 = (AliITSsegmentationSSD*)iDetType->
-       GetSegmentationModel();
-    AliITSresponseSSD *res2 = (AliITSresponseSSD*)iDetType->GetResponseModel();
-    res2->SetSigmaSpread(3.,2.);
-    AliITSsimulationSSD *sim2 = new AliITSsimulationSSD(seg2,res2);
-    ITS->SetSimulationModel(2,sim2);
-
-    cout << "Digitizing ITS..." << endl;
-
-    TStopwatch timer;
-    Long_t size0 = file->GetSize();
-    timer.Start();
-    gAlice->Hits2Digits();
-    timer.Stop(); timer.Print();
-
-    file->Close();
-    Long_t size1 = file->GetSize();
-    cout << "File size before = " << size0 << " file size after = " << size1;
-    cout << "Increase in file size is " << size1-size0 << " Bytes" << endl;
-    delete file;
-    return 0;
-};
-
diff --git a/ITS/oldmacros/AliITSHits2SDigits.C b/ITS/oldmacros/AliITSHits2SDigits.C
deleted file mode 100644 (file)
index 7bb9dc1..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-Int_t AliITSHits2SDigits(const char *inFile = "galice.root"){
-
-    // Dynamically link some shared libs
-    if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-    } // end if
-
-    // Connect the Root Galice file containing Geometry, Kine and Hits
-  
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(inFile);
-    if (file) {file->Close(); delete file;}
-    cout << "AliITSHits2SDigits" << endl;
-    file = new TFile(inFile,"UPDATE");
-    if (!file->IsOpen()) {
-       cerr<<"Can't open "<<inFile<<" !" << endl;
-       return 1;
-    } // end if !file
-    file->ls();
-
-    // Get AliRun object from file or return if not on file
-    if (gAlice) delete gAlice;
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (!gAlice) {
-       cerr << "AliITSITSHits2Digits.C : AliRun object not found on file"
-           << endl;
-       return 2;
-    } // end if !gAlice
-
-    gAlice->GetEvent(0);
-    AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS");      
-    if (!ITS) {
-       cerr<<"AliITSHits2Digits.C : AliITS object not found on file" 
-           << endl;
-       return 3;
-    }  // end if !ITS
-    if(!(ITS->GetITSgeom())){
-       cerr << " AliITSgeom not found. Can't digitize with out it." << endl;
-       return 4;
-    } // end if
-
-    // SPD
-    cout << "Changing from Default SPD simulation, and responce." << endl;
-    AliITSDetType *iDetType=ITS->DetType(0);
-    AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->
-       GetSegmentationModel();
-    AliITSresponseSPD *res0 = (AliITSresponseSPD*)iDetType->GetResponseModel();
-    AliITSsimulationSPD *sim0=new AliITSsimulationSPD(seg0,res0);
-    ITS->SetSimulationModel(0,sim0);
-    // test
-    cout << "SPD dimensions " << seg0->Dx() << " " << seg0->Dz() << endl;
-    cout << "SPD npixels " << seg0->Npz() << " " << seg0->Npx() << endl;
-    cout << "SPD pitches " << seg0->Dpz(0) << " " << seg0->Dpx(0) << endl;
-    // end test
-
-    // SDD
-    cout << "Changing from Default SDD simulation, and responce." << endl;
-    //Set response functions
-    Float_t baseline = 10.;
-    Float_t noise = 1.75;
-    // SDD compression param: 2 fDecrease, 2fTmin, 2fTmax or disable,
-    // 2 fTolerance
-    AliITSDetType *iDetType=ITS->DetType(1);
-    AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-    if (!res1) {
-       res1=new AliITSresponseSDD();
-       ITS->SetResponseModel(1,res1);
-    } // end if !res1
-    Float_t fCutAmp = baseline + 2.*noise;
-    Int_t cp[8]={0,0,fCutAmp,fCutAmp,0,0,0,0}; //1D
-
-    //res1->SetZeroSupp("2D");
-    res1->SetZeroSupp("1D");
-    res1->SetNoiseParam(noise,baseline);
-    res1->SetDo10to8(kTRUE);
-    res1->SetCompressParam(cp);
-    res1->SetMinVal(4);
-    res1->SetDiffCoeff(3.6,40.);
-    AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->
-       GetSegmentationModel();
-    if (!seg1) {
-       seg1 = new AliITSsegmentationSDD(ITS->GetITSgeom(),res1);
-       ITS->SetSegmentationModel(1,seg1);
-    } // end if !seg1
-    AliITSsimulationSDD *sim1 = new AliITSsimulationSDD(seg1,res1);
-    sim1->SetDoFFT(1);
-    sim1->SetCheckNoise(kFALSE);
-    ITS->SetSimulationModel(1,sim1);
-
-    // SSD
-    cout << "Changing from Default SSD simulation, and responce." << endl;
-    AliITSDetType *iDetType = ITS->DetType(2);
-    AliITSsegmentationSSD *seg2 = (AliITSsegmentationSSD*)iDetType->
-       GetSegmentationModel();
-    AliITSresponseSSD *res2 = (AliITSresponseSSD*)iDetType->GetResponseModel();
-    res2->SetSigmaSpread(3.,2.);
-    AliITSsimulationSSD *sim2 = new AliITSsimulationSSD(seg2,res2);
-    ITS->SetSimulationModel(2,sim2);
-
-    if(!gAlice->TreeS()){ 
-       cout << "Having to create the SDigits Tree." << endl;
-       gAlice->MakeTree("S");
-    } // end if !gAlice->TreeS()
-    //make branch
-    ITS->MakeBranch("S");
-    ITS->SetTreeAddress();
-    cout << "Digitizing ITS..." << endl;
-
-    TStopwatch timer;
-    Long_t size0 = file->GetSize();
-    timer.Start();
-    ITS->Hits2SDigits();
-    timer.Stop(); timer.Print();
-
-    delete gAlice;   gAlice=0;
-    file->Close();
-    Long_t size1 = file->GetSize();
-    cout << "File size before = " << size0 << " file size after = " << size1;
-    cout << "Increase in file size is " << size1-size0 << " Bytes" << endl;
-    delete file;
-    return 0;
-};
-
diff --git a/ITS/oldmacros/AliITSHits2SDigitsDefault.C b/ITS/oldmacros/AliITSHits2SDigitsDefault.C
deleted file mode 100644 (file)
index 08e51cd..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-Int_t AliITSHits2SDigitsDefault(const char *inFile = "galice.root"){
-
-    // Dynamically link some shared libs
-    if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-    } // end if
-
-    // Connect the Root Galice file containing Geometry, Kine and Hits
-  
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(inFile);
-    if (file) {file->Close(); delete file;}
-    cout << "AliITSHits2SDigitsDefault" << endl;
-    file = new TFile(inFile,"UPDATE");
-    if (!file->IsOpen()) {
-       cerr<<"Can't open "<<inFile<<" !" << endl;
-       return 1;
-    } // end if !file
-    file->ls();
-
-    // Get AliRun object from file or return if not on file
-    if (gAlice) delete gAlice;
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (!gAlice) {
-       cerr << "AliITSITSHits2Digits.C : AliRun object not found on file"
-           << endl;
-       return 2;
-    } // end if !gAlice
-
-    gAlice->GetEvent(0);
-    AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS");      
-    if (!ITS) {
-       cerr<<"AliITSHits2DigitsDefault.C : AliITS object not found on file"
-           << endl;
-       return 3;
-    }  // end if !ITS
-    if(!(ITS->GetITSgeom())){
-       cerr << " AliITSgeom not found. Can't digitize with out it." << endl;
-       return 4;
-    } // end if
-
-    if(!gAlice->TreeS()){ 
-       cout << "Having to create the SDigits Tree." << endl;
-       gAlice->MakeTree("S");
-    } // end if !gAlice->TreeS()
-    //make branch
-    ITS->MakeBranch("S");
-    ITS->SetTreeAddress();
-    cout << "Digitizing ITS..." << endl;
-
-    TStopwatch timer;
-    Long_t size0 = file->GetSize();
-    timer.Start();
-    ITS->Hits2SDigits();
-    timer.Stop(); timer.Print();
-
-    delete gAlice;   gAlice=0;
-    file->Close();
-    Long_t size1 = file->GetSize();
-    cout << "File size before = " << size0 << " file size after = " << size1;
-    cout << "Increase in file size is " << size1-size0 << " Bytes" << endl;
-    delete file;
-    return 0;
-};
-
diff --git a/ITS/oldmacros/AliITSHitsToDigitsDefault.C b/ITS/oldmacros/AliITSHitsToDigitsDefault.C
deleted file mode 100644 (file)
index 8cfa496..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-Int_t AliITSHitsToDigitsDefault(Int_t evNumber1=0,Int_t evNumber2=0,
-                               const char *inFile="galice.root"){
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-    // Dynamically link some shared libs
-    if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-    } // end if
-
-    // Connect the Root Galice file containing Geometry, Kine and Hits
-
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(inFile);
-    if (file) {file->Close(); delete file;}
-    cout << "AliITSHitsToDigitsDefault" << endl;
-    file = new TFile(inFile,"UPDATE");
-    if (!file->IsOpen()) {
-       cerr<<"Can't open "<<inFile<<" !" << endl;
-       return 1;
-    } // end if !file
-    file->ls();
-    
-    // Get AliRun object from file or return if not on file
-    if (gAlice) delete gAlice;
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (!gAlice) {
-       cerr << "AliITSITSHits2Digits.C : AliRun object not found on file"
-           << endl;
-       return 2;
-    } // end if !gAlice
-
-    gAlice->GetEvent(0);
-    AliITS *ITS  = (AliITS*) gAlice->GetDetector("ITS");
-    if (!ITS){
-       cerr << "ITS not found in gAlice. Exiting." << endl;
-       return 3;
-    } // end if
-    if(!(ITS->GetITSgeom())){
-       cerr << " AliITSgeom not found. Can't digitize with out it." << endl;
-       return 4;
-    } // end if
-
-    if(!gAlice->TreeD()){ 
-       cout << "Having to create the Digits Tree." << endl;
-       gAlice->MakeTree("D");
-    } // end if !gAlice->TreeD()
-    //make branch
-    ITS->MakeBranch("D");
-    ITS->SetTreeAddress();
-
-    cout<<"Digitizing ITS..." << endl;
-    TStopwatch timer;
-    Long_t size0 = file->GetSize();
-
-    for (Int_t nev=evNumber1; nev<= evNumber2; nev++) {
-       cout << "nev         " <<nev<<endl;
-       if(nev>0) {
-           gAlice->SetEvent(nev);
-           if(!gAlice->TreeD()) gAlice->MakeTree("D");
-           ITS->MakeBranch("D");
-       } // end if nev>0
-       if (nev < evNumber1) continue;
-       timer.Start();
-       ITS->HitsToDigits(nev,0,-1," ","All"," ");
-       timer.Stop(); timer.Print();
-    } // event loop
-
-    delete gAlice; gAlice=0;
-    file->Close();
-    Long_t size1 = file->GetSize();
-    cout << "File size before = " << size0 << " file size after = " << size1;
-    cout << "Increase in file size is " << size1-size0 << " Bytes" << endl;
-    delete file;
-    return 0;
-};
diff --git a/ITS/oldmacros/AliITSHitsToSDigits.C b/ITS/oldmacros/AliITSHitsToSDigits.C
deleted file mode 100644 (file)
index 82cf64e..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-Int_t AliITSHitsToSDigits(const char *inFile="galice.root"){
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-    // Dynamically link some shared libs
-    if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-    } // end if
-
-    // Connect the Root Galice file containing Geometry, Kine and Hit
-  
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(inFile);
-    if (file) {file->Close(); delete file;}
-    cout << "AliITSHits2SDigitsDefault" << endl;
-    file = new TFile(inFile,"UPDATE");
-    if (!file->IsOpen()) {
-       cerr<<"Can't open "<<inFile<<" !" << endl;
-       return 1;
-    } // end if !file
-    file->ls();
-
-    // Get AliRun object from file or create it if not on file
-    if (gAlice) delete gAlice;
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (!gAlice) {
-       cerr << "AliITSITSHits2Digits.C : AliRun object not found on file"
-           << endl;
-       return 2;
-    } // end if !gAlice
-
-    gAlice->GetEvent(0);
-    AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS");      
-    if (!ITS) {
-       cerr<<"AliITSHits2DigitsDefault.C : AliITS object not found on file"
-           << endl;
-       return 3;
-    }  // end if !ITS
-    if(!(ITS->GetITSgeom())){
-       cerr << " AliITSgeom not found. Can't digitize with out it." << endl;
-       return 4;
-    } // end ifs
-
-    // SPD
-    cout << "Changing from Default SPD simulation, and responce." << endl;
-    AliITSDetType *iDetType=ITS->DetType(0);
-    AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->
-       GetSegmentationModel();
-    AliITSresponseSPD *res0 = (AliITSresponseSPD*)iDetType->GetResponseModel();
-    AliITSsimulationSPD *sim0=new AliITSsimulationSPD(seg0,res0);
-    ITS->SetSimulationModel(0,sim0);
-    // test
-    cout << "SPD dimensions " << seg0->Dx() << " " << seg0->Dz() << endl;
-    cout << "SPD npixels " << seg0->Npz() << " " << seg0->Npx() << endl;
-    cout << "SPD pitches " << seg0->Dpz(0) << " " << seg0->Dpx(0) << endl;
-    // end test
-
-    // SDD
-    cout << "Changing from Default SDD simulation, and responce." << endl;
-    //Set response functions
-    Float_t baseline = 10.;
-    Float_t noise = 1.75;
-    // SDD compression param: 2 fDecrease, 2fTmin, 2fTmax or disable,
-    // 2 fTolerance
-    AliITSDetType *iDetType=ITS->DetType(1);
-    AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-    if (!res1) {
-       res1=new AliITSresponseSDD();
-       ITS->SetResponseModel(1,res1);
-    } // end if !res1
-    Float_t fCutAmp = baseline + 2.*noise;
-    Int_t cp[8]={0,0,fCutAmp,fCutAmp,0,0,0,0}; //1D
-
-    //res1->SetZeroSupp("2D");
-    res1->SetZeroSupp("1D");
-    res1->SetNoiseParam(noise,baseline);
-    res1->SetDo10to8(kTRUE);
-    res1->SetCompressParam(cp);
-    res1->SetMinVal(4);
-    res1->SetDiffCoeff(3.6,40.);
-    AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->
-       GetSegmentationModel();
-    if (!seg1) {
-       seg1 = new AliITSsegmentationSDD(ITS->GetITSgeom(),res1);
-       ITS->SetSegmentationModel(1,seg1);
-    } // end if !seg1
-    AliITSsimulationSDD *sim1 = new AliITSsimulationSDD(seg1,res1);
-    sim1->SetDoFFT(1);
-    sim1->SetCheckNoise(kFALSE);
-    ITS->SetSimulationModel(1,sim1);
-
-    // SSD
-    cout << "Changing from Default SSD simulation, and responce." << endl;
-    AliITSDetType *iDetType = ITS->DetType(2);
-    AliITSsegmentationSSD *seg2 = (AliITSsegmentationSSD*)iDetType->
-       GetSegmentationModel();
-    AliITSresponseSSD *res2 = (AliITSresponseSSD*)iDetType->GetResponseModel();
-    res2->SetSigmaSpread(3.,2.);
-    AliITSsimulationSSD *sim2 = new AliITSsimulationSSD(seg2,res2);
-    ITS->SetSimulationModel(2,sim2);
-
-    if(!gAlice->TreeS()){ 
-       cout << "Having to create the SDigits Tree." << endl;
-       gAlice->MakeTree("S");
-    } // end if !gAlice->TreeS()
-    //make branch
-    ITS->MakeBranch("S");
-    ITS->SetTreeAddress();
-    cout<<"Digitizing ITS..." << endl;
-
-    TStopwatch timer;
-    Long_t size0 = file->GetSize();
-
-    for (Int_t nev=evNumber1; nev<= evNumber2; nev++) {
-       cout << "nev         " <<nev<<endl;
-       if(nev>0) {
-           gAlice->SetEvent(nev);
-           if(!gAlice->TreeD()) gAlice->MakeTree("D");
-           ITS->MakeBranch("D");
-       } // end if nev>0
-       if (nev < evNumber1) continue;
-       timer.Start();
-       ITS->HitsToSDigits(nev,0,-1," ","All"," ");
-       timer.Stop(); timer.Print();
-    } // event loop
-
-    delete gAlice;   gAlice=0;
-    file->Close();
-    Long_t size1 = file->GetSize();
-    cout << "File size before = " << size0 << " file size after = " << size1;
-    cout << "Increase in file size is " << size1-size0 << " Bytes" << endl;
-    delete file;
-    return 0;
-};
diff --git a/ITS/oldmacros/AliITSHitsToSDigitsDefault.C b/ITS/oldmacros/AliITSHitsToSDigitsDefault.C
deleted file mode 100644 (file)
index 843af3b..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-Int_t AliITSHitsToSDigitsDefault(Int_t evNumber1=0,Int_t evNumber2=1,const char *inFile="galice.root"){
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-    // Dynamically link some shared libs
-    if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-    } // end if
-
-    // Connect the Root Galice file containing Geometry, Kine and Hits
-  
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(inFile);
-    if (file) {file->Close(); delete file;}
-    cout << "AliITSHits2SDigitsDefault" << endl;
-    file = new TFile(inFile,"UPDATE");
-    if (!file->IsOpen()) {
-       cerr<<"Can't open "<<inFile<<" !" << endl;
-       return 1;
-    } // end if !file
-    file->ls();
-
-    // Get AliRun object from file or create it if not on file
-    if (gAlice) delete gAlice;
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (!gAlice) {
-       cerr << "AliITSITSHits2Digits.C : AliRun object not found on file"
-           << endl;
-       return 2;
-    } // end if !gAlice
-
-    gAlice->GetEvent(0);
-    AliITS *ITS = (AliITS*)gAlice->GetDetector("ITS");      
-    if (!ITS) {
-       cerr<<"AliITSHits2DigitsDefault.C : AliITS object not found on file"
-           << endl;
-       return 3;
-    }  // end if !ITS
-    if(!(ITS->GetITSgeom())){
-       cerr << " AliITSgeom not found. Can't digitize with out it." << endl;
-       return 4;
-    } // end if
-
-    if(!gAlice->TreeS()){ 
-       cout << "Having to create the SDigits Tree." << endl;
-       gAlice->MakeTree("S");
-    } // end if !gAlice->TreeS()
-    //make branch
-    ITS->MakeBranch("S");
-    ITS->SetTreeAddress();
-    gAlice->GetEvent(0);
-    cout<<"SDigitizing ITS..." << endl;
-
-    TStopwatch timer;
-    Long_t size0 = file->GetSize();
-
-    for (Int_t nev=evNumber1; nev<= evNumber2; nev++) {
-       cout << "nev         " <<nev<<endl;
-       if(nev>0) {
-           gAlice->SetEvent(nev);
-           if(!gAlice->TreeD()) gAlice->MakeTree("D");
-           ITS->MakeBranch("D");
-       } // end if nev>0
-       if (nev < evNumber1) continue;
-       timer.Start();
-       ITS->HitsToDigits(nev,0,-1," ","All"," ");
-       timer.Stop(); timer.Print();
-    } // event loop
-
-    delete gAlice;   gAlice=0;
-    file->Close();
-    Long_t size1 = file->GetSize();
-    cout << "File size before = " << size0 << " file size after = " << size1;
-    cout << "Increase in file size is " << size1-size0 << " Bytes" << endl;
-    delete file;
-    return 0;
-};
diff --git a/ITS/oldmacros/AliITSPrintHits.C b/ITS/oldmacros/AliITSPrintHits.C
deleted file mode 100644 (file)
index e461e4c..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-void AliITSPrintHits(Int_t track, Int_t hit=-1, Int_t evNumber=0
-                    ,const char *filename="galice.root"){
-/*
-  This macro will print the a specific hit or all of the hits from a give 
-track.
-*/
-  if(gAlice){
-    delete gAlice;
-    gAlice=0;
-  }else{
-    // Dynamically link some shared libs
-    if(gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-    } // end if 
-  }
-// Connect the Root Galice file containing Geometry, Kine and Hits
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-    if(!file) file = new TFile(filename);
-// Get AliRun object from file or create it if not on file
-    if(!gAlice) {
-        gAlice = (AliRun*)file->Get("gAlice");
-        if(gAlice) printf("AliRun object found on file\n");
-        if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-    } // end if !gAlice
-// Set event pointer to this event
-    Int_t nparticles = gAlice->GetEvent(evNumber);
-    if (nparticles <= 0){
-        cout << "No particles found for event " << evNumber;
-        cout << " in file " << filename << endl;
-        return;
-    } // end if nparticles <=0 
-// Pointer to specific detector hits.
-    AliITShit    *itsHit; 
-// Get pointers to ALL Alice detectors and Hits containers
-    AliITS    *ITS    = (AliITS*)    gAlice->GetDetector("ITS"); 
-    Int_t t,h,ntracks = gAlice->TreeH()->GetEntries();  
-// Start loop on tracks in the hits containers
-    for(t=0; t<ntracks;t++){
-       gAlice->ResetHits();
-       gAlice->TreeH()->GetEvent(t);
-       h = 0;
-       for(itsHit=(AliITShit*)ITS->FirstHit(-1);itsHit;
-           itsHit=(AliITShit*)ITS->NextHit()){
-           if((track==itsHit->GetTrack())&&(h==hit||hit<0)){
-               cout << h << " ";
-               itsHit->Print((ostream*)cout);
-               cout << endl;
-           } // end if
-           h++;
-       } // end for itsHit
-    } // end for t
-}
diff --git a/ITS/oldmacros/AliITSPropagateBackV2.C b/ITS/oldmacros/AliITSPropagateBackV2.C
deleted file mode 100644 (file)
index f901a20..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-#ifndef __CINT__
-  #include <iostream.h>
-  #include "AliITStrackerV2.h"
-
-  #include "TFile.h"
-  #include "TStopwatch.h"
-#endif
-
-Int_t AliITSPropagateBackV2() {
-   cerr<<"Propagating tracks back through the ITS...\n";
-
-   TFile *in=TFile::Open("AliITStracksV2.root");
-   if (!in->IsOpen()) {cerr<<"Can't open AliITStracksV2.root !\n"; return 1;}
-
-   TFile *out=TFile::Open("AliTPCtracks.root","update");
-   if (!out->IsOpen()) {
-      cerr<<"Can't open AliTPCtracks.root !\n"; return 2;
-   }
-   TFile *file=TFile::Open("AliITSclustersV2.root");
-   if (!file->IsOpen()) {
-      cerr<<"Can't open AliITSclustersV2.root !\n";return 3;
-   }
-   AliITSgeom *geom=(AliITSgeom*)file->Get("AliITSgeom");
-
-   TStopwatch timer;
-   AliITStrackerV2 tracker(geom);
-   Int_t rc=tracker.PropagateBack(in,out);
-   timer.Stop(); timer.Print();
-
-   file->Close();
-   in->Close();
-   out->Close();
-
-   return rc;
-}
diff --git a/ITS/oldmacros/AliITSplotgeom.C b/ITS/oldmacros/AliITSplotgeom.C
deleted file mode 100644 (file)
index 4a7cec9..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-void AliITSplotgeom(const char *filename="galice.root"){
-/////////////////////////////////////////////////////////////////////////
-//   This macro displays part of the ITS sensitive volume as defined
-// in the root file.
-//   
-//     Root > .L AliITSplotgeom.C         //this loads the macro in memory
-//     Root > AliITSplotgeom();           //by default process first event   
-//     Root > AliITSplotgeom("galice2.root"); //process third event from 
-//                                              galice2.root file.
-//Begin_Html
-/*
-<img src="picts/AliITSplotgeom.gif">
-*/
-//End_Html
-/////////////////////////////////////////////////////////////////////////
-    if(gAlice){
-       delete gAlice;
-       gAlice=0;
-    }else{
-       // Dynamically link some shared libs
-       if(gClassTable->GetID("AliRun") < 0) {
-           gROOT->LoadMacro("loadlibs.C");
-           loadlibs();
-       } // end if
-    } // end if gAlice
-    // Connect the Root Galice file containing Geometry, Kine and Hits
-    TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-    if(!file) file = new TFile(filename);
-
-    // Get AliRun object from file or create it if not on file
-    if(!gAlice) {
-       gAlice = (AliRun*)file->Get("gAlice");
-       if(gAlice) printf("AliRun object found on file\n");
-       if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-    } // end if !gAlice
-      
-
-// Get pointers to the ITS Alice detectors and Hits containers
-    AliITS    *ITS    = (AliITS*)    gAlice->GetDetector("ITS");
-    if(ITS==0){
-       cout << "ITS not found. Exiting." << endl;
-       return;
-    } // end if ITS==0
-    AliITSgeom *itsgeom = ITS->GetITSgeom();
-    if(itsgeom==0){
-       cout << "ITSgeom not defined. Exiting." << endl;
-       return;
-    } // end if itsgeom==0
-    Int_t is,ie,in;
-    is = itsgeom->GetStartSPD();
-    ie = itsgeom->GetLastSPD()+1;
-    in = ie-is;
-
-    // Transformations.
-//    Float_t *x = new Float_t[in];
-//    Float_t *y = new Float_t[in];
-//    Float_t *z = new Float_t[in];
-    Float_t x,y,z;
-    TRotMatrix **r = new TRotMatrix*[in];
-    Int_t i,j;
-    Double_t m[9];
-    char name[10],title[20],name2[10],title2[20];
-//    cout << in << endl;
-    for(i=0;i<in;i++){
-       itsgeom->GetRotMatrix(i+is,m);
-       sprintf(name,"ROT%d",i+is);
-       sprintf(title,"ROT%d",i+is);
-       r[i] = new TRotMatrix(name,title,m);
-//     cout << name << title << endl;
-//     itsgeom->GetTrans(i+is,x[i],y[i],z[i]);
-//     cout << i << " " << x[i] << " " << y[i] << " " << z[i] <<endl;
-    } // end for i
-
-    // Sensitive volumes.
-    if(itsgeom->IsShapeDefined(0)){
-       TBRIK *spds = (TShape*) (itsgeom->GetShape(0));
-    }else{
-       TBRIK *spds = new TBRIK("SPD","SPD","void",0.64,0.015,3.48);
-    } // end if
-//    cout << spds << endl;
-    if(itsgeom->IsShapeDefined(1)){
-       TBRIK *sdds = (TShape*) (itsgeom->GetShape(240));
-    }else{
-       TBRIK *sdds = new TBRIK("SDD","SDD","void",3.50850,0.01499,3.76320);
-    } // end if
-//    cout << sdds << endl;
-    if(itsgeom->IsShapeDefined(2)){
-       TBRIK *ssds = (TShape*) (itsgeom->GetShape(1000));
-    }else{
-       TBRIK *ssds = new TBRIK("SSD","SSD","void",3.65,0.015,2.00);
-    } // end if
-//    cout << ssds << endl;
-
-    // Set up display.
-
-    TCanvas *c1 = new TCanvas("c1","ITS geometry",10,10,700,700);
-//  TPad *p1 = new TPad("p1","p1",0.01,0.01,0.99,0.99,46,3,1);
-//  p1->Draw();
-//  p1->cd();
-//  TView *view = new TView(1);
-//  view->SetRange(-5,-5,-5,5,5,5);
-      TShape  *mother = new TBRIK("Mother","Mother Volume","void",10,10,10);
-//      TShape  *mother = new TBRIK("Mother","Mother Volume","void",30,30,30);
-//      TShape  *mother = new TBRIK("Mother","Mother Volume","void",50,50,50);
-      TNode *node = new TNode("node","Mother Node",mother);
-      node->cd();
-
-    // Set up nodes
-    TNode **itsn = new TNode*[in];
-    TPolyLine3D **pl = new TPolyLine3D*[in];
-/*    Double_t p[5*3],axis[5*3]={1.,0.,0.,
-                               0.,0.,0.,
-                              0.,1.,0.,
-                              0.,0.,0.,
-                              0.,0.,1.}; */
-    Double_t p[19*3],axis[19*3]={-0.25,0.,1.25,  // 1
-                                +0.00,0.,1.25,  // 2
-                                -0.25,0.,1.00,  // 3
-                                +0.00,0.,1.00,  // 4
-                                +0.00,0.,0.00,  // 5
-                                +1.00,0.,0.00,  // 6
-                                +1.25,0.,0.25,  // 7
-                                +1.125,0.,0.125,  // 8
-                                +1.00,0.,0.25,  // 9
-                                +1.125,0.,0.125,  // 10
-                                +1.25,0.,0.00,  // 11
-                                +1.125,0.,0.125,  // 12
-                                +1.00,0.,0.00,  // 13
-                                +0.00,0.,0.00,  // 14
-                                +0.00,1.,0.00,  // 15
-                                +0.00,1.,0.125,  // 16
-                                +0.25,1.,0.25,  // 17
-                                +0.00,1.,0.125,  // 18
-                                -0.25,1.,0.25,  // 19
-    };
-    for(i=0;i<in;i++){
-       itsgeom->GetTrans(i+is,x,y,z);
-/*     switch (itsgeom->GetGeomMatrix(i+is)->GetDetectorIndex())
-        case 0:
-           sprintf(name,"SPD%d",i+is);
-           sprintf(title,"SPD%d",i+is);
-           sprintf(name2,"BSPD%d",i+is);
-           sprintf(title2,"BSPD%d",i+is);
-           itsn[i] = new TNode(name,title,new TBRIK(name2,title2,"void",
-                      spds->GetDx(),spds->GetDy(),spds->GetDz()),x,y,z,r[i]);
-           break;
-        case 1:
-           sprintf(name,"SDD%d",i+is);
-           sprintf(title,"SDD%d",i+is);
-           sprintf(name2,"BSDD%d",i+is);
-           sprintf(title2,"BSDD%d",i+is);
-           itsn[i] = new TNode(name,title,new TBRIK(name2,title2,"void",
-                      sdds->GetDx(),sdds->GetDy(),sdds->GetDz()),x,y,z,r[i]);
-           break;
-        case 2:
-           sprintf(name,"SSD%d",i+is);
-           sprintf(title,"SSD%d",i+is);
-           sprintf(name2,"BSSD%d",i+is);
-           sprintf(title2,"BSSD%d",i+is);
-           itsn[i] = new TNode(name,title,new TBRIK(name2,title2,"void",
-                      ssds->GetDx(),ssds->GetDy(),ssds->GetDz()),x,y,z,r[i]);
-           break; */
-       for(j=0;j<19;j++) itsgeom->LtoG(i+is,(Double_t*)&axis[3*j],
-                                            (Double_t*)&p[3*j]);
-       pl[i] = new TPolyLine3D(19,p);
-    } // end for i
-
-    // display it
-    node->cd();
-    node->Draw();
-//    for(i=0;i<in;i++) itsn[i]->Draw();
-//    node->Draw();
-    for(i=0;i<in;i++) pl[i]->Draw();
-    c1->Update();
-
-    // clean up
-//    delete[] x;
-//    delete[] y;
-//    delete[] z;
-//    for(i=0;i<itsgeom->GetIndexMax();i++) delete[] r[i];
-//    delete[] r;
-}
-
diff --git a/ITS/oldmacros/AliITSsDigits2Digits.C b/ITS/oldmacros/AliITSsDigits2Digits.C
deleted file mode 100644 (file)
index 8b4643b..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-void AliITSsDigits2Digits(const char *filename = "galice.root"){
-    // This macro takes SDigits and produces Digits. No merging is done
-    // and only one galice.root file is used. 
-    // Dynamically link some shared libs 
-    TStopwatch timer;
-
-    if(gAlice){
-       delete gAlice;
-       gAlice = 0;
-    } // end if gAlice
-    AliRunDigitizer * manager = new AliRunDigitizer(1,1);
-    manager->SetInputStream(0,filename);
-    AliITSDigitizer *dITS  = new AliITSDigitizer(manager);
-    timer.Start();
-    manager->Exec("");
-    timer.Stop(); timer.Print();
-}
diff --git a/ITS/oldmacros/AliITStest.C b/ITS/oldmacros/AliITStest.C
deleted file mode 100644 (file)
index a9f32ad..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-Int_t AliITStest() {
-   Int_t rc=0;
-
-//Test ITS simulation
-   gROOT->LoadMacro("$(ALICE_ROOT)/macros/grun.C");
-   grun();
-
-   AliITSgeom *gm = ((AliITS*)(gAlice->GetDetector("ITS")))->GetITSgeom();
-   delete gAlice; gAlice=0;
-
-   if (!gm) {
-       cerr << "This version of the ITS geometry does not have a"
-           << " AliITSgeom defined" << endl;
-      return 12345;
-   }
-
-   if (gm) {
-     gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSHits2DigitsDefault.C");
-     if (rc=AliITSHits2DigitsDefault()) return rc;
-   }
-
-   cout << "start reconstruction" << endl;
-
-   //Test ITS reconstruction
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindClusters.C");
-
-   delete gAlice; gAlice=0;
-   
-   if (rc=AliITSFindClusters()) return rc;
-
-   //gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSgraphycs.C");
-   //if (rc=AliITSgraphycs()) return rc;
-
-   return rc;
-}
diff --git a/ITS/oldmacros/AliITStestDubna.C b/ITS/oldmacros/AliITStestDubna.C
deleted file mode 100644 (file)
index f959733..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-Int_t AliITStestDubna() {
-   Int_t rc=0;
-
-//Test ITS simulation
-   gROOT->LoadMacro("$(ALICE_ROOT)/macros/grun.C");
-   grun();
-
-   Int_t ver=gAlice->GetDetector("ITS")->IsVersion();
-   delete gAlice; gAlice=0;
-
-   if (ver!=5) {
-      cerr<<"Invalid ITS version: "<<ver<<" ! (must be 5 for the moment)\n";
-      return 12345;
-   }
-
-   if (ver==5) {
-     gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSHits2DigitsDubna.C");
-     if (rc=AliITSHits2DigitsDubna()) return rc;
-
-   }
-
-   printf("start reconstruction\n");
-
-//Test ITS reconstruction
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindClustersDubna.C");
-   if (rc=AliITSFindClustersDubna()) return rc;
-
-   //gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSgraphycs.C");
-   //if (rc=AliITSgraphycs()) return rc;
-
-   return rc;
-}
diff --git a/ITS/oldmacros/AliITStestV2.C b/ITS/oldmacros/AliITStestV2.C
deleted file mode 100644 (file)
index 7600522..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-Int_t AliITStestV2(Char_t SlowOrFast='s') {
-   Int_t rc=0;
-
-   if (gAlice) {delete gAlice; gAlice=0;}
-   TFile *in=TFile::Open("galice.root");
-   if (!in->IsOpen()) {
-      cerr<<"Can't open galice.root !\n"; 
-      return 1;
-   }
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-      cerr<<"Can't find gAlice !\n";
-      return 2;
-   }
-   AliKalmanTrack::SetConvConst(1000/0.299792458/gAlice->Field()->SolenoidField());
-   delete gAlice; gAlice=0;
-   in->Close();
-
-   if (SlowOrFast=='f') {
-      cerr<<"Fast AliITSRecPoint(s) !\n";
-      gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSHits2FastRecPoints.C");
-      AliITSHits2FastRecPoints();
-   } else {
-      cerr<<"Slow AliITSRecPoint(s) !\n";
-      gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSHits2SDigits.C");
-      AliITSHits2SDigits();
-      gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindClusters.C");
-      AliITSFindClusters();
-   }
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindClustersV2.C");
-   if (rc=AliITSFindClustersV2()) return rc;
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindTracksV2.C");
-   if (rc=AliITSFindTracksV2()) return rc;
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSComparisonV2.C");
-   if (rc=AliITSComparisonV2()) return rc;
-
-   return rc;
-}
diff --git a/ITS/oldmacros/AliITStestV2.C.bck b/ITS/oldmacros/AliITStestV2.C.bck
deleted file mode 100644 (file)
index 640f7d7..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-Int_t AliITStestV2(Char_t SlowOrFast='s') {
-   Int_t rc=0;
-
-   if (gAlice) {delete gAlice; gAlice=0;}
-   TFile *in=TFile::Open("galice.root");
-   if (!in->IsOpen()) {
-      cerr<<"Can't open galice.root !\n"; 
-      return 1;
-   }
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-      cerr<<"Can't find gAlice !\n";
-      return 2;
-   }
-   AliKalmanTrack::SetConvConst(1000/0.299792458/gAlice->Field()->SolenoidField());
-   delete gAlice; gAlice=0;
-   in->Close();
-
-   if (SlowOrFast=='f') {
-      cerr<<"Fast AliITSRecPoint(s) !\n";
-      gROOT->LoadMacro("$(ALICE_ROOT)/ITS/ITSHitsToFastPoints.C");
-      ITSHitsToFastPoints();
-   } else {
-      cerr<<"Slow AliITSRecPoint(s) !\n";
-      gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSHits2Digits.C");
-      AliITSHits2Digits();
-      gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindClusters.C");
-      AliITSFindClusters();
-   }
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindClustersV2.C");
-   if (rc=AliITSFindClustersV2()) return rc;
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindTracksV2.C");
-   if (rc=AliITSFindTracksV2()) return rc;
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSComparisonV2.C");
-   if (rc=AliITSComparisonV2()) return rc;
-
-   return rc;
-}
diff --git a/ITS/oldmacros/AliTPCComparison4ITS.C b/ITS/oldmacros/AliTPCComparison4ITS.C
deleted file mode 100644 (file)
index a0fb684..0000000
+++ /dev/null
@@ -1,540 +0,0 @@
-#ifndef __CINT__
-  #include "alles.h"
-  #include "AliTPCtracker.h"
-#endif
-static const kNGoodTracks = 120000;
-
-struct GoodTrack {
-  Int_t fEventN; //event number
-  Int_t lab;
-  Int_t code;
-  Float_t px,py,pz;
-  Float_t x,y,z;
-  Float_t pxg,pyg,pzg,ptg;
-  Bool_t flag;
-};
-Int_t good_tracks(GoodTrack *gt, Int_t max, Int_t eventn=1);
-
-Int_t AliTPCComparison4ITS(Int_t eventn=1) {
-  Int_t i;
-
-   gBenchmark->Start("AliTPCComparison");
-
-   TFile *cf=TFile::Open("AliTPCclusters.root");
-   if (!cf->IsOpen()) {cerr<<"Can't open AliTPCclusters.root !\n"; return 1;}
-   AliTPCParam *digp= (AliTPCParam*)cf->Get("75x40_100x60");
-   if (!digp) { cerr<<"TPC parameters have not been found !\n"; return 2; }
-
-   ///////////
-   AliTPCtracker *tracker =0; 
-   TObjArray tarray(5000);
-   AliTPCtrack *iotrack=0;
-   Int_t nentr= 0;
-   Int_t eventptr[1000];
-   TFile *tf=TFile::Open("AliTPCtracksSorted.root");
-   TTree *tracktree=0;
-   // Load clusters
-   eventptr[0]=0;
-   eventptr[1]=0;
-   for (Int_t event=0;event<eventn; event++){
-     cf->cd();
-     tracker = new AliTPCtracker(digp,event);
-     tracker->LoadInnerSectors();
-     tracker->LoadOuterSectors();
-     
-     
-     char   tname[100];
-     cout<<"eventn = "<<eventn<<endl;
-     if (eventn==-1) {
-       sprintf(tname,"TreeT_TPC");
-     }
-     else {
-       sprintf(tname,"TreeT_TPC_%d",event);
-     }
-
-     // Load tracks
-     if (!tf->IsOpen()) {cerr<<"Can't open AliTPCtracks.root !\n"; return 3;}
-     tracktree=(TTree*)tf->Get(tname);
-     if (!tracktree) {cerr<<"Can't get a tree with TPC tracks !\n"; return 4;}
-     
-     TBranch *tbranch=tracktree->GetBranch("tracks");
-     Int_t nentr0=(Int_t)tracktree->GetEntries();
-     nentr+=nentr0;
-     cout<<"Got "<<nentr0<<" entries\n";
-     for (i=0; i<nentr0; i++) {
-       iotrack=new AliTPCtrack;
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-       //iotrack->Dump();
-       tracker->CookLabel(iotrack,0.1);
-       tarray.AddLast(iotrack);
-     }   
-     eventptr[event+1] = nentr;  //store end of the event
-     delete tracker;
-   }
-   tf->Close();
-   cf->Close();
-  
-   //MI change for a moment
-
-
-/////////////////////////////////////////////////////////////////////////
-   //   GoodTrack gt[15000];
-   GoodTrack gt[kNGoodTracks];
-
-   Int_t ngood=0;
-   ifstream in("good_tracks_tpc");
-   /*********************************************************/
-   if (in) //Case good tracks already exists
-    {
-      cerr<<"Reading good tracks...\n";
-      while (in>>gt[ngood].fEventN>>gt[ngood].lab>>gt[ngood].code>>
-                 gt[ngood].px>>gt[ngood].py>>gt[ngood].pz>>
-                 gt[ngood].x >>gt[ngood].y >>gt[ngood].z>>
-                gt[ngood].pxg>>gt[ngood].pyg>>gt[ngood].pzg>>
-                gt[ngood].ptg>>gt[ngood].flag) {
-         ngood++;
-         cerr<<ngood<<'\r';
-         if (ngood==kNGoodTracks) {
-            cerr<<"Too many good tracks !\n";
-            break;
-         }
-      }
-      if (!in.eof()) cerr<<"Read error (good_tracks_tpc) !\n";
-    } 
-   /*********************************************************/ 
-   else  //Case good tracks  do not yet exist
-    {
-      cerr<<"Marking good tracks (this will take a while)...\n";
-      ngood=good_tracks(gt,kNGoodTracks,eventn);   //mi change
-      ofstream out("good_tracks_tpc");
-      if (out) {
-         for (Int_t ngd=0; ngd<ngood; ngd++)            
-          out<<gt[ngd].fEventN<<' '<<gt[ngd].lab<<' '<<gt[ngd].code<<' '<<
-                 gt[ngd].px<<' '<<gt[ngd].py<<' '<<gt[ngd].pz<<' '<<
-                 gt[ngd].x <<' '<<gt[ngd].y <<' '<<gt[ngd].z<<' '<<
-                 gt[ngd].pxg<<' '<<gt[ngd].pyg<<' '<<gt[ngd].pzg<<' '<<' '
-                 <<gt[ngd].ptg<<gt[ngd].flag<<endl;
-      } else cerr<<"Can not open file (good_tracks_tpc) !\n";
-      out.close();
-
-      /*
-      cerr<<"Preparing tracks for matching with the ITS...\n";
-      tarray.Sort();
-      tf=TFile::Open("AliTPCtracks.root","recreate");
-      tracktree=new TTree("TPCf","Tree with TPC tracks");
-      tracktree->Branch("tracks","AliTPCtrack",&iotrack,32000,0);
-      for (i=0; i<nentr; i++) {
-          iotrack=(AliTPCtrack*)tarray.UncheckedAt(i);
-          tracktree->Fill();
-      }
-      tracktree->Write();
-      tf->Close();
-      */
-   }
-   /*********************************************************/
-   cerr<<"Number of good tracks : "<<ngood<<endl;
-
-   TH1F *hp=new TH1F("hp","PHI resolution",50,-20.,20.); hp->SetFillColor(4);
-   TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-20,20);hl->SetFillColor(4);
-   TH1F *hpt=new TH1F("hpt","Relative Pt resolution",30,-10.,10.); 
-   hpt->SetFillColor(2); 
-   TH1F *hmpt=new TH1F("hmpt","Relative Pt resolution (pt>4GeV/c)",30,-60,60); 
-   hmpt->SetFillColor(6);
-
-   AliTPCtrack *trk=(AliTPCtrack*)tarray.UncheckedAt(0);
-   Double_t pmin=0.1*(100/0.299792458/0.2/trk->GetConvConst());
-   Double_t pmax=6.0+pmin;
-
-   TH1F *hgood=new TH1F("hgood","Good tracks",30,pmin,pmax);    
-   TH1F *hfound=new TH1F("hfound","Found tracks",30,pmin,pmax);
-   TH1F *hfake=new TH1F("hfake","Fake tracks",30,pmin,pmax);
-   TH1F *hg=new TH1F("hg","",30,pmin,pmax); //efficiency for good tracks
-   hg->SetLineColor(4); hg->SetLineWidth(2);
-   TH1F *hf=new TH1F("hf","Efficiency for fake tracks",30,pmin,pmax);
-   hf->SetFillColor(1); hf->SetFillStyle(3013); hf->SetLineWidth(2);
-
-   TH1F *he =new TH1F("he","dE/dX for pions with 0.4<p<0.5 GeV/c",50,0.,100.);
-   TH2F *hep=new TH2F("hep","dE/dX vs momentum",50,0.,2.,50,0.,250.);
-   hep->SetMarkerStyle(8);
-   hep->SetMarkerSize(0.4);
-
-   Int_t mingood = ngood;  //MI change
-   Int_t * track_notfound = new Int_t[ngood];
-   Int_t   itrack_notfound =0;
-   Int_t * track_fake  = new Int_t[ngood];
-   Int_t   itrack_fake = 0;
-   Int_t * track_multifound = new Int_t[ngood];
-   Int_t * track_multifound_n = new Int_t[ngood];
-   Int_t   itrack_multifound =0;
-
-   while (ngood--) {
-      Int_t lab=gt[ngood].lab,tlab=-1;
-      Float_t ptg= 
-      TMath::Sqrt(gt[ngood].px*gt[ngood].px + gt[ngood].py*gt[ngood].py);
-
-      if (ptg<pmin) continue;
-
-      hgood->Fill(ptg);
-      Int_t ievent = gt[ngood].fEventN;
-
-      AliTPCtrack *track=0;
-      //      for (i=0; i<nentr; i++) {
-      for (i=eventptr[ievent]; i<eventptr[ievent+1]; i++) {
-
-          track=(AliTPCtrack*)tarray.UncheckedAt(i);
-          tlab=track->GetLabel();
-          if (lab==TMath::Abs(tlab)) break;
-      }
-      //      if (i==nentr) {
-      if (i==eventptr[ievent+1]) {
-
-       cerr<<"Track "<<lab<<" was not found !\n";
-       track_notfound[itrack_notfound++]=lab;
-        continue;
-      }
-      
-      //MI change  - addition
-      Int_t micount=0;
-      Int_t mi;
-      AliTPCtrack * mitrack;
-      //      for (mi=0; mi<nentr; mi++) {
-      for (mi=eventptr[ievent]; mi<eventptr[ievent+1]; mi++) {
-
-       mitrack=(AliTPCtrack*)tarray.UncheckedAt(mi);          
-       if (lab==TMath::Abs(mitrack->GetLabel())) micount++;
-      }
-      if (micount>1) {
-       //cout<<"Track no. "<<lab<<" found "<<micount<<"  times\n";
-       track_multifound[itrack_multifound]=lab;
-       track_multifound_n[itrack_multifound]=micount;
-       itrack_multifound++;
-      }
-      
-
-      //
-      Double_t xk=gt[ngood].x;//digp->GetPadRowRadii(0,0);
-      track->PropagateTo(xk);
-
-      if (lab==tlab) hfound->Fill(ptg);
-      else { 
-       track_fake[itrack_fake++]=lab;
-       hfake->Fill(ptg); 
-       //cerr<<lab<<" fake\n";
-      }
-
-      Double_t par[5]; track->GetExternalParameters(xk,par);
-      Float_t phi=TMath::ASin(par[2]) + track->GetAlpha();
-      if (phi<-TMath::Pi()) phi+=2*TMath::Pi();
-      if (phi>=TMath::Pi()) phi-=2*TMath::Pi();
-      Float_t lam=TMath::ATan(par[3]); 
-      Float_t pt_1=TMath::Abs(par[4]);
-
-      if (TMath::Abs(gt[ngood].code)==11 && ptg>4.) {
-         hmpt->Fill((pt_1 - 1/ptg)/(1/ptg)*100.);
-      } else {
-         Float_t phig=TMath::ATan2(gt[ngood].py,gt[ngood].px);
-         hp->Fill((phi - phig)*1000.);
-
-         Float_t lamg=TMath::ATan2(gt[ngood].pz,ptg);
-         hl->Fill((lam - lamg)*1000.);
-
-         hpt->Fill((pt_1 - 1/ptg)/(1/ptg)*100.);
-      }
-
-      Float_t mom=1./(pt_1*TMath::Cos(lam));
-      Float_t dedx=track->GetdEdx();
-      hep->Fill(mom,dedx,1.);
-      if (TMath::Abs(gt[ngood].code)==211)
-        if (mom>0.4 && mom<0.5) {
-            he->Fill(dedx,1.);
-         }
-
-   }
-
-   
-   Stat_t ng=hgood->GetEntries(); cerr<<"Good tracks "<<ng<<endl;
-   Stat_t nf=hfound->GetEntries();
-   if (ng!=0) 
-      cerr<<"\n\n\nIntegral efficiency is about "<<nf/ng*100.<<" %\n";
-   
-   //MI change  - addition
-   cout<<"Total number of found tracks ="<<nentr<<"\n";
-   cout<<"Total number of \"good\" tracks ="<<mingood<<"\n";
-
-
-   cout<<"\nList of Not found tracks :\n";
-   //   Int_t i;
-   for ( i = 0; i< itrack_notfound; i++){
-     cout<<track_notfound[i]<<"\t";
-     if ((i%5)==4) cout<<"\n";
-   }
-   cout<<"\nList of fake  tracks :\n";
-   for ( i = 0; i< itrack_fake; i++){
-     cout<<track_fake[i]<<"\t";
-     if ((i%5)==4) cout<<"\n";
-   }
-    cout<<"\nList of multiple found tracks :\n";
-   for ( i=0; i<itrack_multifound; i++) {
-       cout<<"id.   "<<track_multifound[i]<<"     found - "<<track_multifound_n[i]<<"times\n";
-   }
-   cout<<"\n\n\n";
-
-   
-   gStyle->SetOptStat(111110);
-   gStyle->SetOptFit(1);
-
-   TCanvas *c1=new TCanvas("c1","",0,0,700,850);
-
-   TPad *p1=new TPad("p1","",0,0.3,.5,.6); p1->Draw();
-   p1->cd(); p1->SetFillColor(42); p1->SetFrameFillColor(10); 
-   hp->SetFillColor(4);  hp->SetXTitle("(mrad)"); hp->Fit("gaus"); c1->cd();
-
-   TPad *p2=new TPad("p2","",0.5,.3,1,.6); p2->Draw(); 
-   p2->cd(); p2->SetFillColor(42); p2->SetFrameFillColor(10);
-   hl->SetXTitle("(mrad)"); hl->Fit("gaus"); c1->cd();
-
-   TPad *p3=new TPad("p3","",0,0,0.5,0.3); p3->Draw();
-   p3->cd(); p3->SetFillColor(42); p3->SetFrameFillColor(10); 
-   hpt->SetXTitle("(%)"); hpt->Fit("gaus"); c1->cd();
-
-   TPad *p4=new TPad("p4","",0.5,0,1,0.3); p4->Draw();
-   p4->cd(); p4->SetFillColor(42); p4->SetFrameFillColor(10);
-   hmpt->SetXTitle("(%)"); hmpt->Fit("gaus"); c1->cd();
-
-   TPad *p5=new TPad("p5","",0,0.6,1,1); p5->Draw(); p5->cd(); 
-   p5->SetFillColor(41); p5->SetFrameFillColor(10);
-   hfound->Sumw2(); hgood->Sumw2(); hfake->Sumw2();
-   hg->Divide(hfound,hgood,1,1.,"b");
-   hf->Divide(hfake,hgood,1,1.,"b");
-   hg->SetMaximum(1.4);
-   hg->SetYTitle("Tracking efficiency");
-   hg->SetXTitle("Pt (GeV/c)");
-   hg->Draw();
-
-   TLine *line1 = new TLine(pmin,1.0,pmax,1.0); line1->SetLineStyle(4);
-   line1->Draw("same");
-   TLine *line2 = new TLine(pmin,0.9,pmax,0.9); line2->SetLineStyle(4);
-   line2->Draw("same");
-
-   hf->SetFillColor(1);
-   hf->SetFillStyle(3013);
-   hf->SetLineColor(2);
-   hf->SetLineWidth(2);
-   hf->Draw("histsame");
-   TText *text = new TText(0.461176,0.248448,"Fake tracks");
-   text->SetTextSize(0.05);
-   text->Draw();
-   text = new TText(0.453919,1.11408,"Good tracks");
-   text->SetTextSize(0.05);
-   text->Draw();
-
-
-
-   TCanvas *c2=new TCanvas("c2","",320,32,530,590);
-
-   TPad *p6=new TPad("p6","",0.,0.,1.,.5); p6->Draw();
-   p6->cd(); p6->SetFillColor(42); p6->SetFrameFillColor(10); 
-   he->SetFillColor(2); he->SetFillStyle(3005);  
-   he->SetXTitle("Arbitrary Units"); 
-   he->Fit("gaus"); c2->cd();
-
-   TPad *p7=new TPad("p7","",0.,0.5,1.,1.); p7->Draw(); 
-   p7->cd(); p7->SetFillColor(42); p7->SetFrameFillColor(10);
-   hep->SetXTitle("p (Gev/c)"); hep->SetYTitle("dE/dX (Arb. Units)"); 
-   hep->Draw(); c1->cd();
-
-   gBenchmark->Stop("AliTPCComparison");
-   gBenchmark->Show("AliTPCComparison");
-
-
-   return 0;
-}
-
-
-/*********************************************************/
-/*********************************************************/
-/*********************************************************/
-/*********************************************************/
-
-Int_t good_tracks(GoodTrack *gt, Int_t max, Int_t eventn) {
-  //eventn  - number of events in file
-
-   TFile *file=TFile::Open("rfio:galice.root");
-   if (!file->IsOpen()) {cerr<<"Can't open galice.root !\n"; exit(4);}
-
-   if (!(gAlice=(AliRun*)file->Get("gAlice"))) {
-     cerr<<"gAlice have not been found on galice.root !\n";
-     exit(5);
-   }
-
-   //   Int_t np=gAlice->GetEvent(0); //MI change   
-
-   AliTPC *TPC=(AliTPC*)gAlice->GetDetector("TPC");
-   Int_t ver = TPC->IsVersion(); 
-   cerr<<"TPC version "<<ver<<" has been found !\n";
-
-   AliTPCParam *digp=(AliTPCParam*)file->Get("75x40_100x60");
-   if (!digp) { cerr<<"TPC parameters have not been found !\n"; exit(6); }
-   TPC->SetParam(digp);
-
-   Int_t nrow_up=digp->GetNRowUp();
-   Int_t nrows=digp->GetNRowLow()+nrow_up;
-   Int_t zero=digp->GetZeroSup();
-   Int_t gap=Int_t(0.125*nrows);
-   Int_t good_number=Int_t(0.4*nrows);
-
-
-   //MI change
-   Int_t nt=0;  //reset counter
-   char treeName[100];  //declare event identifier
-       
-   for (Int_t event=0;event<eventn;event++){
-
-     Int_t np=gAlice->GetEvent(event);   
-     Int_t *good=new Int_t[np];
-     for (Int_t ii=0; ii<np; ii++) good[ii]=0;
-     
-     
-     //MI change to be possible compile macro
-     //definition out of the swith statemnet
-     Int_t sectors_by_rows=0;
-     TTree *TD=0;
-     AliSimDigits da, *digits=&da;
-     Int_t *count=0;
-     switch (ver) {
-     case 1:
-       {
-        TFile *cf=TFile::Open("AliTPCclusters.root");
-        if (!cf->IsOpen()){cerr<<"Can't open AliTPCclusters.root !\n";exit(5);}
-        AliTPCClustersArray *ca=new AliTPCClustersArray;
-        ca->Setup(digp);
-        ca->SetClusterType("AliTPCcluster");
-        ca->ConnectTree("Segment Tree");
-        Int_t nrows=Int_t(ca->GetTree()->GetEntries());
-        for (Int_t n=0; n<nrows; n++) {
-          AliSegmentID *s=ca->LoadEntry(n);
-          Int_t sec,row;
-          digp->AdjustSectorRow(s->GetID(),sec,row);
-          AliTPCClustersRow &clrow = *ca->GetRow(sec,row);
-          Int_t ncl=clrow.GetArray()->GetEntriesFast();
-          while (ncl--) {
-            AliTPCcluster *c=(AliTPCcluster*)clrow[ncl];
-            Int_t lab=c->GetLabel(0);
-            if (lab<0) continue; //noise cluster
-            lab=TMath::Abs(lab);
-            if (sec>=digp->GetNInnerSector())
-              if (row==nrow_up-1    ) good[lab]|=0x1000;
-            if (sec>=digp->GetNInnerSector())
-              if (row==nrow_up-1-gap) good[lab]|=0x800;
-            good[lab]++;
-          }
-          ca->ClearRow(sec,row);
-        }
-        cf->Close();
-       }
-     break;
-     case 2:
-
-       sprintf(treeName,"TreeD_75x40_100x60_%d",event);       
-       TD=(TTree*)gDirectory->Get(treeName);
-       TD->GetBranch("Segment")->SetAddress(&digits);
-       count = new Int_t[np];
-       Int_t i;
-       for (i=0; i<np; i++) count[i]=0;
-       sectors_by_rows=(Int_t)TD->GetEntries();
-       for (i=0; i<sectors_by_rows; i++) {
-        if (!TD->GetEvent(i)) continue;
-        Int_t sec,row;
-        digp->AdjustSectorRow(digits->GetID(),sec,row);
-        cerr<<sec<<' '<<row<<"                                     \r";
-        digits->First();
-        do { //Many thanks to J.Chudoba who noticed this
-          Int_t it=digits->CurrentRow(), ip=digits->CurrentColumn();
-          Short_t dig = digits->GetDigit(it,ip);
-          Int_t idx0=digits->GetTrackID(it,ip,0); 
-          Int_t idx1=digits->GetTrackID(it,ip,1);
-          Int_t idx2=digits->GetTrackID(it,ip,2);
-          if (idx0>=0 && dig>=zero) count[idx0]+=1;
-          if (idx1>=0 && dig>=zero) count[idx1]+=1;
-          if (idx2>=0 && dig>=zero) count[idx2]+=1;
-          } while (digits->Next());
-        for (Int_t j=0; j<np; j++) {
-          if (count[j]>1) {
-            if (sec>=digp->GetNInnerSector())
-              if (row==nrow_up-1    ) good[j]|=0x1000;
-            if (sec>=digp->GetNInnerSector())
-              if (row==nrow_up-1-gap) good[j]|=0x800;
-            good[j]++;
-          }
-          count[j]=0;
-        }
-       }
-       delete[] count;
-       break;
-     default:
-       cerr<<"Invalid TPC version !\n";
-       file->Close();
-       exit(7);
-     }
-     
-     TTree *TH=gAlice->TreeH();
-     Int_t npart=(Int_t)TH->GetEntries();
-
-     while (npart--) {
-       AliTPChit *hit0=0;
-       
-       TPC->ResetHits();
-       TH->GetEvent(npart);
-       AliTPChit * hit = (AliTPChit*) TPC->FirstHit(-1);
-       while (hit){
-        if (hit->fQ==0.) break;
-       hit =  (AliTPChit*) TPC->NextHit();
-       }
-       if (hit) {
-        hit0 = new AliTPChit(*hit); //Make copy of hit
-        hit = hit0;
-       }
-       else continue;
-       AliTPChit *hit1=(AliTPChit*)TPC->NextHit();     
-       if (hit1==0) continue;
-       if (hit1->fQ != 0.) continue;
-       Int_t i=hit->Track();
-       TParticle *p = (TParticle*)gAlice->Particle(i);
-       
-       if (p->GetFirstMother()>=0) continue;  //secondary particle
-       if (good[i] < 0x1000+0x800+2+good_number) continue;
-       if (p->Pt()<0.100) continue;
-       if (TMath::Abs(p->Pz()/p->Pt())>0.999) continue;
-       
-       gt[nt].lab=i;
-       gt[nt].code=p->GetPdgCode();
-       //**** px py pz - in global coordinate system, x y z - in local !
-       gt[nt].px=hit->X(); gt[nt].py=hit->Y(); gt[nt].pz=hit->Z();
-       Float_t cs,sn; digp->AdjustCosSin(hit1->fSector,cs,sn);
-       gt[nt].fEventN=event;  //MI change
-       gt[nt].x = hit1->X()*cs + hit1->Y()*sn;
-       gt[nt].y =-hit1->X()*sn + hit1->Y()*cs;
-       gt[nt].z = hit1->Z();
-       gt[nt].pxg = p->Px();
-       gt[nt].pyg = p->Py();
-       gt[nt].pzg = p->Pz();
-       gt[nt].ptg = p->Pt();
-       gt[nt].flag = 0;
-       nt++;   
-       if (hit0) delete hit0;
-       cerr<<i<<"                \r";
-       if (nt==max) {cerr<<"Too many good tracks !\n"; break;}
-     }
-     delete[] good;
-   }
-   //delete gAlice; gAlice=0;
-
-   file->Close();
-   gBenchmark->Stop("AliTPCComparison");
-   gBenchmark->Show("AliTPCComparison");   
-   return nt;
-}
-
-
-
diff --git a/ITS/oldmacros/AliTPCtracknew.C b/ITS/oldmacros/AliTPCtracknew.C
deleted file mode 100644 (file)
index b63909a..0000000
+++ /dev/null
@@ -1,370 +0,0 @@
-/****************************************************************************
- * This macro is supposed to do reconstruction in the barrel ALICE trackers *
- * (Make sure you have TPC digits and ITS hits before using this macro !!!) *
- * It does the following steps (April 12, 2001):                            *
- *                   1) TPC cluster finding                                 *
- *                   2) TPC track finding                                   *
- *                   3) ITS cluster finding V2 (via fast points !)          *
- *                   4) ITS track finding V2                                *
- *                   5) ITS back track propagation V2                       *
- *                   6) TPC back track propagation                          *
- *                (Origin: I.Belikov, CERN, Jouri.Belikov@cern.ch)          *
- ****************************************************************************/
-
-#ifndef __CINT__
-  #include "alles.h"
-  #include "AliMagF.h"
-  #include "AliTPCtracker.h"
-
-  #include "AliITS.h"
-  #include "AliITSgeom.h"
-  #include "AliITSRecPoint.h"
-  #include "AliITSclusterV2.h"
-  #include "AliITSsimulationFastPoints.h"
-  #include "AliITStrackerV2.h"
-#endif
-
-Int_t TPCFindClusters(const Char_t *inname, const Char_t *outname);
-Int_t TPCFindTracks(const Char_t *inname, const Char_t *outname);
-Int_t TPCSortTracks(const Char_t *inname, const Char_t *outname);
-Int_t TPCPropagateBack(const Char_t *inname, const Char_t *outname);
-
-Int_t ITSFindClusters(const Char_t *inname, const Char_t *outname);
-Int_t ITSFindTracks(const Char_t *inname, const Char_t *outname);
-Int_t ITSPropagateBack(const Char_t *inname, const Char_t *outname);
-
-
-Int_t AliTPCtracknew() {
-   const Char_t *TPCdigName="galice.root";
-   const Char_t *TPCclsName="AliTPCclusters.root";
-   const Char_t *TPCtrkName="AliTPCtracks.root";
-
-   const Char_t *ITSdigName="galice.root";
-   const Char_t *ITSclsName="AliITSclustersV2.root";
-   const Char_t *ITStrkName="AliITStracksV2.root";
-
-   AliKalmanTrack::SetConvConst(100/0.299792458/0.2/gAlice->Field()->Factor());
-  // AliKalmanTrack::SetConvConst(100/0.299792458/0.2/2);
-// ********** Find TPC clusters *********** //
-   if (TPCFindClusters(TPCdigName,TPCclsName)) {
-      cerr<<"Failed to get TPC clusters !\n";
-      return 1;
-   }      
-
-// ********** Find TPC tracks *********** //
-   if (TPCFindTracks(TPCclsName,TPCtrkName)) {
-      cerr<<"Failed to get TPC tracks !\n";
-      return 1;
-   }
-
-// ********** Sort and label TPC tracks *********** //
-   if (TPCSortTracks(TPCclsName,TPCtrkName)) {
-      cerr<<"Failed to sort TPC tracks !\n";
-      return 1;
-   }
-/*
-// ********** Find ITS clusters *********** //
-   if (ITSFindClusters(ITSdigName,ITSclsName)) {
-      cerr<<"Failed to get ITS clusters !\n";
-      return 1;
-   }
-
-// ********** Find ITS tracks *********** //
-   {TFile *clsFile=TFile::Open(ITSclsName);
-   if (ITSFindTracks(TPCtrkName,ITStrkName)) {
-      cerr<<"Failed to get ITS tracks !\n";
-      return 1;
-   }
-   clsFile->Close();}
-
-// ********** Back propagation of the ITS tracks *********** //
-   {TFile *clsFile=TFile::Open(ITSclsName);
-   if (ITSPropagateBack(ITStrkName,TPCtrkName)) {
-      cerr<<"Failed to propagate back the ITS tracks !\n";
-      return 1;
-   }
-   clsFile->Close();}
-
-
-// ********** Back propagation of the TPC tracks *********** //
-   {TFile *clsFile=TFile::Open(TPCclsName);
-   if (TPCPropagateBack(TPCtrkName,TPCtrkName)) {
-      cerr<<"Failed to propagate back the TPC tracks !\n";
-      return 1;
-   }
-   clsFile->Close();}
-*/
-   return 0;
-}
-
-
-Int_t TPCFindClusters(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="TPCFindClusters";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-
-   AliTPCParam *param=(AliTPCParam *)in->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-   AliTPCv2 tpc;
-   tpc.SetParam(param);
-
-   tpc.Digits2Clusters(out);
-
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t TPCFindTracks(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="TPCFindTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-   AliTPCParam *param=(AliTPCParam *)in->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-
-   AliTPCtracker *tracker=new AliTPCtracker(param);
-   rc=tracker->Clusters2Tracks(0,out);
-   delete tracker;
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t TPCSortTracks(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="TPCSortTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   TFile *out=TFile::Open(outname);
-   TFile *in =TFile::Open(inname);
-   AliTPCParam *param=(AliTPCParam *)in->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-
-   TObjArray tarray(10000);
-   AliTPCtrack *iotrack=0;
-   Int_t i;
-
-   out->cd();
-   TTree *tracktree=(TTree*)out->Get("TPCf");
-   TBranch *tbranch=tracktree->GetBranch("tracks");
-   Int_t nentr=(Int_t)tracktree->GetEntries();
-   for (i=0; i<nentr; i++) {
-       iotrack=new AliTPCtrack;
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-       tarray.AddLast(iotrack);
-   }   
-   tarray.Sort();
-   out->Close();
-   
-   //assign thacks GEANT labels
-   in->cd();
-   AliTPCtracker *tracker = new AliTPCtracker(param);
-   tracker->LoadInnerSectors();
-   tracker->LoadOuterSectors();
-   for (i=0; i<nentr; i++) {
-       iotrack=(AliTPCtrack*)tarray.UncheckedAt(i);
-       tracker->CookLabel(iotrack,0.1);
-   }   
-   delete tracker;
-   in->Close();
-   //end of GEANT label assignment
-
-   out=TFile::Open(outname,"recreate");
-   tracktree=new TTree("TPCf","Tree with TPC tracks");
-   tracktree->Branch("tracks","AliTPCtrack",&iotrack,32000,0);
-   for (i=0; i<nentr; i++) {
-       iotrack=(AliTPCtrack*)tarray.UncheckedAt(i);
-       tracktree->Fill();
-   }
-   tracktree->Write();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSFindClusters(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="ITSFindClusters";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname,"update");
-
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-      cerr<<"Can't get gAlice !\n";
-      return 1;
-   }
-   Int_t ev=0;
-   gAlice->GetEvent(ev);
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   if (!ITS) { cerr<<"Can't get the ITS !\n"; return 1;}
-
-   gAlice->MakeTree("R"); ITS->MakeBranch("R",0);
-   //////////////// Taken from ITSHitsToFastPoints.C ///////////////////////
-   AliITSsimulationFastPoints *sim = new AliITSsimulationFastPoints();
-   for (Int_t i=0;i<3;i++) { ITS->SetSimulationModel(i,sim); }
-   Int_t nsignal=25;
-   Int_t size=-1;
-   Int_t bgr_ev=Int_t(ev/nsignal);
-   ITS->HitsToFastRecPoints(ev,bgr_ev,size," ","All"," ");
-   //////////////////////////////////////////////////////////////////////////
-
-   gAlice->GetEvent(ev);
-
-   AliITSgeom *geom=ITS->GetITSgeom();
-   out->cd();
-   geom->Write();
-
-   TClonesArray *clusters=new TClonesArray("AliITSclusterV2",10000);
-   TTree *cTree=new TTree("cTree","ITS clusters");
-   cTree->Branch("Clusters",&clusters);
-
-   TTree *pTree=gAlice->TreeR();
-   if (!pTree) { cerr<<"Can't get TreeR !\n"; return 1; }
-   TBranch *branch=pTree->GetBranch("ITSRecPoints");
-   if (!branch) { cerr<<"Can't get ITSRecPoints branch !\n"; return 1;}
-   TClonesArray *points=new TClonesArray("AliITSRecPoint",10000);
-   branch->SetAddress(&points);
-
-   TClonesArray &cl=*clusters;
-   Int_t nclusters=0;
-   Int_t nentr=(Int_t)pTree->GetEntries();
-   for (Int_t i=0; i<nentr; i++) {
-       if (!pTree->GetEvent(i)) {cTree->Fill(); continue;}
-       Int_t lay,lad,det; geom->GetModuleId(i,lay,lad,det);
-       Float_t x,y,zshift; geom->GetTrans(lay,lad,det,x,y,zshift); 
-       Double_t rot[9];    geom->GetRotMatrix(lay,lad,det,rot);
-       Double_t yshift = x*rot[0] + y*rot[1];
-       Int_t ndet=(lad-1)*geom->GetNdetectors(lay) + (det-1);
-       Int_t ncl=points->GetEntriesFast();
-       nclusters+=ncl;
-       for (Int_t j=0; j<ncl; j++) {
-          AliITSRecPoint *p=(AliITSRecPoint*)points->UncheckedAt(j);
-          Float_t lp[5];
-          lp[0]=-p->GetX()-yshift; if (lay==1) lp[0]=-lp[0];
-          lp[1]=p->GetZ()+zshift;
-          lp[2]=p->GetSigmaX2();
-          lp[3]=p->GetSigmaZ2();
-          lp[4]=p->GetQ();
-          Int_t lab[6]; 
-          lab[0]=p->GetLabel(0);lab[1]=p->GetLabel(1);lab[2]=p->GetLabel(2);
-          lab[3]=ndet;
-
-          Int_t label=lab[0];
-          TParticle *part=(TParticle*)gAlice->Particle(label);
-          label=-3;
-          while (part->P() < 0.005) {
-             Int_t m=part->GetFirstMother();
-             if (m<0) {cerr<<"Primary momentum: "<<part->P()<<endl; break;}
-             label=m;
-             part=(TParticle*)gAlice->Particle(label);
-          }
-          if      (lab[1]<0) lab[1]=label;
-          else if (lab[2]<0) lab[2]=label;
-          else cerr<<"No empty labels !\n";
-
-          new(cl[j]) AliITSclusterV2(lab,lp);
-       }
-       cTree->Fill(); clusters->Delete();
-       points->Delete();
-   }
-   cTree->Write();
-   cerr<<"Number of clusters: "<<nclusters<<endl;
-
-   delete cTree; delete clusters; delete points;
-
-   delete gAlice; gAlice=0;
-   in->Close();
-   out->Close();
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSFindTracks(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="ITSFindTracks";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   AliITSgeom *geom=(AliITSgeom*)gFile->Get("AliITSgeom");
-   if (!geom) { cerr<<"can't get ITS geometry !\n"; return 1;}
-   AliITStrackerV2 tracker(geom);
-
-   TFile *out=TFile::Open(outname,"recreate");
-   TFile *in =TFile::Open(inname);
-   rc=tracker.Clusters2Tracks(in,out);
-   in->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t ITSPropagateBack(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="ITSPropagateBack";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   AliITSgeom *geom=(AliITSgeom*)gFile->Get("AliITSgeom");
-   if (!geom) { cerr<<"can't get ITS geometry !\n"; return 1;}
-   AliITStrackerV2 tracker(geom);
-
-   TFile *out=TFile::Open(outname,"update");
-   TFile *in =TFile::Open(inname);
-   rc=tracker.PropagateBack(in,out);
-   in->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
-Int_t TPCPropagateBack(const Char_t *inname, const Char_t *outname) {
-   Int_t rc=0;
-   const Char_t *name="TPCPropagateBack";
-   cerr<<'\n'<<name<<"...\n";
-   gBenchmark->Start(name);
-
-   AliTPCParam *param=(AliTPCParam *)gFile->Get("75x40_100x60");
-   if (!param) {cerr<<"TPC parameters have not been found !\n"; return 1;}
-   AliTPCtracker *tracker=new AliTPCtracker(param);
-
-   TFile *out=TFile::Open(outname,"update");
-   TFile *in =TFile::Open(inname);
-   rc=tracker->PropagateBack(in,out);
-   delete tracker;
-   in->Close();
-   out->Close();
-
-   gBenchmark->Stop(name);
-   gBenchmark->Show(name);
-
-   return rc;
-}
-
diff --git a/ITS/oldmacros/AliTPCtracks.C b/ITS/oldmacros/AliTPCtracks.C
deleted file mode 100644 (file)
index c539095..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-Int_t AliTPCtracks() {
-   Int_t rc=0;
-
-//Test TPC simulation
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/macros/grun.C");
-   grun();
-  //added new 
-  AliKalmanTrack::SetConvConst(100/0.299792458/0.2/gAlice->Field()->Factor());
-  
-   Int_t ver=gAlice->GetDetector("TPC")->IsVersion();
-   delete gAlice; gAlice=0;
-
-   if ((ver!=1)&&(ver!=2)) {
-      cerr<<"Invalid TPC version: "<<ver<<" ! (must be 1 or 2)\n";
-      return 12345;
-   }
-
-   if (ver==2) {
-     gROOT->LoadMacro("$(ALICE_ROOT)/TPC/AliTPCHits2Digits.C");
-     if (rc=AliTPCHits2Digits()) return rc;
-
-   }
-
-//Test TPC reconstruction
-   gROOT->LoadMacro("$(ALICE_ROOT)/TPC/AliTPCFindClusters.C");
-   if (rc=AliTPCFindClusters()) return rc;
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/TPC/AliTPCFindTracks.C");
-   if (rc=AliTPCFindTracks()) return rc;
-   /*
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/TPCtracks.C");
-   if (rc=TPCtracks()) return rc;
-    */
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/TPCtracks.C");
-   if (rc=TPCtracks()) return rc;   
-   return rc;
-}
diff --git a/ITS/oldmacros/AliV0Comparison.C b/ITS/oldmacros/AliV0Comparison.C
deleted file mode 100644 (file)
index 92bdc39..0000000
+++ /dev/null
@@ -1,349 +0,0 @@
-/****************************************************************************
- *           Very important, delicate and rather obscure macro.             *
- *                                                                          *
- *                  Creates list of "findable" V0s,                         *
- *             calculates efficiency, resolutions etc.                      *
- *                                                                          *
- *   Origin: I.Belikov, IReS, Strasbourg, Jouri.Belikov@cern.ch             *
- ****************************************************************************/
-
-#ifndef __CINT__
-  #include <iostream.h>
-  #include <fstream.h>
-
-  #include "TH1.h"
-  #include "TFile.h"
-  #include "TTree.h"
-  #include "TObjArray.h"
-  #include "TStyle.h"
-  #include "TCanvas.h"
-  #include "TLine.h"
-  #include "TText.h"
-  #include "TParticle.h"
-  #include "TStopwatch.h"
-
-  #include "AliRun.h"
-  #include "AliPDG.h"
-  #include "AliV0vertex.h"
-#endif
-
-struct GoodVertex {
-  Int_t nlab,plab;
-  Int_t code;
-  Float_t px,py,pz;
-  Float_t x,y,z;
-};
-Int_t good_vertices(GoodVertex *gt, Int_t max);
-
-Int_t AliV0Comparison(Int_t code=310) { //Lambda=3122, LambdaBar=-3122
-   cerr<<"Doing comparison...\n";
-
-   const Double_t V0window=0.05, V0width=0.015; 
-   Double_t V0mass=0.5;
-   switch (code) {
-   case kK0Short:    V0mass=0.497672; break;
-   case kLambda0:    V0mass=1.115683; break;
-   case kLambda0Bar: V0mass=1.115683; break;
-   default: cerr<<"Invalid PDG code !\n"; return 1;
-   }
-
-   TStopwatch timer;
-
-   /*** Load reconstructed vertices ***/
-   TFile *vf=TFile::Open("AliV0vertices.root");
-   if (!vf->IsOpen()) {cerr<<"Can't open AliV0vertices.root !\n"; return 2;}
-   TObjArray varray(1000);
-   TTree *vTree=(TTree*)vf->Get("TreeV");
-   TBranch *branch=vTree->GetBranch("vertices");
-   Int_t nentr=(Int_t)vTree->GetEntries();
-   for (Int_t i=0; i<nentr; i++) {
-       AliV0vertex *iovertex=new AliV0vertex; branch->SetAddress(&iovertex);
-       vTree->GetEvent(i);
-       varray.AddLast(iovertex);
-   }
-
-   /*** Check if the file with the "good" vertices exists ***/
-   GoodVertex gv[1000];
-   Int_t ngood=0;
-   ifstream in("good_vertices");
-   if (in) {
-      cerr<<"Reading good vertices...\n";
-      while (in>>gv[ngood].nlab>>gv[ngood].plab>>gv[ngood].code>>
-                 gv[ngood].px>>gv[ngood].py>>gv[ngood].pz>>
-                 gv[ngood].x >>gv[ngood].y >>gv[ngood].z) {
-         ngood++;
-         cerr<<ngood<<'\r';
-         if (ngood==1000) {
-            cerr<<"Too many good vertices !\n";
-            break;
-         }
-      }
-      if (!in.eof()) cerr<<"Read error (good_vertices) !\n";
-   } else {
-     /*** generate a file with the "good" vertices ***/
-      cerr<<"Marking good vertices (this will take a while)...\n";
-      ngood=good_vertices(gv,1000);
-      ofstream out("good_vertices");
-      if (out) {
-         for (Int_t ngd=0; ngd<ngood; ngd++)            
-           out<<gv[ngd].nlab<<' '<<gv[ngd].plab<<' '<<gv[ngd].code<<' '<<
-                 gv[ngd].px<<' '<<gv[ngd].py<<' '<<gv[ngd].pz<<' '<<
-                 gv[ngd].x <<' '<<gv[ngd].y <<' '<<gv[ngd].z <<endl;
-      } else cerr<<"Can not open file (good_vertices) !\n";
-      out.close();
-   }
-
-   vf->Close();
-
-
-   TH1F *hp=new TH1F("hp","Angular Resolution",30,-30.,30.); //phi resolution 
-   hp->SetXTitle("(mrad)"); hp->SetFillColor(2);
-   TH1F *hl=new TH1F("hl","Lambda Resolution",30,-30,30);
-   hl->SetXTitle("(mrad)"); hl->SetFillColor(1); hl->SetFillStyle(3013); 
-   TH1F *hpt=new TH1F("hpt","Relative Pt Resolution",30,-10.,10.); 
-   hpt->SetXTitle("(%)"); hpt->SetFillColor(2); 
-
-   TH1F *hx=new TH1F("hx","Position Resolution (X,Y)",30,-3.,3.); //x res. 
-   hx->SetXTitle("(mm)"); hx->SetFillColor(6);
-   TH1F *hy=new TH1F("hy","Position Resolution (Y)",30,-3.,3.);   //y res
-   hy->SetXTitle("(mm)"); hy->SetFillColor(1); hy->SetFillStyle(3013);
-   TH1F *hz=new TH1F("hz","Position Resolution (Z)",30,-3.,3.);   //z res. 
-   hz->SetXTitle("(mm)"); hz->SetFillColor(6);
-
-
-   Double_t pmin=0.2, pmax=4.2; Int_t nchan=20;
-   TH1F *hgood=new TH1F("hgood","Good Vertices",nchan,pmin,pmax);    
-   TH1F *hfound=new TH1F("hfound","Found Vertices",nchan,pmin,pmax);
-   TH1F *hfake=new TH1F("hfake","Fake Vertices",nchan,pmin,pmax);
-   TH1F *hg=new TH1F("hg","Efficiency for Good Vertices",nchan,pmin,pmax);
-   hg->SetLineColor(4); hg->SetLineWidth(2);
-   TH1F *hf=new TH1F("hf","Probability of Fake Vertices",nchan,pmin,pmax);
-   hf->SetFillColor(1); hf->SetFillStyle(3013); hf->SetLineWidth(2);
-
-   Double_t mmin=V0mass-V0window, mmax=V0mass+V0window;
-   TH1F *v0s =new TH1F("v0s","V0s Effective Mass",40, mmin, mmax);
-   v0s->SetXTitle("(GeV)"); v0s->SetFillColor(6);
-
-
-   Double_t pxg=0.,pyg=0.,ptg=0.;
-   Int_t nlab=-1, plab=-1;
-   Int_t i;
-   for (i=0; i<nentr; i++) {
-       AliV0vertex *vertex=(AliV0vertex*)varray.UncheckedAt(i);
-       nlab=TMath::Abs(vertex->GetNlabel());
-       plab=TMath::Abs(vertex->GetPlabel());
-
-       vertex->ChangeMassHypothesis(code);
-
-       Double_t mass=vertex->GetEffMass();
-       v0s->Fill(mass);
-
-       Int_t j;
-       for (j=0; j<ngood; j++) {
-          if (gv[j].code != vertex->GetPdgCode()) continue;
-          if (gv[j].nlab == nlab)
-          if (gv[j].plab == plab) break;
-       }
-
-       if (TMath::Abs(mass-V0mass)>V0width) continue;
-
-       Double_t px,py,pz; vertex->GetPxPyPz(px,py,pz);
-       Double_t pt=TMath::Sqrt(px*px+py*py);
-
-       if (j==ngood) {
-          hfake->Fill(pt);
-          cerr<<"Fake vertex: ("<<nlab<<","<<plab<<")\n";
-          continue;
-       }
-
-       pxg=gv[j].px; pyg=gv[j].py; ptg=TMath::Sqrt(pxg*pxg+pyg*pyg);
-       Double_t phig=TMath::ATan2(pyg,pxg), phi=TMath::ATan2(py,px);
-       Double_t lamg=TMath::ATan2(gv[j].pz,ptg), lam=TMath::ATan2(pz,pt);
-       hp->Fill((phi - phig)*1000.);
-       hl->Fill((lam - lamg)*1000.);
-       hpt->Fill((1/pt - 1/ptg)/(1/ptg)*100.);
-
-       Double_t x,y,z; vertex->GetXYZ(x,y,z);
-       hx->Fill((x-gv[j].x)*10);
-       hy->Fill((y-gv[j].y)*10);
-       hz->Fill((z-gv[j].z)*10);
-
-       hfound->Fill(ptg);
-       gv[j].nlab=-1;
-
-   }
-   for (i=0; i<ngood; i++) {
-      if (gv[i].code != code) continue;
-      pxg=gv[i].px; pyg=gv[i].py; ptg=TMath::Sqrt(pxg*pxg+pyg*pyg);
-      hgood->Fill(ptg);
-      nlab=gv[i].nlab; plab=gv[i].plab;
-      if (nlab < 0) continue;
-      cerr<<"Vertex ("<<nlab<<','<<plab<<") has not been found !\n";
-   }
-
-   varray.Delete();
-
-   Stat_t ng=hgood->GetEntries();
-   Stat_t nf=hfound->GetEntries();
-
-   cerr<<"Number of found vertices: "<<nentr<<" ("<<nf<<" in the peak)\n";
-   cerr<<"Number of good vertices: "<<ng<<endl;
-
-   if (ng!=0) 
-      cerr<<"Integral efficiency is about "<<nf/ng*100.<<" %\n";
-
-   gStyle->SetOptStat(111110);
-   gStyle->SetOptFit(1);
-
-   TCanvas *c1=new TCanvas("c1","",0,0,580,610);
-   c1->Divide(2,2);
-
-   c1->cd(1);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10); 
-   //hp->Fit("gaus");
-   hp->Draw();
-   hl->Draw("same"); c1->cd();
-
-   c1->cd(2);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10);
-   //hpt->Fit("gaus"); c1->cd();
-   hpt->Draw(); c1->cd();
-
-   c1->cd(3);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10); 
-   //hx->Fit("gaus"); 
-   hx->Draw(); 
-   hy->Draw("same"); c1->cd();
-
-   c1->cd(4);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10);
-   //hz->Fit("gaus");
-   hz->Draw();
-
-
-   TCanvas *c2=new TCanvas("c2","",600,0,580,610);
-   c2->Divide(1,2);
-
-   c2->cd(1);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10);
-   hfound->Sumw2(); hgood->Sumw2(); hfake->Sumw2();
-   hg->Divide(hfound,hgood,1,1.,"b");
-   hf->Divide(hfake,hgood,1,1.,"b");
-   hg->SetMaximum(1.4);
-   hg->SetYTitle("V0 reconstruction efficiency");
-   hg->SetXTitle("Pt (GeV/c)");
-   hg->Draw();
-
-   TLine *line1 = new TLine(pmin,1.0,pmax,1.0); line1->SetLineStyle(4);
-   line1->Draw("same");
-   TLine *line2 = new TLine(pmin,0.9,pmax,0.9); line2->SetLineStyle(4);
-   line2->Draw("same");
-
-   hf->SetFillColor(1);
-   hf->SetFillStyle(3013);
-   hf->SetLineColor(2);
-   hf->SetLineWidth(2);
-   hf->Draw("histsame");
-   TText *text = new TText(0.461176,0.248448,"Fake vertices");
-   text->SetTextSize(0.05);
-   text->Draw();
-   text = new TText(0.453919,1.11408,"Good vertices");
-   text->SetTextSize(0.05);
-   text->Draw();
-
-
-   c2->cd(2);
-   gPad->SetFillColor(42); gPad->SetFrameFillColor(10);
-   v0s->SetXTitle("(GeV/c)"); 
-   v0s->Fit("gaus","","",V0mass-V0width,V0mass+V0width);
-   Double_t max=v0s->GetMaximum();
-   TLine *line3 = new TLine(V0mass-V0width,0.,V0mass-V0width,max);
-   line3->Draw("same");
-   TLine *line4 = new TLine(V0mass+V0width,0.,V0mass+V0width,max);
-   line4->Draw("same");
-
-   timer.Stop(); timer.Print();
-
-   return 0;
-}
-
-Int_t good_vertices(GoodVertex *gv, Int_t max) {
-   Int_t nv=0;
-   /*** Get information about the cuts ***/
-   Double_t r2min=0.9*0.9;
-   Double_t r2max=2.9*2.9;
-
-   /*** Get labels of the "good" tracks ***/
-   Double_t dd; Int_t id, label[15000], ngt=0;
-   ifstream in("good_tracks_its");
-   if (!in) {
-     cerr<<"Can't open the file good_tracks_its \n";
-     return nv;
-   }
-   while (in>>label[ngt]>>id>>dd>>dd>>dd>>dd>>dd>>dd) {
-     ngt++;
-     if (ngt>=15000) {
-       cerr<<"Too many good ITS tracks !\n";
-       return nv;
-     }
-   }   
-   if (!in.eof()) {
-      cerr<<"Read error (good_tracks_its) !\n";
-      return nv;
-   }
-
-   /*** Get an access to the kinematics ***/
-   if (gAlice) {delete gAlice; gAlice=0;}
-
-   TFile *file=TFile::Open("galice.root");
-   if (!file->IsOpen()) {cerr<<"Can't open galice.root !\n"; exit(4);}
-   if (!(gAlice=(AliRun*)file->Get("gAlice"))) {
-     cerr<<"gAlice has not been found on galice.root !\n";
-     exit(5);
-   }
-
-   Int_t np=gAlice->GetEvent(0);
-   while (np--) {
-      cerr<<np<<'\r';
-      TParticle *p0=gAlice->Particle(np);
-
-      /*** only these V0s are "good" ***/
-      Int_t code=p0->GetPdgCode();
-      if (code!=kK0Short)
-      if (code!=kLambda0)
-      if (code!=kLambda0Bar) continue; 
-
-      /*** daughter tracks should be "good" ***/
-      Int_t plab=p0->GetFirstDaughter(), nlab=p0->GetLastDaughter();
-      if (nlab==plab) continue;
-      if (nlab<0) continue;
-      if (plab<0) continue;
-      Int_t i;
-      for (i=0; i<ngt; i++) if (label[i]==nlab) break;
-      if (i==ngt) continue;
-      for (i=0; i<ngt; i++) if (label[i]==plab) break;
-      if (i==ngt) continue;
-
-      /*** fiducial volume ***/
-      TParticle *p=gAlice->Particle(nlab);
-      Double_t x=p->Vx(), y=p->Vy(), z=p->Vz(), r2=x*x+y*y;
-      if (r2<r2min) continue;
-      if (r2>r2max) continue;
-       
-      if (gAlice->Particle(plab)->GetPDG()->Charge() < 0.) {
-         i=plab; plab=nlab; nlab=i;
-      }
-      
-      gv[nv].code=code;
-      gv[nv].plab=plab; gv[nv].nlab=nlab;
-      gv[nv].px=p0->Px(); gv[nv].py=p0->Py(); gv[nv].pz=p0->Pz();
-      gv[nv].x=x; gv[nv].y=y; gv[nv].z=z;
-      nv++;
-   }
-   delete gAlice; gAlice=0;
-
-   file->Close();  
-
-   return nv;
-}
diff --git a/ITS/oldmacros/AliV0FindVertices.C b/ITS/oldmacros/AliV0FindVertices.C
deleted file mode 100644 (file)
index b2e1cb5..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-#ifndef __CINT__
-  #include <iostream.h>
-  #include "AliV0vertexer.h"
-  #include "TFile.h"
-  #include "TStopwatch.h"
-#endif
-
-Int_t AliV0FindVertices() {
-   cerr<<"Looking for V0 vertices...\n";
-
-   TFile *out=TFile::Open("AliV0vertices.root","new");
-   if (!out->IsOpen()) {cerr<<"Delete old AliV0vertices.root !\n"; return 1;}
-
-   TFile *in=TFile::Open("AliITStracksV2.root");
-   if (!in->IsOpen()) {cerr<<"Can't open AliITStracksV2.root !\n"; return 2;}
-
-   Double_t cuts[]={33,  // max. allowed chi2
-                    0.12,// min. allowed negative daughter's impact parameter 
-                    0.06,// min. allowed positive daughter's impact parameter 
-                    0.080,// max. allowed DCA between the daughter tracks
-                    0.998,// max. allowed cosine of V0's pointing angle
-                    0.9,  // min. radius of the fiducial volume
-                    2.9   // max. radius of the fiducial volume
-                   };
-   TStopwatch timer;
-   AliV0vertexer *vertexer=new AliV0vertexer(cuts);
-   Int_t rc=vertexer->Tracks2V0vertices(in,out);
-   delete vertexer;
-   timer.Stop(); timer.Print();
-    
-   in->Close();
-   out->Close();
-
-   return rc;
-}
diff --git a/ITS/oldmacros/AlignITSmacro.C b/ITS/oldmacros/AlignITSmacro.C
deleted file mode 100644 (file)
index 29a8064..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;        // data points to fit.
-    Float_t  a,b,c,d,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-};
-
-//
-void AlignITSmacro (const char *filename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and fill some histograms.
-//
-//     Root > .L AlignITS.C    //this loads the macro in memory
-//     Root > AlignITS();  //by default process first event   
-//     Root > AlignITS("galice.root"); //process file galice.root
-//     Root > AlignITS("galice.root",3); // process file galice.root
-//                                          the first 4 eventst
-//       or
-//     Root > .x AlignITS.C;  //by default process first event   
-//     Root > .x AlignITS.C("galice.root"); //process file galice.root
-//     Root > .x AlignITS.C("galice.root",3); // process file galice.root
-//                                               the first 4 eventst
-/////////////////////////////////////////////////////////////////////////
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-      
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-   if(!file) file = new TFile(filename);
-   printf("reading from file %s\n",filename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-
-      // define some variables for later use.
-      Int_t      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      AliITS *ITS    = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TTree  *TH     = gAlice->TreeH();
-      Int_t  ntracks = TH->GetEntries();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      ClustAl_tl *trk = new ClustAl_tl[ntracks];
-      Int_t      ntrk;
-      Float_t    v0[3] = {0.0,0.0,0.0};
-
-      printf("ntracks=%d\n",ntracks);
-
-      HitsTo(trk,ntrk,ntracks,TH,ITS,sigma1,sigma2,sigma3,0.0,0.0,0.0);
-
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//      return;
-      // setup to save all created histograms.
-      char Hfilename[80];
-      sprintf(Hfilename,"%s.root",sfile);
-      TFile *Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-      if(Hfile) Hfile->Close();
-      Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-      printf("Histograms saved to file %s\n",Hfilename);
-
-      FitAllTracks(trk,ntrk,v0,sfile,Hfile); 
-// fit all tracks and do a track quality hist.
-
-      printf("Fitted tracks, finding vertex next\n");
-
-      FitVertexAll(trk,ntrk,sfile,Hfile); 
-// Find all 2 track vertecies and hist. them.
-
-      printf("Event %d done\n",evnt);
-
-      for(Int_t i=0;i<ntrk;i++) delete trk[i].clust;
-      delete[] trk;
-   } /* end for evnt */
-   return;
-}
diff --git a/ITS/oldmacros/AlignITSmacro2.C b/ITS/oldmacros/AlignITSmacro2.C
deleted file mode 100644 (file)
index 795d4f9..0000000
+++ /dev/null
@@ -1,211 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-#include <fstream.h>
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;      // data points to fit.
-    Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-    // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
-};
-
-//
-void AlignITSmacro3(const char *Rfilename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro illustrating how to 
-//   read the output of GALICE and fill some histograms.
-//
-//     Root > .L AlignITSmacro2.C    // this loads the macro in memory
-//     Root > AlignITSmacro2();      // by default process first event   
-//     Root > AlignITSmacro2("galice.root");   // process file galice.root
-//     Root > AlignITSmacro2("galice.root",3); // process file galice.root
-//                                                the first 4 events
-//       or
-//     Root > .x AlignITSmacro2.C;  //by default process first event
-//     Root > .x AlignITSmacro2.C("galice.root");   // process file galice.root
-//     Root > .x AlignITSmacro2.C("galice.root",3); // process file galice.root
-//                                                     the first 4 events
-/////////////////////////////////////////////////////////////////////////
-//
-    gROOT->Reset();  // Reset root to it's default state
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *Rfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Rfilename);
-   if(!Rfile) Rfile = new TFile(Rfilename);
-   printf("reading from file %s\n",Rfilename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)Rfile->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   Float_t    v0[3] = {0.0,0.0,0.0};
-   Float_t    tran[3] = {0.0,0.0,0.0},rot[3] = {0.0,0.0,0.0};
-   Float_t    trans[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                         2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                         2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // cm
-   Float_t    rots[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                        2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                        2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // rad
-   Int_t      nparticles,Ntrkp,ntrk,Itimes,Isigmas;
-   AliITS     *ITS = 0;
-   TTree      *TH = 0;
-   AliITSgeom *gm,gm2;
-   char       Hfilename[80];
-//   char       Gfilename[80];
-   TFile      *Hfile = 0;
-   ClustAl_tl *trk = 0;
-   FILE       *fp;
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-      // define some variables for later use.
-      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      ITS   = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TH    = gAlice->TreeH();
-      Ntrkp = TH->GetEntries();
-      gm    = ITS->GetITSgeom();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      trk = new ClustAl_tl[Ntrkp];
-
-      printf("Ntrkp=%d\n",Ntrkp);
-
-      HitsToClustAl(trk,ntrk,Ntrkp,TH,ITS,1.0);
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//
-      for(Itimes=0;Itimes<1;Itimes++){
-         if(Itimes==0){
-             fp = fopen();
-            fprintf(fp,"Rr,Rs,Rrx1,Rerx1,Rsrx1,Rserx1,Rrz1,Rerz1,Rsrz1,Rserz1,"
-                            "Rrx2,Rerx2,Rsrx2,Rserx2,Rrz2,Rerz2,Rsrz2,Rserz2,"
-                            "Rrx3,Rerx3,Rsrx3,Rserx3,Rrz3,Rerz3,Rsrz3,Rserz3,"
-                            "Rrx4,Rerx4,Rsrx4,Rserx4,Rrz4,Rerz4,Rsrz4,Rserz4,"
-                            "Rrx5,Rerx5,Rsrx5,Rserx5,Rrz5,Rerz5,Rsrz5,Rserz5,"
-                            "Rrx6,Rerx6,Rsrx6,Rserx6,Rrz6,Rerz6,Rsrz6,Rserz6");
-         }else if(Itimes==1){
-             fp = fopen();
-            fprintf(fp,"Fr,Fs,Frx1,Ferx1,Fsrx1,Fserx1,Frz1,Ferz1,Fsrz1,Fserz1,"
-                            "Frx2,Ferx2,Fsrx2,Fserx2,Frz2,Ferz2,Fsrz2,Fserz2,"
-                            "Frx3,Ferx3,Fsrx3,Fserx3,Frz3,Ferz3,Fsrz3,Fserz3,"
-                            "Frx4,Ferx4,Fsrx4,Fserx4,Frz4,Ferz4,Fsrz4,Fserz4,"
-                            "Frx5,Ferx5,Fsrx5,Fserx5,Frz5,Ferz5,Fsrz5,Fserz5,"
-                            "Frx6,Ferx6,Fsrx6,Fserx6,Frz6,Ferz6,Fsrz6,Fserz6");
-         }else if(Itimes==2){
-             fp = fopen();
-            fprintf(fp,"Zr,Zs,Zrx1,Zerx1,Zsrx1,Zserx1,Zrz1,Zerz1,Zsrz1,Zserz1,"
-                            "Zrx2,Zerx2,Zsrx2,Zserx2,Zrz2,Zerz2,Zsrz2,Zserz2,"
-                            "Zrx3,Zerx3,Zsrx3,Zserx3,Zrz3,Zerz3,Zsrz3,Zserz3,"
-                            "Zrx4,Zerx4,Zsrx4,Zserx4,Zrz4,Zerz4,Zsrz4,Zserz4,"
-                            "Zrx5,Zerx5,Zsrx5,Zserx5,Zrz5,Zerz5,Zsrz5,Zserz5,"
-                            "Zrx6,Zerx6,Zsrx6,Zserx6,Zrz6,Zerz6,Zsrz6,Zserz6");
-         }else if(Itimes==3){
-             fp = fopen();
-            fprintf(fp,"Ar,As,Arx1,Aerx1,Asrx1,Aserx1,Arz1,Aerz1,Asrz1,Aserz1,"
-                            "Arx2,Aerx2,Asrx2,Aserx2,Arz2,Aerz2,Asrz2,Aserz2,"
-                            "Arx3,Aerx3,Asrx3,Aserx3,Arz3,Aerz3,Asrz3,Aserz3,"
-                            "Arx4,Aerx4,Asrx4,Aserx4,Arz4,Aerz4,Asrz4,Aserz4,"
-                            "Arx5,Aerx5,Asrx5,Aserx5,Arz5,Aerz5,Asrz5,Aserz5,"
-                            "Arx6,Aerx6,Asrx6,Aserx6,Arz6,Aerz6,Asrz6,Aserz6");
-         }else if(Itimes==4){
-             fp = fopen();
-            fprintf(fp,"Br,Bs,Brx1,Berx1,Bsrx1,Bserx1,Brz1,Berz1,Bsrz1,Bserz1,"
-                            "Brx2,Berx2,Bsrx2,Bserx2,Brz2,Berz2,Bsrz2,Bserz2,"
-                            "Brx3,Berx3,Bsrx3,Bserx3,Brz3,Berz3,Bsrz3,Bserz3,"
-                            "Brx4,Berx4,Bsrx4,Bserx4,Brz4,Berz4,Bsrz4,Bserz4,"
-                            "Brx5,Berx5,Bsrx5,Bserx5,Brz5,Berz5,Bsrz5,Bserz5,"
-                            "Brx6,Berx6,Bsrx6,Bserx6,Brz6,Berz6,Bsrz6,Bserz6");
-         }else if(Itimes==5){
-             fp = fopen();
-            fprintf(fp,"Cr,Cs,Crx1,Cerx1,Csrx1,Cserx1,Crz1,Cerz1,Csrz1,Cserz1,"
-                            "Crx2,Cerx2,Csrx2,Cserx2,Crz2,Cerz2,Csrz2,Cserz2,"
-                            "Crx3,Cerx3,Csrx3,Cserx3,Crz3,Cerz3,Csrz3,Cserz3,"
-                            "Crx4,Cerx4,Csrx4,Cserx4,Crz4,Cerz4,Csrz4,Cserz4,"
-                            "Crx5,Cerx5,Csrx5,Cserx5,Crz5,Cerz5,Csrz5,Cserz5,"
-                            "Crx6,Cerx6,Csrx6,Cserx6,Crz6,Cerz6,Csrz6,Cserz6")
-         } // end if
-         for(Isigmas=0;Isigmas<11;Isigmas++){
-//
-//       tran[0] = sigma1;
-//       tran[1] = sigma2;
-//       tran[2] = sigma3;
-         if(Itimes==0){ tran[0] = trans[Isigmas];
-         }else tran[0] = 0.0;
-         if(Itimes==1){ tran[1] = trans[Isigmas];
-         }else tran[1] = 0.0;
-         if(Itimes==2){ tran[2] = trans[Isigmas];
-         }else tran[2] = 0.0;
-         if(Itimes==3){ rot[0] = rots[Isigmas];
-         }else rot[0] = 0.0;
-         if(Itimes==4){ rot[1] = rots[Isigmas];
-         }else rot[1] = 0.0;
-         if(Itimes==5){ rot[2] = rots[Isigmas];
-         }else rot[2] = 0.0;
-         printf("tran= %e %e %e (cm), rot=%e %e %e (rad)\n",
-                tran[0],tran[1],tran[2],rot[0],rot[1],rot[2]);
-//
-         gm2 = *gm;
-         gm2.RandomCylindericalChange(tran,rot);
-
-         FillGlobalPositions(trk,ntrk,&gm2);
-         // setup to save all created histograms.
-         sprintf(Hfilename,"%s_%04.0fr%04.0fp%04.0fz%04.0fx%04.0fy%04.0fz.root",
-                 sfile,
-                 10000.*tran[0],10000.*tran[1],10000.*tran[2],
-                 10000.* rot[0],10000.* rot[1],10000.* rot[2]);
-         Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-         if(Hfile) Hfile->Close();
-         Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-         printf("Histograms saved to file %s\n",Hfilename);
-          //
-         PlotGeomChanges(gm,&gm2,Hfile);
-          //
-         // fit all tracks and do a track quality hist.
-         FitAllTracks(trk,ntrk,v0,&gm2,sfile,Hfile);
-//       FitVertexAll(trk,ntrk,sfile,Hfile); 
-         // Find all 2 track vertecies and hist. them.
-         Hfile->Close();
-          //
-      } // end for Isigmas
-         fp = fclose();
-      } // end for Itimes
-//
-      printf("Event %d done\n",evnt);
-//
-      deleteClustAl(trk,ntrk); // subrotine to delet memory allocated
-                               // inside HitsToclustAl.
-      delete[] trk;            // now delet memory allocated above.
-   } // end for evnt
-   Rfile->Close();
-   return;
-}
diff --git a/ITS/oldmacros/AlignITSmacro3.C b/ITS/oldmacros/AlignITSmacro3.C
deleted file mode 100644 (file)
index 03913a5..0000000
+++ /dev/null
@@ -1,266 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-#include <fstream.h>
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;      // data points to fit.
-    Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-    // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
-};
-
-//
-void AlignITSmacro3(const char *Rfilename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro illustrating how to 
-//   read the output of GALICE and fill some histograms.
-//
-//     Root > .L AlignITSmacro2.C    // this loads the macro in memory
-//     Root > AlignITSmacro2();      // by default process first event   
-//     Root > AlignITSmacro2("galice.root");   // process file galice.root
-//     Root > AlignITSmacro2("galice.root",3); // process file galice.root
-//                                                the first 4 events
-//       or
-//     Root > .x AlignITSmacro2.C;  //by default process first event
-//     Root > .x AlignITSmacro2.C("galice.root");   // process file galice.root
-//     Root > .x AlignITSmacro2.C("galice.root",3); // process file galice.root
-//                                                     the first 4 events
-/////////////////////////////////////////////////////////////////////////
-//
-    gROOT->Reset();  // Reset root to it's default state
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *Rfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Rfilename);
-   if(!Rfile) Rfile = new TFile(Rfilename);
-   printf("reading from file %s\n",Rfilename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)Rfile->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   Float_t    v0[3] = {0.0,0.0,0.0};
-   Float_t    tran[3] = {0.0,0.0,0.0},rot[3] = {0.0,0.0,0.0};
-   Float_t    trans[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                         2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                         2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // cm
-   Float_t    rots[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                        2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                        2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // rad
-   Int_t      nparticles,Ntrkp,ntrk,Itimes,Isigmas;
-   AliITS     *ITS = 0;
-   TTree      *TH = 0;
-   AliITSgeom *gm,gm2;
-   char       Hfilename[80];
-//   char       Gfilename[80];
-   TFile      *Hfile = 0;
-   ClustAl_tl *trk = 0;
-   Float_t    Rdta[6];
-   Float_t    Fdta[24],Fdta0[24];
-   Int_t      Ndta[12];
-   FILE       *fp1,*fp2;
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-      // define some variables for later use.
-      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      ITS   = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TH    = gAlice->TreeH();
-      Ntrkp = TH->GetEntries();
-      gm    = ITS->GetITSgeom();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      trk = new ClustAl_tl[Ntrkp];
-
-      printf("Ntrkp=%d\n",Ntrkp);
-
-      HitsToClustAl(trk,ntrk,Ntrkp,TH,ITS,1.0);
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//
-      for(Itimes=1;Itimes<2;Itimes++){
-         if(Itimes==0){
-             fp1 = fopen("RvariationsR.csv","w");
-             fp2 = fopen("RvariationsN.csv","w");
-            fprintf(fp1,"Rr,Rs,Rrx1,Rerx1,Rsrx1,Rserx1,Rrz1,Rerz1,Rsrz1,Rserz1,"
-                            "Rrx2,Rerx2,Rsrx2,Rserx2,Rrz2,Rerz2,Rsrz2,Rserz2,"
-                            "Rrx3,Rerx3,Rsrx3,Rserx3,Rrz3,Rerz3,Rsrz3,Rserz3,"
-                            "Rrx4,Rerx4,Rsrx4,Rserx4,Rrz4,Rerz4,Rsrz4,Rserz4,"
-                            "Rrx5,Rerx5,Rsrx5,Rserx5,Rrz5,Rerz5,Rsrz5,Rserz5,"
-                            "Rrx6,Rerx6,Rsrx6,Rserx6,Rrz6,Rerz6,Rsrz6,Rserz6");
-            fprintf(fp2,"Rr,Rs,RN1,RN2,RN3,RN4,RN5,RN6,RN7,RN8,RN9,RN10,"
-                   "RN50,Rcut");
-         }else if(Itimes==1){
-             fp1 = fopen("RPhivariationsR.csv","w");
-             fp2 = fopen("RPhivariationsN.csv","w");
-            fprintf(fp1,"Fr,Fs,Frx1,Ferx1,Fsrx1,Fserx1,Frz1,Ferz1,Fsrz1,Fserz1,"
-                            "Frx2,Ferx2,Fsrx2,Fserx2,Frz2,Ferz2,Fsrz2,Fserz2,"
-                            "Frx3,Ferx3,Fsrx3,Fserx3,Frz3,Ferz3,Fsrz3,Fserz3,"
-                            "Frx4,Ferx4,Fsrx4,Fserx4,Frz4,Ferz4,Fsrz4,Fserz4,"
-                            "Frx5,Ferx5,Fsrx5,Fserx5,Frz5,Ferz5,Fsrz5,Fserz5,"
-                            "Frx6,Ferx6,Fsrx6,Fserx6,Frz6,Ferz6,Fsrz6,Fserz6");
-            fprintf(fp2,"Fr,Fs,FN1,FN2,FN3,FN4,FN5,FN6,FN7,FN8,FN9,FN10,"
-                   "FN50,Fcut");
-         }else if(Itimes==2){
-             fp1 = fopen("ZvariationsR.csv","w");
-             fp2 = fopen("ZvariationsN.csv","w");
-            fprintf(fp1,"Zr,Zs,Zrx1,Zerx1,Zsrx1,Zserx1,Zrz1,Zerz1,Zsrz1,Zserz1,"
-                            "Zrx2,Zerx2,Zsrx2,Zserx2,Zrz2,Zerz2,Zsrz2,Zserz2,"
-                            "Zrx3,Zerx3,Zsrx3,Zserx3,Zrz3,Zerz3,Zsrz3,Zserz3,"
-                            "Zrx4,Zerx4,Zsrx4,Zserx4,Zrz4,Zerz4,Zsrz4,Zserz4,"
-                            "Zrx5,Zerx5,Zsrx5,Zserx5,Zrz5,Zerz5,Zsrz5,Zserz5,"
-                            "Zrx6,Zerx6,Zsrx6,Zserx6,Zrz6,Zerz6,Zsrz6,Zserz6");
-            fprintf(fp2,"Zr,Zs,ZN1,ZN2,ZN3,ZN4,ZN5,ZN6,ZN7,ZN8,ZN9,ZN10,"
-                   "ZN50,Zcut");
-         }else if(Itimes==3){
-             fp1 = fopen("AvariationsR.csv","w");
-             fp2 = fopen("AvariationsN.csv","w");
-            fprintf(fp1,"Ar,As,Arx1,Aerx1,Asrx1,Aserx1,Arz1,Aerz1,Asrz1,Aserz1,"
-                            "Arx2,Aerx2,Asrx2,Aserx2,Arz2,Aerz2,Asrz2,Aserz2,"
-                            "Arx3,Aerx3,Asrx3,Aserx3,Arz3,Aerz3,Asrz3,Aserz3,"
-                            "Arx4,Aerx4,Asrx4,Aserx4,Arz4,Aerz4,Asrz4,Aserz4,"
-                            "Arx5,Aerx5,Asrx5,Aserx5,Arz5,Aerz5,Asrz5,Aserz5,"
-                            "Arx6,Aerx6,Asrx6,Aserx6,Arz6,Aerz6,Asrz6,Aserz6");
-            fprintf(fp2,"Ar,As,AN1,AN2,AN3,AN4,AN5,AN6,AN7,AN8,AN9,AN10,"
-                   "AN50,Acut");
-         }else if(Itimes==4){
-             fp1 = fopen("BvariationsR.csv","w");
-             fp2 = fopen("BvariationsN.csv","w");
-            fprintf(fp1,"Br,Bs,Brx1,Berx1,Bsrx1,Bserx1,Brz1,Berz1,Bsrz1,Bserz1,"
-                            "Brx2,Berx2,Bsrx2,Bserx2,Brz2,Berz2,Bsrz2,Bserz2,"
-                            "Brx3,Berx3,Bsrx3,Bserx3,Brz3,Berz3,Bsrz3,Bserz3,"
-                            "Brx4,Berx4,Bsrx4,Bserx4,Brz4,Berz4,Bsrz4,Bserz4,"
-                            "Brx5,Berx5,Bsrx5,Bserx5,Brz5,Berz5,Bsrz5,Bserz5,"
-                            "Brx6,Berx6,Bsrx6,Bserx6,Brz6,Berz6,Bsrz6,Bserz6");
-            fprintf(fp2,"Br,Bs,BN1,BN2,BN3,BN4,BN5,BN6,BN7,BN8,BN9,BN10,"
-                   "BN50,Bcut");
-         }else if(Itimes==5){
-             fp1 = fopen("CvariationsR.csv","w");
-             fp2 = fopen("CvariationsN.csv","w");
-            fprintf(fp1,"Cr,Cs,Crx1,Cerx1,Csrx1,Cserx1,Crz1,Cerz1,Csrz1,Cserz1,"
-                            "Crx2,Cerx2,Csrx2,Cserx2,Crz2,Cerz2,Csrz2,Cserz2,"
-                            "Crx3,Cerx3,Csrx3,Cserx3,Crz3,Cerz3,Csrz3,Cserz3,"
-                            "Crx4,Cerx4,Csrx4,Cserx4,Crz4,Cerz4,Csrz4,Cserz4,"
-                            "Crx5,Cerx5,Csrx5,Cserx5,Crz5,Cerz5,Csrz5,Cserz5,"
-                   "Crx6,Cerx6,Csrx6,Cserx6,Crz6,Cerz6,Csrz6,Cserz6");
-            fprintf(fp2,"Cr,Cs,CN1,CN2,CN3,CN4,CN5,CN6,CN7,CN8,CN9,CN10,"
-                   "CN50,Ccut");
-         } // end if
-         fprintf(fp1,"\n");
-         fprintf(fp2,"\n");
-         for(Isigmas=0;Isigmas<15;Isigmas++){
-//
-//       tran[0] = sigma1;
-//       tran[1] = sigma2;
-//       tran[2] = sigma3;
-         if(Itimes==0){ tran[0] = trans[Isigmas];
-         }else tran[0] = 0.0;
-         if(Itimes==1){ tran[1] = trans[Isigmas];
-         }else tran[1] = 0.0;
-         if(Itimes==2){ tran[2] = trans[Isigmas];
-         }else tran[2] = 0.0;
-         if(Itimes==3){ rot[0] = rots[Isigmas];
-         }else rot[0] = 0.0;
-         if(Itimes==4){ rot[1] = rots[Isigmas];
-         }else rot[1] = 0.0;
-         if(Itimes==5){ rot[2] = rots[Isigmas];
-         }else rot[2] = 0.0;
-         printf("tran= %e %e %e (cm), rot=%e %e %e (rad)\n",
-                tran[0],tran[1],tran[2],rot[0],rot[1],rot[2]);
-//
-         gm2 = *gm;
-         gm2.RandomCylindericalChange(tran,rot);
-
-         FillGlobalPositions(trk,ntrk,&gm2);
-         // setup to save all created histograms.
-         sprintf(Hfilename,"%s_%04.0fr%04.0fp%04.0fz%04.0fx%04.0fy%04.0fz.root",
-                 sfile,
-                 10000.*tran[0],10000.*tran[1],10000.*tran[2],
-                 10000.* rot[0],10000.* rot[1],10000.* rot[2]);
-         Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-         if(Hfile) Hfile->Close();
-         Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-         printf("Histograms saved to file %s\n",Hfilename);
-          //
-         PlotGeomChanges(gm,&gm2,Hfile,Rdta);
-          //
-         // fit all tracks and do a track quality hist.
-         FitAllTracks(trk,ntrk,v0,&gm2,sfile,Hfile,Fdta,Ndta); 
-//
-         if(Isigmas==0){
-             for(Int_t fp=0;fp<24;fp++) Fdta0[fp] = Fdta[fp];
-         } // end if Itimes==0&&Isigmas==0
-         if(Itimes==0) fprintf(fp1,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp1,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp1,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp1,"%e,%e,",ran[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp1,"%e,%e,",ran[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp1,"%e,%e,",ran[2],Rdta[5]);
-         if(Itimes==0) fprintf(fp2,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp2,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp2,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp2,"%e,%e,",ran[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp2,"%e,%e,",ran[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp2,"%e,%e,",ran[2],Rdta[5]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[0],Fdta[1],Fdta[0]/Fdta0[0],Fdta[0]/Fdta0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[2],Fdta[3],Fdta[2]/Fdta0[2],Fdta[3]/Fdta0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[4],Fdta[5],Fdta[4]/Fdta0[4],Fdta[5]/Fdta0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[6],Fdta[7],Fdta[6]/Fdta0[6],Fdta[7]/Fdta0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[8],Fdta[9],Fdta[8]/Fdta0[8],Fdta[9]/Fdta0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[10],Fdta[11],Fdta[10]/Fdta0[10],Fdta[11]/Fdta0[10]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[12],Fdta[12],Fdta[12]/Fdta0[12],Fdta[13]/Fdta0[12]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[14],Fdta[13],Fdta[14]/Fdta0[14],Fdta[15]/Fdta0[14]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[16],Fdta[15],Fdta[16]/Fdta0[16],Fdta[17]/Fdta0[16]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[18],Fdta[17],Fdta[18]/Fdta0[18],Fdta[19]/Fdta0[18]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[20],Fdta[19],Fdta[20]/Fdta0[20],Fdta[21]/Fdta0[20]);
-         fprintf(fp1,"%e,%e,%e,%e\n",Fdta[22],Fdta[21],Fdta[22]/Fdta0[22],Fdta[23]/Fdta0[22]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[0],Ndta[1],Ndta[2],Ndta[3]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[4],Ndta[5],Ndta[6],Ndta[7]);
-         fprintf(fp2,"%d,%d,%d,%d\n",Ndta[8],Ndta[9],Ndta[10],Ndta[11]);
-//       FitVertexAll(trk,ntrk,sfile,Hfile); 
-         // Find all 2 track vertecies and hist. them.
-         Hfile->Close();
-          //
-      } // end for Isigmas
-         fclose(fp1);
-         fclose(fp2);
-      } // end for Itimes
-//
-      printf("Event %d done\n",evnt);
-//
-      deleteClustAl(trk,ntrk); // subrotine to delet memory allocated
-                               // inside HitsToclustAl.
-      delete[] trk;            // now delet memory allocated above.
-   } // end for evnt
-   Rfile->Close();
-   return;
-}
diff --git a/ITS/oldmacros/AlignITSmacro3A.C b/ITS/oldmacros/AlignITSmacro3A.C
deleted file mode 100644 (file)
index f20a755..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-#include <fstream.h>
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;      // data points to fit.
-    Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-    // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
-};
-
-//
-void AlignITSmacro3A(const char *Rfilename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro illustrating how to 
-//   read the output of GALICE and fill some histograms.
-//
-//     Root > .L AlignITSmacro2.C    // this loads the macro in memory
-//     Root > AlignITSmacro2();      // by default process first event   
-//     Root > AlignITSmacro2("galice.root");   // process file galice.root
-//     Root > AlignITSmacro2("galice.root",3); // process file galice.root
-//                                                the first 4 events
-//       or
-//     Root > .x AlignITSmacro2.C;  //by default process first event
-//     Root > .x AlignITSmacro2.C("galice.root");   // process file galice.root
-//     Root > .x AlignITSmacro2.C("galice.root",3); // process file galice.root
-//                                                     the first 4 events
-/////////////////////////////////////////////////////////////////////////
-//
-    gROOT->Reset();  // Reset root to it's default state
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *Rfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Rfilename);
-   if(!Rfile) Rfile = new TFile(Rfilename);
-   printf("reading from file %s\n",Rfilename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)Rfile->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   Float_t    v0[3] = {0.0,0.0,0.0};
-   Float_t    tran[3] = {0.0,0.0,0.0},rot[3] = {0.0,0.0,0.0};
-   Float_t    trans[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                         2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                         2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // cm
-   Float_t    rots[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                        2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                        2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // rad
-   Int_t      nparticles,Ntrkp,ntrk,Itimes,Isigmas;
-   AliITS     *ITS = 0;
-   TTree      *TH = 0;
-   AliITSgeom *gm,gm2;
-   char       Hfilename[80];
-//   char       Gfilename[80];
-   TFile      *Hfile = 0;
-   ClustAl_tl *trk = 0;
-   Float_t    Rdta[6];
-   Float_t    Fdta[24],Fdr[12],Fdta0[24],Fdr0[12];
-   Int_t      Ndta[12];
-   FILE       *fp1,*fp2;
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-      // define some variables for later use.
-      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      ITS   = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TH    = gAlice->TreeH();
-      Ntrkp = TH->GetEntries();
-      gm    = ITS->GetITSgeom();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      trk = new ClustAl_tl[Ntrkp];
-
-      printf("Ntrkp=%d\n",Ntrkp);
-
-      HitsToClustAl(trk,ntrk,Ntrkp,TH,ITS,1.0);
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//
-      for(Itimes=3;Itimes<4;Itimes++){
-         if(Itimes==0){
-             fp1 = fopen("RvariationsR.csv","w");
-             fp2 = fopen("RvariationsN.csv","w");
-            fprintf(fp1,"Rr,Rs,Rrx1,Rerx1,Rsrx1,Rserx1,Rrz1,Rerz1,Rsrz1,Rserz1,"
-                   "Rrd1,Rerd1,Rsrd1,Resrd1,"
-                            "Rrx2,Rerx2,Rsrx2,Rserx2,Rrz2,Rerz2,Rsrz2,Rserz2,"
-                   "Rrd2,Rerd2,Rsrd2,Resrd2,"
-                            "Rrx3,Rerx3,Rsrx3,Rserx3,Rrz3,Rerz3,Rsrz3,Rserz3,"
-                   "Rrd3,Rerd3,Rsrd3,Resrd3,"
-                            "Rrx4,Rerx4,Rsrx4,Rserx4,Rrz4,Rerz4,Rsrz4,Rserz4,"
-                   "Rrd4,Rerd4,Rsrd4,Resrd4,"
-                            "Rrx5,Rerx5,Rsrx5,Rserx5,Rrz5,Rerz5,Rsrz5,Rserz5,"
-                   "Rrd5,Rerd5,Rsrd5,Resrd5,"
-                            "Rrx6,Rerx6,Rsrx6,Rserx6,Rrz6,Rerz6,Rsrz6,Rserz6,"
-                   "Rrd6,Rerd6,Rsrd6,Resrd6");
-            fprintf(fp2,"Rr,Rs,RN1,RN2,RN3,RN4,RN5,RN6,RN7,RN8,RN9,RN10,"
-                   "RN50,Rcut");
-         }else if(Itimes==1){
-             fp1 = fopen("RPhivariationsR.csv","w");
-             fp2 = fopen("RPhivariationsN.csv","w");
-            fprintf(fp1,"Fr,Fs,Frx1,Ferx1,Fsrx1,Fserx1,Frz1,Ferz1,Fsrz1,Fserz1,"
-                   "Frd1,Ferd1,Fsrd1,Fesrd1,"
-                            "Frx2,Ferx2,Fsrx2,Fserx2,Frz2,Ferz2,Fsrz2,Fserz2,"
-                   "Frd2,Ferd2,Fsrd2,Fesrd2,"
-                            "Frx3,Ferx3,Fsrx3,Fserx3,Frz3,Ferz3,Fsrz3,Fserz3,"
-                   "Frd3,Ferd3,Fsrd3,Fesrd3,"
-                            "Frx4,Ferx4,Fsrx4,Fserx4,Frz4,Ferz4,Fsrz4,Fserz4,"
-                   "Frd4,Ferd4,Fsrd4,Fesrd4,"
-                            "Frx5,Ferx5,Fsrx5,Fserx5,Frz5,Ferz5,Fsrz5,Fserz5,"
-                   "Frd5,Ferd5,Fsrd5,Fesrd5,"
-                            "Frx6,Ferx6,Fsrx6,Fserx6,Frz6,Ferz6,Fsrz6,Fserz6,"
-                   "Frd6,Ferd6,Fsrd6,Fesrd6");
-            fprintf(fp2,"Fr,Fs,FN1,FN2,FN3,FN4,FN5,FN6,FN7,FN8,FN9,FN10,"
-                   "FN50,Fcut");
-         }else if(Itimes==2){
-             fp1 = fopen("ZvariationsR.csv","w");
-             fp2 = fopen("ZvariationsN.csv","w");
-            fprintf(fp1,"Zr,Zs,Zrx1,Zerx1,Zsrx1,Zserx1,Zrz1,Zerz1,Zsrz1,Zserz1,"
-                   "Zrd1,Zerd1,Zsrd1,Zesrd1,"
-                            "Zrx2,Zerx2,Zsrx2,Zserx2,Zrz2,Zerz2,Zsrz2,Zserz2,"
-                   "Zrd2,Zerd2,Zsrd2,Zesrd2,"
-                            "Zrx3,Zerx3,Zsrx3,Zserx3,Zrz3,Zerz3,Zsrz3,Zserz3,"
-                   "Zrd3,Zerd3,Zsrd3,Zesrd3,"
-                            "Zrx4,Zerx4,Zsrx4,Zserx4,Zrz4,Zerz4,Zsrz4,Zserz4,"
-                   "Zrd4,Zerd4,Zsrd4,Zesrd4,"
-                            "Zrx5,Zerx5,Zsrx5,Zserx5,Zrz5,Zerz5,Zsrz5,Zserz5,"
-                   "Zrd5,Zerd5,Zsrd5,Zesrd5,"
-                            "Zrx6,Zerx6,Zsrx6,Zserx6,Zrz6,Zerz6,Zsrz6,Zserz6,"
-                   "Zrd6,Zerd6,Zsrd6,Zesrd6");
-            fprintf(fp2,"Zr,Zs,ZN1,ZN2,ZN3,ZN4,ZN5,ZN6,ZN7,ZN8,ZN9,ZN10,"
-                   "ZN50,Zcut");
-         }else if(Itimes==3){
-             fp1 = fopen("AvariationsR.csv","w");
-             fp2 = fopen("AvariationsN.csv","w");
-            fprintf(fp1,"Ar,As,Arx1,Aerx1,Asrx1,Aserx1,Arz1,Aerz1,Asrz1,Aserz1,"
-                   "Ard1,Aerd1,Asrd1,Aesrd1,"
-                            "Arx2,Aerx2,Asrx2,Aserx2,Arz2,Aerz2,Asrz2,Aserz2,"
-                   "Ard2,Aerd2,Asrd2,Aesrd2,"
-                            "Arx3,Aerx3,Asrx3,Aserx3,Arz3,Aerz3,Asrz3,Aserz3,"
-                   "Ard3,Aerd3,Asrd3,Aesrd3,"
-                            "Arx4,Aerx4,Asrx4,Aserx4,Arz4,Aerz4,Asrz4,Aserz4,"
-                   "Ard4,Aerd4,Asrd4,Aesrd4,"
-                            "Arx5,Aerx5,Asrx5,Aserx5,Arz5,Aerz5,Asrz5,Aserz5,"
-                   "Ard5,Aerd5,Asrd5,Aesrd5,"
-                            "Arx6,Aerx6,Asrx6,Aserx6,Arz6,Aerz6,Asrz6,Aserz6,"
-                   "Ard6,Aerd6,Asrd6,Aesrd6");
-            fprintf(fp2,"Ar,As,AN1,AN2,AN3,AN4,AN5,AN6,AN7,AN8,AN9,AN10,"
-                   "AN50,Acut");
-         }else if(Itimes==4){
-             fp1 = fopen("BvariationsR.csv","w");
-             fp2 = fopen("BvariationsN.csv","w");
-            fprintf(fp1,"Br,Bs,Brx1,Berx1,Bsrx1,Bserx1,Brz1,Berz1,Bsrz1,Bserz1,"
-                   "Brd1,Berd1,Bsrd1,Besrd1,"
-                            "Brx2,Berx2,Bsrx2,Bserx2,Brz2,Berz2,Bsrz2,Bserz2,"
-                   "Brd2,Berd2,Bsrd2,Besrd2,"
-                            "Brx3,Berx3,Bsrx3,Bserx3,Brz3,Berz3,Bsrz3,Bserz3,"
-                   "Brd3,Berd3,Bsrd3,Besrd3,"
-                            "Brx4,Berx4,Bsrx4,Bserx4,Brz4,Berz4,Bsrz4,Bserz4,"
-                   "Brd4,Berd4,Bsrd4,Besrd4,"
-                            "Brx5,Berx5,Bsrx5,Bserx5,Brz5,Berz5,Bsrz5,Bserz5,"
-                   "Brd5,Berd5,Bsrd5,Besrd5,"
-                            "Brx6,Berx6,Bsrx6,Bserx6,Brz6,Berz6,Bsrz6,Bserz6,"
-                   "Brd6,Berd6,Bsrd6,Besrd6");
-            fprintf(fp2,"Br,Bs,BN1,BN2,BN3,BN4,BN5,BN6,BN7,BN8,BN9,BN10,"
-                   "BN50,Bcut");
-         }else if(Itimes==5){
-             fp1 = fopen("CvariationsR.csv","w");
-             fp2 = fopen("CvariationsN.csv","w");
-            fprintf(fp1,"Cr,Cs,Crx1,Cerx1,Csrx1,Cserx1,Crz1,Cerz1,Csrz1,Cserz1,"
-                   "Crd1,Cerd1,Csrd1,Cesrd1,"
-                            "Crx2,Cerx2,Csrx2,Cserx2,Crz2,Cerz2,Csrz2,Cserz2,"
-                   "Crd2,Cerd2,Csrd2,Cesrd2,"
-                            "Crx3,Cerx3,Csrx3,Cserx3,Crz3,Cerz3,Csrz3,Cserz3,"
-                   "Crd3,Cerd3,Csrd3,Cesrd3,"
-                            "Crx4,Cerx4,Csrx4,Cserx4,Crz4,Cerz4,Csrz4,Cserz4,"
-                   "Crd4,Cerd4,Csrd4,Cesrd4,"
-                            "Crx5,Cerx5,Csrx5,Cserx5,Crz5,Cerz5,Csrz5,Cserz5,"
-                   "Crd5,Cerd5,Csrd5,Cesrd5,"
-                   "Crx6,Cerx6,Csrx6,Cserx6,Crz6,Cerz6,Csrz6,Cserz6,"
-                   "Crd6,Cerd6,Csrd6,Cesrd6");
-            fprintf(fp2,"Cr,Cs,CN1,CN2,CN3,CN4,CN5,CN6,CN7,CN8,CN9,CN10,"
-                   "CN50,Ccut");
-         } // end if
-         fprintf(fp1,"\n");
-         fprintf(fp2,"\n");
-         for(Isigmas=0;Isigmas<15;Isigmas++){
-//
-//       tran[0] = sigma1;
-//       tran[1] = sigma2;
-//       tran[2] = sigma3;
-         if(Itimes==0){ tran[0] = trans[Isigmas];
-         }else tran[0] = 0.0;
-         if(Itimes==1){ tran[1] = trans[Isigmas];
-         }else tran[1] = 0.0;
-         if(Itimes==2){ tran[2] = trans[Isigmas];
-         }else tran[2] = 0.0;
-         if(Itimes==3){ rot[0] = rots[Isigmas];
-         }else rot[0] = 0.0;
-         if(Itimes==4){ rot[1] = rots[Isigmas];
-         }else rot[1] = 0.0;
-         if(Itimes==5){ rot[2] = rots[Isigmas];
-         }else rot[2] = 0.0;
-         printf("tran= %e %e %e (cm), rot=%e %e %e (rad)\n",
-                tran[0],tran[1],tran[2],rot[0],rot[1],rot[2]);
-//
-         gm2 = *gm;
-         gm2.RandomCylindericalChange(tran,rot);
-
-         FillGlobalPositions(trk,ntrk,&gm2);
-         // setup to save all created histograms.
-         sprintf(Hfilename,"%s_%04.0fr%04.0fp%04.0fz%04.0fx%04.0fy%04.0fz.root",
-                 sfile,
-                 10000.*tran[0],10000.*tran[1],10000.*tran[2],
-                 10000.* rot[0],10000.* rot[1],10000.* rot[2]);
-         Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-         if(Hfile) Hfile->Close();
-         Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-         printf("Histograms saved to file %s\n",Hfilename);
-          //
-         PlotGeomChanges(gm,&gm2,Hfile,Rdta);
-          //
-         // fit all tracks and do a track quality hist.
-         FitAllTracks(trk,ntrk,v0,&gm2,sfile,Hfile,Fdta,Ndta); 
-//
-         for(Int_t l=0;l<6;l++){
-             Fdr[2*l+0] = sqrt(Fdta[4*l+0]*Fdta[4*l+0] +
-                               Fdta[4*l+2]*Fdta[4*l+2]);
-             Fdr[2*l+1] = sqrt(Fdta[4*l+0]*Fdta[4*l+0]*
-                               Fdta[4*l+1]*Fdta[4*l+1] +
-                               Fdta[4*l+2]*Fdta[4*l+2]*
-                               Fdta[4*l+3]*Fdta[4*l+3])/Fdr[2*l+0];
-         } // end for l
-         if(Isigmas==0){
-             for(Int_t fp=0;fp<24;fp++){
-                 Fdta0[fp] = Fdta[fp];
-                 if(fp<12) Fdr0[fp]  = Fdr[fp];
-             } // end for fp
-         } // end if Itimes==0&&Isigmas==0
-         if(Itimes==0) fprintf(fp1,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp1,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp1,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp1,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp1,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp1,"%e,%e,",rot[2],Rdta[5]);
-         if(Itimes==0) fprintf(fp2,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp2,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp2,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp2,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp2,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp2,"%e,%e,",rot[2],Rdta[5]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[0],Fdta[1],Fdta[0]/Fdta0[0],Fdta[1]/Fdta0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[2],Fdta[3],Fdta[2]/Fdta0[2],Fdta[3]/Fdta0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[0],Fdr[1],Fdr[0]/Fdr0[0],Fdr[1]/Fdr0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[4],Fdta[5],Fdta[4]/Fdta0[4],Fdta[5]/Fdta0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[6],Fdta[7],Fdta[6]/Fdta0[6],Fdta[7]/Fdta0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[2],Fdr[3],Fdr[2]/Fdr0[2],Fdr[3]/Fdr0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[8],Fdta[9],Fdta[8]/Fdta0[8],Fdta[9]/Fdta0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[10],Fdta[11],Fdta[10]/Fdta0[10],Fdta[11]/Fdta0[10]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[4],Fdr[5],Fdr[4]/Fdr0[4],Fdr[5]/Fdr0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[12],Fdta[12],Fdta[12]/Fdta0[12],Fdta[13]/Fdta0[12]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[14],Fdta[13],Fdta[14]/Fdta0[14],Fdta[15]/Fdta0[14]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[6],Fdr[7],Fdr[6]/Fdr0[6],Fdr[7]/Fdr0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[16],Fdta[15],Fdta[16]/Fdta0[16],Fdta[17]/Fdta0[16]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[18],Fdta[17],Fdta[18]/Fdta0[18],Fdta[19]/Fdta0[18]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[8],Fdr[9],Fdr[8]/Fdr0[8],Fdr[9]/Fdr0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[20],Fdta[19],Fdta[20]/Fdta0[20],Fdta[21]/Fdta0[20]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[22],Fdta[21],Fdta[22]/Fdta0[22],Fdta[23]/Fdta0[22]);
-         fprintf(fp1,"%e,%e,%e,%e\n",Fdr[10],Fdr[11],Fdr[10]/Fdr0[10],Fdr[11]/Fdr0[10]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[0],Ndta[1],Ndta[2],Ndta[3]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[4],Ndta[5],Ndta[6],Ndta[7]);
-         fprintf(fp2,"%d,%d,%d,%d\n",Ndta[8],Ndta[9],Ndta[10],Ndta[11]);
-//       FitVertexAll(trk,ntrk,sfile,Hfile); 
-         // Find all 2 track vertecies and hist. them.
-         Hfile->Close();
-          //
-      } // end for Isigmas
-         fclose(fp1);
-         fclose(fp2);
-      } // end for Itimes
-//
-      printf("Event %d done\n",evnt);
-//
-      deleteClustAl(trk,ntrk); // subrotine to delet memory allocated
-                               // inside HitsToclustAl.
-      delete[] trk;            // now delet memory allocated above.
-   } // end for evnt
-   Rfile->Close();
-   return;
-}
diff --git a/ITS/oldmacros/AlignITSmacro3B.C b/ITS/oldmacros/AlignITSmacro3B.C
deleted file mode 100644 (file)
index e3840cf..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-#include <fstream.h>
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;      // data points to fit.
-    Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-    // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
-};
-
-//
-void AlignITSmacro3B(const char *Rfilename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro illustrating how to 
-//   read the output of GALICE and fill some histograms.
-//
-//     Root > .L AlignITSmacro2.C    // this loads the macro in memory
-//     Root > AlignITSmacro2();      // by default process first event   
-//     Root > AlignITSmacro2("galice.root");   // process file galice.root
-//     Root > AlignITSmacro2("galice.root",3); // process file galice.root
-//                                                the first 4 events
-//       or
-//     Root > .x AlignITSmacro2.C;  //by default process first event
-//     Root > .x AlignITSmacro2.C("galice.root");   // process file galice.root
-//     Root > .x AlignITSmacro2.C("galice.root",3); // process file galice.root
-//                                                     the first 4 events
-/////////////////////////////////////////////////////////////////////////
-//
-    gROOT->Reset();  // Reset root to it's default state
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *Rfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Rfilename);
-   if(!Rfile) Rfile = new TFile(Rfilename);
-   printf("reading from file %s\n",Rfilename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)Rfile->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   Float_t    v0[3] = {0.0,0.0,0.0};
-   Float_t    tran[3] = {0.0,0.0,0.0},rot[3] = {0.0,0.0,0.0};
-   Float_t    trans[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                         2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                         2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // cm
-   Float_t    rots[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                        2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                        2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // rad
-   Int_t      nparticles,Ntrkp,ntrk,Itimes,Isigmas;
-   AliITS     *ITS = 0;
-   TTree      *TH = 0;
-   AliITSgeom *gm,gm2;
-   char       Hfilename[80];
-//   char       Gfilename[80];
-   TFile      *Hfile = 0;
-   ClustAl_tl *trk = 0;
-   Float_t    Rdta[6];
-   Float_t    Fdta[24],Fdr[12],Fdta0[24],Fdr0[12];
-   Int_t      Ndta[12];
-   FILE       *fp1,*fp2;
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-      // define some variables for later use.
-      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      ITS   = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TH    = gAlice->TreeH();
-      Ntrkp = TH->GetEntries();
-      gm    = ITS->GetITSgeom();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      trk = new ClustAl_tl[Ntrkp];
-
-      printf("Ntrkp=%d\n",Ntrkp);
-
-      HitsToClustAl(trk,ntrk,Ntrkp,TH,ITS,1.0);
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//
-      for(Itimes=4;Itimes<5;Itimes++){
-         if(Itimes==0){
-             fp1 = fopen("RvariationsR.csv","w");
-             fp2 = fopen("RvariationsN.csv","w");
-            fprintf(fp1,"Rr,Rs,Rrx1,Rerx1,Rsrx1,Rserx1,Rrz1,Rerz1,Rsrz1,Rserz1,"
-                   "Rrd1,Rerd1,Rsrd1,Resrd1,"
-                            "Rrx2,Rerx2,Rsrx2,Rserx2,Rrz2,Rerz2,Rsrz2,Rserz2,"
-                   "Rrd2,Rerd2,Rsrd2,Resrd2,"
-                            "Rrx3,Rerx3,Rsrx3,Rserx3,Rrz3,Rerz3,Rsrz3,Rserz3,"
-                   "Rrd3,Rerd3,Rsrd3,Resrd3,"
-                            "Rrx4,Rerx4,Rsrx4,Rserx4,Rrz4,Rerz4,Rsrz4,Rserz4,"
-                   "Rrd4,Rerd4,Rsrd4,Resrd4,"
-                            "Rrx5,Rerx5,Rsrx5,Rserx5,Rrz5,Rerz5,Rsrz5,Rserz5,"
-                   "Rrd5,Rerd5,Rsrd5,Resrd5,"
-                            "Rrx6,Rerx6,Rsrx6,Rserx6,Rrz6,Rerz6,Rsrz6,Rserz6,"
-                   "Rrd6,Rerd6,Rsrd6,Resrd6");
-            fprintf(fp2,"Rr,Rs,RN1,RN2,RN3,RN4,RN5,RN6,RN7,RN8,RN9,RN10,"
-                   "RN50,Rcut");
-         }else if(Itimes==1){
-             fp1 = fopen("RPhivariationsR.csv","w");
-             fp2 = fopen("RPhivariationsN.csv","w");
-            fprintf(fp1,"Fr,Fs,Frx1,Ferx1,Fsrx1,Fserx1,Frz1,Ferz1,Fsrz1,Fserz1,"
-                   "Frd1,Ferd1,Fsrd1,Fesrd1,"
-                            "Frx2,Ferx2,Fsrx2,Fserx2,Frz2,Ferz2,Fsrz2,Fserz2,"
-                   "Frd2,Ferd2,Fsrd2,Fesrd2,"
-                            "Frx3,Ferx3,Fsrx3,Fserx3,Frz3,Ferz3,Fsrz3,Fserz3,"
-                   "Frd3,Ferd3,Fsrd3,Fesrd3,"
-                            "Frx4,Ferx4,Fsrx4,Fserx4,Frz4,Ferz4,Fsrz4,Fserz4,"
-                   "Frd4,Ferd4,Fsrd4,Fesrd4,"
-                            "Frx5,Ferx5,Fsrx5,Fserx5,Frz5,Ferz5,Fsrz5,Fserz5,"
-                   "Frd5,Ferd5,Fsrd5,Fesrd5,"
-                            "Frx6,Ferx6,Fsrx6,Fserx6,Frz6,Ferz6,Fsrz6,Fserz6,"
-                   "Frd6,Ferd6,Fsrd6,Fesrd6");
-            fprintf(fp2,"Fr,Fs,FN1,FN2,FN3,FN4,FN5,FN6,FN7,FN8,FN9,FN10,"
-                   "FN50,Fcut");
-         }else if(Itimes==2){
-             fp1 = fopen("ZvariationsR.csv","w");
-             fp2 = fopen("ZvariationsN.csv","w");
-            fprintf(fp1,"Zr,Zs,Zrx1,Zerx1,Zsrx1,Zserx1,Zrz1,Zerz1,Zsrz1,Zserz1,"
-                   "Zrd1,Zerd1,Zsrd1,Zesrd1,"
-                            "Zrx2,Zerx2,Zsrx2,Zserx2,Zrz2,Zerz2,Zsrz2,Zserz2,"
-                   "Zrd2,Zerd2,Zsrd2,Zesrd2,"
-                            "Zrx3,Zerx3,Zsrx3,Zserx3,Zrz3,Zerz3,Zsrz3,Zserz3,"
-                   "Zrd3,Zerd3,Zsrd3,Zesrd3,"
-                            "Zrx4,Zerx4,Zsrx4,Zserx4,Zrz4,Zerz4,Zsrz4,Zserz4,"
-                   "Zrd4,Zerd4,Zsrd4,Zesrd4,"
-                            "Zrx5,Zerx5,Zsrx5,Zserx5,Zrz5,Zerz5,Zsrz5,Zserz5,"
-                   "Zrd5,Zerd5,Zsrd5,Zesrd5,"
-                            "Zrx6,Zerx6,Zsrx6,Zserx6,Zrz6,Zerz6,Zsrz6,Zserz6,"
-                   "Zrd6,Zerd6,Zsrd6,Zesrd6");
-            fprintf(fp2,"Zr,Zs,ZN1,ZN2,ZN3,ZN4,ZN5,ZN6,ZN7,ZN8,ZN9,ZN10,"
-                   "ZN50,Zcut");
-         }else if(Itimes==3){
-             fp1 = fopen("AvariationsR.csv","w");
-             fp2 = fopen("AvariationsN.csv","w");
-            fprintf(fp1,"Ar,As,Arx1,Aerx1,Asrx1,Aserx1,Arz1,Aerz1,Asrz1,Aserz1,"
-                   "Ard1,Aerd1,Asrd1,Aesrd1,"
-                            "Arx2,Aerx2,Asrx2,Aserx2,Arz2,Aerz2,Asrz2,Aserz2,"
-                   "Ard2,Aerd2,Asrd2,Aesrd2,"
-                            "Arx3,Aerx3,Asrx3,Aserx3,Arz3,Aerz3,Asrz3,Aserz3,"
-                   "Ard3,Aerd3,Asrd3,Aesrd3,"
-                            "Arx4,Aerx4,Asrx4,Aserx4,Arz4,Aerz4,Asrz4,Aserz4,"
-                   "Ard4,Aerd4,Asrd4,Aesrd4,"
-                            "Arx5,Aerx5,Asrx5,Aserx5,Arz5,Aerz5,Asrz5,Aserz5,"
-                   "Ard5,Aerd5,Asrd5,Aesrd5,"
-                            "Arx6,Aerx6,Asrx6,Aserx6,Arz6,Aerz6,Asrz6,Aserz6,"
-                   "Ard6,Aerd6,Asrd6,Aesrd6");
-            fprintf(fp2,"Ar,As,AN1,AN2,AN3,AN4,AN5,AN6,AN7,AN8,AN9,AN10,"
-                   "AN50,Acut");
-         }else if(Itimes==4){
-             fp1 = fopen("BvariationsR.csv","w");
-             fp2 = fopen("BvariationsN.csv","w");
-            fprintf(fp1,"Br,Bs,Brx1,Berx1,Bsrx1,Bserx1,Brz1,Berz1,Bsrz1,Bserz1,"
-                   "Brd1,Berd1,Bsrd1,Besrd1,"
-                            "Brx2,Berx2,Bsrx2,Bserx2,Brz2,Berz2,Bsrz2,Bserz2,"
-                   "Brd2,Berd2,Bsrd2,Besrd2,"
-                            "Brx3,Berx3,Bsrx3,Bserx3,Brz3,Berz3,Bsrz3,Bserz3,"
-                   "Brd3,Berd3,Bsrd3,Besrd3,"
-                            "Brx4,Berx4,Bsrx4,Bserx4,Brz4,Berz4,Bsrz4,Bserz4,"
-                   "Brd4,Berd4,Bsrd4,Besrd4,"
-                            "Brx5,Berx5,Bsrx5,Bserx5,Brz5,Berz5,Bsrz5,Bserz5,"
-                   "Brd5,Berd5,Bsrd5,Besrd5,"
-                            "Brx6,Berx6,Bsrx6,Bserx6,Brz6,Berz6,Bsrz6,Bserz6,"
-                   "Brd6,Berd6,Bsrd6,Besrd6");
-            fprintf(fp2,"Br,Bs,BN1,BN2,BN3,BN4,BN5,BN6,BN7,BN8,BN9,BN10,"
-                   "BN50,Bcut");
-         }else if(Itimes==5){
-             fp1 = fopen("CvariationsR.csv","w");
-             fp2 = fopen("CvariationsN.csv","w");
-            fprintf(fp1,"Cr,Cs,Crx1,Cerx1,Csrx1,Cserx1,Crz1,Cerz1,Csrz1,Cserz1,"
-                   "Crd1,Cerd1,Csrd1,Cesrd1,"
-                            "Crx2,Cerx2,Csrx2,Cserx2,Crz2,Cerz2,Csrz2,Cserz2,"
-                   "Crd2,Cerd2,Csrd2,Cesrd2,"
-                            "Crx3,Cerx3,Csrx3,Cserx3,Crz3,Cerz3,Csrz3,Cserz3,"
-                   "Crd3,Cerd3,Csrd3,Cesrd3,"
-                            "Crx4,Cerx4,Csrx4,Cserx4,Crz4,Cerz4,Csrz4,Cserz4,"
-                   "Crd4,Cerd4,Csrd4,Cesrd4,"
-                            "Crx5,Cerx5,Csrx5,Cserx5,Crz5,Cerz5,Csrz5,Cserz5,"
-                   "Crd5,Cerd5,Csrd5,Cesrd5,"
-                   "Crx6,Cerx6,Csrx6,Cserx6,Crz6,Cerz6,Csrz6,Cserz6,"
-                   "Crd6,Cerd6,Csrd6,Cesrd6");
-            fprintf(fp2,"Cr,Cs,CN1,CN2,CN3,CN4,CN5,CN6,CN7,CN8,CN9,CN10,"
-                   "CN50,Ccut");
-         } // end if
-         fprintf(fp1,"\n");
-         fprintf(fp2,"\n");
-         for(Isigmas=0;Isigmas<15;Isigmas++){
-//
-//       tran[0] = sigma1;
-//       tran[1] = sigma2;
-//       tran[2] = sigma3;
-         if(Itimes==0){ tran[0] = trans[Isigmas];
-         }else tran[0] = 0.0;
-         if(Itimes==1){ tran[1] = trans[Isigmas];
-         }else tran[1] = 0.0;
-         if(Itimes==2){ tran[2] = trans[Isigmas];
-         }else tran[2] = 0.0;
-         if(Itimes==3){ rot[0] = rots[Isigmas];
-         }else rot[0] = 0.0;
-         if(Itimes==4){ rot[1] = rots[Isigmas];
-         }else rot[1] = 0.0;
-         if(Itimes==5){ rot[2] = rots[Isigmas];
-         }else rot[2] = 0.0;
-         printf("tran= %e %e %e (cm), rot=%e %e %e (rad)\n",
-                tran[0],tran[1],tran[2],rot[0],rot[1],rot[2]);
-//
-         gm2 = *gm;
-         gm2.RandomCylindericalChange(tran,rot);
-
-         FillGlobalPositions(trk,ntrk,&gm2);
-         // setup to save all created histograms.
-         sprintf(Hfilename,"%s_%04.0fr%04.0fp%04.0fz%04.0fx%04.0fy%04.0fz.root",
-                 sfile,
-                 10000.*tran[0],10000.*tran[1],10000.*tran[2],
-                 10000.* rot[0],10000.* rot[1],10000.* rot[2]);
-         Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-         if(Hfile) Hfile->Close();
-         Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-         printf("Histograms saved to file %s\n",Hfilename);
-          //
-         PlotGeomChanges(gm,&gm2,Hfile,Rdta);
-          //
-         // fit all tracks and do a track quality hist.
-         FitAllTracks(trk,ntrk,v0,&gm2,sfile,Hfile,Fdta,Ndta); 
-//
-         for(Int_t l=0;l<6;l++){
-             Fdr[2*l+0] = sqrt(Fdta[4*l+0]*Fdta[4*l+0] +
-                               Fdta[4*l+2]*Fdta[4*l+2]);
-             Fdr[2*l+1] = sqrt(Fdta[4*l+0]*Fdta[4*l+0]*
-                               Fdta[4*l+1]*Fdta[4*l+1] +
-                               Fdta[4*l+2]*Fdta[4*l+2]*
-                               Fdta[4*l+3]*Fdta[4*l+3])/Fdr[2*l+0];
-         } // end for l
-         if(Isigmas==0){
-             for(Int_t fp=0;fp<24;fp++){
-                 Fdta0[fp] = Fdta[fp];
-                 if(fp<12) Fdr0[fp]  = Fdr[fp];
-             } // end for fp
-         } // end if Itimes==0&&Isigmas==0
-         if(Itimes==0) fprintf(fp1,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp1,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp1,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp1,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp1,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp1,"%e,%e,",rot[2],Rdta[5]);
-         if(Itimes==0) fprintf(fp2,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp2,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp2,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp2,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp2,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp2,"%e,%e,",rot[2],Rdta[5]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[0],Fdta[1],Fdta[0]/Fdta0[0],Fdta[1]/Fdta0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[2],Fdta[3],Fdta[2]/Fdta0[2],Fdta[3]/Fdta0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[0],Fdr[1],Fdr[0]/Fdr0[0],Fdr[1]/Fdr0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[4],Fdta[5],Fdta[4]/Fdta0[4],Fdta[5]/Fdta0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[6],Fdta[7],Fdta[6]/Fdta0[6],Fdta[7]/Fdta0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[2],Fdr[3],Fdr[2]/Fdr0[2],Fdr[3]/Fdr0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[8],Fdta[9],Fdta[8]/Fdta0[8],Fdta[9]/Fdta0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[10],Fdta[11],Fdta[10]/Fdta0[10],Fdta[11]/Fdta0[10]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[4],Fdr[5],Fdr[4]/Fdr0[4],Fdr[5]/Fdr0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[12],Fdta[12],Fdta[12]/Fdta0[12],Fdta[13]/Fdta0[12]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[14],Fdta[13],Fdta[14]/Fdta0[14],Fdta[15]/Fdta0[14]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[6],Fdr[7],Fdr[6]/Fdr0[6],Fdr[7]/Fdr0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[16],Fdta[15],Fdta[16]/Fdta0[16],Fdta[17]/Fdta0[16]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[18],Fdta[17],Fdta[18]/Fdta0[18],Fdta[19]/Fdta0[18]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[8],Fdr[9],Fdr[8]/Fdr0[8],Fdr[9]/Fdr0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[20],Fdta[19],Fdta[20]/Fdta0[20],Fdta[21]/Fdta0[20]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[22],Fdta[21],Fdta[22]/Fdta0[22],Fdta[23]/Fdta0[22]);
-         fprintf(fp1,"%e,%e,%e,%e\n",Fdr[10],Fdr[11],Fdr[10]/Fdr0[10],Fdr[11]/Fdr0[10]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[0],Ndta[1],Ndta[2],Ndta[3]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[4],Ndta[5],Ndta[6],Ndta[7]);
-         fprintf(fp2,"%d,%d,%d,%d\n",Ndta[8],Ndta[9],Ndta[10],Ndta[11]);
-//       FitVertexAll(trk,ntrk,sfile,Hfile); 
-         // Find all 2 track vertecies and hist. them.
-         Hfile->Close();
-          //
-      } // end for Isigmas
-         fclose(fp1);
-         fclose(fp2);
-      } // end for Itimes
-//
-      printf("Event %d done\n",evnt);
-//
-      deleteClustAl(trk,ntrk); // subrotine to delet memory allocated
-                               // inside HitsToclustAl.
-      delete[] trk;            // now delet memory allocated above.
-   } // end for evnt
-   Rfile->Close();
-   return;
-}
diff --git a/ITS/oldmacros/AlignITSmacro3C.C b/ITS/oldmacros/AlignITSmacro3C.C
deleted file mode 100644 (file)
index fd6b672..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-#include <fstream.h>
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;      // data points to fit.
-    Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-    // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
-};
-
-//
-void AlignITSmacro3C(const char *Rfilename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro illustrating how to 
-//   read the output of GALICE and fill some histograms.
-//
-//     Root > .L AlignITSmacro2.C    // this loads the macro in memory
-//     Root > AlignITSmacro2();      // by default process first event   
-//     Root > AlignITSmacro2("galice.root");   // process file galice.root
-//     Root > AlignITSmacro2("galice.root",3); // process file galice.root
-//                                                the first 4 events
-//       or
-//     Root > .x AlignITSmacro2.C;  //by default process first event
-//     Root > .x AlignITSmacro2.C("galice.root");   // process file galice.root
-//     Root > .x AlignITSmacro2.C("galice.root",3); // process file galice.root
-//                                                     the first 4 events
-/////////////////////////////////////////////////////////////////////////
-//
-    gROOT->Reset();  // Reset root to it's default state
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *Rfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Rfilename);
-   if(!Rfile) Rfile = new TFile(Rfilename);
-   printf("reading from file %s\n",Rfilename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)Rfile->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   Float_t    v0[3] = {0.0,0.0,0.0};
-   Float_t    tran[3] = {0.0,0.0,0.0},rot[3] = {0.0,0.0,0.0};
-   Float_t    trans[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                         2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                         2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // cm
-   Float_t    rots[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                        2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                        2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // rad
-   Int_t      nparticles,Ntrkp,ntrk,Itimes,Isigmas;
-   AliITS     *ITS = 0;
-   TTree      *TH = 0;
-   AliITSgeom *gm,gm2;
-   char       Hfilename[80];
-//   char       Gfilename[80];
-   TFile      *Hfile = 0;
-   ClustAl_tl *trk = 0;
-   Float_t    Rdta[6];
-   Float_t    Fdta[24],Fdr[12],Fdta0[24],Fdr0[12];
-   Int_t      Ndta[12];
-   FILE       *fp1,*fp2;
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-      // define some variables for later use.
-      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      ITS   = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TH    = gAlice->TreeH();
-      Ntrkp = TH->GetEntries();
-      gm    = ITS->GetITSgeom();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      trk = new ClustAl_tl[Ntrkp];
-
-      printf("Ntrkp=%d\n",Ntrkp);
-
-      HitsToClustAl(trk,ntrk,Ntrkp,TH,ITS,1.0);
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//
-      for(Itimes=5;Itimes<6;Itimes++){
-         if(Itimes==0){
-             fp1 = fopen("RvariationsR.csv","w");
-             fp2 = fopen("RvariationsN.csv","w");
-            fprintf(fp1,"Rr,Rs,Rrx1,Rerx1,Rsrx1,Rserx1,Rrz1,Rerz1,Rsrz1,Rserz1,"
-                   "Rrd1,Rerd1,Rsrd1,Resrd1,"
-                            "Rrx2,Rerx2,Rsrx2,Rserx2,Rrz2,Rerz2,Rsrz2,Rserz2,"
-                   "Rrd2,Rerd2,Rsrd2,Resrd2,"
-                            "Rrx3,Rerx3,Rsrx3,Rserx3,Rrz3,Rerz3,Rsrz3,Rserz3,"
-                   "Rrd3,Rerd3,Rsrd3,Resrd3,"
-                            "Rrx4,Rerx4,Rsrx4,Rserx4,Rrz4,Rerz4,Rsrz4,Rserz4,"
-                   "Rrd4,Rerd4,Rsrd4,Resrd4,"
-                            "Rrx5,Rerx5,Rsrx5,Rserx5,Rrz5,Rerz5,Rsrz5,Rserz5,"
-                   "Rrd5,Rerd5,Rsrd5,Resrd5,"
-                            "Rrx6,Rerx6,Rsrx6,Rserx6,Rrz6,Rerz6,Rsrz6,Rserz6,"
-                   "Rrd6,Rerd6,Rsrd6,Resrd6");
-            fprintf(fp2,"Rr,Rs,RN1,RN2,RN3,RN4,RN5,RN6,RN7,RN8,RN9,RN10,"
-                   "RN50,Rcut");
-         }else if(Itimes==1){
-             fp1 = fopen("RPhivariationsR.csv","w");
-             fp2 = fopen("RPhivariationsN.csv","w");
-            fprintf(fp1,"Fr,Fs,Frx1,Ferx1,Fsrx1,Fserx1,Frz1,Ferz1,Fsrz1,Fserz1,"
-                   "Frd1,Ferd1,Fsrd1,Fesrd1,"
-                            "Frx2,Ferx2,Fsrx2,Fserx2,Frz2,Ferz2,Fsrz2,Fserz2,"
-                   "Frd2,Ferd2,Fsrd2,Fesrd2,"
-                            "Frx3,Ferx3,Fsrx3,Fserx3,Frz3,Ferz3,Fsrz3,Fserz3,"
-                   "Frd3,Ferd3,Fsrd3,Fesrd3,"
-                            "Frx4,Ferx4,Fsrx4,Fserx4,Frz4,Ferz4,Fsrz4,Fserz4,"
-                   "Frd4,Ferd4,Fsrd4,Fesrd4,"
-                            "Frx5,Ferx5,Fsrx5,Fserx5,Frz5,Ferz5,Fsrz5,Fserz5,"
-                   "Frd5,Ferd5,Fsrd5,Fesrd5,"
-                            "Frx6,Ferx6,Fsrx6,Fserx6,Frz6,Ferz6,Fsrz6,Fserz6,"
-                   "Frd6,Ferd6,Fsrd6,Fesrd6");
-            fprintf(fp2,"Fr,Fs,FN1,FN2,FN3,FN4,FN5,FN6,FN7,FN8,FN9,FN10,"
-                   "FN50,Fcut");
-         }else if(Itimes==2){
-             fp1 = fopen("ZvariationsR.csv","w");
-             fp2 = fopen("ZvariationsN.csv","w");
-            fprintf(fp1,"Zr,Zs,Zrx1,Zerx1,Zsrx1,Zserx1,Zrz1,Zerz1,Zsrz1,Zserz1,"
-                   "Zrd1,Zerd1,Zsrd1,Zesrd1,"
-                            "Zrx2,Zerx2,Zsrx2,Zserx2,Zrz2,Zerz2,Zsrz2,Zserz2,"
-                   "Zrd2,Zerd2,Zsrd2,Zesrd2,"
-                            "Zrx3,Zerx3,Zsrx3,Zserx3,Zrz3,Zerz3,Zsrz3,Zserz3,"
-                   "Zrd3,Zerd3,Zsrd3,Zesrd3,"
-                            "Zrx4,Zerx4,Zsrx4,Zserx4,Zrz4,Zerz4,Zsrz4,Zserz4,"
-                   "Zrd4,Zerd4,Zsrd4,Zesrd4,"
-                            "Zrx5,Zerx5,Zsrx5,Zserx5,Zrz5,Zerz5,Zsrz5,Zserz5,"
-                   "Zrd5,Zerd5,Zsrd5,Zesrd5,"
-                            "Zrx6,Zerx6,Zsrx6,Zserx6,Zrz6,Zerz6,Zsrz6,Zserz6,"
-                   "Zrd6,Zerd6,Zsrd6,Zesrd6");
-            fprintf(fp2,"Zr,Zs,ZN1,ZN2,ZN3,ZN4,ZN5,ZN6,ZN7,ZN8,ZN9,ZN10,"
-                   "ZN50,Zcut");
-         }else if(Itimes==3){
-             fp1 = fopen("AvariationsR.csv","w");
-             fp2 = fopen("AvariationsN.csv","w");
-            fprintf(fp1,"Ar,As,Arx1,Aerx1,Asrx1,Aserx1,Arz1,Aerz1,Asrz1,Aserz1,"
-                   "Ard1,Aerd1,Asrd1,Aesrd1,"
-                            "Arx2,Aerx2,Asrx2,Aserx2,Arz2,Aerz2,Asrz2,Aserz2,"
-                   "Ard2,Aerd2,Asrd2,Aesrd2,"
-                            "Arx3,Aerx3,Asrx3,Aserx3,Arz3,Aerz3,Asrz3,Aserz3,"
-                   "Ard3,Aerd3,Asrd3,Aesrd3,"
-                            "Arx4,Aerx4,Asrx4,Aserx4,Arz4,Aerz4,Asrz4,Aserz4,"
-                   "Ard4,Aerd4,Asrd4,Aesrd4,"
-                            "Arx5,Aerx5,Asrx5,Aserx5,Arz5,Aerz5,Asrz5,Aserz5,"
-                   "Ard5,Aerd5,Asrd5,Aesrd5,"
-                            "Arx6,Aerx6,Asrx6,Aserx6,Arz6,Aerz6,Asrz6,Aserz6,"
-                   "Ard6,Aerd6,Asrd6,Aesrd6");
-            fprintf(fp2,"Ar,As,AN1,AN2,AN3,AN4,AN5,AN6,AN7,AN8,AN9,AN10,"
-                   "AN50,Acut");
-         }else if(Itimes==4){
-             fp1 = fopen("BvariationsR.csv","w");
-             fp2 = fopen("BvariationsN.csv","w");
-            fprintf(fp1,"Br,Bs,Brx1,Berx1,Bsrx1,Bserx1,Brz1,Berz1,Bsrz1,Bserz1,"
-                   "Brd1,Berd1,Bsrd1,Besrd1,"
-                            "Brx2,Berx2,Bsrx2,Bserx2,Brz2,Berz2,Bsrz2,Bserz2,"
-                   "Brd2,Berd2,Bsrd2,Besrd2,"
-                            "Brx3,Berx3,Bsrx3,Bserx3,Brz3,Berz3,Bsrz3,Bserz3,"
-                   "Brd3,Berd3,Bsrd3,Besrd3,"
-                            "Brx4,Berx4,Bsrx4,Bserx4,Brz4,Berz4,Bsrz4,Bserz4,"
-                   "Brd4,Berd4,Bsrd4,Besrd4,"
-                            "Brx5,Berx5,Bsrx5,Bserx5,Brz5,Berz5,Bsrz5,Bserz5,"
-                   "Brd5,Berd5,Bsrd5,Besrd5,"
-                            "Brx6,Berx6,Bsrx6,Bserx6,Brz6,Berz6,Bsrz6,Bserz6,"
-                   "Brd6,Berd6,Bsrd6,Besrd6");
-            fprintf(fp2,"Br,Bs,BN1,BN2,BN3,BN4,BN5,BN6,BN7,BN8,BN9,BN10,"
-                   "BN50,Bcut");
-         }else if(Itimes==5){
-             fp1 = fopen("CvariationsR.csv","w");
-             fp2 = fopen("CvariationsN.csv","w");
-            fprintf(fp1,"Cr,Cs,Crx1,Cerx1,Csrx1,Cserx1,Crz1,Cerz1,Csrz1,Cserz1,"
-                   "Crd1,Cerd1,Csrd1,Cesrd1,"
-                            "Crx2,Cerx2,Csrx2,Cserx2,Crz2,Cerz2,Csrz2,Cserz2,"
-                   "Crd2,Cerd2,Csrd2,Cesrd2,"
-                            "Crx3,Cerx3,Csrx3,Cserx3,Crz3,Cerz3,Csrz3,Cserz3,"
-                   "Crd3,Cerd3,Csrd3,Cesrd3,"
-                            "Crx4,Cerx4,Csrx4,Cserx4,Crz4,Cerz4,Csrz4,Cserz4,"
-                   "Crd4,Cerd4,Csrd4,Cesrd4,"
-                            "Crx5,Cerx5,Csrx5,Cserx5,Crz5,Cerz5,Csrz5,Cserz5,"
-                   "Crd5,Cerd5,Csrd5,Cesrd5,"
-                   "Crx6,Cerx6,Csrx6,Cserx6,Crz6,Cerz6,Csrz6,Cserz6,"
-                   "Crd6,Cerd6,Csrd6,Cesrd6");
-            fprintf(fp2,"Cr,Cs,CN1,CN2,CN3,CN4,CN5,CN6,CN7,CN8,CN9,CN10,"
-                   "CN50,Ccut");
-         } // end if
-         fprintf(fp1,"\n");
-         fprintf(fp2,"\n");
-         for(Isigmas=0;Isigmas<15;Isigmas++){
-//
-//       tran[0] = sigma1;
-//       tran[1] = sigma2;
-//       tran[2] = sigma3;
-         if(Itimes==0){ tran[0] = trans[Isigmas];
-         }else tran[0] = 0.0;
-         if(Itimes==1){ tran[1] = trans[Isigmas];
-         }else tran[1] = 0.0;
-         if(Itimes==2){ tran[2] = trans[Isigmas];
-         }else tran[2] = 0.0;
-         if(Itimes==3){ rot[0] = rots[Isigmas];
-         }else rot[0] = 0.0;
-         if(Itimes==4){ rot[1] = rots[Isigmas];
-         }else rot[1] = 0.0;
-         if(Itimes==5){ rot[2] = rots[Isigmas];
-         }else rot[2] = 0.0;
-         printf("tran= %e %e %e (cm), rot=%e %e %e (rad)\n",
-                tran[0],tran[1],tran[2],rot[0],rot[1],rot[2]);
-//
-         gm2 = *gm;
-         gm2.RandomCylindericalChange(tran,rot);
-
-         FillGlobalPositions(trk,ntrk,&gm2);
-         // setup to save all created histograms.
-         sprintf(Hfilename,"%s_%04.0fr%04.0fp%04.0fz%04.0fx%04.0fy%04.0fz.root",
-                 sfile,
-                 10000.*tran[0],10000.*tran[1],10000.*tran[2],
-                 10000.* rot[0],10000.* rot[1],10000.* rot[2]);
-         Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-         if(Hfile) Hfile->Close();
-         Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-         printf("Histograms saved to file %s\n",Hfilename);
-          //
-         PlotGeomChanges(gm,&gm2,Hfile,Rdta);
-          //
-         // fit all tracks and do a track quality hist.
-         FitAllTracks(trk,ntrk,v0,&gm2,sfile,Hfile,Fdta,Ndta); 
-//
-         for(Int_t l=0;l<6;l++){
-             Fdr[2*l+0] = sqrt(Fdta[4*l+0]*Fdta[4*l+0] +
-                               Fdta[4*l+2]*Fdta[4*l+2]);
-             Fdr[2*l+1] = sqrt(Fdta[4*l+0]*Fdta[4*l+0]*
-                               Fdta[4*l+1]*Fdta[4*l+1] +
-                               Fdta[4*l+2]*Fdta[4*l+2]*
-                               Fdta[4*l+3]*Fdta[4*l+3])/Fdr[2*l+0];
-         } // end for l
-         if(Isigmas==0){
-             for(Int_t fp=0;fp<24;fp++){
-                 Fdta0[fp] = Fdta[fp];
-                 if(fp<12) Fdr0[fp]  = Fdr[fp];
-             } // end for fp
-         } // end if Itimes==0&&Isigmas==0
-         if(Itimes==0) fprintf(fp1,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp1,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp1,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp1,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp1,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp1,"%e,%e,",rot[2],Rdta[5]);
-         if(Itimes==0) fprintf(fp2,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp2,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp2,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp2,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp2,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp2,"%e,%e,",rot[2],Rdta[5]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[0],Fdta[1],Fdta[0]/Fdta0[0],Fdta[1]/Fdta0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[2],Fdta[3],Fdta[2]/Fdta0[2],Fdta[3]/Fdta0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[0],Fdr[1],Fdr[0]/Fdr0[0],Fdr[1]/Fdr0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[4],Fdta[5],Fdta[4]/Fdta0[4],Fdta[5]/Fdta0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[6],Fdta[7],Fdta[6]/Fdta0[6],Fdta[7]/Fdta0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[2],Fdr[3],Fdr[2]/Fdr0[2],Fdr[3]/Fdr0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[8],Fdta[9],Fdta[8]/Fdta0[8],Fdta[9]/Fdta0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[10],Fdta[11],Fdta[10]/Fdta0[10],Fdta[11]/Fdta0[10]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[4],Fdr[5],Fdr[4]/Fdr0[4],Fdr[5]/Fdr0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[12],Fdta[12],Fdta[12]/Fdta0[12],Fdta[13]/Fdta0[12]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[14],Fdta[13],Fdta[14]/Fdta0[14],Fdta[15]/Fdta0[14]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[6],Fdr[7],Fdr[6]/Fdr0[6],Fdr[7]/Fdr0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[16],Fdta[15],Fdta[16]/Fdta0[16],Fdta[17]/Fdta0[16]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[18],Fdta[17],Fdta[18]/Fdta0[18],Fdta[19]/Fdta0[18]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[8],Fdr[9],Fdr[8]/Fdr0[8],Fdr[9]/Fdr0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[20],Fdta[19],Fdta[20]/Fdta0[20],Fdta[21]/Fdta0[20]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[22],Fdta[21],Fdta[22]/Fdta0[22],Fdta[23]/Fdta0[22]);
-         fprintf(fp1,"%e,%e,%e,%e\n",Fdr[10],Fdr[11],Fdr[10]/Fdr0[10],Fdr[11]/Fdr0[10]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[0],Ndta[1],Ndta[2],Ndta[3]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[4],Ndta[5],Ndta[6],Ndta[7]);
-         fprintf(fp2,"%d,%d,%d,%d\n",Ndta[8],Ndta[9],Ndta[10],Ndta[11]);
-//       FitVertexAll(trk,ntrk,sfile,Hfile); 
-         // Find all 2 track vertecies and hist. them.
-         Hfile->Close();
-          //
-      } // end for Isigmas
-         fclose(fp1);
-         fclose(fp2);
-      } // end for Itimes
-//
-      printf("Event %d done\n",evnt);
-//
-      deleteClustAl(trk,ntrk); // subrotine to delet memory allocated
-                               // inside HitsToclustAl.
-      delete[] trk;            // now delet memory allocated above.
-   } // end for evnt
-   Rfile->Close();
-   return;
-}
diff --git a/ITS/oldmacros/AlignITSmacro3R.C b/ITS/oldmacros/AlignITSmacro3R.C
deleted file mode 100644 (file)
index 0afb9de..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-#include <fstream.h>
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;      // data points to fit.
-    Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-    // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
-};
-
-//
-void AlignITSmacro3R(const char *Rfilename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro illustrating how to 
-//   read the output of GALICE and fill some histograms.
-//
-//     Root > .L AlignITSmacro2.C    // this loads the macro in memory
-//     Root > AlignITSmacro2();      // by default process first event   
-//     Root > AlignITSmacro2("galice.root");   // process file galice.root
-//     Root > AlignITSmacro2("galice.root",3); // process file galice.root
-//                                                the first 4 events
-//       or
-//     Root > .x AlignITSmacro2.C;  //by default process first event
-//     Root > .x AlignITSmacro2.C("galice.root");   // process file galice.root
-//     Root > .x AlignITSmacro2.C("galice.root",3); // process file galice.root
-//                                                     the first 4 events
-/////////////////////////////////////////////////////////////////////////
-//
-    gROOT->Reset();  // Reset root to it's default state
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *Rfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Rfilename);
-   if(!Rfile) Rfile = new TFile(Rfilename);
-   printf("reading from file %s\n",Rfilename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)Rfile->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   Float_t    v0[3] = {0.0,0.0,0.0};
-   Float_t    tran[3] = {0.0,0.0,0.0},rot[3] = {0.0,0.0,0.0};
-   Float_t    trans[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                         2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                         2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // cm
-   Float_t    rots[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                        2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                        2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // rad
-   Int_t      nparticles,Ntrkp,ntrk,Itimes,Isigmas;
-   AliITS     *ITS = 0;
-   TTree      *TH = 0;
-   AliITSgeom *gm,gm2;
-   char       Hfilename[80];
-//   char       Gfilename[80];
-   TFile      *Hfile = 0;
-   ClustAl_tl *trk = 0;
-   Float_t    Rdta[6];
-   Float_t    Fdta[24],Fdr[12],Fdta0[24],Fdr0[12];
-   Int_t      Ndta[12];
-   FILE       *fp1,*fp2;
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-      // define some variables for later use.
-      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      ITS   = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TH    = gAlice->TreeH();
-      Ntrkp = TH->GetEntries();
-      gm    = ITS->GetITSgeom();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      trk = new ClustAl_tl[Ntrkp];
-
-      printf("Ntrkp=%d\n",Ntrkp);
-
-      HitsToClustAl(trk,ntrk,Ntrkp,TH,ITS,1.0);
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//
-      for(Itimes=0;Itimes<1;Itimes++){
-         if(Itimes==0){
-             fp1 = fopen("RvariationsR.csv","w");
-             fp2 = fopen("RvariationsN.csv","w");
-            fprintf(fp1,"Rr,Rs,Rrx1,Rerx1,Rsrx1,Rserx1,Rrz1,Rerz1,Rsrz1,Rserz1,"
-                   "Rrd1,Rerd1,Rsrd1,Resrd1,"
-                            "Rrx2,Rerx2,Rsrx2,Rserx2,Rrz2,Rerz2,Rsrz2,Rserz2,"
-                   "Rrd2,Rerd2,Rsrd2,Resrd2,"
-                            "Rrx3,Rerx3,Rsrx3,Rserx3,Rrz3,Rerz3,Rsrz3,Rserz3,"
-                   "Rrd3,Rerd3,Rsrd3,Resrd3,"
-                            "Rrx4,Rerx4,Rsrx4,Rserx4,Rrz4,Rerz4,Rsrz4,Rserz4,"
-                   "Rrd4,Rerd4,Rsrd4,Resrd4,"
-                            "Rrx5,Rerx5,Rsrx5,Rserx5,Rrz5,Rerz5,Rsrz5,Rserz5,"
-                   "Rrd5,Rerd5,Rsrd5,Resrd5,"
-                            "Rrx6,Rerx6,Rsrx6,Rserx6,Rrz6,Rerz6,Rsrz6,Rserz6,"
-                   "Rrd6,Rerd6,Rsrd6,Resrd6");
-            fprintf(fp2,"Rr,Rs,RN1,RN2,RN3,RN4,RN5,RN6,RN7,RN8,RN9,RN10,"
-                   "RN50,Rcut");
-         }else if(Itimes==1){
-             fp1 = fopen("RPhivariationsR.csv","w");
-             fp2 = fopen("RPhivariationsN.csv","w");
-            fprintf(fp1,"Fr,Fs,Frx1,Ferx1,Fsrx1,Fserx1,Frz1,Ferz1,Fsrz1,Fserz1,"
-                   "Frd1,Ferd1,Fsrd1,Fesrd1,"
-                            "Frx2,Ferx2,Fsrx2,Fserx2,Frz2,Ferz2,Fsrz2,Fserz2,"
-                   "Frd2,Ferd2,Fsrd2,Fesrd2,"
-                            "Frx3,Ferx3,Fsrx3,Fserx3,Frz3,Ferz3,Fsrz3,Fserz3,"
-                   "Frd3,Ferd3,Fsrd3,Fesrd3,"
-                            "Frx4,Ferx4,Fsrx4,Fserx4,Frz4,Ferz4,Fsrz4,Fserz4,"
-                   "Frd4,Ferd4,Fsrd4,Fesrd4,"
-                            "Frx5,Ferx5,Fsrx5,Fserx5,Frz5,Ferz5,Fsrz5,Fserz5,"
-                   "Frd5,Ferd5,Fsrd5,Fesrd5,"
-                            "Frx6,Ferx6,Fsrx6,Fserx6,Frz6,Ferz6,Fsrz6,Fserz6,"
-                   "Frd6,Ferd6,Fsrd6,Fesrd6");
-            fprintf(fp2,"Fr,Fs,FN1,FN2,FN3,FN4,FN5,FN6,FN7,FN8,FN9,FN10,"
-                   "FN50,Fcut");
-         }else if(Itimes==2){
-             fp1 = fopen("ZvariationsR.csv","w");
-             fp2 = fopen("ZvariationsN.csv","w");
-            fprintf(fp1,"Zr,Zs,Zrx1,Zerx1,Zsrx1,Zserx1,Zrz1,Zerz1,Zsrz1,Zserz1,"
-                   "Zrd1,Zerd1,Zsrd1,Zesrd1,"
-                            "Zrx2,Zerx2,Zsrx2,Zserx2,Zrz2,Zerz2,Zsrz2,Zserz2,"
-                   "Zrd2,Zerd2,Zsrd2,Zesrd2,"
-                            "Zrx3,Zerx3,Zsrx3,Zserx3,Zrz3,Zerz3,Zsrz3,Zserz3,"
-                   "Zrd3,Zerd3,Zsrd3,Zesrd3,"
-                            "Zrx4,Zerx4,Zsrx4,Zserx4,Zrz4,Zerz4,Zsrz4,Zserz4,"
-                   "Zrd4,Zerd4,Zsrd4,Zesrd4,"
-                            "Zrx5,Zerx5,Zsrx5,Zserx5,Zrz5,Zerz5,Zsrz5,Zserz5,"
-                   "Zrd5,Zerd5,Zsrd5,Zesrd5,"
-                            "Zrx6,Zerx6,Zsrx6,Zserx6,Zrz6,Zerz6,Zsrz6,Zserz6,"
-                   "Zrd6,Zerd6,Zsrd6,Zesrd6");
-            fprintf(fp2,"Zr,Zs,ZN1,ZN2,ZN3,ZN4,ZN5,ZN6,ZN7,ZN8,ZN9,ZN10,"
-                   "ZN50,Zcut");
-         }else if(Itimes==3){
-             fp1 = fopen("AvariationsR.csv","w");
-             fp2 = fopen("AvariationsN.csv","w");
-            fprintf(fp1,"Ar,As,Arx1,Aerx1,Asrx1,Aserx1,Arz1,Aerz1,Asrz1,Aserz1,"
-                   "Ard1,Aerd1,Asrd1,Aesrd1,"
-                            "Arx2,Aerx2,Asrx2,Aserx2,Arz2,Aerz2,Asrz2,Aserz2,"
-                   "Ard2,Aerd2,Asrd2,Aesrd2,"
-                            "Arx3,Aerx3,Asrx3,Aserx3,Arz3,Aerz3,Asrz3,Aserz3,"
-                   "Ard3,Aerd3,Asrd3,Aesrd3,"
-                            "Arx4,Aerx4,Asrx4,Aserx4,Arz4,Aerz4,Asrz4,Aserz4,"
-                   "Ard4,Aerd4,Asrd4,Aesrd4,"
-                            "Arx5,Aerx5,Asrx5,Aserx5,Arz5,Aerz5,Asrz5,Aserz5,"
-                   "Ard5,Aerd5,Asrd5,Aesrd5,"
-                            "Arx6,Aerx6,Asrx6,Aserx6,Arz6,Aerz6,Asrz6,Aserz6,"
-                   "Ard6,Aerd6,Asrd6,Aesrd6");
-            fprintf(fp2,"Ar,As,AN1,AN2,AN3,AN4,AN5,AN6,AN7,AN8,AN9,AN10,"
-                   "AN50,Acut");
-         }else if(Itimes==4){
-             fp1 = fopen("BvariationsR.csv","w");
-             fp2 = fopen("BvariationsN.csv","w");
-            fprintf(fp1,"Br,Bs,Brx1,Berx1,Bsrx1,Bserx1,Brz1,Berz1,Bsrz1,Bserz1,"
-                   "Brd1,Berd1,Bsrd1,Besrd1,"
-                            "Brx2,Berx2,Bsrx2,Bserx2,Brz2,Berz2,Bsrz2,Bserz2,"
-                   "Brd2,Berd2,Bsrd2,Besrd2,"
-                            "Brx3,Berx3,Bsrx3,Bserx3,Brz3,Berz3,Bsrz3,Bserz3,"
-                   "Brd3,Berd3,Bsrd3,Besrd3,"
-                            "Brx4,Berx4,Bsrx4,Bserx4,Brz4,Berz4,Bsrz4,Bserz4,"
-                   "Brd4,Berd4,Bsrd4,Besrd4,"
-                            "Brx5,Berx5,Bsrx5,Bserx5,Brz5,Berz5,Bsrz5,Bserz5,"
-                   "Brd5,Berd5,Bsrd5,Besrd5,"
-                            "Brx6,Berx6,Bsrx6,Bserx6,Brz6,Berz6,Bsrz6,Bserz6,"
-                   "Brd6,Berd6,Bsrd6,Besrd6");
-            fprintf(fp2,"Br,Bs,BN1,BN2,BN3,BN4,BN5,BN6,BN7,BN8,BN9,BN10,"
-                   "BN50,Bcut");
-         }else if(Itimes==5){
-             fp1 = fopen("CvariationsR.csv","w");
-             fp2 = fopen("CvariationsN.csv","w");
-            fprintf(fp1,"Cr,Cs,Crx1,Cerx1,Csrx1,Cserx1,Crz1,Cerz1,Csrz1,Cserz1,"
-                   "Crd1,Cerd1,Csrd1,Cesrd1,"
-                            "Crx2,Cerx2,Csrx2,Cserx2,Crz2,Cerz2,Csrz2,Cserz2,"
-                   "Crd2,Cerd2,Csrd2,Cesrd2,"
-                            "Crx3,Cerx3,Csrx3,Cserx3,Crz3,Cerz3,Csrz3,Cserz3,"
-                   "Crd3,Cerd3,Csrd3,Cesrd3,"
-                            "Crx4,Cerx4,Csrx4,Cserx4,Crz4,Cerz4,Csrz4,Cserz4,"
-                   "Crd4,Cerd4,Csrd4,Cesrd4,"
-                            "Crx5,Cerx5,Csrx5,Cserx5,Crz5,Cerz5,Csrz5,Cserz5,"
-                   "Crd5,Cerd5,Csrd5,Cesrd5,"
-                   "Crx6,Cerx6,Csrx6,Cserx6,Crz6,Cerz6,Csrz6,Cserz6,"
-                   "Crd6,Cerd6,Csrd6,Cesrd6");
-            fprintf(fp2,"Cr,Cs,CN1,CN2,CN3,CN4,CN5,CN6,CN7,CN8,CN9,CN10,"
-                   "CN50,Ccut");
-         } // end if
-         fprintf(fp1,"\n");
-         fprintf(fp2,"\n");
-         for(Isigmas=0;Isigmas<15;Isigmas++){
-//
-//       tran[0] = sigma1;
-//       tran[1] = sigma2;
-//       tran[2] = sigma3;
-         if(Itimes==0){ tran[0] = trans[Isigmas];
-         }else tran[0] = 0.0;
-         if(Itimes==1){ tran[1] = trans[Isigmas];
-         }else tran[1] = 0.0;
-         if(Itimes==2){ tran[2] = trans[Isigmas];
-         }else tran[2] = 0.0;
-         if(Itimes==3){ rot[0] = rots[Isigmas];
-         }else rot[0] = 0.0;
-         if(Itimes==4){ rot[1] = rots[Isigmas];
-         }else rot[1] = 0.0;
-         if(Itimes==5){ rot[2] = rots[Isigmas];
-         }else rot[2] = 0.0;
-         printf("tran= %e %e %e (cm), rot=%e %e %e (rad)\n",
-                tran[0],tran[1],tran[2],rot[0],rot[1],rot[2]);
-//
-         gm2 = *gm;
-         gm2.RandomCylindericalChange(tran,rot);
-
-         FillGlobalPositions(trk,ntrk,&gm2);
-         // setup to save all created histograms.
-         sprintf(Hfilename,"%s_%04.0fr%04.0fp%04.0fz%04.0fx%04.0fy%04.0fz.root",
-                 sfile,
-                 10000.*tran[0],10000.*tran[1],10000.*tran[2],
-                 10000.* rot[0],10000.* rot[1],10000.* rot[2]);
-         Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-         if(Hfile) Hfile->Close();
-         Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-         printf("Histograms saved to file %s\n",Hfilename);
-          //
-         PlotGeomChanges(gm,&gm2,Hfile,Rdta);
-          //
-         // fit all tracks and do a track quality hist.
-         FitAllTracks(trk,ntrk,v0,&gm2,sfile,Hfile,Fdta,Ndta); 
-//
-         for(Int_t l=0;l<6;l++){
-             Fdr[2*l+0] = sqrt(Fdta[4*l+0]*Fdta[4*l+0] +
-                               Fdta[4*l+2]*Fdta[4*l+2]);
-             Fdr[2*l+1] = sqrt(Fdta[4*l+0]*Fdta[4*l+0]*
-                               Fdta[4*l+1]*Fdta[4*l+1] +
-                               Fdta[4*l+2]*Fdta[4*l+2]*
-                               Fdta[4*l+3]*Fdta[4*l+3])/Fdr[2*l+0];
-         } // end for l
-         if(Isigmas==0){
-             for(Int_t fp=0;fp<24;fp++){
-                 Fdta0[fp] = Fdta[fp];
-                 if(fp<12) Fdr0[fp]  = Fdr[fp];
-             } // end for fp
-         } // end if Itimes==0&&Isigmas==0
-         if(Itimes==0) fprintf(fp1,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp1,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp1,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp1,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp1,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp1,"%e,%e,",rot[2],Rdta[5]);
-         if(Itimes==0) fprintf(fp2,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp2,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp2,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp2,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp2,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp2,"%e,%e,",rot[2],Rdta[5]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[0],Fdta[1],Fdta[0]/Fdta0[0],Fdta[1]/Fdta0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[2],Fdta[3],Fdta[2]/Fdta0[2],Fdta[3]/Fdta0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[0],Fdr[1],Fdr[0]/Fdr0[0],Fdr[1]/Fdr0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[4],Fdta[5],Fdta[4]/Fdta0[4],Fdta[5]/Fdta0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[6],Fdta[7],Fdta[6]/Fdta0[6],Fdta[7]/Fdta0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[2],Fdr[3],Fdr[2]/Fdr0[2],Fdr[3]/Fdr0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[8],Fdta[9],Fdta[8]/Fdta0[8],Fdta[9]/Fdta0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[10],Fdta[11],Fdta[10]/Fdta0[10],Fdta[11]/Fdta0[10]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[4],Fdr[5],Fdr[4]/Fdr0[4],Fdr[5]/Fdr0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[12],Fdta[12],Fdta[12]/Fdta0[12],Fdta[13]/Fdta0[12]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[14],Fdta[13],Fdta[14]/Fdta0[14],Fdta[15]/Fdta0[14]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[6],Fdr[7],Fdr[6]/Fdr0[6],Fdr[7]/Fdr0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[16],Fdta[15],Fdta[16]/Fdta0[16],Fdta[17]/Fdta0[16]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[18],Fdta[17],Fdta[18]/Fdta0[18],Fdta[19]/Fdta0[18]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[8],Fdr[9],Fdr[8]/Fdr0[8],Fdr[9]/Fdr0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[20],Fdta[19],Fdta[20]/Fdta0[20],Fdta[21]/Fdta0[20]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[22],Fdta[21],Fdta[22]/Fdta0[22],Fdta[23]/Fdta0[22]);
-         fprintf(fp1,"%e,%e,%e,%e\n",Fdr[10],Fdr[11],Fdr[10]/Fdr0[10],Fdr[11]/Fdr0[10]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[0],Ndta[1],Ndta[2],Ndta[3]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[4],Ndta[5],Ndta[6],Ndta[7]);
-         fprintf(fp2,"%d,%d,%d,%d\n",Ndta[8],Ndta[9],Ndta[10],Ndta[11]);
-//       FitVertexAll(trk,ntrk,sfile,Hfile); 
-         // Find all 2 track vertecies and hist. them.
-         Hfile->Close();
-          //
-      } // end for Isigmas
-         fclose(fp1);
-         fclose(fp2);
-      } // end for Itimes
-//
-      printf("Event %d done\n",evnt);
-//
-      deleteClustAl(trk,ntrk); // subrotine to delet memory allocated
-                               // inside HitsToclustAl.
-      delete[] trk;            // now delet memory allocated above.
-   } // end for evnt
-   Rfile->Close();
-   return;
-}
diff --git a/ITS/oldmacros/AlignITSmacro3Rphi.C b/ITS/oldmacros/AlignITSmacro3Rphi.C
deleted file mode 100644 (file)
index 4ae176e..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-#include <fstream.h>
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;      // data points to fit.
-    Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-    // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
-};
-
-//
-void AlignITSmacro3Rphi(const char *Rfilename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro illustrating how to 
-//   read the output of GALICE and fill some histograms.
-//
-//     Root > .L AlignITSmacro2.C    // this loads the macro in memory
-//     Root > AlignITSmacro2();      // by default process first event   
-//     Root > AlignITSmacro2("galice.root");   // process file galice.root
-//     Root > AlignITSmacro2("galice.root",3); // process file galice.root
-//                                                the first 4 events
-//       or
-//     Root > .x AlignITSmacro2.C;  //by default process first event
-//     Root > .x AlignITSmacro2.C("galice.root");   // process file galice.root
-//     Root > .x AlignITSmacro2.C("galice.root",3); // process file galice.root
-//                                                     the first 4 events
-/////////////////////////////////////////////////////////////////////////
-//
-    gROOT->Reset();  // Reset root to it's default state
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *Rfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Rfilename);
-   if(!Rfile) Rfile = new TFile(Rfilename);
-   printf("reading from file %s\n",Rfilename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)Rfile->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   Float_t    v0[3] = {0.0,0.0,0.0};
-   Float_t    tran[3] = {0.0,0.0,0.0},rot[3] = {0.0,0.0,0.0};
-   Float_t    trans[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                         2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                         2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // cm
-   Float_t    rots[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                        2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                        2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // rad
-   Int_t      nparticles,Ntrkp,ntrk,Itimes,Isigmas;
-   AliITS     *ITS = 0;
-   TTree      *TH = 0;
-   AliITSgeom *gm,gm2;
-   char       Hfilename[80];
-//   char       Gfilename[80];
-   TFile      *Hfile = 0;
-   ClustAl_tl *trk = 0;
-   Float_t    Rdta[6];
-   Float_t    Fdta[24],Fdr[12],Fdta0[24],Fdr0[12];
-   Int_t      Ndta[12];
-   FILE       *fp1,*fp2;
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-      // define some variables for later use.
-      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      ITS   = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TH    = gAlice->TreeH();
-      Ntrkp = TH->GetEntries();
-      gm    = ITS->GetITSgeom();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      trk = new ClustAl_tl[Ntrkp];
-
-      printf("Ntrkp=%d\n",Ntrkp);
-
-      HitsToClustAl(trk,ntrk,Ntrkp,TH,ITS,1.0);
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//
-      for(Itimes=1;Itimes<2;Itimes++){
-         if(Itimes==0){
-             fp1 = fopen("RvariationsR.csv","w");
-             fp2 = fopen("RvariationsN.csv","w");
-            fprintf(fp1,"Rr,Rs,Rrx1,Rerx1,Rsrx1,Rserx1,Rrz1,Rerz1,Rsrz1,Rserz1,"
-                   "Rrd1,Rerd1,Rsrd1,Resrd1,"
-                            "Rrx2,Rerx2,Rsrx2,Rserx2,Rrz2,Rerz2,Rsrz2,Rserz2,"
-                   "Rrd2,Rerd2,Rsrd2,Resrd2,"
-                            "Rrx3,Rerx3,Rsrx3,Rserx3,Rrz3,Rerz3,Rsrz3,Rserz3,"
-                   "Rrd3,Rerd3,Rsrd3,Resrd3,"
-                            "Rrx4,Rerx4,Rsrx4,Rserx4,Rrz4,Rerz4,Rsrz4,Rserz4,"
-                   "Rrd4,Rerd4,Rsrd4,Resrd4,"
-                            "Rrx5,Rerx5,Rsrx5,Rserx5,Rrz5,Rerz5,Rsrz5,Rserz5,"
-                   "Rrd5,Rerd5,Rsrd5,Resrd5,"
-                            "Rrx6,Rerx6,Rsrx6,Rserx6,Rrz6,Rerz6,Rsrz6,Rserz6,"
-                   "Rrd6,Rerd6,Rsrd6,Resrd6");
-            fprintf(fp2,"Rr,Rs,RN1,RN2,RN3,RN4,RN5,RN6,RN7,RN8,RN9,RN10,"
-                   "RN50,Rcut");
-         }else if(Itimes==1){
-             fp1 = fopen("RPhivariationsR.csv","w");
-             fp2 = fopen("RPhivariationsN.csv","w");
-            fprintf(fp1,"Fr,Fs,Frx1,Ferx1,Fsrx1,Fserx1,Frz1,Ferz1,Fsrz1,Fserz1,"
-                   "Frd1,Ferd1,Fsrd1,Fesrd1,"
-                            "Frx2,Ferx2,Fsrx2,Fserx2,Frz2,Ferz2,Fsrz2,Fserz2,"
-                   "Frd2,Ferd2,Fsrd2,Fesrd2,"
-                            "Frx3,Ferx3,Fsrx3,Fserx3,Frz3,Ferz3,Fsrz3,Fserz3,"
-                   "Frd3,Ferd3,Fsrd3,Fesrd3,"
-                            "Frx4,Ferx4,Fsrx4,Fserx4,Frz4,Ferz4,Fsrz4,Fserz4,"
-                   "Frd4,Ferd4,Fsrd4,Fesrd4,"
-                            "Frx5,Ferx5,Fsrx5,Fserx5,Frz5,Ferz5,Fsrz5,Fserz5,"
-                   "Frd5,Ferd5,Fsrd5,Fesrd5,"
-                            "Frx6,Ferx6,Fsrx6,Fserx6,Frz6,Ferz6,Fsrz6,Fserz6,"
-                   "Frd6,Ferd6,Fsrd6,Fesrd6");
-            fprintf(fp2,"Fr,Fs,FN1,FN2,FN3,FN4,FN5,FN6,FN7,FN8,FN9,FN10,"
-                   "FN50,Fcut");
-         }else if(Itimes==2){
-             fp1 = fopen("ZvariationsR.csv","w");
-             fp2 = fopen("ZvariationsN.csv","w");
-            fprintf(fp1,"Zr,Zs,Zrx1,Zerx1,Zsrx1,Zserx1,Zrz1,Zerz1,Zsrz1,Zserz1,"
-                   "Zrd1,Zerd1,Zsrd1,Zesrd1,"
-                            "Zrx2,Zerx2,Zsrx2,Zserx2,Zrz2,Zerz2,Zsrz2,Zserz2,"
-                   "Zrd2,Zerd2,Zsrd2,Zesrd2,"
-                            "Zrx3,Zerx3,Zsrx3,Zserx3,Zrz3,Zerz3,Zsrz3,Zserz3,"
-                   "Zrd3,Zerd3,Zsrd3,Zesrd3,"
-                            "Zrx4,Zerx4,Zsrx4,Zserx4,Zrz4,Zerz4,Zsrz4,Zserz4,"
-                   "Zrd4,Zerd4,Zsrd4,Zesrd4,"
-                            "Zrx5,Zerx5,Zsrx5,Zserx5,Zrz5,Zerz5,Zsrz5,Zserz5,"
-                   "Zrd5,Zerd5,Zsrd5,Zesrd5,"
-                            "Zrx6,Zerx6,Zsrx6,Zserx6,Zrz6,Zerz6,Zsrz6,Zserz6,"
-                   "Zrd6,Zerd6,Zsrd6,Zesrd6");
-            fprintf(fp2,"Zr,Zs,ZN1,ZN2,ZN3,ZN4,ZN5,ZN6,ZN7,ZN8,ZN9,ZN10,"
-                   "ZN50,Zcut");
-         }else if(Itimes==3){
-             fp1 = fopen("AvariationsR.csv","w");
-             fp2 = fopen("AvariationsN.csv","w");
-            fprintf(fp1,"Ar,As,Arx1,Aerx1,Asrx1,Aserx1,Arz1,Aerz1,Asrz1,Aserz1,"
-                   "Ard1,Aerd1,Asrd1,Aesrd1,"
-                            "Arx2,Aerx2,Asrx2,Aserx2,Arz2,Aerz2,Asrz2,Aserz2,"
-                   "Ard2,Aerd2,Asrd2,Aesrd2,"
-                            "Arx3,Aerx3,Asrx3,Aserx3,Arz3,Aerz3,Asrz3,Aserz3,"
-                   "Ard3,Aerd3,Asrd3,Aesrd3,"
-                            "Arx4,Aerx4,Asrx4,Aserx4,Arz4,Aerz4,Asrz4,Aserz4,"
-                   "Ard4,Aerd4,Asrd4,Aesrd4,"
-                            "Arx5,Aerx5,Asrx5,Aserx5,Arz5,Aerz5,Asrz5,Aserz5,"
-                   "Ard5,Aerd5,Asrd5,Aesrd5,"
-                            "Arx6,Aerx6,Asrx6,Aserx6,Arz6,Aerz6,Asrz6,Aserz6,"
-                   "Ard6,Aerd6,Asrd6,Aesrd6");
-            fprintf(fp2,"Ar,As,AN1,AN2,AN3,AN4,AN5,AN6,AN7,AN8,AN9,AN10,"
-                   "AN50,Acut");
-         }else if(Itimes==4){
-             fp1 = fopen("BvariationsR.csv","w");
-             fp2 = fopen("BvariationsN.csv","w");
-            fprintf(fp1,"Br,Bs,Brx1,Berx1,Bsrx1,Bserx1,Brz1,Berz1,Bsrz1,Bserz1,"
-                   "Brd1,Berd1,Bsrd1,Besrd1,"
-                            "Brx2,Berx2,Bsrx2,Bserx2,Brz2,Berz2,Bsrz2,Bserz2,"
-                   "Brd2,Berd2,Bsrd2,Besrd2,"
-                            "Brx3,Berx3,Bsrx3,Bserx3,Brz3,Berz3,Bsrz3,Bserz3,"
-                   "Brd3,Berd3,Bsrd3,Besrd3,"
-                            "Brx4,Berx4,Bsrx4,Bserx4,Brz4,Berz4,Bsrz4,Bserz4,"
-                   "Brd4,Berd4,Bsrd4,Besrd4,"
-                            "Brx5,Berx5,Bsrx5,Bserx5,Brz5,Berz5,Bsrz5,Bserz5,"
-                   "Brd5,Berd5,Bsrd5,Besrd5,"
-                            "Brx6,Berx6,Bsrx6,Bserx6,Brz6,Berz6,Bsrz6,Bserz6,"
-                   "Brd6,Berd6,Bsrd6,Besrd6");
-            fprintf(fp2,"Br,Bs,BN1,BN2,BN3,BN4,BN5,BN6,BN7,BN8,BN9,BN10,"
-                   "BN50,Bcut");
-         }else if(Itimes==5){
-             fp1 = fopen("CvariationsR.csv","w");
-             fp2 = fopen("CvariationsN.csv","w");
-            fprintf(fp1,"Cr,Cs,Crx1,Cerx1,Csrx1,Cserx1,Crz1,Cerz1,Csrz1,Cserz1,"
-                   "Crd1,Cerd1,Csrd1,Cesrd1,"
-                            "Crx2,Cerx2,Csrx2,Cserx2,Crz2,Cerz2,Csrz2,Cserz2,"
-                   "Crd2,Cerd2,Csrd2,Cesrd2,"
-                            "Crx3,Cerx3,Csrx3,Cserx3,Crz3,Cerz3,Csrz3,Cserz3,"
-                   "Crd3,Cerd3,Csrd3,Cesrd3,"
-                            "Crx4,Cerx4,Csrx4,Cserx4,Crz4,Cerz4,Csrz4,Cserz4,"
-                   "Crd4,Cerd4,Csrd4,Cesrd4,"
-                            "Crx5,Cerx5,Csrx5,Cserx5,Crz5,Cerz5,Csrz5,Cserz5,"
-                   "Crd5,Cerd5,Csrd5,Cesrd5,"
-                   "Crx6,Cerx6,Csrx6,Cserx6,Crz6,Cerz6,Csrz6,Cserz6,"
-                   "Crd6,Cerd6,Csrd6,Cesrd6");
-            fprintf(fp2,"Cr,Cs,CN1,CN2,CN3,CN4,CN5,CN6,CN7,CN8,CN9,CN10,"
-                   "CN50,Ccut");
-         } // end if
-         fprintf(fp1,"\n");
-         fprintf(fp2,"\n");
-         for(Isigmas=0;Isigmas<15;Isigmas++){
-//
-//       tran[0] = sigma1;
-//       tran[1] = sigma2;
-//       tran[2] = sigma3;
-         if(Itimes==0){ tran[0] = trans[Isigmas];
-         }else tran[0] = 0.0;
-         if(Itimes==1){ tran[1] = trans[Isigmas];
-         }else tran[1] = 0.0;
-         if(Itimes==2){ tran[2] = trans[Isigmas];
-         }else tran[2] = 0.0;
-         if(Itimes==3){ rot[0] = rots[Isigmas];
-         }else rot[0] = 0.0;
-         if(Itimes==4){ rot[1] = rots[Isigmas];
-         }else rot[1] = 0.0;
-         if(Itimes==5){ rot[2] = rots[Isigmas];
-         }else rot[2] = 0.0;
-         printf("tran= %e %e %e (cm), rot=%e %e %e (rad)\n",
-                tran[0],tran[1],tran[2],rot[0],rot[1],rot[2]);
-//
-         gm2 = *gm;
-         gm2.RandomCylindericalChange(tran,rot);
-
-         FillGlobalPositions(trk,ntrk,&gm2);
-         // setup to save all created histograms.
-         sprintf(Hfilename,"%s_%04.0fr%04.0fp%04.0fz%04.0fx%04.0fy%04.0fz.root",
-                 sfile,
-                 10000.*tran[0],10000.*tran[1],10000.*tran[2],
-                 10000.* rot[0],10000.* rot[1],10000.* rot[2]);
-         Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-         if(Hfile) Hfile->Close();
-         Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-         printf("Histograms saved to file %s\n",Hfilename);
-          //
-         PlotGeomChanges(gm,&gm2,Hfile,Rdta);
-          //
-         // fit all tracks and do a track quality hist.
-         FitAllTracks(trk,ntrk,v0,&gm2,sfile,Hfile,Fdta,Ndta); 
-//
-         for(Int_t l=0;l<6;l++){
-             Fdr[2*l+0] = sqrt(Fdta[4*l+0]*Fdta[4*l+0] +
-                               Fdta[4*l+2]*Fdta[4*l+2]);
-             Fdr[2*l+1] = sqrt(Fdta[4*l+0]*Fdta[4*l+0]*
-                               Fdta[4*l+1]*Fdta[4*l+1] +
-                               Fdta[4*l+2]*Fdta[4*l+2]*
-                               Fdta[4*l+3]*Fdta[4*l+3])/Fdr[2*l+0];
-         } // end for l
-         if(Isigmas==0){
-             for(Int_t fp=0;fp<24;fp++){
-                 Fdta0[fp] = Fdta[fp];
-                 if(fp<12) Fdr0[fp]  = Fdr[fp];
-             } // end for fp
-         } // end if Itimes==0&&Isigmas==0
-         if(Itimes==0) fprintf(fp1,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp1,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp1,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp1,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp1,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp1,"%e,%e,",rot[2],Rdta[5]);
-         if(Itimes==0) fprintf(fp2,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp2,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp2,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp2,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp2,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp2,"%e,%e,",rot[2],Rdta[5]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[0],Fdta[1],Fdta[0]/Fdta0[0],Fdta[1]/Fdta0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[2],Fdta[3],Fdta[2]/Fdta0[2],Fdta[3]/Fdta0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[0],Fdr[1],Fdr[0]/Fdr0[0],Fdr[1]/Fdr0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[4],Fdta[5],Fdta[4]/Fdta0[4],Fdta[5]/Fdta0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[6],Fdta[7],Fdta[6]/Fdta0[6],Fdta[7]/Fdta0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[2],Fdr[3],Fdr[2]/Fdr0[2],Fdr[3]/Fdr0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[8],Fdta[9],Fdta[8]/Fdta0[8],Fdta[9]/Fdta0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[10],Fdta[11],Fdta[10]/Fdta0[10],Fdta[11]/Fdta0[10]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[4],Fdr[5],Fdr[4]/Fdr0[4],Fdr[5]/Fdr0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[12],Fdta[12],Fdta[12]/Fdta0[12],Fdta[13]/Fdta0[12]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[14],Fdta[13],Fdta[14]/Fdta0[14],Fdta[15]/Fdta0[14]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[6],Fdr[7],Fdr[6]/Fdr0[6],Fdr[7]/Fdr0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[16],Fdta[15],Fdta[16]/Fdta0[16],Fdta[17]/Fdta0[16]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[18],Fdta[17],Fdta[18]/Fdta0[18],Fdta[19]/Fdta0[18]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[8],Fdr[9],Fdr[8]/Fdr0[8],Fdr[9]/Fdr0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[20],Fdta[19],Fdta[20]/Fdta0[20],Fdta[21]/Fdta0[20]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[22],Fdta[21],Fdta[22]/Fdta0[22],Fdta[23]/Fdta0[22]);
-         fprintf(fp1,"%e,%e,%e,%e\n",Fdr[10],Fdr[11],Fdr[10]/Fdr0[10],Fdr[11]/Fdr0[10]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[0],Ndta[1],Ndta[2],Ndta[3]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[4],Ndta[5],Ndta[6],Ndta[7]);
-         fprintf(fp2,"%d,%d,%d,%d\n",Ndta[8],Ndta[9],Ndta[10],Ndta[11]);
-//       FitVertexAll(trk,ntrk,sfile,Hfile); 
-         // Find all 2 track vertecies and hist. them.
-         Hfile->Close();
-          //
-      } // end for Isigmas
-         fclose(fp1);
-         fclose(fp2);
-      } // end for Itimes
-//
-      printf("Event %d done\n",evnt);
-//
-      deleteClustAl(trk,ntrk); // subrotine to delet memory allocated
-                               // inside HitsToclustAl.
-      delete[] trk;            // now delet memory allocated above.
-   } // end for evnt
-   Rfile->Close();
-   return;
-}
diff --git a/ITS/oldmacros/AlignITSmacro3Z.C b/ITS/oldmacros/AlignITSmacro3Z.C
deleted file mode 100644 (file)
index 97147a5..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-//////////////////////////////////////////////////////////////////////////
-//  Alice ITS first detector alignment program.                         //
-//                                                                      //
-// version: 0.0.0 Draft.                                                //
-// Date: April 18 1999                                                  //
-// By: Bjorn S. Nilsen                                                  //
-//                                                                      //
-//////////////////////////////////////////////////////////////////////////
-
-#include <fstream.h>
-
-// Data structure to hold averaged clusts.
-struct ClustAl_sl{
-    Int_t lay,lad,det;
-    Float_t xg,yg,zg,xl,yl,zl;
-};
-struct ClustAl_tl{
-    Int_t    track,nclust;  // track number and number of data points.
-    ClustAl_sl *clust;      // data points to fit.
-    Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
-    Float_t  px,py,pz,p,pt;
-    // x=a+bz and y=c+dz;
-    // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
-};
-
-//
-void AlignITSmacro3Z(const char *Rfilename="galice_ITS_B0.root",
-                   const char *sfile="Align_ITS_B0",
-                   Float_t sigma1=0.0,Float_t sigma2=0.0,Float_t sigma3=0.0,
-                   Int_t evNumber=0) {
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro illustrating how to 
-//   read the output of GALICE and fill some histograms.
-//
-//     Root > .L AlignITSmacro2.C    // this loads the macro in memory
-//     Root > AlignITSmacro2();      // by default process first event   
-//     Root > AlignITSmacro2("galice.root");   // process file galice.root
-//     Root > AlignITSmacro2("galice.root",3); // process file galice.root
-//                                                the first 4 events
-//       or
-//     Root > .x AlignITSmacro2.C;  //by default process first event
-//     Root > .x AlignITSmacro2.C("galice.root");   // process file galice.root
-//     Root > .x AlignITSmacro2.C("galice.root",3); // process file galice.root
-//                                                     the first 4 events
-/////////////////////////////////////////////////////////////////////////
-//
-    gROOT->Reset();  // Reset root to it's default state
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-
-   // Connect the Root Galice file containing Geometry, Kine and Clusts
-   TFile *Rfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Rfilename);
-   if(!Rfile) Rfile = new TFile(Rfilename);
-   printf("reading from file %s\n",Rfilename);
-
-   // Get AliRun object from file or create it if not on file
-   if(!gAlice) {
-      gAlice = (AliRun*)Rfile->Get("gAlice");
-      if( gAlice) printf("AliRun object found on file\n");
-      if(!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } /* end if gAlice */
-
-   Float_t    v0[3] = {0.0,0.0,0.0};
-   Float_t    tran[3] = {0.0,0.0,0.0},rot[3] = {0.0,0.0,0.0};
-   Float_t    trans[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                         2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                         2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // cm
-   Float_t    rots[15] ={0.0E-0,1.0E-4,4.0E-4,7.0E-4,1.0E-3,
-                        2.0E-3,4.0E-3,6.0E-3,8.0E-3,1.0E-2,
-                        2.0E-2,3.0E-2,5.0E-2,7.5E-2,1.0E-1}; // rad
-   Int_t      nparticles,Ntrkp,ntrk,Itimes,Isigmas;
-   AliITS     *ITS = 0;
-   TTree      *TH = 0;
-   AliITSgeom *gm,gm2;
-   char       Hfilename[80];
-//   char       Gfilename[80];
-   TFile      *Hfile = 0;
-   ClustAl_tl *trk = 0;
-   Float_t    Rdta[6];
-   Float_t    Fdta[24],Fdr[12],Fdta0[24],Fdr0[12];
-   Int_t      Ndta[12];
-   FILE       *fp1,*fp2;
-
-   for(Int_t evnt=0;evnt<=evNumber;evnt++){
-      // define some variables for later use.
-      nparticles = gAlice->GetEvent(evnt);
-      printf("nparticles %d\n",nparticles);
-      if (nparticles <= 0) continue; /* get next event */
-
-      // Get pointers to Alice detectors and Clusts containers
-      ITS   = (AliITS*)gAlice->GetDetector("ITS");
-      if(!ITS) return;          /* error no ITS data exit */
-      TH    = gAlice->TreeH();
-      Ntrkp = TH->GetEntries();
-      gm    = ITS->GetITSgeom();
-
-      // Array (stucture) of clusts for the first and second layer
-      // this should be replaced with either clusters or digits
-      // when they are proporly defined.
-      trk = new ClustAl_tl[Ntrkp];
-
-      printf("Ntrkp=%d\n",Ntrkp);
-
-      HitsToClustAl(trk,ntrk,Ntrkp,TH,ITS,1.0);
-      printf("Filled data structures ntrk=%d fitting lines next\n",ntrk);
-//
-      for(Itimes=2;Itimes<3;Itimes++){
-         if(Itimes==0){
-             fp1 = fopen("RvariationsR.csv","w");
-             fp2 = fopen("RvariationsN.csv","w");
-            fprintf(fp1,"Rr,Rs,Rrx1,Rerx1,Rsrx1,Rserx1,Rrz1,Rerz1,Rsrz1,Rserz1,"
-                   "Rrd1,Rerd1,Rsrd1,Resrd1,"
-                            "Rrx2,Rerx2,Rsrx2,Rserx2,Rrz2,Rerz2,Rsrz2,Rserz2,"
-                   "Rrd2,Rerd2,Rsrd2,Resrd2,"
-                            "Rrx3,Rerx3,Rsrx3,Rserx3,Rrz3,Rerz3,Rsrz3,Rserz3,"
-                   "Rrd3,Rerd3,Rsrd3,Resrd3,"
-                            "Rrx4,Rerx4,Rsrx4,Rserx4,Rrz4,Rerz4,Rsrz4,Rserz4,"
-                   "Rrd4,Rerd4,Rsrd4,Resrd4,"
-                            "Rrx5,Rerx5,Rsrx5,Rserx5,Rrz5,Rerz5,Rsrz5,Rserz5,"
-                   "Rrd5,Rerd5,Rsrd5,Resrd5,"
-                            "Rrx6,Rerx6,Rsrx6,Rserx6,Rrz6,Rerz6,Rsrz6,Rserz6,"
-                   "Rrd6,Rerd6,Rsrd6,Resrd6");
-            fprintf(fp2,"Rr,Rs,RN1,RN2,RN3,RN4,RN5,RN6,RN7,RN8,RN9,RN10,"
-                   "RN50,Rcut");
-         }else if(Itimes==1){
-             fp1 = fopen("RPhivariationsR.csv","w");
-             fp2 = fopen("RPhivariationsN.csv","w");
-            fprintf(fp1,"Fr,Fs,Frx1,Ferx1,Fsrx1,Fserx1,Frz1,Ferz1,Fsrz1,Fserz1,"
-                   "Frd1,Ferd1,Fsrd1,Fesrd1,"
-                            "Frx2,Ferx2,Fsrx2,Fserx2,Frz2,Ferz2,Fsrz2,Fserz2,"
-                   "Frd2,Ferd2,Fsrd2,Fesrd2,"
-                            "Frx3,Ferx3,Fsrx3,Fserx3,Frz3,Ferz3,Fsrz3,Fserz3,"
-                   "Frd3,Ferd3,Fsrd3,Fesrd3,"
-                            "Frx4,Ferx4,Fsrx4,Fserx4,Frz4,Ferz4,Fsrz4,Fserz4,"
-                   "Frd4,Ferd4,Fsrd4,Fesrd4,"
-                            "Frx5,Ferx5,Fsrx5,Fserx5,Frz5,Ferz5,Fsrz5,Fserz5,"
-                   "Frd5,Ferd5,Fsrd5,Fesrd5,"
-                            "Frx6,Ferx6,Fsrx6,Fserx6,Frz6,Ferz6,Fsrz6,Fserz6,"
-                   "Frd6,Ferd6,Fsrd6,Fesrd6");
-            fprintf(fp2,"Fr,Fs,FN1,FN2,FN3,FN4,FN5,FN6,FN7,FN8,FN9,FN10,"
-                   "FN50,Fcut");
-         }else if(Itimes==2){
-             fp1 = fopen("ZvariationsR.csv","w");
-             fp2 = fopen("ZvariationsN.csv","w");
-            fprintf(fp1,"Zr,Zs,Zrx1,Zerx1,Zsrx1,Zserx1,Zrz1,Zerz1,Zsrz1,Zserz1,"
-                   "Zrd1,Zerd1,Zsrd1,Zesrd1,"
-                            "Zrx2,Zerx2,Zsrx2,Zserx2,Zrz2,Zerz2,Zsrz2,Zserz2,"
-                   "Zrd2,Zerd2,Zsrd2,Zesrd2,"
-                            "Zrx3,Zerx3,Zsrx3,Zserx3,Zrz3,Zerz3,Zsrz3,Zserz3,"
-                   "Zrd3,Zerd3,Zsrd3,Zesrd3,"
-                            "Zrx4,Zerx4,Zsrx4,Zserx4,Zrz4,Zerz4,Zsrz4,Zserz4,"
-                   "Zrd4,Zerd4,Zsrd4,Zesrd4,"
-                            "Zrx5,Zerx5,Zsrx5,Zserx5,Zrz5,Zerz5,Zsrz5,Zserz5,"
-                   "Zrd5,Zerd5,Zsrd5,Zesrd5,"
-                            "Zrx6,Zerx6,Zsrx6,Zserx6,Zrz6,Zerz6,Zsrz6,Zserz6,"
-                   "Zrd6,Zerd6,Zsrd6,Zesrd6");
-            fprintf(fp2,"Zr,Zs,ZN1,ZN2,ZN3,ZN4,ZN5,ZN6,ZN7,ZN8,ZN9,ZN10,"
-                   "ZN50,Zcut");
-         }else if(Itimes==3){
-             fp1 = fopen("AvariationsR.csv","w");
-             fp2 = fopen("AvariationsN.csv","w");
-            fprintf(fp1,"Ar,As,Arx1,Aerx1,Asrx1,Aserx1,Arz1,Aerz1,Asrz1,Aserz1,"
-                   "Ard1,Aerd1,Asrd1,Aesrd1,"
-                            "Arx2,Aerx2,Asrx2,Aserx2,Arz2,Aerz2,Asrz2,Aserz2,"
-                   "Ard2,Aerd2,Asrd2,Aesrd2,"
-                            "Arx3,Aerx3,Asrx3,Aserx3,Arz3,Aerz3,Asrz3,Aserz3,"
-                   "Ard3,Aerd3,Asrd3,Aesrd3,"
-                            "Arx4,Aerx4,Asrx4,Aserx4,Arz4,Aerz4,Asrz4,Aserz4,"
-                   "Ard4,Aerd4,Asrd4,Aesrd4,"
-                            "Arx5,Aerx5,Asrx5,Aserx5,Arz5,Aerz5,Asrz5,Aserz5,"
-                   "Ard5,Aerd5,Asrd5,Aesrd5,"
-                            "Arx6,Aerx6,Asrx6,Aserx6,Arz6,Aerz6,Asrz6,Aserz6,"
-                   "Ard6,Aerd6,Asrd6,Aesrd6");
-            fprintf(fp2,"Ar,As,AN1,AN2,AN3,AN4,AN5,AN6,AN7,AN8,AN9,AN10,"
-                   "AN50,Acut");
-         }else if(Itimes==4){
-             fp1 = fopen("BvariationsR.csv","w");
-             fp2 = fopen("BvariationsN.csv","w");
-            fprintf(fp1,"Br,Bs,Brx1,Berx1,Bsrx1,Bserx1,Brz1,Berz1,Bsrz1,Bserz1,"
-                   "Brd1,Berd1,Bsrd1,Besrd1,"
-                            "Brx2,Berx2,Bsrx2,Bserx2,Brz2,Berz2,Bsrz2,Bserz2,"
-                   "Brd2,Berd2,Bsrd2,Besrd2,"
-                            "Brx3,Berx3,Bsrx3,Bserx3,Brz3,Berz3,Bsrz3,Bserz3,"
-                   "Brd3,Berd3,Bsrd3,Besrd3,"
-                            "Brx4,Berx4,Bsrx4,Bserx4,Brz4,Berz4,Bsrz4,Bserz4,"
-                   "Brd4,Berd4,Bsrd4,Besrd4,"
-                            "Brx5,Berx5,Bsrx5,Bserx5,Brz5,Berz5,Bsrz5,Bserz5,"
-                   "Brd5,Berd5,Bsrd5,Besrd5,"
-                            "Brx6,Berx6,Bsrx6,Bserx6,Brz6,Berz6,Bsrz6,Bserz6,"
-                   "Brd6,Berd6,Bsrd6,Besrd6");
-            fprintf(fp2,"Br,Bs,BN1,BN2,BN3,BN4,BN5,BN6,BN7,BN8,BN9,BN10,"
-                   "BN50,Bcut");
-         }else if(Itimes==5){
-             fp1 = fopen("CvariationsR.csv","w");
-             fp2 = fopen("CvariationsN.csv","w");
-            fprintf(fp1,"Cr,Cs,Crx1,Cerx1,Csrx1,Cserx1,Crz1,Cerz1,Csrz1,Cserz1,"
-                   "Crd1,Cerd1,Csrd1,Cesrd1,"
-                            "Crx2,Cerx2,Csrx2,Cserx2,Crz2,Cerz2,Csrz2,Cserz2,"
-                   "Crd2,Cerd2,Csrd2,Cesrd2,"
-                            "Crx3,Cerx3,Csrx3,Cserx3,Crz3,Cerz3,Csrz3,Cserz3,"
-                   "Crd3,Cerd3,Csrd3,Cesrd3,"
-                            "Crx4,Cerx4,Csrx4,Cserx4,Crz4,Cerz4,Csrz4,Cserz4,"
-                   "Crd4,Cerd4,Csrd4,Cesrd4,"
-                            "Crx5,Cerx5,Csrx5,Cserx5,Crz5,Cerz5,Csrz5,Cserz5,"
-                   "Crd5,Cerd5,Csrd5,Cesrd5,"
-                   "Crx6,Cerx6,Csrx6,Cserx6,Crz6,Cerz6,Csrz6,Cserz6,"
-                   "Crd6,Cerd6,Csrd6,Cesrd6");
-            fprintf(fp2,"Cr,Cs,CN1,CN2,CN3,CN4,CN5,CN6,CN7,CN8,CN9,CN10,"
-                   "CN50,Ccut");
-         } // end if
-         fprintf(fp1,"\n");
-         fprintf(fp2,"\n");
-         for(Isigmas=0;Isigmas<15;Isigmas++){
-//
-//       tran[0] = sigma1;
-//       tran[1] = sigma2;
-//       tran[2] = sigma3;
-         if(Itimes==0){ tran[0] = trans[Isigmas];
-         }else tran[0] = 0.0;
-         if(Itimes==1){ tran[1] = trans[Isigmas];
-         }else tran[1] = 0.0;
-         if(Itimes==2){ tran[2] = trans[Isigmas];
-         }else tran[2] = 0.0;
-         if(Itimes==3){ rot[0] = rots[Isigmas];
-         }else rot[0] = 0.0;
-         if(Itimes==4){ rot[1] = rots[Isigmas];
-         }else rot[1] = 0.0;
-         if(Itimes==5){ rot[2] = rots[Isigmas];
-         }else rot[2] = 0.0;
-         printf("tran= %e %e %e (cm), rot=%e %e %e (rad)\n",
-                tran[0],tran[1],tran[2],rot[0],rot[1],rot[2]);
-//
-         gm2 = *gm;
-         gm2.RandomCylindericalChange(tran,rot);
-
-         FillGlobalPositions(trk,ntrk,&gm2);
-         // setup to save all created histograms.
-         sprintf(Hfilename,"%s_%04.0fr%04.0fp%04.0fz%04.0fx%04.0fy%04.0fz.root",
-                 sfile,
-                 10000.*tran[0],10000.*tran[1],10000.*tran[2],
-                 10000.* rot[0],10000.* rot[1],10000.* rot[2]);
-         Hfile = (TFile*)gROOT->GetListOfFiles()->FindObject(Hfilename);
-         if(Hfile) Hfile->Close();
-         Hfile = new TFile(Hfilename,"RECREATE","Histograms from AlignITS.C");
-         printf("Histograms saved to file %s\n",Hfilename);
-          //
-         PlotGeomChanges(gm,&gm2,Hfile,Rdta);
-          //
-         // fit all tracks and do a track quality hist.
-         FitAllTracks(trk,ntrk,v0,&gm2,sfile,Hfile,Fdta,Ndta); 
-//
-         for(Int_t l=0;l<6;l++){
-             Fdr[2*l+0] = sqrt(Fdta[4*l+0]*Fdta[4*l+0] +
-                               Fdta[4*l+2]*Fdta[4*l+2]);
-             Fdr[2*l+1] = sqrt(Fdta[4*l+0]*Fdta[4*l+0]*
-                               Fdta[4*l+1]*Fdta[4*l+1] +
-                               Fdta[4*l+2]*Fdta[4*l+2]*
-                               Fdta[4*l+3]*Fdta[4*l+3])/Fdr[2*l+0];
-         } // end for l
-         if(Isigmas==0){
-             for(Int_t fp=0;fp<24;fp++){
-                 Fdta0[fp] = Fdta[fp];
-                 if(fp<12) Fdr0[fp]  = Fdr[fp];
-             } // end for fp
-         } // end if Itimes==0&&Isigmas==0
-         if(Itimes==0) fprintf(fp1,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp1,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp1,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp1,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp1,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp1,"%e,%e,",rot[2],Rdta[5]);
-         if(Itimes==0) fprintf(fp2,"%e,%e,",tran[0],Rdta[0]);
-         else if(Itimes==1) fprintf(fp2,"%e,%e,",tran[1],Rdta[1]);
-         else if(Itimes==2) fprintf(fp2,"%e,%e,",tran[2],Rdta[2]);
-         else if(Itimes==3) fprintf(fp2,"%e,%e,",rot[0],Rdta[3]);
-         else if(Itimes==4) fprintf(fp2,"%e,%e,",rot[1],Rdta[4]);
-         else if(Itimes==5) fprintf(fp2,"%e,%e,",rot[2],Rdta[5]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[0],Fdta[1],Fdta[0]/Fdta0[0],Fdta[1]/Fdta0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[2],Fdta[3],Fdta[2]/Fdta0[2],Fdta[3]/Fdta0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[0],Fdr[1],Fdr[0]/Fdr0[0],Fdr[1]/Fdr0[0]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[4],Fdta[5],Fdta[4]/Fdta0[4],Fdta[5]/Fdta0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[6],Fdta[7],Fdta[6]/Fdta0[6],Fdta[7]/Fdta0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[2],Fdr[3],Fdr[2]/Fdr0[2],Fdr[3]/Fdr0[2]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[8],Fdta[9],Fdta[8]/Fdta0[8],Fdta[9]/Fdta0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[10],Fdta[11],Fdta[10]/Fdta0[10],Fdta[11]/Fdta0[10]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[4],Fdr[5],Fdr[4]/Fdr0[4],Fdr[5]/Fdr0[4]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[12],Fdta[12],Fdta[12]/Fdta0[12],Fdta[13]/Fdta0[12]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[14],Fdta[13],Fdta[14]/Fdta0[14],Fdta[15]/Fdta0[14]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[6],Fdr[7],Fdr[6]/Fdr0[6],Fdr[7]/Fdr0[6]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[16],Fdta[15],Fdta[16]/Fdta0[16],Fdta[17]/Fdta0[16]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[18],Fdta[17],Fdta[18]/Fdta0[18],Fdta[19]/Fdta0[18]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdr[8],Fdr[9],Fdr[8]/Fdr0[8],Fdr[9]/Fdr0[8]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[20],Fdta[19],Fdta[20]/Fdta0[20],Fdta[21]/Fdta0[20]);
-         fprintf(fp1,"%e,%e,%e,%e,",Fdta[22],Fdta[21],Fdta[22]/Fdta0[22],Fdta[23]/Fdta0[22]);
-         fprintf(fp1,"%e,%e,%e,%e\n",Fdr[10],Fdr[11],Fdr[10]/Fdr0[10],Fdr[11]/Fdr0[10]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[0],Ndta[1],Ndta[2],Ndta[3]);
-         fprintf(fp2,"%d,%d,%d,%d,",Ndta[4],Ndta[5],Ndta[6],Ndta[7]);
-         fprintf(fp2,"%d,%d,%d,%d\n",Ndta[8],Ndta[9],Ndta[10],Ndta[11]);
-//       FitVertexAll(trk,ntrk,sfile,Hfile); 
-         // Find all 2 track vertecies and hist. them.
-         Hfile->Close();
-          //
-      } // end for Isigmas
-         fclose(fp1);
-         fclose(fp2);
-      } // end for Itimes
-//
-      printf("Event %d done\n",evnt);
-//
-      deleteClustAl(trk,ntrk); // subrotine to delet memory allocated
-                               // inside HitsToclustAl.
-      delete[] trk;            // now delet memory allocated above.
-   } // end for evnt
-   Rfile->Close();
-   return;
-}
diff --git a/ITS/oldmacros/Config_pid.C b/ITS/oldmacros/Config_pid.C
deleted file mode 100644 (file)
index 7c1fa74..0000000
+++ /dev/null
@@ -1,466 +0,0 @@
-enum gentype_t {hijing, hijingParam, gun, box, pythia,                          
-                param1, param2, param3, param4,                  
-               cocktail, fluka, halo, ntuple, scan, doublescan};               
-
-//gentype_t gentype=hijingParam;           
-//gentype_t gentype=hijing;
-  gentype_t gentype=
-  //box;
-  cocktail;
-  //hijingParam;
-  //hijing;
-
-void Config()
-{
-    // 7-DEC-2000 09:00
-    // Switch on Transition Radiation simulation. 6/12/00 18:00
-    // iZDC=1  7/12/00 09:00
-    // ThetaRange is (0., 180.). It was (0.28,179.72) 7/12/00 09:00
-
-    // Set Random Number seed
-    // gRandom->SetSeed(12345);
-
-    new     AliGeant3("C++ Interface to Geant3");
-
-    if (!gSystem->Getenv("CONFIG_FILE"))
-    {
-        TFile  *rootfile = new TFile("galice.root", "recreate");
-       //TFile  *rootfile = new TFile("galice.root", "recreate");
-        rootfile->SetCompressionLevel(2);
-    }
-
-    TGeant3 *geant3 = (TGeant3 *) gMC;
-
-    //
-    // Set External decayer
-    AliDecayer *decayer = new AliDecayerPythia();
-
-    decayer->SetForceDecay(kAll);
-    decayer->Init();
-    gMC->SetExternalDecayer(decayer);
-    //
-    //
-    //=======================================================================
-    // ******* GEANT STEERING parameters FOR ALICE SIMULATION *******
-    geant3->SetTRIG(1);         //Number of events to be processed 
-    geant3->SetSWIT(4, 10);
-    geant3->SetDEBU(0, 0, 1);
-    //geant3->SetSWIT(2,2);
-    geant3->SetDCAY(1);
-    geant3->SetPAIR(1);
-    geant3->SetCOMP(1);
-    geant3->SetPHOT(1);
-    geant3->SetPFIS(0);
-    geant3->SetDRAY(0);
-    geant3->SetANNI(1);
-    geant3->SetBREM(1);
-    geant3->SetMUNU(1);
-    geant3->SetCKOV(1);
-    geant3->SetHADR(1);         //Select pure GEANH (HADR 1) or GEANH/NUCRIN (HADR 3)
-    geant3->SetLOSS(2);
-    geant3->SetMULS(1);
-    geant3->SetRAYL(1);
-    geant3->SetAUTO(1);         //Select automatic STMIN etc... calc. (AUTO 1) or manual (AUTO 0)
-    geant3->SetABAN(0);         //Restore 3.16 behaviour for abandoned tracks
-    geant3->SetOPTI(2);         //Select optimisation level for GEANT geometry searches (0,1,2)
-    geant3->SetERAN(5.e-7);
-
-    Float_t cut = 1.e-3;        // 1MeV cut by default
-    Float_t tofmax = 1.e10;
-
-    //             GAM ELEC NHAD CHAD MUON EBREM MUHAB EDEL MUDEL MUPA TOFMAX
-    geant3->SetCUTS(cut, cut, cut, cut, cut, cut, cut, cut, cut, cut,
-                    tofmax);
-    //
-    //=======================================================================
-    // ************* STEERING parameters FOR ALICE SIMULATION **************
-    // --- Specify event type to be tracked through the ALICE setup
-    // --- All positions are in cm, angles in degrees, and P and E in GeV
-    if (gSystem->Getenv("CONFIG_NPARTICLES"))
-    {
-        int     nParticles = atoi(gSystem->Getenv("CONFIG_NPARTICLES"));
-    } else
-    {
-        int     nParticles = 50;
-    }
-//-----------------------------------------------------------
-switch(gentype)                                                                
-{                                                                              
-   case hijing:      
-//-----------------------------------------HIJING------------
-AliGenHijing *gener = new AliGenHijing(-1); 
-    gener->SetEnergyCMS(5500);                                                 
-    gener->SetReferenceFrame("CMS     ");                                      
-    gener->SetProjectile("A       ", 208, 82);                                 
-    gener->SetTarget    ("A       ", 208, 82);                                 
-    gener->SetImpactParameterRange(0, 3.);                                     
-    gener->SetEvaluate(1);                                                     
-    gener->KeepFullEvent();                                                    
-    gener->SetJetQuenching(1);                                                 
-    gener->SetShadowing(1);   
-    gener->SetDecaysOff(1);                                                      
-    gener->SetTrigger(0);                                                      
-    gener->SetSelectAll(0);                                                    
-    gener->SetMomentumRange( 0.05 , 1.3 );                                            
-    gener->SetPhiRange( 0.0 , 1.0 );                                               
-//    gener->SetPhiRange(-180.,180.) 
-    gener->SetThetaRange(45.0,135.);                                              
-    gener->SetFlavor(0);   // 0 - all, 4 - charm and beaty                                                       
-    gener->SetOrigin(0., 0.0 ,0);                                              
-    gener->SetSigma(0,0,5.3);                                                  
-    gener->SetVertexSmear(kPerEvent);                                          
-//    gener->SetTrackingFlag(0);                                                 
-    gener->Init();
-    break;
-//-----------------------------------------HijingPARA----------
-    case hijingParam:
-    
-    AliGenHIJINGpara *gener = new AliGenHIJINGpara(20);
-
-    gener->SetMomentumRange(0.1, .7);
-    gener->SetThetaRange(45.,135.);
-    gener->SetPhiRange(0, 360);
-    //  gener->SetThetaRange(0.28,179.72);
-    //    gener->SetThetaRange(45., 135.);
-    gener->SetOrigin(0, 0, 0);  //vertex position
-    gener->SetSigma(0, 0, 0);   //Sigma in (X,Y,Z) (cm) on IP position
-    gener->Init();
-    break;
-//------------------------------------------ Box --------------
- case box:  
-   AliGenBox *gener = new AliGenBox(4000);  //ntracks=100
-     gener->SetMomentumRange(0.2,1.0);
-     gener->SetPhiRange(0,360);
-     gener->SetThetaRange(45, 135. );
-     gener->SetOrigin(0,0,0);   
-     //vertex position
-     gener->SetSigma(0,0,0);           //Sigma in (X,Y,Z) (cm) on IP position
-     gener->SetPart(321);             // K+
-     //gener->SetPart(211);           // Pi+
-     break;
-
-    //------------------------------------------------------------
- case cocktail:
-   AliGenCocktail *gener = new AliGenCocktail();
-   int Nmax=50;
-   AliGenBox *gener1 = new AliGenBox(2*Nmax);  //ntracks=100
-     gener1->SetMomentumRange(.050,1.00);
-     //gener1->SetMomentumRange(.050,0.80);
-     gener1->SetPhiRange(0,360);
-     gener1->SetThetaRange(45, 135. );
-     gener1->SetOrigin(0,0,0);   
-     gener1->SetSigma(0,0,0);           //Sigma in (X,Y,Z) (cm) on IP position
-     gener1->SetPart(321);             // K+
-
-   AliGenBox *gener2 = new AliGenBox(2*Nmax);  //ntracks=100
-     gener2->SetMomentumRange(.050,1.00);
-     //gener1->SetMomentumRange(.050,0.80);
-     gener2->SetPhiRange(0,360);
-     gener2->SetThetaRange(45, 135. );
-     gener2->SetOrigin(0,0,0);   
-     gener2->SetSigma(0,0,0);           //Sigma in (X,Y,Z) (cm) on IP position
-     gener2->SetPart(2212);             // Protons
-
-   AliGenBox *gener3 = new AliGenBox(Nmax);  //ntracks=100
-     gener3->SetMomentumRange(.050,1.00);
-     //gener1->SetMomentumRange(.050,0.80);
-     gener3->SetPhiRange(0,360);
-     gener3->SetThetaRange(45, 135. );
-     gener3->SetOrigin(0,0,0);   
-     gener3->SetSigma(0,0,0);           //Sigma in (X,Y,Z) (cm) on IP position
-     gener3->SetPart(11);             // e+
-
-
-   AliGenBox *gener4 = new AliGenBox(Nmax);  //ntracks=100
-     gener4->SetMomentumRange(.050,1.00);
-     //gener1->SetMomentumRange(.050,0.80);
-     gener4->SetPhiRange(0,360);
-     gener4->SetThetaRange(45, 135. );
-     gener4->SetOrigin(0,0,0);   
-     gener4->SetSigma(0,0,0);           //Sigma in (X,Y,Z) (cm) on IP position
-     gener4->SetPart(211);             // pi+
-
-     gener->SetMomentumRange(.050,1.00);
-     gener->SetPhiRange(0,360);
-     gener->SetThetaRange(45., 135. );
-     gener->SetOrigin(0,0,0);   
-     gener->SetSigma(0,0,0); 
-     gener->AddGenerator(gener1,"box1",0.5);
-     gener->AddGenerator(gener2,"box2",0.5);
-     gener->AddGenerator(gener3,"box3",0.5);
-     gener->AddGenerator(gener4,"box4",0.5);
-     gener->Init();
-   break;
-
-    default:
-    break;
-}
-    // 
-    // Activate this line if you want the vertex smearing to happen
-    // track by track
-    //
-    //gener->SetVertexSmear(perTrack); 
-
-    gAlice->SetField(-999, 2);  //Specify maximum magnetic field in Tesla (neg. ==> default field)
-
-    Int_t   iABSO = 0;
-    Int_t   iCASTOR = 0;
-    Int_t   iDIPO = 0;
-    Int_t   iFMD = 0;
-    Int_t   iFRAME = 0;
-    Int_t   iHALL = 0;
-    Int_t   iITS = 1;
-    Int_t   iMAG = 0;
-    Int_t   iMUON = 0;
-    Int_t   iPHOS = 0;
-    Int_t   iPIPE = 1;
-    Int_t   iPMD = 0;
-    Int_t   iRICH = 0;
-    Int_t   iSHIL = 0;
-    Int_t   iSTART = 0;
-    Int_t   iTOF = 0;
-    Int_t   iTPC = 1;
-    Int_t   iTRD = 0;
-    Int_t   iZDC = 0;
-
-    //=================== Alice BODY parameters =============================
-    AliBODY *BODY = new AliBODY("BODY", "Alice envelop");
-
-
-    if (iMAG)
-    {
-        //=================== MAG parameters ============================
-        // --- Start with Magnet since detector layouts may be depending ---
-        // --- on the selected Magnet dimensions ---
-        AliMAG *MAG = new AliMAG("MAG", "Magnet");
-    }
-
-
-    if (iABSO)
-    {
-        //=================== ABSO parameters ============================
-        AliABSO *ABSO = new AliABSOv0("ABSO", "Muon Absorber");
-    }
-
-    if (iDIPO)
-    {
-        //=================== DIPO parameters ============================
-
-        AliDIPO *DIPO = new AliDIPOv2("DIPO", "Dipole version 2");
-    }
-
-    if (iHALL)
-    {
-        //=================== HALL parameters ============================
-
-        AliHALL *HALL = new AliHALL("HALL", "Alice Hall");
-    }
-
-
-    if (iFRAME)
-    {
-        //=================== FRAME parameters ============================
-
-        AliFRAME *FRAME = new AliFRAMEv2("FRAME", "Space Frame");
-
-    }
-
-    if (iSHIL)
-    {
-        //=================== SHIL parameters ============================
-
-        AliSHIL *SHIL = new AliSHILv0("SHIL", "Shielding");
-    }
-
-
-    if (iPIPE)
-    {
-        //=================== PIPE parameters ============================
-
-        AliPIPE *PIPE = new AliPIPEv0("PIPE", "Beam Pipe");
-    }
-  if(iITS) {
-
-//=================== ITS parameters ============================
-    //
-    // As the innermost detector in ALICE, the Inner Tracking System "impacts" on
-    // almost all other detectors. This involves the fact that the ITS geometry
-    // still has several options to be followed in parallel in order to determine
-    // the best set-up which minimizes the induced background. All the geometries
-    // available to date are described in the following. Read carefully the comments
-    // and use the default version (the only one uncommented) unless you are making
-    // comparisons and you know what you are doing. In this case just uncomment the
-    // ITS geometry you want to use and run Aliroot.
-    //
-    // Detailed geometries:         
-    //
-    //
-    //AliITS *ITS  = new AliITSv5symm("ITS","Updated ITS TDR detailed version with symmetric services");
-    //
-    //AliITS *ITS  = new AliITSv5asymm("ITS","Updates ITS TDR detailed version with asymmetric services");
-    //
-    AliITSvPPRasymm *ITS  = new AliITSvPPRasymm("ITS","New ITS PPR detailed version with asymmetric services");
-    ITS->SetMinorVersion(2);                                         // don't touch this parameter if you're not an ITS developer
-    ITS->SetReadDet(kFALSE);                                         // don't touch this parameter if you're not an ITS developer
-    ITS->SetWriteDet("$ALICE_ROOT/ITS/ITSgeometry_vPPRasymm2.det");  // don't touch this parameter if you're not an ITS developer
-    ITS->SetThicknessDet1(300.);   // detector thickness on layer 1 must be in the range [100,300]
-    ITS->SetThicknessDet2(300.);   // detector thickness on layer 2 must be in the range [100,300]
-    ITS->SetThicknessChip1(300.);  // chip thickness on layer 1 must be in the range [150,300]
-    ITS->SetThicknessChip2(300.);  // chip thickness on layer 2 must be in the range [150,300]
-    ITS->SetRails(1);             // 1 --> rails in ; 0 --> rails out
-    ITS->SetCoolingFluid(1);       // 1 --> water ; 0 --> freon
-    //
-    //AliITSvPPRsymm *ITS  = new AliITSvPPRsymm("ITS","New ITS PPR detailed version with symmetric services");
-    //ITS->SetMinorVersion(2);                                       // don't touch this parameter if you're not an ITS developer
-    //ITS->SetReadDet(kFALSE);                                       // don't touch this parameter if you're not an ITS developer
-    //ITS->SetWriteDet("$ALICE_ROOT/ITS/ITSgeometry_vPPRsymm2.det"); // don't touch this parameter if you're not an ITS developer
-    //ITS->SetThicknessDet1(300.);   // detector thickness on layer 1 must be in the range [100,300]
-    //ITS->SetThicknessDet2(300.);   // detector thickness on layer 2 must be in the range [100,300]
-    //ITS->SetThicknessChip1(300.);  // chip thickness on layer 1 must be in the range [150,300]
-    //ITS->SetThicknessChip2(300.);  // chip thickness on layer 2 must be in the range [150,300]
-    //ITS->SetRails(1);              // 1 --> rails in ; 0 --> rails out
-    //ITS->SetCoolingFluid(1);       // 1 --> water ; 0 --> freon
-    //
-    //
-    // Coarse geometries (warning: no hits are produced with these coarse geometries and they unuseful 
-    // for reconstruction !):
-    //                                                     
-    //
-    //AliITSvPPRcoarseasymm *ITS  = new AliITSvPPRcoarseasymm("ITS","New ITS PPR coarse version with asymmetric services");
-    //ITS->SetRails(1);                // 1 --> rails in ; 0 --> rails out
-    //ITS->SetSupportMaterial(0);      // 0 --> Copper ; 1 --> Aluminum ; 2 --> Carbon
-    //
-    //AliITS *ITS  = new AliITSvPPRcoarsesymm("ITS","New ITS PPR coarse version with symmetric services");
-    //ITS->SetRails(1);                // 1 --> rails in ; 0 --> rails out
-    //ITS->SetSupportMaterial(0);      // 0 --> Copper ; 1 --> Aluminum ; 2 --> Carbon
-    //                      
-    //
-    //
-    // Geant3 <-> EUCLID conversion
-    // ============================
-    //
-    // SetEUCLID is a flag to output (=1) or not to output (=0) both geometry and
-    // media to two ASCII files (called by default ITSgeometry.euc and
-    // ITSgeometry.tme) in a format understandable to the CAD system EUCLID.
-    // The default (=0) means that you dont want to use this facility.
-    //
-    ITS->SetEUCLID(0);  
-  }
-  
-
-    if (iTPC)
-    {
-        //============================ TPC parameters ================================
-        // --- This allows the user to specify sectors for the SLOW (TPC geometry 2)
-        // --- Simulator. SecAL (SecAU) <0 means that ALL lower (upper)
-        // --- sectors are specified, any value other than that requires at least one 
-        // --- sector (lower or upper)to be specified!
-        // --- Reminder: sectors 1-24 are lower sectors (1-12 -> z>0, 13-24 -> z<0)
-        // ---           sectors 25-72 are the upper ones (25-48 -> z>0, 49-72 -> z<0)
-        // --- SecLows - number of lower sectors specified (up to 6)
-        // --- SecUps - number of upper sectors specified (up to 12)
-        // --- Sens - sensitive strips for the Slow Simulator !!!
-        // --- This does NOT work if all S or L-sectors are specified, i.e.
-        // --- if SecAL or SecAU < 0
-        //
-        //
-        //-----------------------------------------------------------------------------
-
-        //  gROOT->LoadMacro("SetTPCParam.C");
-        //  AliTPCParam *param = SetTPCParam();
-        AliTPC *TPC = new AliTPCv2("TPC", "Default");
-
-        // All sectors included 
-        TPC->SetSecAL(-1);
-        TPC->SetSecAU(-1);
-
-    }
-
-    if (iTOF)
-    {
-        //=================== TOF parameters ============================
-        AliTOF *TOF = new AliTOFv2("TOF", "normal TOF");
-    }
-
-    if (iRICH)
-    {
-        //=================== RICH parameters ===========================
-        AliRICH *RICH = new AliRICHv1("RICH", "normal RICH");
-
-    }
-
-
-    if (iZDC)
-    {
-        //=================== ZDC parameters ============================
-
-        AliZDC *ZDC = new AliZDCv1("ZDC", "normal ZDC");
-    }
-
-    if (iCASTOR)
-    {
-        //=================== CASTOR parameters ============================
-
-        AliCASTOR *CASTOR = new AliCASTORv1("CASTOR", "normal CASTOR");
-    }
-
-    if (iTRD)
-    {
-        //=================== TRD parameters ============================
-
-        AliTRD *TRD = new AliTRDv1("TRD", "TRD slow simulator");
-
-        // Select the gas mixture (0: 97% Xe + 3% isobutane, 1: 90% Xe + 10% CO2)
-        TRD->SetGasMix(1);
-
-        // With hole in front of PHOS
-        TRD->SetPHOShole();
-        // With hole in front of RICH
-        TRD->SetRICHhole();
-        // Switch on TR
-        AliTRDsim *TRDsim = TRD->CreateTR();
-    }
-
-    if (iFMD)
-    {
-        //=================== FMD parameters ============================
-
-        AliFMD *FMD = new AliFMDv1("FMD", "normal FMD");
-    }
-
-    if (iMUON)
-    {
-        //=================== MUON parameters ===========================
-
-        AliMUON *MUON = new AliMUONv1("MUON", "default");
-    }
-    //=================== PHOS parameters ===========================
-
-    if (iPHOS)
-    {
-        AliPHOS *PHOS = new AliPHOSv1("PHOS", "GPS2");
-    }
-
-
-    if (iPMD)
-    {
-        //=================== PMD parameters ============================
-
-        AliPMD *PMD = new AliPMDv1("PMD", "normal PMD");
-
-        PMD->SetPAR(1., 1., 0.8, 0.02);
-        PMD->SetIN(6., 18., -580., 27., 27.);
-        PMD->SetGEO(0.0, 0.2, 4.);
-        PMD->SetPadSize(0.8, 1.0, 1.0, 1.5);
-
-    }
-
-    if (iSTART)
-    {
-        //=================== START parameters ============================
-        AliSTART *START = new AliSTARTv1("START", "START Detector");
-    }
-
-
-}
diff --git a/ITS/oldmacros/GeneralTest.C b/ITS/oldmacros/GeneralTest.C
deleted file mode 100644 (file)
index d0ee91b..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-Int_t GeneralTest(Int_t verpoint=2) {
-   Int_t rc=0;
-
-//Test TPC simulation
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/macros/grun.C");
-   grun();
-
-   Int_t ver=gAlice->GetDetector("TPC")->IsVersion();
-   delete gAlice; gAlice=0;
-
-   if ((ver!=1)&&(ver!=2)) {
-      cerr<<"Invalid TPC version: "<<ver<<" ! (must be 1 or 2)\n";
-      return 12345;
-   }
-
-   if (ver==2) {
-     gROOT->LoadMacro("$(ALICE_ROOT)/TPC/AliTPCHits2Digits.C");
-     if (rc=AliTPCHits2Digits()) return rc;
-
-   }
-
-//Test TPC reconstruction
-   gROOT->LoadMacro("$(ALICE_ROOT)/TPC/AliTPCFindClusters.C");
-   if (rc=AliTPCFindClusters()) return rc;
-
-   gROOT->LoadMacro("$(ALICE_ROOT)/TPC/AliTPCFindTracks.C");
-   if (rc=AliTPCFindTracks()) return rc;
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/TPCtracks.C");
-   if (rc=TPCtracks()) return rc; 
-
-
-   TFile *file=TFile::Open("galice.root");
-   if (!file->IsOpen()) {cerr<<"Can't open galice.root !\n"; exit(4);}
-
-   if (!(gAlice=(AliRun*)file->Get("gAlice"))) {
-     cerr<<"gAlice have not been found on galice.root !\n";
-     exit(5);
-   }
-           
-   AliITSgeom *gm = ((AliITS*)gAlice->GetDetector("ITS"))->GetITSgeom();
-   delete gAlice; gAlice=0;
-
-   if (!gm) {
-       cerr  << "This version of the ITS geometry does not have a AliITSgeom"
-            << " defined" << endl;
-      return 12345;
-   }
-cout<<" verpoint = "<<verpoint<<"\n";
-   switch(verpoint){
-   case 1:
-   {
-   printf(" Start Fast Points calculation \n");
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/ITSHitsToFastPoints.C");
-   if (rc=ITSHitsToFastPoints()) return rc;
-    }
-    break;  
-  case 2:
-  printf("Start digitization \n");
-
-  gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSHits2DigitsDefault.C");
-  if (rc=AliITSHits2Digits()) return rc;
-
-   printf("start reconstruction\n");
-
-//Test ITS reconstruction
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/AliITSFindClusters.C");
-   if (rc=AliITSFindClusters()) return rc;   
-  
-  break;
-  default:
-     cerr<<"Invalid Recpoint version !\n";
-      file->Close();
-      exit(7);  
-  } 
-  
-   file->Close();
-   
-   
-   printf(" Start ITS tracking \n");     
-   gROOT->LoadMacro("$(ALICE_ROOT)/ITS/ITStrackingGeneral.C");       
-   if (rc=ITStrackingGeneral()) return rc;
-   
-   return rc;   
-}
diff --git a/ITS/oldmacros/ITSDigitsToClusters.C b/ITS/oldmacros/ITSDigitsToClusters.C
deleted file mode 100644 (file)
index 03d9c4b..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-#include "iostream.h"
-
-void ITSDigitsToClusters (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } else {
-      delete gAlice;
-      gAlice=0;
-   }
-
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   printf("file %p\n",file);
-   if (file) file->Close(); 
-   file = new TFile("galice.root","UPDATE");
-   file->ls();
-
-   printf ("I'm after Map \n");
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-       gAlice = (AliRun*)file->Get("gAlice");
-       if (gAlice) printf("AliRun object found on file\n");
-       if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-   printf ("I'm after gAlice \n");
-   
-   AliITS *ITS  = (AliITS*) gAlice->GetModule("ITS");
-   if (!ITS) return;
-
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-
-   // NOTE: if you foresee to have (in segmentation or response) parameter
-   // values other than the default ones, and these values are used not only in
-   // simulation but in cluster finder as well, please set them via your
-   // local Config.C - the streamer will take care of writing the correct
-   // info and you'll no longer be obliged to set them again for your cluster
-   // finder as it's done in this macro (ugly)
-
-
-
-   // Set the models for cluster finding
-
-   // SPD
-
-   ITS->MakeTreeC();
-   Int_t nparticles=gAlice->GetEvent(0);
-
-
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig0  = ITS->DigitsAddress(0);
-   TClonesArray *recp0  = ITS->ClustersAddress(0);
-   AliITSClusterFinderSPD *rec0=new AliITSClusterFinderSPD(seg0,dig0,recp0);
-   ITS->SetReconstructionModel(0,rec0);
-   // test
-   //printf("SPD dimensions %f %f \n",seg0->Dx(),seg0->Dz());
-   //printf("SPD npixels %d %d \n",seg0->Npz(),seg0->Npx());
-
-
-   // SDD
-
-   AliITSDetType *iDetType=ITS->DetType(1);
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-   AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->GetSegmentationModel();
-   if (!seg1) seg1 = new AliITSsegmentationSDD(geom);
-   AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-   if (!res1) res1=new AliITSresponseSDD("simulated");
-//   res1->Print();
-
-   //Float_t nsig_noise = 4.;
-
-   TClonesArray *dig1  = ITS->DigitsAddress(1);
-   TClonesArray *recp1  = ITS->ClustersAddress(1);
-   AliITSClusterFinderSDD *rec1=new AliITSClusterFinderSDD(seg1,res1,dig1,recp1);
-   //rec1->SetCutAmplitude(nsig_noise);
-   ITS->SetReconstructionModel(1,rec1);
-//   rec1->Print();
-
-   // SSD
-
-   AliITSDetType *iDetType=ITS->DetType(2);
-   AliITSsegmentationSSD *seg2=(AliITSsegmentationSSD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig2  = ITS->DigitsAddress(2);
-   AliITSClusterFinderSSD *rec2=new AliITSClusterFinderSSD(seg2,dig2);
-   ITS->SetReconstructionModel(2,rec2);
-   // test
-   //printf("SSD dimensions %f %f \n",seg2->Dx(),seg2->Dz());
-   //printf("SSD nstrips %d %d \n",seg2->Npz(),seg2->Npx());
-
-
-
-//
-// Event Loop
-//
-
-   cout << "Looking for clusters...\n";
-   
-   TStopwatch timer;
-
-   if(!gAlice->TreeR()) gAlice->MakeTree("R");
-   //make branch
-   ITS->MakeBranch("R");
-
-   for (int nev=evNumber1; nev<= evNumber2; nev++) {
-       if(nev>0) {
-            nparticles = gAlice->GetEvent(nev);
-            gAlice->SetEvent(nev);
-            if(!gAlice->TreeR()) gAlice-> MakeTree("R");
-            ITS->MakeBranch("R");
-       }     
-       cout << "nev         " <<nev<<endl;
-       cout << "nparticles  " <<nparticles<<endl;
-       if (nev < evNumber1) continue;
-       if (nparticles <= 0) return;
-
-       Int_t last_entry=0;
-       timer.Start();
-       ITS->DigitsToRecPoints(nev,last_entry,"All");
-       //ITS->DigitsToRecPoints(nev,last_entry,"SPD");
-       timer.Stop(); timer.Print(); 
-   } // event loop 
-
-   delete rec0;
-   delete rec1;
-   delete rec2;
-
-   file->Close();
-}
diff --git a/ITS/oldmacros/ITSDigitsToClustersDubna.C b/ITS/oldmacros/ITSDigitsToClustersDubna.C
deleted file mode 100644 (file)
index ae6bccf..0000000
+++ /dev/null
@@ -1,161 +0,0 @@
-#include "iostream.h"
-
-void ITSDigitsToClustersDubna (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } else {
-      delete gAlice;
-      gAlice=0;
-   }
-
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   printf("file %p\n",file);
-   if (file) file->Close(); 
-   file = new TFile("galice.root","UPDATE");
-   file->ls();
-
-   printf ("I'm after Map \n");
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-       gAlice = (AliRun*)file->Get("gAlice");
-       if (gAlice) printf("AliRun object found on file\n");
-       if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-   printf ("I'm after gAlice \n");
-   
-   AliITS *ITS  = (AliITS*) gAlice->GetModule("ITS");
-   if (!ITS) return;
-
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-
-   // NOTE: if you foresee to have (in segmentation or response) parameter
-   // values other than the default ones, and these values are used not only in
-   // simulation but in cluster finder as well, please set them via your
-   // local Config.C - the streamer will take care of writing the correct
-   // info and you'll no longer be obliged to set them again for your cluster
-   // finder as it's done in this macro 
-
-
-
-   // Set the models for cluster finding
-
-   // SPD
-
-
-
-   ITS->MakeTreeC();
-   Int_t nparticles=gAlice->GetEvent(0);
-
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig0  = ITS->DigitsAddress(0);
-   TClonesArray *recp0  = ITS->ClustersAddress(0);
-   AliITSClusterFinderSPDdubna *rec0=new AliITSClusterFinderSPDdubna(seg0,dig0,recp0);
-   ITS->SetReconstructionModel(0,rec0);
-
-   // SDD
-
-   AliITSDetType *iDetType=ITS->DetType(1);
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-   AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->GetSegmentationModel();
-   if (!seg1) seg1 = new AliITSsegmentationSDD(geom);
-   AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-   if (!res1) res1=new AliITSresponseSDD("simulated");
-
-   Float_t baseline,noise;
-   res1->GetNoiseParam(noise,baseline);
-   Float_t noise_after_el = res1->GetNoiseAfterElectronics();
-   Float_t thres = baseline;
-   thres += (4.*noise_after_el);  // TB // (4.*noise_after_el);
-   printf("thres %f\n",thres);
-   res1->Print();
-
-   TClonesArray *dig1  = ITS->DigitsAddress(1);
-   TClonesArray *recp1  = ITS->ClustersAddress(1);
-   AliITSClusterFinderSDD *rec1=new AliITSClusterFinderSDD(seg1,res1,dig1,recp1);
-   rec1->SetCutAmplitude((int)thres);
-   ITS->SetReconstructionModel(1,rec1);
-   rec1->Print();
-
-   // SSD
-
-   AliITSDetType *iDetType=ITS->DetType(2);
-   AliITSsegmentationSSD *seg2=(AliITSsegmentationSSD*)iDetType->GetSegmentationModel();
-   seg2->SetDetSize(72960.,40000.,303.);
-   TClonesArray *dig2  = ITS->DigitsAddress(2);
-   AliITSClusterFinderSSD *rec2=new AliITSClusterFinderSSD(seg2,dig2);
-   ITS->SetReconstructionModel(2,rec2);
-   // test
-   //printf("SSD dimensions %f %f \n",seg2->Dx(),seg2->Dz());
-   //printf("SSD nstrips %d %d \n",seg2->Npz(),seg2->Npx());
-
-
-
-//
-// Event Loop
-//
-
-   cout << "Looking for clusters...\n";
-   
-   TStopwatch timer;
-
-   if(!gAlice->TreeR()) gAlice->MakeTree("R");
-   //make branch
-   ITS->MakeBranch("R");
-
-   for (int nev=evNumber1; nev<= evNumber2; nev++) {
-       if(nev>0) {
-        nparticles = gAlice->GetEvent(nev);
-        gAlice->SetEvent(nev);
-        if(!gAlice->TreeR()) gAlice-> MakeTree("R");
-        ITS->MakeBranch("R");
-       }     
-       cout << "nev         " <<nev<<endl;
-       cout << "nparticles  " <<nparticles<<endl;
-       if (nev < evNumber1) continue;
-       if (nparticles <= 0) return;
-
-       Int_t last_entry=0;
-       timer.Start();
-       ITS->DigitsToRecPoints(nev,last_entry,"All");
-       timer.Stop(); timer.Print(); 
-   } // event loop 
-
-   delete rec0;
-   delete rec1;
-   delete rec2;
-
-   file->Close();
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITSDisplayTracks.C b/ITS/oldmacros/ITSDisplayTracks.C
deleted file mode 100644 (file)
index 7c77a23..0000000
+++ /dev/null
@@ -1,24372 +0,0 @@
-Int_t ITSDisplayTracks(const char *fname = "galice.root", Int_t evNum = 0) {
-
-       /*********************************************************************
-        *                                                                   *
-        *  Macro to plot reconstructed tracks with the Kalman Filter V1 on  *
-        *  top of the ITS detailed geometry.                                *
-        *                                                                   *
-        *  Authors: Angela Badala' and Roberto Barbera                      *
-        *                                                                   *
-        *********************************************************************/
-
-
-       // First of all, here are put some variable declarations
-       // that are useful in the following part:
-       Int_t nparticles; // number of particles
-       // ITS module coordinates [layer = 1, ladder = 2, det = 3] and absolute ID[0] of module [0]
-       TArrayI ID(4);
-       Int_t nmodules, dtype; // Total number of modules and module type (SSD, SPD, SDD)
-       Float_t *x = 0, *y = 0, *z = 0; // Arrays where to store read coords
-       Bool_t *St = 0; // Status of the track (hits only)
-
-        // create the Canvas
-
-        c1 = new TCanvas("c1","Track display",50,50,800,800);
-       c1 -> Divide(2,2,0.001,0.001);
-
-       // It's necessary to load the gAlice shared libs
-       // if they aren't already stored in memory...
-       if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-               loadlibs();
-       }
-  // Anyway, this macro needs to read a gAlice file, so it
-  // clears the gAlice object if there is already one in memory...
-  else {
-               if(gAlice){
-                       delete gAlice;
-                       gAlice = 0;
-               }
-       }
-
-       // Now is opened the Root input file containing Geometry, Kine and Hits
-  // by default its name must be "galice.root".
-  // When the file is opened, its contens are shown.
-       TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(fname);
-       if (!file) file = new TFile(fname);
-               file->ls();
-       
-       // Then, the macro gets the AliRun object from file.
-       // If this object is not present, an error occurs
-       // and the execution is stopped.
-       // Anyway, this operation needs some time,
-       // don't worry about an apparent absence of output and actions...
-       cout << "\nSearching in '" << fname << "' for an AliRun object ... " << flush;
-       gAlice = (AliRun*)file->Get("gAlice");
-       if (gAlice)
-               cout << "FOUND!" << endl;
-       else {
-               cout<<"NOT FOUND! The Macro can't continue!" << endl;
-               return 0;
-       }
-       
-       // Then, the macro selects the event number specified. Default is 0.
-       nparticles = gAlice->GetEvent(evNum);
-       cout << "\nNumber of particles   = " << nparticles << endl;
-       if (!nparticles) {
-               cout << "With no particles I can't do much... Goodbye!" << endl;
-               return 0;
-       }
-       
-       // The next step is filling the ITS from the AliRun object.
-       AliITS *ITS = (AliITS*)gAlice->GetModule("ITS");
-  ITS->InitModules(-1, nmodules);
-  cout << "Number of ITS modules = " << nmodules << endl;
-       cout << "\nFilling modules (it takes a while, now)..." << flush;
-       ITS->FillModules(0, 0, nmodules, " ", " ");
-  cout << "DONE!" << endl;
-
-
-       // Gets geometry...
-       AliITSgeom *gm  = ITS->GetITSgeom();
-       if (!gAlice) {
-               cout << "A problem occurred when getting the geometry!!!" << endl;
-               return;
-       }
-
-       
-      
-//inserire qui la geometria
-
-    TNode *node, *top;
-    
-    const Int_t kColorITS=kRed;
-    //
-    //top = gAlice->GetGeometry()->GetNode("alice");
-
-
-  // DETAILED GEOMETRY
-
-  TNode *sub1node, *sub2node, *sub3node, *sub4node, *sub5node;
-
-  // Define some variables for SPD
-
-  Float_t dits[100];
-  Float_t dits1[3], di101[3], di107[3], di10b[3];  // for layer 1 
-  Float_t di103[3], di10a[3];                      // for layer 1
-  Float_t dits2[3], di1d1[3], di1d7[3], di20b[3];  // for layer 2
-  Float_t di1d3[3], di20a[3];                      // for layer 2  
-
-  Float_t ddet1=200.;     // total detector thickness on layer 1 (micron)
-  Float_t dchip1=200.;    // total chip thickness on layer 1 (micron)
-  
-  Float_t ddet2=200.;     // total detector thickness on layer 2 (micron)                         
-  Float_t dchip2=200.;    // total chip thickness on layer 2 (micron)
-  
-  Float_t dbus=300.;      // total bus thickness on both layers (micron)
-  
-  ddet1  = ddet1*0.0001/2.; // conversion from tot length in um to half in cm
-  ddet2  = ddet2*0.0001/2.; // conversion from tot length in um to half in cm  
-  dchip1 = dchip1*0.0001/2.;// conversion from tot length in um to half in cm  
-  dchip2 = dchip2*0.0001/2.;// conversion from tot length in um to half in cm  
-  dbus   = dbus*0.0001/2.;  // conversion from tot length in um to half in cm       
-               
-  Float_t deltax, deltay; 
-
-  Int_t thickness = 1;
-  Int_t option    = 2;
-
-
-  // Define some variables for SDD
-  // SDD detector ladder
-
-  Float_t ySDD;
-  Float_t I302dits[3], I402dits[3], I004dits[3], I005dits[3];
-  Float_t Y_SDD_sep = 0.20;
-  Float_t Z_SDD_lay3[6] = {18.55, 10.95, 3.70, -3.70, -11.20, -18.35};
-  Float_t Z_SDD_lay4[8] = {25.75, 18.60, 11.00, 3.70, -3.70, -11.20, -18.45, -26.05};
-
-  // Rotation matrices
-    
-  // SPD - option 'a' 
-  
-  if (option == 1) {  
-  
-     new TRotMatrix("itsrot238","itsrot238",90.0,144.0,90.0,234.0,0.0,0.0);
-     new TRotMatrix("itsrot236","itsrot236",90.0,180.013702,90.0,270.013702,0.0,0.0);
-     new TRotMatrix("itsrot239","itsrot239",90.0,216.0,90.0,306.0,0.0,0.0);     
-     new TRotMatrix("itsrot233","itsrot233",90.0,252.000504,90.0,342.000488,0.0,0.0 );     
-     new TRotMatrix("itsrot240","itsrot240",90.0,288.0,90.0,18.0,0.0,0.0);
-     new TRotMatrix("itsrot241","itsrot241",90.0,324.0,90.0,54.0,0.0,0.0);          
-     new TRotMatrix("itsrot242","itsrot242",90.0,36.0,90.0,126.0,0.0,0.0); 
-     new TRotMatrix("itsrot234","itsrot234",90.0,71.9991,90.0,161.9991,0.0,0.0);     
-     new TRotMatrix("itsrot243","itsrot243",90.0,108.0,90.0,198.0,0.0,0.0);  
-     new TRotMatrix("itsrot244","itsrot244",90.0,180.0,90.0,270.0,0.0,0.0);
-     new TRotMatrix("itsrot245","itsrot245",90.0,162.0,90.0,252.0,0.0,0.0);
-     new TRotMatrix("itsrot246","itsrot246",90.0,310.0,90.0,40.0,0.0,0.0);
-     new TRotMatrix("itsrot247","itsrot247",90.0,319.0,90.0,49.0,0.0,0.0);
-     new TRotMatrix("itsrot248","itsrot248",90.0,328.0,90.0,58.0,0.0,0.0);
-     new TRotMatrix("itsrot249","itsrot249",90.0,337.0,90.0,67.0,0.0,0.0);     
-                 
-  }   
-
-  // SPD - option 'b' (this is the default)  
-
-  if (option == 2) {  
-  
-     new TRotMatrix("itsrot233","itsrot233",90.0,252.000504,90.0,342.000488,0.0,0.0);
-     new TRotMatrix("itsrot244","itsrot244",90.0,216.0,90.0,306.0,0.0,0.0);
-     new TRotMatrix("itsrot236","itsrot236",90.0,180.013702,90.0,270.013702,0.0,0.0);  
-     new TRotMatrix("itsrot245","itsrot245",90.0,36.0,90.0,126.0,0.0,0.0);     
-     new TRotMatrix("itsrot234","itsrot234",90.0,71.9991,90.0,161.9991,0.0,0.0);  
-     new TRotMatrix("itsrot246","itsrot246",90.0,108.0,90.0,198.0,0.0,0.0);    
-     new TRotMatrix("itsrot247","itsrot247",90.0,144.0,90.0,234.0,0.0,0.0);
-     new TRotMatrix("itsrot248","itsrot248",90.0,288.0,90.0,18.0,0.0,0.0);     
-     new TRotMatrix("itsrot249","itsrot249",90.0,324.0,90.0,54.0,0.0,0.0);       
-     new TRotMatrix("itsrot238","itsrot238",90.0,180.0,90.0,270.0,0.0,0.0);
-     new TRotMatrix("itsrot239","itsrot239",90.0,162.0,90.0,252.0,0.0,0.0);     
-     new TRotMatrix("itsrot240","itsrot240",90.0,310.0,90.0,40.0,0.0,0.0);
-     new TRotMatrix("itsrot241","itsrot241",90.0,319.0,90.0,49.0,0.0,0.0);
-     new TRotMatrix("itsrot242","itsrot242",90.0,328.0,90.0,58.0,0.0,0.0);
-     new TRotMatrix("itsrot243","itsrot243",90.0,337.0,90.0,67.0,0.0,0.0);
-
-  }   
-     
-  // SDD
-  
-  new TRotMatrix("itsrot321","itsrot321",90.0,12.86,90.0,102.86,0.0,0.0);       
-  new TRotMatrix("itsrot333","itsrot333",90.0,38.57,90.0,128.57,0.0,0.0);
-  new TRotMatrix("itsrot336","itsrot336",90.0,64.29,90.0,154.29,0.0,0.0);      
-  new TRotMatrix("itsrot350","itsrot350",90.0,90.0,90.0,180.0,0.0,0.0);    
-  new TRotMatrix("itsrot313","itsrot313",90.0,115.71,90.0,205.71,0.0,0.0);   
-  new TRotMatrix("itsrot311","itsrot311",90.0,141.43,90.0,231.43,0.0,0.0);
-  new TRotMatrix("itsrot310","itsrot310",90.0,167.14,90.0,257.14,0.0,0.0);  
-  new TRotMatrix("itsrot386","itsrot386",90.0,192.86,90.0,282.86,0.0,0.0);    
-  new TRotMatrix("itsrot309","itsrot309",90.0,218.57,90.0,308.57,0.0,0.0);  
-  new TRotMatrix("itsrot308","itsrot308",90.0,244.29,90.0,334.29,0.0,0.0);  
-  new TRotMatrix("itsrot356","itsrot356",90.0,270.0,90.0,0.0,0.0,0.0);   
-  new TRotMatrix("itsrot307","itsrot307",90.0,295.71,90.0,25.71,0.0,0.0);  
-  new TRotMatrix("itsrot306","itsrot306",90.0,321.43,90.0,51.43,0.0,0.0); 
-  new TRotMatrix("itsrot305","itsrot305",90.0,347.14,90.0,77.14,0.0,0.0);              
-  new TRotMatrix("itsrot335","itsrot335",90.0,8.18,90.0,98.18,0.0,0.0); 
-  new TRotMatrix("itsrot332","itsrot332",90.0,24.55,90.0,114.55,0.0,0.0);  
-  new TRotMatrix("itsrot331","itsrot331",90.0,40.91,90.0,130.91,0.0,0.0);       
-  new TRotMatrix("itsrot366","itsrot366",90.0,57.27,90.0,147.27,0.0,0.0);      
-  new TRotMatrix("itsrot330","itsrot330",90.0,73.64,90.0,163.64,0.0,0.0);         
-  new TRotMatrix("itsrot350","itsrot350",90.0,90.0,90.0,180.0,0.0,0.0);    
-  new TRotMatrix("itsrot329","itsrot329",90.0,106.36,90.0,196.36,0.0,0.0);  
-  new TRotMatrix("itsrot328","itsrot328",90.0,122.73,90.0,212.73,0.0,0.0);  
-  new TRotMatrix("itsrot327","itsrot327",90.0,139.09,90.0,229.09,0.0,0.0);  
-  new TRotMatrix("itsrot326","itsrot326",90.0,155.45,90.0,245.45,0.0,0.0); 
-  new TRotMatrix("itsrot325","itsrot325",90.0,171.82,90.0,261.82,0.0,0.0);  
-  new TRotMatrix("itsrot324","itsrot324",90.0,188.18,90.0,278.18,0.0,0.0);   
-  new TRotMatrix("itsrot323","itsrot323",90.0,204.55,90.0,294.55,0.0,0.0);   
-  new TRotMatrix("itsrot322","itsrot322",90.0,220.91,90.0,310.91,0.0,0.0);  
-  new TRotMatrix("itsrot320","itsrot320",90.0,237.27,90.0,327.27,0.0,0.0);  
-  new TRotMatrix("itsrot319","itsrot319",90.0,253.64,90.0,343.64,0.0,0.0);  
-  new TRotMatrix("itsrot318","itsrot318",90.0,270.0,90.0,360.0,0.0,0.0);  
-  new TRotMatrix("itsrot317","itsrot317",90.0,286.36,90.0,16.36,0.0,0.0);  
-  new TRotMatrix("itsrot316","itsrot316",90.0,302.73,90.0,32.73,0.0,0.0);      
-  new TRotMatrix("itsrot315","itsrot315",90.0,319.09,90.0,49.09,0.0,0.0);      
-  new TRotMatrix("itsrot314","itsrot314",90.0,335.45,90.0,65.45,0.0,0.0); 
-  new TRotMatrix("itsrot334","itsrot334",90.0,351.82,90.0,81.82,0.0,0.0);       
-      
-  //SSD 
-  
-  new TRotMatrix("itsrot504","itsrot504",90.0,127.06,90.0,217.06,0.0,0.0);  
-  new TRotMatrix("itsrot505","itsrot505",90.0,116.47,90.0,206.47,0.0,0.0);  
-  new TRotMatrix("itsrot506","itsrot506",90.0,105.88,90.0,195.88,0.0,0.0);  
-  new TRotMatrix("itsrot507","itsrot507",90.0,95.29,90.0,185.29,0.0,0.0);  
-  new TRotMatrix("itsrot508","itsrot508",90.0,84.71,90.0,174.71,0.0,0.0);
-  new TRotMatrix("itsrot509","itsrot509",90.0,74.12,90.0,164.12,0.0,0.0);
-  new TRotMatrix("itsrot510","itsrot510",90.0,63.53,90.0,153.53,0.0,0.0);  
-  new TRotMatrix("itsrot511","itsrot511",90.0,52.94,90.0,142.94,0.0,0.0);
-  new TRotMatrix("itsrot512","itsrot512",90.0,42.35,90.0,132.35,0.0,0.0);
-  new TRotMatrix("itsrot513","itsrot513",90.0,31.76,90.0,121.76,0.0,0.0); 
-  new TRotMatrix("itsrot653","itsrot653",90.0,21.18,90.0,111.18,0.0,0.0); 
-  new TRotMatrix("itsrot514","itsrot514",90.0,10.59,90.0,100.59,0.0,0.0);  
-  new TRotMatrix("itsrot515","itsrot515",90.0,349.41,90.0,79.41,0.0,0.0);  
-  new TRotMatrix("itsrot516","itsrot516",90.0,338.82,90.0,68.82,0.0,0.0);  
-  new TRotMatrix("itsrot517","itsrot517",90.0,328.24,90.0,58.24,0.0,0.0);  
-  new TRotMatrix("itsrot518","itsrot518",90.0,317.65,90.0,47.65,0.0,0.0);
-  new TRotMatrix("itsrot519","itsrot519",90.0,307.06,90.0,37.06,0.0,0.0);
-  new TRotMatrix("itsrot520","itsrot520",90.0,296.47,90.0,26.47,0.0,0.0);  
-  new TRotMatrix("itsrot521","itsrot521",90.0,285.88,90.0,15.88,0.0,0.0);
-  new TRotMatrix("itsrot522","itsrot522",90.0,275.29,90.0,5.29,0.0,0.0);
-  new TRotMatrix("itsrot523","itsrot523",90.0,264.71,90.0,354.71,0.0,0.0); 
-  new TRotMatrix("itsrot524","itsrot524",90.0,254.12,90.0,344.12,0.0,0.0);  
-  new TRotMatrix("itsrot525","itsrot525",90.0,243.53,90.0,333.53,0.0,0.0);  
-  new TRotMatrix("itsrot526","itsrot526",90.0,232.94,90.0,322.94,0.0,0.0);  
-  new TRotMatrix("itsrot527","itsrot527",90.0,222.35,90.0,312.35,0.0,0.0);  
-  new TRotMatrix("itsrot528","itsrot528",90.0,211.76,90.0,301.76,0.0,0.0);
-  new TRotMatrix("itsrot618","itsrot618",90.0,201.18,90.0,291.18,0.0,0.0); 
-  new TRotMatrix("itsrot529","itsrot529",90.0,190.59,90.0,280.59,0.0,0.0); 
-  new TRotMatrix("itsrot533","itsrot533",90.0,180.0,90.0,270.0,0.0,0.0);   
-  new TRotMatrix("itsrot530","itsrot530",90.0,169.41,90.0,259.41,0.0,0.0);  
-  new TRotMatrix("itsrot531","itsrot531",90.0,158.82,90.0,248.82,0.0,0.0);  
-  new TRotMatrix("itsrot501","itsrot501",90.0,148.24,90.0,238.24,0.0,0.0);
-  new TRotMatrix("itsrot503","itsrot503",90.0,137.65,90.0,227.65,0.0,0.0);         
-  new TRotMatrix("itsrot532","itsrot532",90.0,360.0,90.0,90.0,0.0,0.0);
-  new TRotMatrix("itsrot560","itsrot560",90.0,85.26,90.0,175.26,0.0,0.0);  
-  new TRotMatrix("itsrot561","itsrot561",90.0,94.74,90.0,184.74,0.0,0.0);
-  new TRotMatrix("itsrot562","itsrot562",90.0,104.21,90.0,194.21,0.0,0.0);
-  new TRotMatrix("itsrot563","itsrot563",90.0,113.68,90.0,203.68,0.0,0.0); 
-  new TRotMatrix("itsrot564","itsrot564",90.0,123.16,90.0,213.16,0.0,0.0);  
-  new TRotMatrix("itsrot565","itsrot565",90.0,132.63,90.0,222.63,0.0,0.0);  
-  new TRotMatrix("itsrot566","itsrot566",90.0,142.11,90.0,232.11,0.0,0.0);  
-  new TRotMatrix("itsrot567","itsrot567",90.0,151.58,90.0,241.58,0.0,0.0);  
-  new TRotMatrix("itsrot568","itsrot568",90.0,161.05,90.0,251.05,0.0,0.0);
-  new TRotMatrix("itsrot569","itsrot569",90.0,170.53,90.0,260.53,0.0,0.0);
-  new TRotMatrix("itsrot533","itsrot533",90.0,180.0,90.0,270.0,0.0,0.0); 
-  new TRotMatrix("itsrot534","itsrot534",90.0,189.47,90.0,279.47,0.0,0.0);  
-  new TRotMatrix("itsrot535","itsrot535",90.0,198.95,90.0,288.95,0.0,0.0);  
-  new TRotMatrix("itsrot623","itsrot623",90.0,208.42,90.0,298.42,0.0,0.0);  
-  new TRotMatrix("itsrot537","itsrot537",90.0,217.89,90.0,307.89,0.0,0.0);  
-  new TRotMatrix("itsrot538","itsrot538",90.0,227.37,90.0,317.37,0.0,0.0);
-  new TRotMatrix("itsrot539","itsrot539",90.0,236.84,90.0,326.84,0.0,0.0);
-  new TRotMatrix("itsrot540","itsrot540",90.0,246.32,90.0,336.32,0.0,0.0);  
-  new TRotMatrix("itsrot541","itsrot541",90.0,255.79,90.0,345.79,0.0,0.0);
-  new TRotMatrix("itsrot542","itsrot542",90.0,265.26,90.0,355.26,0.0,0.0);
-  new TRotMatrix("itsrot543","itsrot543",90.0,274.74,90.0,4.74,0.0,0.0); 
-  new TRotMatrix("itsrot544","itsrot544",90.0,284.21,90.0,14.21,0.0,0.0);  
-  new TRotMatrix("itsrot545","itsrot545",90.0,293.68,90.0,23.68,0.0,0.0);  
-  new TRotMatrix("itsrot546","itsrot546",90.0,303.16,90.0,33.16,0.0,0.0);  
-  new TRotMatrix("itsrot547","itsrot547",90.0,312.63,90.0,42.63,0.0,0.0);  
-  new TRotMatrix("itsrot548","itsrot548",90.0,322.11,90.0,52.11,0.0,0.0);
-  new TRotMatrix("itsrot549","itsrot549",90.0,331.58,90.0,61.58,0.0,0.0);
-  new TRotMatrix("itsrot550","itsrot550",90.0,341.05,90.0,71.05,0.0,0.0);  
-  new TRotMatrix("itsrot551","itsrot551",90.0,350.53,90.0,80.53,0.0,0.0);
-  new TRotMatrix("itsrot552","itsrot552",90.0,9.47,90.0,99.47,0.0,0.0);
-  new TRotMatrix("itsrot553","itsrot553",90.0,18.95,90.0,108.95,0.0,0.0);
-  new TRotMatrix("itsrot620","itsrot620",90.0,28.42,90.0,118.42,0.0,0.0);  
-  new TRotMatrix("itsrot555","itsrot555",90.0,37.89,90.0,127.89,0.0,0.0);  
-  new TRotMatrix("itsrot556","itsrot556",90.0,47.37,90.0,137.37,0.0,0.0);  
-  new TRotMatrix("itsrot557","itsrot557",90.0,56.84,90.0,146.84,0.0,0.0);  
-  new TRotMatrix("itsrot558","itsrot558",90.0,66.32,90.0,156.32,0.0,0.0);
-  new TRotMatrix("itsrot559","itsrot559",90.0,75.79,90.0,165.79,0.0,0.0);       
-  
-  
-  // --- Define SPD (option 'a') volumes ----------------------------
-  
-  // SPD - option 'a' 
-  // (this is NOT the default)
-  
-  if (option == 1) { 
-    
-    dits1[0] = 0.64;
-    dits1[1] = ddet1;
-    dits1[2] = 3.48;
-    new TBRIK("ITS1","ITS1","void",dits1[0],dits1[1],dits1[2]);
-    
-    dits2[0] = 0.64;
-    dits2[1] = ddet2;
-    dits2[2] = 3.48;
-    new TBRIK("ITS2","ITS2","void",dits2[0],dits2[1],dits2[2]);    
-    
-    di101[0] = 0.705;
-    di101[1] = ddet1;
-    di101[2] = 3.536;
-    new TBRIK("I101","I101","void",di101[0],di101[1],di101[2]);
-    
-    di1d1[0] = 0.705;
-    di1d1[1] = ddet2;
-    di1d1[2] = 3.536;
-    new TBRIK("I1D1","I1D1","void",di1d1[0],di1d1[1],di1d1[2]);    
-    
-    di103[0] = 0.793;
-    di103[1] = ddet1+dchip1;
-    di103[2] = 3.536;
-    new TBRIK("I103","I103","void",di103[0],di103[1],di103[2]);    
-    
-    di1d3[0] = 0.793;
-    di1d3[1] = ddet2+dchip2;
-    di1d3[2] = 3.536;
-    new TBRIK("I1D3","I1D3","void",di1d3[0],di1d3[1],di1d3[2]);        
-        
-    di10a[0] = 0.843;
-    di10a[1] = ddet1+dchip1+dbus+0.0025;  
-    di10a[2] = 19.344;
-    new TBRIK("I10A","I10A","void",di10a[0],di10a[1],di10a[2]); 
-    
-    di20a[0] = 0.843;
-    di20a[1] = ddet2+dchip2+dbus+0.0025;  
-    di20a[2] = 19.344;
-    new TBRIK("I20A","I20A","void",di20a[0],di20a[1],di20a[2]);     
-
-    dits[0] = 3.7;
-    dits[1] = 7.7;
-    dits[2] = 24;
-    dits[3] = 57;
-    dits[4] = 100;
-    new TTUBS("I12A","I12A","void",dits[0],dits[1],dits[2],dits[3],dits[4]);
-     
-    dits[0] = 3.7;
-    dits[1] = 7.75;
-    dits[2] = 26.1;
-    new TTUBE("IT12","IT12","void",dits[0],dits[1],dits[2]);  
-    
-  }
-  
-  // --- Define SPD (option 'b') volumes ----------------------------
-  
-  // SPD - option 'b' 
-  // (this is the default)
-
-  if (option == 2) {
-    
-    dits1[0] = 0.64;
-    dits1[1] = ddet1;
-    dits1[2] = 3.48;
-    new TBRIK("ITS1","ITS1","void",dits1[0],dits1[1],dits1[2]);
-    
-    dits2[0] = 0.64;
-    dits2[1] = ddet2;
-    dits2[2] = 3.48;
-    new TBRIK("ITS2","ITS2","void",dits2[0],dits2[1],dits2[2]);    
-    
-    di101[0] = 0.705;
-    di101[1] = ddet1;
-    di101[2] = 3.536;
-    new TBRIK("I101","I101","void",di101[0],di101[1],di101[2]);
-    
-    di1d1[0] = 0.705;
-    di1d1[1] = ddet2;
-    di1d1[2] = 3.536;
-    new TBRIK("I1D1","I1D1","void",di1d1[0],di1d1[1],di1d1[2]);    
-    
-    di107[0] = 0.793;
-    di107[1] = ddet1+dchip1;
-    di107[2] = 3.536;
-    new TBRIK("I107","I107","void",di107[0],di107[1],di107[2]);    
-    
-    di1d7[0] = 0.7975;
-    di1d7[1] = ddet2+dchip2;
-    di1d7[2] = 3.536;
-    new TBRIK("I1D7","I1D7","void",di1d7[0],di1d7[1],di1d7[2]);        
-        
-    di10b[0] = 0.843;
-    di10b[1] = ddet1+dchip1+dbus+0.0025;  
-    di10b[2] = 19.344;
-    new TBRIK("I10B","I10B","void",di10b[0],di10b[1],di10b[2]); 
-    
-    di20b[0] = 0.843;
-    di20b[1] = ddet2+dchip2+dbus+0.0025;  
-    di20b[2] = 19.344;
-    new TBRIK("I20B","I20B","void",di20b[0],di20b[1],di20b[2]);     
-
-    dits[0] = 3.7;
-    dits[1] = 7.7;
-    dits[2] = 24;
-    dits[3] = 57;
-    dits[4] = 100;
-    new TTUBS("I12B","I12B","void",dits[0],dits[1],dits[2],dits[3],dits[4]);
-     
-    dits[0] = 3.7;
-    dits[1] = 7.75;
-    dits[2] = 26.1;
-    new TTUBE("IT12","IT12","void",dits[0],dits[1],dits[2]);  
-         
-
-  }
-
-  // --- Define SDD volumes ------------------------------------------
-  
-  TPCON *it34 = new TPCON("IT34","IT34","void",0.,360.,6); 
-  it34->DefineSection(0,-34.6,23.49,28.); 
-  it34->DefineSection(1,-23.65,23.49,28.); 
-  it34->DefineSection(2,-23.65,14.59,28.); 
-  it34->DefineSection(3,23.65,14.59,28.); 
-  it34->DefineSection(4,23.65,23.49,28.); 
-  it34->DefineSection(5,34.6,23.49,28.);   
-  
-  I302dits[0] = 3.6250;
-  I302dits[1] = 0.0150;
-  I302dits[2] = 4.3794; 
-  new TBRIK("I302","I302","void",I302dits[0],I302dits[1],I302dits[2]);
-
-  I004dits[0] = I302dits[0]+0.005;
-  I004dits[1] = 2*I302dits[1]+Y_SDD_sep/2.;
-  I004dits[2] = TMath::Abs(Z_SDD_lay3[0]);
-  if (I004dits[2] < TMath::Abs(Z_SDD_lay3[5])) {
-    I004dits[2] = TMath::Abs(Z_SDD_lay3[5]);
-  }
-  I004dits[2] = I004dits[2] + I302dits[2];  
-  new TBRIK("I004","I004","void",I004dits[0],I004dits[1],I004dits[2]); 
-  
-  dits[0] = 3.50850;
-  dits[1] = 0.01499; 
-  dits[2] = 3.76320;  
-  new TBRIK("ITS3","ITS3","void",dits[0],dits[1],dits[2]);    
-  I402dits[0] = 3.6250;
-  I402dits[1] = 0.0150;
-  I402dits[2] = 4.3794; 
-  new TBRIK("I402","I402","void",I402dits[0],I402dits[1],I402dits[2]);
-
-  I005dits[0] = I402dits[0]+0.005;
-  I005dits[1] = 2*I402dits[1]+Y_SDD_sep/2.;
-  I005dits[2] = TMath::Abs(Z_SDD_lay4[0]);
-  if (I005dits[2] < TMath::Abs(Z_SDD_lay4[7])) {
-    I005dits[2] = TMath::Abs(Z_SDD_lay4[7]);
-  }
-  I005dits[2] = I005dits[2] + I402dits[2];  
-  new TBRIK("I005","I005","void",I005dits[0],I005dits[1],I005dits[2]);   
-
-  dits[0] = 3.50850;
-  dits[1] = 0.01499; 
-  dits[2] = 3.76320;
-  new TBRIK("ITS4","ITS4","void",dits[0],dits[1],dits[2]);
-
-  
-  // --- Define SSD volumes ------------------------------------------
-  
-
-  TPCON *it56 = new TPCON("IT56","IT56","void",0.,360.,6); 
-  it56->DefineSection(0,-57.45,43.6,48.); 
-  it56->DefineSection(1,-49.15,43.6,48.); 
-  it56->DefineSection(2,-49.15,36.9,48.); 
-  it56->DefineSection(3,50.55,36.9,48.); 
-  it56->DefineSection(4,50.55,43.6,48.); 
-  it56->DefineSection(5,57.45,43.6,48.);    
-
-  dits[0] = 3.75;
-  dits[1] = 0.045;
-  dits[2] = 43.3;
-  new TBRIK("I565","I565","void",dits[0],dits[1],dits[2]);  
-
-  dits[0] = 3.75;
-  dits[1] = 0.045;
-  dits[2] = 50.975;
-  new TBRIK("I569","I569","void",dits[0],dits[1],dits[2]);  
-  
-  dits[0] = 3.75;
-  dits[1] = 0.015;
-  dits[2] = 2.1;
-  new TBRIK("I562","I562","void",dits[0],dits[1],dits[2]);     
-  
-  dits[0] = 3.75;
-  dits[1] = 0.015;
-  dits[2] = 2.1;
-  new TBRIK("I566","I566","void",dits[0],dits[1],dits[2]);       
-
-  dits[0] = 3.65;
-  dits[1] = 0.015;
-  dits[2] = 2;
-  new TBRIK("ITS5","ITS5","void",dits[0],dits[1],dits[2]); 
-
-  dits[0] = 3.65;
-  dits[1] = 0.015;
-  dits[2] = 2;
-  new TBRIK("ITS6","ITS6","void",dits[0],dits[1],dits[2]);  
-
-  //
-  
-  //top->cd();
-
-
-  // --- Place SSD volumes into their mother volume    
-
-    // Place IT56 in Alice
-    node = new TNode("IT56","IT56","IT56",0.,0.,0.,"");
-    node->SetLineColor(kColorITS);
-    node->SetVisibility(0);
-    node->cd();
-       //
-       // Place copy #1 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",0.,38.445,0.,"");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #2 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-7.0924,37.9412,0.,"itsrot514");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #3 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-13.8879,35.8489,0.,"itsrot653");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #4 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-20.3195,32.817,0.,"itsrot513");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #5 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-25.9002,28.4112,0.,"itsrot512");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #6 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-30.8022,23.2608,0.,"itsrot511");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #7 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-34.4146,17.1364,0.,"itsrot510");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #8 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-37.1249,10.563,0.,"itsrot509");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #9 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-38.281,3.5473,0.,"itsrot508");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #10 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-38.4338,-3.5614,0.,"itsrot507");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #11 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-36.9774,-10.521,0.,"itsrot506");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #12 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-34.5519,-17.2048,0.,"itsrot505");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #13 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-30.6798,-23.1683,0.,"itsrot504");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #14 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-26.0036,-28.5246,0.,"itsrot503");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #15 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-20.2387,-32.6866,0.,"itsrot501");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #16 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-13.9434,-35.992,0.,"itsrot531");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #17 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",-7.0643,-37.7904,0.,"itsrot530");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #18 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",0.,-38.5984,0.,"itsrot533");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #19 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",7.0642,-37.7904,0.,"itsrot529");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #20 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",13.9433,-35.992,0.,"itsrot618");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #21 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",20.2387,-32.6866,0.,"itsrot528");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #22 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",26.0036,-28.5246,0.,"itsrot527");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #23 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",30.6798,-23.1683,0.,"itsrot526");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #24 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",34.5519,-17.2048,0.,"itsrot525");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #25 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",36.9774,-10.521,0.,"itsrot524");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #26 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",38.4338,-3.5614,0.,"itsrot523");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #27 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",38.281,3.5472,0.,"itsrot522");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #28 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",37.125,10.5629,0.,"itsrot521");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #29 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",34.4146,17.1364,0.,"itsrot520");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #30 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",30.8022,23.2607,0.,"itsrot519");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #31 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",25.9002,28.4112,0.,"itsrot518");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #32 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",20.3195,32.817,0.,"itsrot517");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #33 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",13.888,35.8489,0.,"itsrot516");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #34 of I565 in IT56
-       //
-       sub1node = new TNode("I565","I565","I565",7.0925,37.9412,0.,"itsrot515");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,41.1546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,37.2246,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,33.3146,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,29.3846,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,25.4746,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,21.5446,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,17.6346,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,13.7046,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,9.7946,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,5.8645,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,1.9546,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-1.9754,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-5.8855,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-9.8154,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-13.7254,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-17.6555,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-21.5655,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-25.4954,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-29.4054,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-33.3354,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,0.03,-37.2454,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS5 directly in I565
-          //
-         sub2node = new TNode("ITS5","ITS5","ITS5",0.,-0.03,-41.1554,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #1 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-14.139,41.1856,0.,"itsrot553");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #2 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-20.7978,38.431,0.,"itsrot620");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #3 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-26.7459,34.3631,0.,"itsrot555");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #4 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-32.1494,29.5956,0.,"itsrot556");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #5 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-36.4544,23.8169,0.,"itsrot557");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #6 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-40.0172,17.5532,0.,"itsrot558");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #7 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-42.2125,10.6897,0.,"itsrot559");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #8 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-43.5484,3.6085,0.,"itsrot560");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #9 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-43.3963,-3.5959,0.,"itsrot561");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #10 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-42.3606,-10.7271,0.,"itsrot562");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #11 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-39.8773,-17.4918,0.,"itsrot563");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #12 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-36.5823,-23.9004,0.,"itsrot564");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #13 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-32.0371,-29.4922,0.,"itsrot565");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #14 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-26.8397,-34.4836,0.,"itsrot566");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #15 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-20.7251,-38.2967,0.,"itsrot567");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #16 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-14.1886,-41.33,0.,"itsrot568");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #17 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-7.1673,-42.9511,0.,"itsrot569");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #18 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",0.,-43.6977,0.,"itsrot533");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #19 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",7.1673,-42.9511,0.,"itsrot534");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #20 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",14.1886,-41.33,0.,"itsrot535");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #21 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",20.7251,-38.2967,0.,"itsrot623");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #22 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",26.8397,-34.4836,0.,"itsrot537");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #23 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",32.0371,-29.4922,0.,"itsrot538");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #24 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",36.5822,-23.9004,0.,"itsrot539");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #25 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",39.8773,-17.4918,0.,"itsrot540");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #26 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",42.3606,-10.7272,0.,"itsrot541");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #27 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",43.3963,-3.5959,0.,"itsrot542");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #28 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",43.5484,3.6085,0.,"itsrot543");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #29 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",42.2125,10.6897,0.,"itsrot544");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #30 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",40.0172,17.5532,0.,"itsrot545");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #31 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",36.4544,23.8169,0.,"itsrot546");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #32 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",32.1494,29.5956,0.,"itsrot547");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #33 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",26.7459,34.3631,0.,"itsrot548");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #34 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",20.7978,38.431,0.,"itsrot549");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #35 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",14.139,41.1856,0.,"itsrot550");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #36 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",7.1924,43.1017,0.,"itsrot551");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #37 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",0.,43.545,0.,"");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-       //
-       // Place copy #38 of I569 in IT56
-       //
-       sub1node = new TNode("I569","I569","I569",-7.1924,43.1017,0.,"itsrot552");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,46.9203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();
-         //
-         // Place copy #2 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,43.0103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #3 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,39.1003,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #4 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,35.1903,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #5 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,31.2803,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #6 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,27.3703,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #7 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,23.4603,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #8 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,19.5503,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #9 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,15.6403,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #10 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,11.7303,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #11 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,7.8203,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #12 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,3.9103,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #13 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,0.0003,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);  
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #14 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-3.9097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #15 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-7.8197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #16 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-11.7297,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #17 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-15.6397,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #18 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-19.5497,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #19 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-23.4597,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);   
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #20 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-27.3697,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #21 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-31.2797,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #22 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-35.1897,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #23 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-39.0997,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #24 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,0.03,-43.0097,"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1); 
-          //fNodes->Add(sub2node);
-         sub1node->cd();
-         //
-         // Place copy #25 of ITS6 in I569
-          //
-         sub2node = new TNode("ITS6","ITS6","ITS6",0.,-0.03,-46.9197,"itsrot532");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-         sub1node->cd();                                                                                                                                                                                         
-       //fNodes->Add(sub1node);
-       node->cd();
-
-
-
-    //fNodes->Add(node);
-
-    c1_1->cd();
-    c1_1->SetTheta(90);
-    c1_1->SetPhi(0);
-    node->Draw();
-    
-    c1_2->cd();
-    c1_2->SetTheta(0);
-    c1_2->SetPhi(0);   
-    node->Draw();
-    
-    c1_3->cd();
-    c1_3->SetTheta(0);
-    c1_3->SetPhi(90); 
-    node->Draw();    
-        
-    c1_4->cd();
-    c1_4->SetTheta(20);
-    c1_4->SetPhi(140);        
-    node->Draw();
-
-    c1->Update();
-
-  // --- Place SDD volumes into their mother volume 
-
-    // Place IT34 in Alice
-    node = new TNode("IT34","IT34","IT34",0.,0.,0.,"");
-    node->SetLineColor(kColorITS);
-    node->SetVisibility(0);
-    node->cd();
-       //
-       // Place copy #1 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",-3.2777,14.3607,0.,"itsrot321");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #2 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",-9.5581,11.9855,0.,"itsrot333");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #3 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",-13.2713,6.3911,0.,"itsrot336");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #4 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",-15.33,0.,0.,"itsrot350");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #5 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",-13.2713,-6.3911,0.,"itsrot313");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #6 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",-9.5581,-11.9855,0.,"itsrot311");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #7 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",-3.2777,-14.3607,0.,"itsrot310");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #8 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",3.4112,-14.9456,0.,"itsrot386");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #9 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",9.184,-11.5164,0.,"itsrot309");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #10 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",13.8119,-6.6514,0.,"itsrot308");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #11 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",14.73,0.,0.,"itsrot356");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #12 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",13.8119,6.6514,0.,"itsrot307");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #13 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",9.184,11.5164,0.,"itsrot306");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #14 of I004 in IT34
-       //
-       sub1node = new TNode("I004","I004","I004",3.4113,14.9456,0.,"itsrot305");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,ySDD,Z_SDD_lay3[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS3 directly in I004
-          //
-         ySDD = Y_SDD_sep/2.+I302dits[1];
-         sub2node = new TNode("ITS3","ITS3","ITS3",0.,-ySDD,Z_SDD_lay3[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #1 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-3.3629,23.3895,-0.15,"itsrot335");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #2 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-10.0447,21.9949,-0.15,"itsrot332");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #3 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-15.4744,17.8584,-0.15,"itsrot331");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #4 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-20.3415,13.0727,-0.15,"itsrot366");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #5 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-22.6728,6.6573,-0.15,"itsrot330");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #6 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-24.18,0.,-0.15,"itsrot350");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #7 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-22.6728,-6.6573,-0.15,"itsrot329");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #8 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-20.3415,-13.0727,-0.15,"itsrot328");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #9 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-15.4744,-17.8584,-0.15,"itsrot327");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #10 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-10.0447,-21.9949,-0.15,"itsrot326");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #11 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",-3.3629,-23.3895,-0.15,"itsrot325");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #12 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",3.4412,-23.9339,-0.15,"itsrot324");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #13 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",9.8163,-21.4946,-0.15,"itsrot323");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #14 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",15.8345,-18.274,-0.15,"itsrot322");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #15 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",19.8788,-12.7753,-0.15,"itsrot320");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #16 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",23.2005,-6.8123,-0.15,"itsrot319");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #17 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",23.63,0.,-0.15,"itsrot318");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #18 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",23.2005,6.8123,-0.15,"itsrot317");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #19 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",19.8788,12.7753,-0.15,"itsrot316");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #20 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",15.8345,18.274,-0.15,"itsrot315");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #21 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",9.8163,21.4946,-0.15,"itsrot314");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       //
-       // Place copy #22 of I005 in IT34
-       //
-       sub1node = new TNode("I005","I005","I005",3.4412,23.9339,-0.15,"itsrot334");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();
-          //
-          // Place copy #1 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[0],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #2 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[1],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #3 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[2],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #4 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[3],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #5 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[4],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #6 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[5],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #7 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,ySDD,Z_SDD_lay4[6],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-          //
-          // Place copy #8 of ITS4 directly in I005
-          //
-         ySDD = -(Y_SDD_sep/2.+I402dits[1]);
-         sub2node = new TNode("ITS4","ITS4","ITS4",0.,-ySDD,Z_SDD_lay4[7],"");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(1);
-          //fNodes->Add(sub2node);
-          sub1node->cd();        
-       //fNodes->Add(sub1node);
-       node->cd();       
-       
-              
-    //fNodes->Add(node);
-             
-    //node->Draw("SAME");
-    //c1->Update();
-
-
-  // --- Place SPD (option 'a') volumes into their mother volume 
-  
-  // SPD - option 'a' 
-  // (this is NOT the default)
-
-  if (option == 1) {
-
-
-  }
-  
-  
-
-  // --- Place SPD (option 'b') volumes into their mother volume 
-  
-  // SPD - option 'b' 
-  // (this is the default)
-
-  if (option == 2) { 
-  
-    // Place IT12 in Alice
-    //
-    node = new TNode("IT12","IT12","IT12",0.,0.,0.,"");
-    node->SetLineColor(kColorITS);
-    node->SetVisibility(0);
-    node->cd();    
-       //
-       // Place copy #1 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #2 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot245");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #3 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot234");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #4 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot246");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #5 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot247");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #6 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot236");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #7 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot244");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #8 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot233");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #9 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot248");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       //
-       // Place copy #10 of I12B in IT12
-       //
-       sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot249");
-       sub1node->SetLineColor(kColorITS);
-       sub1node->SetVisibility(0);
-       sub1node->cd();    
-          //
-         // Place copy #1 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I10B in I12B
-         //
-         deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);  
-          deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
-          sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I107 in I10B
-             //
-            sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I101 in I107
-                //
-               sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS1 in I101
-                  //
-                  sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #1 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #2 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #3 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-          //
-         // Place copy #4 of I20B in I12B
-         //
-         deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);  
-          deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
-          sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
-          sub2node->SetLineColor(kColorITS);
-          sub2node->SetVisibility(0);
-         sub2node->cd();
-             //
-            // Place copy #1 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();
-                  //               
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-            sub2node->cd(); 
-            //
-            // Place copy #2 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #3 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-            //
-            // Place copy #4 of I1D7 in I20B
-             //
-            sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
-             sub3node->SetLineColor(kColorITS);
-             sub3node->SetVisibility(0);
-            sub3node->cd();
-               //
-               // Place copy #1 of I1D1 in I1D7
-                //
-               sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
-                sub4node->SetLineColor(kColorITS);
-                sub4node->SetVisibility(0);
-               sub4node->cd();             
-                  //
-                  // Place copy #1 of ITS2 in I1D1
-                  //
-                  sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
-                   sub5node->SetLineColor(kColorITS);                   
-                   //fNodes->Add(sub5node);
-                  sub4node->cd();   
-               //fNodes->Add(sub4node);  
-            sub3node->cd(); 
-            //fNodes->Add(sub3node);
-             sub2node->cd(); 
-         //fNodes->Add(sub2node);      
-          sub1node->cd(); 
-       //fNodes->Add(sub1node);
-       node->cd(); 
-       
-    //fNodes->Add(node)
-    
-    //node->Draw("SAME");
-    //c1->Update();
-
-  } 
-                  
-       // Gets Tree of RecPoints...
-       TTree *TR = gAlice->TreeR();
-       if (!TR) {
-               cout << "A problem occurred when getting the TreeR!!!" << endl;
-               return;
-       }
-        AliITSRecPoint *recp=0;        
-        TClonesArray  *recPoints = ITS->RecPoints();
-
-       // Gets found tracks...
-       const char *filename="itstracks.root";  
-       TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-       if (!file) file = new TFile(filename);
-
-       char tname[30];   
-
-//  get tracks from ITSiotrack.root
-  Int_t nev=0; 
-  sprintf(tname,"TreeT%d",nev);
-   TTree *tracktree=(TTree*)file->Get(tname);
-   TBranch *tbranch=tracktree->GetBranch("ITStracks");
-   //cout<<" nev = "<<nev<<"\n";   
-   //cout<<" open the file \n"; 
-       
-   Int_t nentry=tracktree->GetEntries();
-       
-    Float_t idpoint[6],idmodule[6]; 
-
-   TObjArray tarray(nentry);
-   printf("Found tracks = %d\n",nentry);
-       
-   for (Int_t i=0; i<nentry; i++) {
-      AliITSIOTrack *iotrack=new AliITSIOTrack;
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-       tarray.AddLast(iotrack);
-   }            
-       
-
-         AliITSIOTrack *iotrack;
-         Float_t global[3], local[3];  
-         Float_t idpoint[6], idmodule[6]; 
-         Float_t xp[7], yp[7], zp[7];  
-         Float_t pxtr, pytr, pztr;
-         Float_t x0tr, y0tr, z0tr;                
-   for (Int_t i=0; i<nentry; i++) {
-     AliITSIOTrack *iotrack=new AliITSIOTrack;         
-        iotrack=(AliITSIOTrack*)tarray.UncheckedAt(i);
-        if(!iotrack) continue;
-     Int_t labITS=iotrack->GetLabel();
-            pxtr=iotrack->GetPx();   
-           pytr=iotrack->GetPy();   
-           pztr=iotrack->GetPz();   
-            x0tr=iotrack->GetX();   
-           y0tr=iotrack->GetY();   
-           z0tr=iotrack->GetZ();           
-     //cout << labITS << " ok" << endl;
-    // Int_t labTPC=iotrack->GetTPCLabel();
-               xp[0] = xp[1] = xp[2] = xp[3] = xp[4] = xp[5] = xp[6] = 0.0;
-               yp[0] = yp[1] = yp[2] = yp[3] = yp[4] = yp[5] = yp[6] = 0.0;
-               zp[0] = zp[1] = zp[2] = zp[3] = zp[4] = zp[5] = zp[6] = 0.0;
-
-         Int_t np=0;                             
-
-
-          xp[0]=x0tr;
-         xp[0]=x0tr;
-          zp[0]=x0tr;
-         
-         for(Int_t ipp=0; ipp<6; ipp++){
-         idpoint[ipp]= iotrack->GetIdPoint(ipp);
-         idmodule[ipp] = iotrack->GetIdModule(ipp);
-         //cout << idmodule[ipp] << " " << idpoint[ipp] << endl;
-        if(idmodule[ipp]>=0){  
-        ITS->ResetRecPoints();          
-    gAlice->TreeR()->GetEvent(idmodule[ipp]); 
-     Int_t npoints=recPoints->GetEntries();    
-        recp =(AliITSRecPoint*)recPoints->UncheckedAt(idpoint[ipp]);
-         local[0]=recp->GetX();
-         local[1]=0.;
-         local[2]= recp->GetZ();
-         //if(i==32) cout<<" local ="<<local[0]<<" "<<local[1]<<" "<<local[2]<<"\n";
-      gm->LtoG(Int_t(idmodule[ipp]),local,global);
-         //if(i==32) cout<<" global ="<<global[0]<<" "<<global[1]<<" "<<global[2]<<"\n";               
-               xp[np+1]=global[0];
-               yp[np+1]=global[1];
-               zp[np+1]=global[2];
-          np++;                        
-         }                       
-         }
-         
-         
-               
-               TPolyLine3D *plxy = new TPolyLine3D(np+1, xp, yp, zp);
-               plxy->SetLineColor(kBlack);
-
-                c1_1->cd(); 
-               plxy->Draw();
-
-               
-               c1_2->cd(); 
-               plxy->Draw();
-
-               
-               c1_3->cd(); 
-               plxy->Draw();
-
-               
-               c1_4->cd(); 
-               plxy->Draw();
-
-               c1->Update();
-               
-                               
-               //cout<<" i  np = "<<i<<"  "<<np<<"\n";getchar();
-               /*
-               TPolyLine *plxz = new TPolyLine(6, x, z);
-               plxz->SetLineColor(kRed);
-               plxz->Draw();
-               cxz->Update();                    
-      */
-         }
-
-
-
-
-}
-
diff --git a/ITS/oldmacros/ITSHitsToFastPoints.C b/ITS/oldmacros/ITSHitsToFastPoints.C
deleted file mode 100644 (file)
index 11d07d0..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-#include "iostream.h"
-
-void ITSHitsToFastPoints (Int_t evNumber1=0,Int_t evNumber2=0,Int_t nsignal=25, Int_t size=-1) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } else {
-      delete gAlice;
-      gAlice=0;
-   }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   if (file) file->Close(); 
-   file = new TFile("galice.root","UPDATE");
-   file->ls();
-
-   printf ("I'm after Map \n");
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-       gAlice = (AliRun*)file->Get("gAlice");
-       if (gAlice) printf("AliRun object found on file\n");
-       if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-   printf ("I'm after gAlice \n");
-   
-   AliITS *ITS  = (AliITS*) gAlice->GetModule("ITS");
-   if (!ITS) return;
-
-  // Set the simulation model
-
-  /* Bug !!! (I.Belikov)
-   AliITSsimulationFastPoints *sim = new AliITSsimulationFastPoints();
-
-   for (Int_t i=0;i<3;i++) {
-       ITS->SetSimulationModel(i,sim);
-   }
-   */
-   
-   for (Int_t i=0;i<3;i++) {
-       ITS->SetSimulationModel(i,new AliITSsimulationFastPoints());
-   }
-   
-
-//
-// Event Loop
-//
-
-   Int_t nbgr_ev=0;
-  TStopwatch timer;
-
-   for (int ev=evNumber1; ev<= evNumber2; ev++) {
-       Int_t nparticles = gAlice->GetEvent(ev);
-       cout << "event         " <<ev<<endl;
-       cout << "nparticles  " <<nparticles<<endl;
-       gAlice->SetEvent(ev);
-       if(!gAlice->TreeR()) gAlice-> MakeTree("R");
-       ITS->MakeBranch("R");
-       if (ev < evNumber1) continue;
-       if (nparticles <= 0) return;
-
-       Int_t bgr_ev=Int_t(ev/nsignal);
-       //printf("bgr_ev %d\n",bgr_ev);
-       timer.Start();
-       ITS->HitsToFastRecPoints(ev,bgr_ev,size," ","All"," ");
-       timer.Stop(); timer.Print();
-   } // event loop 
-
-   delete gAlice; gAlice=0;
-   file->Close();
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITSOccupancy.C b/ITS/oldmacros/ITSOccupancy.C
deleted file mode 100644 (file)
index e825dd8..0000000
+++ /dev/null
@@ -1,242 +0,0 @@
-/******************************************************************************
-
-  "ITSOccupancy.C"
-  
-  this macro calculates the mean occupancy of each ITS layer, counting the
-  "fired" digits of each module, and making two overall calculi:
-     1) the calculus of the mean overall layer occupancy (as the ratio
-            between the total number of active digits and the total number of 
-                 channels in the module;
-         2) a distribution of the occupancies as a funcion of z, to obtain some
-                 kind of most significand data for this value, along the z axis
-       
-  The macro creates also the GIF of the TCanvas where the histograms are plotted
-                         
-  The arguments that must be inserted are the following:
-     1) the answer to the following question (as a Bool_t)
-                 "Can I get the total channels distribution from the file totals.root?"
-                 if the answer is NO (false) these histograms are re-created and re-stored 
-                 in that file.
-                        
-         2) the name of the file to analyze; 
-            NOTE: in this argument you MUST omit the ".root" extension, because the 
-                       macro uses this argument to recall the file, but also to name the
-                                 GIF & PS of the output canvas, in order to save the plot of the 
-                                 distributions to the disk. If you put, as argument, the string
-                                 "file.root", the macro will look for an unexisting file named
-                                 "file.root.root"...
-                                                                         
-  It is also possible (and recommended) to compile this macro, 
-  to execute it faster. To do this, it is necessary to:
-  1) make sure that de "#define __COMPILED__" instruction below is UNcommented
-     and the "#define __NOCOMPILED__" instruction is commented (remember that
-         if you comment or uncomment both these instructions, the macro can't work)
-  2) type, at the root prompt, the instruction 
-     gSystem->SetIncludePath("-I- -I$ALICE_ROOT/include -I$ALICE_ROOT/ITS -g")
-         to adjoin the ALICE include libraries to the main include directory
-  3) load the function via the ".L ITSOccupancy.C++" statement (only the first
-     time, because the first time the macro must be compiled). Frome the 
-         second time you use the macro, you must only load it via the 
-         ".L ITSOccupancy.C+" instruction (note the number of '+' signs in each case
-  4) call the function with only its name, es: ITSOccupancy("HP", "galice.root")
-
- Author: Alberto Pulvirenti                                             
-******************************************************************************/
-
-#define __COMPILED__
-//#define __NOCOMPILED__
-
-#ifdef __COMPILED__
-       #include <iostream.h>
-       #include <TROOT.h>
-       #include <TArrayI.h>
-       #include <TCanvas.h>
-       #include <TClassTable.h>
-       #include <TClonesArray.h>
-       #include <TFile.h>
-       #include <TObject.h>
-       #include <TObjArray.h>
-       #include <TTree.h>
-       #include <TMath.h>
-       #include <TString.h>
-       #include <TH1.h>
-       #include <AliRun.h>
-       #include <AliITS.h>
-       #include <AliITSgeom.h>
-       #include <AliITSDetType.h>
-       #include <AliITSRecPoint.h>
-       #include <AliITSdigit.h>
-       #include <AliITShit.h>
-       #include <AliITSmodule.h> 
-       #include <AliITSsegmentation.h>
-       #include <AliITSsegmentationSPD.h> 
-       #include <AliITSsegmentationSDD.h>
-       #include <AliITSsegmentationSSD.h>
-#endif
-
-Int_t ITSOccupancy(char *name = "galice", Int_t evNum = 0) {       
-                
-       // Evaluate the name of the file to open...
-       Int_t filelen = strlen(name);
-       Text_t *fileroot = new Text_t[filelen + 6];
-       // ...and copy this name to the data ROOT file
-       strcpy (fileroot, name);
-       strcat (fileroot, ".root");
-       
-       // Open the Root input file containing the AliRun data and 
-       // the Root output data file
-       TFile *froot = (TFile*)gROOT->GetListOfFiles()->FindObject(fileroot);
-       if (!froot) froot = new TFile(fileroot, "READ");
-       // Load the gAlice shared libs if not already in memory and
-       // clears an eventually existing AliRun object
-#ifdef __NOCOMPILED__
-       if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-       loadlibs();
-       }
-#endif
-   if (gAlice) {
-      delete gAlice;
-          gAlice = 0;
-   }
-       // Get the AliRun object from file (if there's none, the macro is stopped)
-       Int_t nparticles = 0;
-       gAlice = (AliRun*)froot->Get("gAlice");
-       if (gAlice) {
-               cout << "Found an AliRun object in `" << fileroot << "'" << endl;
-               // In this case, select the event number specified (default is 0)
-               nparticles = gAlice->GetEvent(evNum);
-               if (nparticles)
-                       cout << "\nNumber of particles   = " << nparticles << endl;
-               else {
-                       cout << "NO PARTICLES!!!!" << endl;
-                       return 0;
-               }
-       }
-       else {
-               cout<<"Not found any AliRun object in `" << fileroot << "'" << endl;
-               return 0;
-       }
-       // Initialize the ITS and its geometry
-       AliITS *ITS = (AliITS*)gAlice->GetModule("ITS");
-       AliITSgeom *gm = ITS->GetITSgeom();
-
-       // Variables and objects definition and setting
-       Float_t zmax[] = {20.0,20.0,25.0,35.0,49.5,54.0}; // z edges for TH1F (cm)
-       Int_t nbins[]  = {40,40,50,70,99,108};             // bins number for TH1Fs
-       
-       // Histos for plotting occupancy distributions
-       TH1F *above[6], *below[6];
-       
-       for (Int_t lay = 0; lay < 6; lay++) {
-               Int_t nlads = gm->GetNladders(lay+1);
-               Int_t ndets = gm->GetNdetectors(lay+1);
-               Int_t dtype = lay / 2;
-               Int_t minID = gm->GetModuleIndex(lay+1, 1, 1);
-               Int_t maxID = gm->GetModuleIndex(lay+1, nlads, ndets);
-               Text_t ffname[20];
-               sprintf(ffname, "h_%d", lay+1);
-               below[lay] = new TH1F(ffname, "Total z distribution of digits", nbins[lay], -zmax[lay], zmax[lay]);
-               cout << "Evaluating total channels number of layer " << lay+1 << endl;
-               for (Int_t I = minID; I <= maxID; I++) {                
-                       AliITSDetType *det = ITS->DetType(dtype);
-                       AliITSsegmentation *seg = det->GetSegmentationModel();
-                       Int_t NX = seg->Npx();
-                       if(lay == 2 || lay == 3) NX = 192;
-                       Int_t NZ = seg->Npz();
-                       //                      cout << "ID: " << I << ", Layer: " << lay+1 << ", NX = " << NX << ", NZ = " << NZ << endl;
-                       for (Int_t ix = 0; ix <= NX; ix++) {
-                               for (Int_t iz = 0; iz <= NZ; iz++) {
-                                       Float_t lx[] = {0.0,0.0,0.0}, gx[] = {0.0,0.0,0.0};
-                                       seg->DetToLocal(ix, iz, lx[0], lx[2]);
-                                       gm->LtoG(I, lx, gx);
-                                       below[lay]->Fill(gx[2]);
-                               }
-                       }
-               }
-               sprintf(ffname, "H_%d", lay+1);
-               above[lay] = new TH1F(ffname, "histo", nbins[lay], -zmax[lay], zmax[lay]);
-       }
-               
-       // Counting the hits, digits and recpoints contained in the ITS
-       TTree *TD = gAlice->TreeD();
-       ITS->ResetDigits();
-       Float_t mean[6];
-       Float_t average[6];
-
-       for (Int_t L = 0; L < 6; L++) {
-               
-               cout << "Layer " << L + 1 << ": " << flush;                             
-
-               // To avoid two nested loops, are calculated 
-               // the ID of the first and last module of the L
-               // (remember the L goest from 0 to 5 (not from 1 to 6)
-               Int_t first, last;
-               first = gm->GetModuleIndex(L + 1, 1, 1);
-               last = gm->GetModuleIndex(L + 1, gm->GetNladders(L + 1), gm->GetNdetectors(L + 1));
-                               
-               // Start loop on modules
-               for (Int_t ID = first; ID <= last; ID++) {
-                       Int_t dtype = L / 2;
-                       AliITSDetType *det = ITS->DetType(dtype);
-                       AliITSsegmentation *seg = det->GetSegmentationModel();
-                       if (dtype == 2) seg->SetLayer(L+1);
-                       
-                       TD->GetEvent(ID);
-                       TClonesArray *digits_array = ITS->DigitsAddress(dtype);
-                       Int_t digits_num = digits_array->GetEntries();
-                       // Get the coordinates of the module
-                       for (Int_t j = 0; j < digits_num; j++) {
-                               Float_t lx[] = {0.0,0.0,0.0}, gx[] = {0.0,0.0,0.0};
-                               AliITSdigit *digit = (AliITSdigit*)digits_array->UncheckedAt(j);
-                               Int_t iz=digit->fCoord1;  // cell number z
-                               Int_t ix=digit->fCoord2;  // cell number x
-                       // Get local coordinates of the element (microns)
-                       seg->DetToLocal(ix, iz, lx[0], lx[2]);
-                               gm->LtoG(ID, lx, gx);
-                               above[L]->Fill(gx[2]);
-                       }
-               }
-               
-               Float_t occupied = above[L]->GetEntries();
-               Float_t total = below[L]->GetEntries();
-               cout << "Entries: " << occupied << ", " << total << endl;
-               average[L] = 100.*occupied/total;
-               above[L]->Divide(above[L], below[L], 100.0, 1.0);
-               mean[L] = above[L]->GetSumOfWeights() / above[L]->GetNbinsX(); 
-               cout.setf(ios::fixed);
-               cout.precision(2);
-               cout << " digits occupancy = " << mean[L] << "%" << endl;
-               cout << " average digits occupancy = " << average[L] << "%" << endl;
-       }
-       
-       TCanvas *view = new TCanvas("view", "Digits occupancy distributions", 600, 900);
-       view->Divide(2, 3);
-       
-       for (Int_t I = 1; I < 7; I++) {
-               view->cd(I);
-               Text_t title[50];
-               sprintf(title, "Layer %d: %4.2f%c", I, mean[I-1], '%');
-               title[6] = (Text_t)I + '0';
-               above[I-1]->SetTitle(title);
-               above[I-1]->SetStats(kFALSE);
-               above[I-1]->SetXTitle("z (cm)");
-               above[I-1]->SetYTitle("%");
-               above[I-1]->Draw();
-               view->Update();
-       }
-       Text_t *filegif  = new Text_t[filelen + 23];
-       Text_t *fileps  = new Text_t[filelen + 23];
-       strcpy (filegif, name);
-       strcpy (fileps, name);
-       strcat (filegif, "_digit_occupancy.gif");
-       strcat (fileps, "_digit_occupancy.eps");
-       view->SaveAs(filegif);
-       view->SaveAs(fileps);
-       TFile *fOc = new TFile("ITS_occupancy.root","NEW");
-        fOc->cd();
-       for (Int_t I = 0; I < 6; I++) above[I]->Write();
-        fOc->Close();
-
-       return 1;
-}
diff --git a/ITS/oldmacros/ITSPIDtest.C b/ITS/oldmacros/ITSPIDtest.C
deleted file mode 100644 (file)
index 46aebca..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- AliKalmanTrack::SetConvConst(100/.299792458/.2);
-   cout<<" Starting..."<<endl;                                                     
-if(gClassTable->GetID("AliRun")<0){
-    gROOT->LoadMacro("$ALICE_ROOT/macros/loadlibs.C");
-    loadlibs();                                                                 
-}
-
-if(gROOT->IsBatch()){
-    cout<<"Start tracking..."<<endl;
-    gSystem->Exec("make all");
-    cout<<"AliITSv2PID.root written."<<endl;
-}else{
-
-   fpid = new TFile("pidhit.root","RECREATE");
-
-   gROOT->Macro("$ALICE_ROOT/ITS/load_particles.C");
-   AliITSPid *pid = new AliITSPid(npart);          
-   gROOT->LoadMacro("$ALICE_ROOT/ITS/dEdXgeant.C"); 
-   gROOT->LoadMacro("$ALICE_ROOT/ITS/dedxanal.C");    
-//----------------------------------------------------
-NStat=pid.trs->GetEntries();      
-//----------------------------------------------------                          
-    TControlBar menu("vertical","PID menu",920,5);
-    
-    menu.AddButton("dEdX.C","pid->Reset();totpid=0;dEdXyy(0,0,pid);pid->Tab();"," Create new PID table ");               
-    menu.AddButton("Save TAB",
-       "pid->Tab();fpid->cd();pid->Write();fpid->Close();"," ");
-   menu.AddButton("Load TAB","loadpid();"," ");    
-
-    menu.AddButton("EFFALL","effall(); "," Efficiency if PID  ");
-    menu.AddButton("dEdX spectra","qhisall(); "," dEdX for PI,K and P  ");
-    menu.AddButton("dEdX-P plot","dedxhis(0); "," dEdX-P plot for PI,K,P  ");
-    menu.AddButton("dEdX-P pions","dedxhis(211); "," dEdX-P plot for PI  ");
-    menu.AddButton("dEdX-P kaons","dedxhis(321); "," dEdX-P plot for K  ");
-    menu.AddButton("dEdX-P elect","dedxhis(11); "," dEdX-P plot for e+  ");
-    menu.AddButton("dEdX-P prot ","dedxhis(2212); "," dEdX-P plot for P  ");
-    
-    menu.AddButton("Fit Kaons","fitkall(); "," Gaus Fit for Kaons   ");
-    menu.AddButton("Fit Pions","fitpiall(); "," Gaus Fit for Kaons   ");
-    menu.AddButton("Fit Protons","fitpall(); "," Gaus Fit for Protons   ");
-    menu.AddButton("New cuts","newcuts(); "," Corrected cuts for PID object   ");
-    menu.AddButton("pcode","pcode(); "," ...  ");              
-    menu.AddButton("signal (mip)","signal(); "," ...  ");    
-    menu.AddButton("pmom (MeV)","pmom(); "," ...  ");        
-    menu.AddButton("tracks","tracks(); "," Track number histogram  ");   
-    menu.AddButton("1 track","track(); "," Print next track  ");                                  
-    menu.AddButton("test module","dEdXxx(0,0,pid,1); "," ...  ");
-    menu.AddButton("fill tab test","filltab(); ","Fill track table with test data ");
-    menu.AddButton("fill tab_tr","filltab_tracks(); ","Fill track table with reconstr. tracks ");
-
-    menu.AddButton("Config.C","gSystem->Exec(\"make conf\");","Edit Config.C");
-    menu.AddButton("Do tracking",
-       "gSystem->Exec(\"make all\");pid->Reset();totpid=0;filltab_tracks();dedxhis(0)",
-       "Start tracking");
-    menu.AddButton("Exit","quit();","Quit");
-  menu.Show();
-
-}//if batch
-
-}
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITSPlotAllTracks.C b/ITS/oldmacros/ITSPlotAllTracks.C
deleted file mode 100644 (file)
index 6248a79..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-#include <iostream.h>
-#include <fstream.h>
-
-void ITSPlotAllTracks(){  
-  
-  ifstream in ("AliITSTra.out");
-  
-  TVector DataOut(10);
-  
-  ///////////////////////////////// Histograms definition ///////////////////////////////////////////
-
-  
-  TH1F *hp=new TH1F("hp","PHI resolution",50,-15.,15.); hp->SetFillColor(4);     
-  TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-15.,15.); hl->SetFillColor(4);  
-  
-  // TH1F *hp=new TH1F("hp","PHI resolution",50,-5.,5.); hp->SetFillColor(4);     
-  //TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-5.,5.); hl->SetFillColor(4); 
-      
- // TH1F *hpt=new TH1F("hpt","Relative Pt resolution",50,-5.,5.);
- TH1F *hpt=new TH1F("hpt","Relative Pt resolution",40,-10.,10.); 
-  hpt->SetFillColor(2); 
-  TH1F *hd=new TH1F("hd","Impact parameter distribution ",100,0,2000); 
-  hd->SetFillColor(6);
-  
-  TH1F *hdr=new TH1F("hdr","Dr ",50,-1000,1000);  
-  hdr->SetFillColor(kGreen);
-  TH1F *hdz=new TH1F("hdz","Dz ",50,-1000,1000);  
-  hdz->SetFillColor(kBlue);
-  
-  /*
-  TH1F *hdr=new TH1F("hdr","Dr ",50,-100,100);  
-  hdr->SetFillColor(kGreen);
-  TH1F *hdz=new TH1F("hdz","Dz ",50,-1000,1000);  
-  hdz->SetFillColor(kBlue);  
-  */ 
-
-  TH1F *hgood=new TH1F("hgood","Good tracks",10,0,2);
-  hgood->Sumw2();  // aggiunto il 15-01-01
-  TH1F *hfound=new TH1F("hfound","Found tracks",10,0,2);
-  hfound->Sumw2();  // aggiunto il 15-01-01
-  TH1F *hfake=new TH1F("hfake","Fake tracks",10,0,2);
-  hfake->Sumw2();    
-  TH1F *hg=new TH1F("hg","",10,0,2); //efficiency for good tracks  
-  hg->SetLineColor(4); hg->SetLineWidth(2);
-  TH1F *hf=new TH1F("hf","Efficiency for fake tracks",10,0,2);
-  /*hf->SetFillColor(1); hf->SetFillStyle(3013);*/ hf->SetLineColor(4); hf->SetLineWidth(2);
-
-  /////////////////////////////////////////////////////////////////////////////////////////////////// 
-
-  ifstream in1 ("AliITSTrag.out");
-  Double_t ptg; 
-  for(;;) {
-    in1 >> ptg; 
-    if( in1.eof() ) break;
-    hgood->Fill(ptg);
-  }
-  in1.close();
-   
-  Int_t neglabs=0;      // provvisoria
-  for (;;){    
-    for (int r=0; r<9; r++) in>>DataOut(r);
-    if( in.eof() ) break;
-
-    Double_t ptg=DataOut(0); Double_t labITS=DataOut(1); Double_t labTPC=DataOut(2); Double_t ptperc=DataOut(3);         
-    Double_t deltalam=DataOut(4); Double_t deltaphi=DataOut(5);
-    Double_t Dtot=DataOut(6); Double_t Dr=DataOut(7); Double_t Dz=DataOut(8);  
-
-     if(labITS<0) neglabs++;    // provvisoria
-         if(labITS>=0) hfound->Fill(ptg); else         {   hfake->Fill(ptg);}
-
-         //if(labITS>=0 ) {      
-      hpt->Fill(ptperc);
-      hl->Fill(deltalam);
-      hp->Fill(deltaphi);
-      hd->Fill(Dtot);
-      hdr->Fill(Dr);
-      hdz->Fill(Dz);
-   //}    
-  }
-  
-
-  in.close();
-  Stat_t ngood=hgood->GetEntries(); cerr<<"Good tracks "<<ngood<<endl;  
-  Stat_t nfound=hfound->GetEntries(); cerr<<"Found tracks "<<nfound<<endl;
-  Stat_t nfake=hfake->GetEntries(); cerr<<"Fake tracks "<<nfake<<endl;       
-  gStyle->SetOptStat(111110);
-  gStyle->SetOptFit(1);           
-  TCanvas *c1=new TCanvas("c1","",0,0,700,700);
-  TPad *p1=new TPad("p1","",0,0.5,0.5,1); p1->Draw(); hp->SetXTitle("(mrad)");
-  p1->cd(); hp->Draw();  hp->Fit("gaus"); c1->cd();
-  TPad *p2=new TPad("p2","",0.5,0.5,1,1); p2->Draw(); hl->SetXTitle("(mrad)");
-  p2->cd(); hl->Draw(); hl->Fit("gaus"); c1->cd();
-  TPad *p3=new TPad("p3","",0,0,0.5,0.5); p3->Draw(); hpt->SetXTitle("(%)");
-  p3->cd(); hpt->Draw(); hpt->Fit("gaus"); c1->cd();
-  TPad *p4=new TPad("p4","",0.5,0,1,0.5); p4->Draw(); hd->SetXTitle("(micron)");
-  p4->cd(); hd->Draw(); c1->cd();
-   
-  TCanvas *c3=new TCanvas("c3","",200,200,800,500);
-  hfound->Print("all");  // aggiunto il 16-01-01
-  hgood->Print("all");  // aggiunto il 16-01-01
-  TPad *p7=new TPad("p7","",0,0,0.333,1); p7->Draw(); p7->cd(); hfound->Draw(); c3->cd(); 
-  TPad *p8=new TPad("p8","",0.333,0,0.666,1); p8->Draw(); p8->cd(); hfake->Draw(); c3->cd();
-  TPad *p9=new TPad("p9","",0.666,0,1,1); p9->Draw(); p9->cd(); hgood->Draw(); c3->cd();
-     
-  TCanvas *c4=new TCanvas("c4","",300,300,800,500);
-  hg->Divide(hfound,hgood,1.,1.); //,"b");
-  hf->Divide(hfake,hgood,1.,1.); //,"b");
-  hg->SetMaximum(1.4);
-  hg->SetYTitle("Tracking efficiency");
-  hg->SetXTitle("Pt (GeV/c)");
-  hg->Print("all");  // aggiunto il 16-01-01
-  hg->Draw();  // to not plot the erro bars    hg->Draw("histo");
-  TLine *line1 = new TLine(0,1.0,2,1.0); line1->SetLineStyle(4);
-  line1->Draw("same");
-  TLine *line2 = new TLine(0,0.9,2,0.9); line2->SetLineStyle(4);
-  line2->Draw("histosame");
-  
-   
-  hf->SetFillColor(1);
-  hf->SetFillStyle(3013);
-  hf->SetLineColor(2);
-  hf->SetLineWidth(2);
-  hf->Draw("same");  // to not plot the error bars  hf->Draw("histosame");
-  
-  TText *text = new TText(0.461176,0.248448,"Fake tracks");
-  text->SetTextSize(0.05);
-  text->Draw();
-  text = new TText(0.453919,1.11408,"Good tracks");
-  text->SetTextSize(0.05);
-  text->Draw();
-         
-  TCanvas *c2=new TCanvas("c2","",100,100,700,400);
-  TPad *p5=new TPad("p5","",0,0,0.5,1); p5->Draw(); hdr->SetXTitle("(micron)");
-  p5->cd(); hdr->Draw();  hdr->Fit("gaus"); c2->cd();
-  TPad *p6=new TPad("p6","",0.5,0,1,1); p6->Draw(); hdz->SetXTitle("(micron)");
-  p6->cd(); hdz->Draw(); hdz->Fit("gaus"); c2->cd();
-  
-  cout<<"neglabs = "<<neglabs<<"\n";  // provvisoria
-}
diff --git a/ITS/oldmacros/ITSPlotFakeTracks.C b/ITS/oldmacros/ITSPlotFakeTracks.C
deleted file mode 100644 (file)
index f31deb7..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-#include <iostream.h>
-#include <fstream.h>
-
-void ITSPlotFakeTracks(){  
-  
-  ifstream in ("AliITSTra.out");
-  
-  TVector DataOut(10);
-  
-  ///////////////////////////////// Histograms definition ///////////////////////////////////////////
-
-  
-  TH1F *hp=new TH1F("hp","PHI resolution",25,-80.,80.); hp->SetFillColor(4);     
-  TH1F *hl=new TH1F("hl","LAMBDA resolution",25,-80.,80.); hl->SetFillColor(4);  
-  
-  // TH1F *hp=new TH1F("hp","PHI resolution",50,-5.,5.); hp->SetFillColor(4);     
-  //TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-5.,5.); hl->SetFillColor(4); 
-      
- // TH1F *hpt=new TH1F("hpt","Relative Pt resolution",50,-5.,5.);
- TH1F *hpt=new TH1F("hpt","Relative Pt resolution",40,-20.,20.); 
-  hpt->SetFillColor(2); 
-  TH1F *hd=new TH1F("hd","Impact parameter distribution ",100,0,2000); 
-  hd->SetFillColor(6);
-  
-  TH1F *hdr=new TH1F("hdr","Dr ",50,-1000,1000);  
-  hdr->SetFillColor(kGreen);
-  TH1F *hdz=new TH1F("hdz","Dz ",50,-1000,1000);  
-  hdz->SetFillColor(kBlue);
-  
-  /*
-  TH1F *hdr=new TH1F("hdr","Dr ",50,-100,100);  
-  hdr->SetFillColor(kGreen);
-  TH1F *hdz=new TH1F("hdz","Dz ",50,-1000,1000);  
-  hdz->SetFillColor(kBlue);  
-  */ 
-
-  TH1F *hgood=new TH1F("hgood","Good tracks",10,0,2);
-  hgood->Sumw2();  // aggiunto il 15-01-01
-  TH1F *hfound=new TH1F("hfound","Found tracks",10,0,2);
-  hfound->Sumw2();  // aggiunto il 15-01-01
-  TH1F *hfake=new TH1F("hfake","Fake tracks",10,0,2);
-  hfake->Sumw2();    
-  TH1F *hg=new TH1F("hg","",10,0,2); //efficiency for good tracks  
-  hg->SetLineColor(4); hg->SetLineWidth(2);
-  TH1F *hf=new TH1F("hf","Efficiency for fake tracks",10,0,2);
-  /*hf->SetFillColor(1); hf->SetFillStyle(3013);*/ hf->SetLineColor(4); hf->SetLineWidth(2);
-
-  /////////////////////////////////////////////////////////////////////////////////////////////////// 
-
-  ifstream in1 ("AliITSTrag.out");
-  Double_t ptg; 
-  for(;;) {
-    in1 >> ptg; 
-    if( in1.eof() ) break;
-    hgood->Fill(ptg);
-  }
-  in1.close();
-   
-  Int_t neglabs=0;      // provvisoria
-  for (;;){    
-    for (int r=0; r<9; r++) in>>DataOut(r);
-    if( in.eof() ) break;
-
-    Double_t ptg=DataOut(0); Double_t labITS=DataOut(1); Double_t labTPC=DataOut(2); 
-        Double_t ptperc=DataOut(3);      
-    Double_t deltalam=DataOut(4); Double_t deltaphi=DataOut(5);
-    Double_t Dtot=DataOut(6); Double_t Dr=DataOut(7); Double_t Dz=DataOut(8);  
-
-     if(labITS<0) neglabs++;    // provvisoria
-         if(labITS>=0) hfound->Fill(ptg); else         {   hfake->Fill(ptg);}
-
-         if(labITS<0 ) {             // >=
-      hpt->Fill(ptperc);
-      hl->Fill(deltalam);
-      hp->Fill(deltaphi);
-      hd->Fill(Dtot);
-      hdr->Fill(Dr);
-      hdz->Fill(Dz);
-   }    
-  }
-  
-
-  in.close();
-  Stat_t ngood=hgood->GetEntries(); cerr<<"Good tracks "<<ngood<<endl;  
-  Stat_t nfound=hfound->GetEntries(); cerr<<"Found tracks "<<nfound<<endl;
-  Stat_t nfake=hfake->GetEntries(); cerr<<"Fake tracks "<<nfake<<endl;       
-  gStyle->SetOptStat(111110);
-  gStyle->SetOptFit(1);           
-  TCanvas *c1=new TCanvas("c1","",0,0,700,700);
-  TPad *p1=new TPad("p1","",0,0.5,0.5,1); p1->Draw(); hp->SetXTitle("(mrad)");
-  p1->cd(); hp->Draw();  hp->Fit("gaus"); c1->cd();
-  TPad *p2=new TPad("p2","",0.5,0.5,1,1); p2->Draw(); hl->SetXTitle("(mrad)");
-  p2->cd(); hl->Draw(); hl->Fit("gaus"); c1->cd();
-  TPad *p3=new TPad("p3","",0,0,0.5,0.5); p3->Draw(); hpt->SetXTitle("(%)");
-  p3->cd(); hpt->Draw(); hpt->Fit("gaus"); c1->cd();
-  TPad *p4=new TPad("p4","",0.5,0,1,0.5); p4->Draw(); hd->SetXTitle("(micron)");
-  p4->cd(); hd->Draw(); c1->cd();
-   
-  TCanvas *c3=new TCanvas("c3","",200,200,800,500);
-  hfound->Print("all");  // aggiunto il 16-01-01
-  hgood->Print("all");  // aggiunto il 16-01-01
-  TPad *p7=new TPad("p7","",0,0,0.333,1); p7->Draw(); p7->cd(); hfound->Draw(); c3->cd(); 
-  TPad *p8=new TPad("p8","",0.333,0,0.666,1); p8->Draw(); p8->cd(); hfake->Draw(); c3->cd();
-  TPad *p9=new TPad("p9","",0.666,0,1,1); p9->Draw(); p9->cd(); hgood->Draw(); c3->cd();
-     
-  TCanvas *c4=new TCanvas("c4","",300,300,800,500);
-  hg->Divide(hfound,hgood,1.,1.); //,"b");
-  hf->Divide(hfake,hgood,1.,1.); //,"b");
-  hg->SetMaximum(1.4);
-  hg->SetYTitle("Tracking efficiency");
-  hg->SetXTitle("Pt (GeV/c)");
-  hg->Print("all");  // aggiunto il 16-01-01
-  hg->Draw();  // to not plot the erro bars    hg->Draw("histo");
-  TLine *line1 = new TLine(0,1.0,2,1.0); line1->SetLineStyle(4);
-  line1->Draw("same");
-  TLine *line2 = new TLine(0,0.9,2,0.9); line2->SetLineStyle(4);
-  line2->Draw("histosame");
-  
-   
-  hf->SetFillColor(1);
-  hf->SetFillStyle(3013);
-  hf->SetLineColor(2);
-  hf->SetLineWidth(2);
-  hf->Draw("same");  // to not plot the error bars  hf->Draw("histosame");
-  
-  TText *text = new TText(0.461176,0.248448,"Fake tracks");
-  text->SetTextSize(0.05);
-  text->Draw();
-  text = new TText(0.453919,1.11408,"Good tracks");
-  text->SetTextSize(0.05);
-  text->Draw();
-         
-  TCanvas *c2=new TCanvas("c2","",100,100,700,400);
-  TPad *p5=new TPad("p5","",0,0,0.5,1); p5->Draw(); hdr->SetXTitle("(micron)");
-  p5->cd(); hdr->Draw();  hdr->Fit("gaus"); c2->cd();
-  TPad *p6=new TPad("p6","",0.5,0,1,1); p6->Draw(); hdz->SetXTitle("(micron)");
-  p6->cd(); hdz->Draw(); hdz->Fit("gaus"); c2->cd();
-  
-  cout<<"neglabs = "<<neglabs<<"\n";  // provvisoria
-}
diff --git a/ITS/oldmacros/ITSPlotTracks.C b/ITS/oldmacros/ITSPlotTracks.C
deleted file mode 100644 (file)
index 0a5363a..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-#include <iostream.h>
-#include <fstream.h>
-
-void ITSPlotTracks(){  
-  
-  ifstream in ("AliITSTra.out");
-  
-  TVector DataOut(10);
-  
-  ///////////////////////////////// Histograms definition ///////////////////////////////////////////
-
-  
-  TH1F *hp=new TH1F("hp","PHI resolution",50,-15.,15.); hp->SetFillColor(4);     
-  TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-15.,15.); hl->SetFillColor(4);  
-  
-  // TH1F *hp=new TH1F("hp","PHI resolution",50,-5.,5.); hp->SetFillColor(4);     
-  //TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-5.,5.); hl->SetFillColor(4); 
-      
- // TH1F *hpt=new TH1F("hpt","Relative Pt resolution",50,-5.,5.);
- TH1F *hpt=new TH1F("hpt","Relative Pt resolution",40,-10.,10.); 
-  hpt->SetFillColor(2); 
-  TH1F *hd=new TH1F("hd","Impact parameter distribution ",100,0,2000); 
-  hd->SetFillColor(6);
-  
-  TH1F *hdr=new TH1F("hdr","Dr ",50,-1000,1000);  
-  hdr->SetFillColor(kGreen);
-  TH1F *hdz=new TH1F("hdz","Dz ",50,-1000,1000);  
-  hdz->SetFillColor(kBlue);
-  
-  /*
-  TH1F *hdr=new TH1F("hdr","Dr ",50,-100,100);  
-  hdr->SetFillColor(kGreen);
-  TH1F *hdz=new TH1F("hdz","Dz ",50,-1000,1000);  
-  hdz->SetFillColor(kBlue);  
-  */ 
-
-  TH1F *hgood=new TH1F("hgood","Good tracks",10,0,2);
-  hgood->Sumw2();  // aggiunto il 15-01-01
-  TH1F *hfound=new TH1F("hfound","Found tracks",10,0,2);
-  hfound->Sumw2();  // aggiunto il 15-01-01
-  TH1F *hfake=new TH1F("hfake","Fake tracks",10,0,2);
-  hfake->Sumw2();    
-  TH1F *hg=new TH1F("hg","",10,0,2); //efficiency for good tracks  
-  hg->SetLineColor(4); hg->SetLineWidth(2);
-  TH1F *hf=new TH1F("hf","Efficiency for fake tracks",10,0,2);
-  /*hf->SetFillColor(1); hf->SetFillStyle(3013);*/ hf->SetLineColor(4); hf->SetLineWidth(2);
-
-  /////////////////////////////////////////////////////////////////////////////////////////////////// 
-
- ifstream in1 ("AliITSTrag.out");
-
-  Double_t ptg; 
-  for(;;) {
-    in1 >> ptg; 
-    if( in1.eof() ) break;
-    hgood->Fill(ptg);
-  }
-  in1.close();
-   
-  Int_t neglabs=0;     
-  for (;;){    
-    for (int r=0; r<10; r++) in>>DataOut(r);
-    if( in.eof() ) break;
-
-    Double_t ptg=DataOut(0); Double_t labITS=DataOut(1); Double_t labTPC=DataOut(2); Double_t ptperc=DataOut(3);         
-    Double_t deltalam=DataOut(4); Double_t deltaphi=DataOut(5);
-    Double_t Dtot=DataOut(6); Double_t Dr=DataOut(7); Double_t Dz=DataOut(8);
-    Double_t signC=DataOut(9);
-    
-   // if(signC<0) continue;    
-
-     if(labITS<0) neglabs++;    
-      if(labITS>=0) hfound->Fill(ptg); else    {   hfake->Fill(ptg);}
-
-         if(labITS>=0 ) {        
-      hpt->Fill(ptperc);
-      hl->Fill(deltalam);
-      hp->Fill(deltaphi);
-      hd->Fill(Dtot);
-      hdr->Fill(Dr);
-      hdz->Fill(Dz);
-   }    
-  }
-  
-
-  in.close();
-  Stat_t ngood=hgood->GetEntries(); cerr<<"Good tracks "<<ngood<<endl;  
-  Stat_t nfound=hfound->GetEntries(); cerr<<"Found tracks "<<nfound<<endl;
-  Stat_t nfake=hfake->GetEntries(); cerr<<"Fake tracks "<<nfake<<endl;       
-  gStyle->SetOptStat(111110);
-  gStyle->SetOptFit(1);           
-  TCanvas *c1=new TCanvas("c1","",0,0,700,700);
-  TPad *p1=new TPad("p1","",0,0.5,0.5,1); p1->Draw(); hp->SetXTitle("(mrad)");
-  p1->cd(); hp->Draw();  hp->Fit("gaus"); c1->cd();
-  TPad *p2=new TPad("p2","",0.5,0.5,1,1); p2->Draw(); hl->SetXTitle("(mrad)");
-  p2->cd(); hl->Draw(); hl->Fit("gaus"); c1->cd();
-  TPad *p3=new TPad("p3","",0,0,0.5,0.5); p3->Draw(); hpt->SetXTitle("(%)");
-  p3->cd(); hpt->Draw(); hpt->Fit("gaus"); c1->cd();
-  TPad *p4=new TPad("p4","",0.5,0,1,0.5); p4->Draw(); hd->SetXTitle("(micron)");
-  p4->cd(); hd->Draw(); c1->cd();
-   
-  TCanvas *c3=new TCanvas("c3","",200,200,800,500);
-  hfound->Print("all");  // aggiunto il 16-01-01
-  hgood->Print("all");  // aggiunto il 16-01-01
-  TPad *p7=new TPad("p7","",0,0,0.333,1); p7->Draw(); p7->cd(); hfound->Draw(); c3->cd(); 
-  TPad *p8=new TPad("p8","",0.333,0,0.666,1); p8->Draw(); p8->cd(); hfake->Draw(); c3->cd();
-  TPad *p9=new TPad("p9","",0.666,0,1,1); p9->Draw(); p9->cd(); hgood->Draw(); c3->cd();
-     
-  TCanvas *c4=new TCanvas("c4","",300,300,800,500);
-  hg->Divide(hfound,hgood,1.,1.); //,"b");
-  hf->Divide(hfake,hgood,1.,1.); //,"b");
-  hg->SetMaximum(1.4);
-  hg->SetYTitle("Tracking efficiency");
-  hg->SetXTitle("Pt (GeV/c)");
-  hg->Print("all");  // aggiunto il 16-01-01
-  hg->Draw();  // to not plot the erro bars    hg->Draw("histo");
-  TLine *line1 = new TLine(0,1.0,2,1.0); line1->SetLineStyle(4);
-  line1->Draw("same");
-  TLine *line2 = new TLine(0,0.9,2,0.9); line2->SetLineStyle(4);
-  line2->Draw("histosame");
-  
-   
-  hf->SetFillColor(1);
-  hf->SetFillStyle(3013);
-  hf->SetLineColor(2);
-  hf->SetLineWidth(2);
-  hf->Draw("same");  // to not plot the error bars  hf->Draw("histosame");
-  
-  TText *text = new TText(0.461176,0.248448,"Fake tracks");
-  text->SetTextSize(0.05);
-  text->Draw();
-  text = new TText(0.453919,1.11408,"Good tracks");
-  text->SetTextSize(0.05);
-  text->Draw();
-         
-  TCanvas *c2=new TCanvas("c2","",100,100,700,400);
-  TPad *p5=new TPad("p5","",0,0,0.5,1); p5->Draw(); hdr->SetXTitle("(micron)");
-  p5->cd(); hdr->Draw();  hdr->Fit("gaus"); c2->cd();
-  TPad *p6=new TPad("p6","",0.5,0,1,1); p6->Draw(); hdz->SetXTitle("(micron)");
-  p6->cd(); hdz->Draw(); hdz->Fit("gaus"); c2->cd();
-  
-  cout<<"neglabs = "<<neglabs<<"\n";  // provvisoria
-}
diff --git a/ITS/oldmacros/ITSRF.C b/ITS/oldmacros/ITSRF.C
deleted file mode 100644 (file)
index f4b8b22..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-#define __COMPILED__
-#ifdef __COMPILED__
-#include <iostream.h>
-#include <AliITS.h>
-#include <AliITSRiemannFit.h>
-#include <AliRun.h>
-#include <TROOT.h>
-#include <TClonesArray.h>
-#include <TFitter.h>
-#include <TMinuit.h>
-#include <TF2.h>
-#include <TFile.h>
-#include <TH1.h>
-#include <TH2.h>
-#include <TObjArray.h>
-#include <TParticle.h>
-#include <TTree.h>
-#include <TVector3.h>
-#include <TVirtualFitter.h>
-#endif
-
-//    Writes the data of helices and the position of the true II-ary, to perform fit 
-//    of II-ary and calculation of resolution (in another macro)
-//
-void ITSRF(const char *filename="galice.root", 
-          const char *outfile="RiemannFit.dat",
-          Int_t evnt=0) {
-  
-  // Connect the Root Galice file containing Geometry, Kine and Hits
-  TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-  if (!file){ file = new TFile(filename);printf("Opening new file\n");}
-  printf("Root input file is %s\n",filename);
-  
-  // Get AliRun object from file or create it if not on file
-  if (!gAlice) {
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (gAlice) printf("AliRun object found on file\n");
-    if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-  }
-  
-  // Get pointers to Alice detectors and Hits containers
-  AliITS  *ITS       = (AliITS*)gAlice->GetModule("ITS");
-  if(!ITS) {cout<<"not ITS"<<endl; return;}
-  Int_t nparticles = gAlice->GetEvent(evnt);   // number of particles generated (including daughters)
-
-  //
-  //  Treat ITS information per module
-  //
-  
-  Int_t nmodules;
-  ITS->InitModules(-1,nmodules); 
-  cout<<" Filling modules..."<<endl;
-  ITS->FillModules(evnt,-1,nmodules," "," ");
-
-  //
-  //  Get the recontruction tree
-  //
-  TTree *TR = gAlice->TreeR();
-  Int_t nent = (Int_t)TR->GetEntries();
-  
-  //
-  // Initialize Riemann-fit class
-  //
-  AliITSRiemannFit *rfit = new AliITSRiemannFit();
-  rfit->InitPoints(evnt,nent,ITS,TR,nparticles);
-  
-  const TVector3 Bfield(0.0,0.0,0.2); // ALICE magnetic field
-  //
-  //   Setting the variables
-  //
-  
-  TParticle *MPart;
-  
-  Double_t r0[3]={0.0,0.0,0.0}, w, chi;
-  Double_t Pt, Px, Py, Pz, charge, Ptot;
-  Double_t x0, y0, rho, fd0, fphi, z0, vpar, chisql;
-  Double_t CorrLin, ResSum; 
-  Int_t status[4]={0,0,0,0}, gfit_status, PdgPart;
-  
-  FILE *outdat=fopen(outfile,"w");
-
-  cout<<endl<<" Looping on "<< nparticles <<" particles..."<<endl;
-
-  Int_t nAcc=0;
-  for(Int_t part = 0; part < nparticles ; part++) {
-    if (!(part%100)) cout<<part<<"\r";
-    MPart = (TParticle*)gAlice->Particle(part);
-    PdgPart = MPart->GetPdgCode();
-
-    //
-    //  get track fit
-    // 
-    Pt = MPart->Pt();
-    Px = MPart->Px();
-    Py = MPart->Py();
-    Pz = MPart->Pz();
-    Ptot = MPart->P();
-    charge = PdgPart/TMath::Abs(PdgPart);  // +/- 1
-    gfit_status = (Int_t)rfit->FitHelix(part, charge, Px, Py, Pz, fd0, fphi, x0, y0, 
-                                       rho, w, z0, vpar, chisql, CorrLin, ResSum);
-    // With this offset chi = 0  at the 
-    // distance of closest approach in bending plane
-    //
-    chi=-TMath::Pi()-fphi;  
-    if(gfit_status > 0) {
-      switch(gfit_status) {
-      case 1:  status[0]++;break;
-      case 2:  status[1]++;break;
-      case 11:  status[2]++;break;
-      case 12:  status[3]++; break;
-      default: cout<<"CASO NON PREVISTO IN K:   "<<gfit_status<<endl;break;
-      }
-      continue; 
-    }
-
-    //
-    //
-    //
-    Int_t written=0;
-    written=fprintf(outdat,"%d ",   part); 
-    written=fprintf(outdat,"%f ",   r0[0]); 
-    written=fprintf(outdat,"%f ",   r0[1]);
-    written=fprintf(outdat,"%f \n", r0[2]);
-    written=fprintf(outdat,"%f \n", ResSum); 
-    written=fprintf(outdat," %f ",  rho);
-    written=fprintf(outdat,"%f ",   w);
-    written=fprintf(outdat,"%f ",   fphi); 
-    written=fprintf(outdat,"%f \n", vpar); 
-    nAcc++;
-
-  } // loop on particles
-  fclose(outdat);
-
-  printf(" missed fits because of (resp.):\n no six points, no solution to cubic equation, \n z-direction inversion, tangent limit \n");
-  printf(" %d %d %d %d %d \n",status[0],status[1],status[2],status[3]);
-
-
-  return;
-} 
-
-
diff --git a/ITS/oldmacros/ITSReadPlotData.C b/ITS/oldmacros/ITSReadPlotData.C
deleted file mode 100644 (file)
index 9a382db..0000000
+++ /dev/null
@@ -1,413 +0,0 @@
-Int_t ITSReadPlotData(char *filename = "galice.root", Int_t evNum = 0) {
-
-       /*********************************************************************
-        *                                                                   *
-        *  Macro used to read hits, digits and recpoints for a module       *
-        *  It draws 3 TH2Fs where stores the 2-D coordinates of these       *
-        *  data for a specified module (for which the macro asks when       *
-        *  it starts, with some checks to avoid wrong detector coords.      *
-        *                                                                   *
-        *  Only a little 'experimental' warning:                            *
-        *  with all the tests I have made, I wasn't able to plot the        *
-        *  digits fo the 5th layer...                                       *
-        *  I skipped this problem with an alert to beware th user, while    *
-        *  in this situation the macro plots only recpoints and hits        *
-        *                                                                   *
-        *  Author: Alberto Pulvirenti                                       *
-        *                                                                   *
-        *********************************************************************/
-
-       
-       extern Int_t GetModuleHits (TObject* its, Int_t ID[0], Float_t*& X, Float_t*& Y, Float_t*& Z, Bool_t*& St);
-       extern Int_t GetModuleRecPoints (TObject *its, Int_t ID[0], Float_t*& X, Float_t*& Z);
-       extern Int_t GetModuleDigits(TObject *its, Int_t ID[0], Int_t dtype, Float_t*& X, Float_t*& Z);
-       extern void  AssignCoords(TArrayI *ID);
-       
-       // First of all, here are put some variable declarations
-       // that are useful in the following part:
-       Int_t nparticles; // number of particles
-       // ITS module coordinates [layer = 1, ladder = 2, det = 3] and absolute ID[0] of module [0]
-       TArrayI ID(4);
-       Int_t nmodules, dtype; // Total number of modules and module type (SSD, SPD, SDD)
-       Float_t *x = 0, *y = 0, *z = 0; // Arrays where to store read coords
-       Bool_t *St = 0; // Status of the track (hits only)
-
-       // It's necessary to load the gAlice shared libs
-       // if they aren't already stored in memory...
-       if (gClassTable->GetID("AliRun") < 0) {
-       gROOT->LoadMacro("loadlibs.C");
-               loadlibs();
-       }
-  // Anyway, this macro needs to read a gAlice file, so it
-  // clears the gAlice object if there is already one in memory...
-  else {
-               if(gAlice){
-                       delete gAlice;
-                       gAlice = 0;
-               }
-       }
-
-       // Now is opened the Root input file containing Geometry, Kine and Hits
-  // by default its name must be "galice.root".
-  // When the file is opened, its contens are shown.
-       TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-       if (!file) file = new TFile(filename);
-               file->ls();
-       
-       // Then, the macro gets the AliRun object from file.
-       // If this object is not present, an error occurs
-       // and the execution is stopped.
-       // Anyway, this operation needs some time,
-       // don't worry about an apparent absence of output and actions...
-       cout << "\nSearching in '" << filename << "' for an AliRun object ... " << flush;
-       gAlice = (AliRun*)file->Get("gAlice");
-       if (gAlice)
-               cout << "FOUND!" << endl;
-       else {
-               cout<<"NOT FOUND! The Macro can't continue!" << endl;
-               return 0;
-       }
-       
-       // Then, the macro selects the event number specified. Default is 0.
-       nparticles = gAlice->GetEvent(evNum);
-       cout << "\nNumber of particles   = " << nparticles << endl;
-       if (!nparticles) {
-               cout << "With no particles I can't do much... Goodbye!" << endl;
-               return 0;
-       }
-       
-       // The next step is filling the ITS from the AliRun object.
-       AliITS *ITS = (AliITS*)gAlice->GetModule("ITS");
-  ITS->InitModules(-1, nmodules);
-  cout << "Number of ITS modules = " << nmodules << endl;
-       cout << "\nFilling modules (it takes a while, now)..." << flush;
-       ITS->FillModules(0, 0, nmodules, " ", " ");
-  cout << "DONE!" << endl;
-       AliITSgeom *gm = ITS->GetITSgeom();
-       AliITSDetType *det = ITS->DetType(dtype);       
-       AliITSsegmentation *seg = det->GetSegmentationModel();  
-       
-       for(;;) {
-
-    // Input phase.
-    // The macro asks if the user wants to put a detector ID[0]
-    // or prefers to input layer, ladder and detector.
-    for (Int_t i = 0; i < 4; i++) ID[i] = -1;
-    Int_t answ;
-    do {
-          cout << "\nSelection modes:" << endl;
-               cout << "1) by layer - ladder - detector numbers" << endl;
-       cout << "2) by unique detector ID" << endl;
-          cout << "0) exit macro" << endl;
-               cout << "\nEnter your choice: ";
-       cin >> answ;
-    } while (answ < 0 || answ > 2);
-    switch (answ) {
-       case 0:
-               // input = 0 ---> EXIT
-               return;
-               break;
-       case 1:
-               // input = 1 ---> SELECTION BY COORD
-               do {
-                                       cout << "\nLayer number [1-6, 0 to exit]: ";
-                                       cin >> ID[1];
-                                       if (!ID[1]) return 0;
-                               } while (ID[1] < 0 || ID[1] > 6);
-                               
-                               // Detector type: 0 --> SPD, 1 --> SDD, 2 --> SSD.
-                               // Layer 1,2 --> 0 / Layer 3,4 --> 1 / Layer 5,6 --> 2
-                               dtype = (ID[1] - 1) / 2;
-                               
-                               // Once fixed the layer number, the macro calculates the max number
-                               // for ladder and detector from geometry, and accepts only suitable values.
-                               do {
-                                       ID[2] = gm->GetNladders(ID[1]);
-                                       cout << "Ladder number [1-" << ID[2] << ", 0 to exit]: ";
-                                       cin >> ID[2];
-                                       if (!ID[2]) return 0;
-                               } while (ID[2] < 0 || ID[2] > gm->GetNladders(ID[1]));
-                               do {
-                                       ID[3] = gm->GetNdetectors(ID[1]);
-                                       cout << "Detector number [1-" << ID[3] << ", 0 to exit]: ";
-                                       cin >> ID[3];
-                                       if (!ID[3]) return 0;
-                               } while (ID[3] < 0 || ID[3] > gm->GetNdetectors(ID[1]));
-                               break;
-       case 2:
-               // input = 2 ---> SELECTION BY ID[0]
-               do {
-                                       ID[0] = gm->GetIndexMax();
-                                       cout << "\n Detector ID number [0-" << ID[0] << ", -1 to exit]: ";
-                                       cin >> ID[0];
-                                       if (ID[0] == -1) return 0;
-                               } while (ID[0] < 0 || ID[0] > gm->GetIndexMax());
-         break;
-    };
-
-    if (ID[0] == -1)
-               // If ID[0] = -1 the chioce was by coords, so it's necessary to assign the ID:
-                       ID[0] = gm->GetModuleIndex(ID[1], ID[2], ID[3]);
-               else {  
-                       // Else we must get the layer, ladder and detector by the ID;
-                       // ...but first we must remember that the ID goest from 0 to NModules - 1!
-                       ID[0]--;
-                       ID[1] = ITS->GetModule(ID[0])->GetLayer();
-                       ID[2] = ITS->GetModule(ID[0])->GetLadder();
-                       ID[3] = ITS->GetModule(ID[0])->GetDet();
-               }
-                               
-               // Defines the histograms inside the `for' cycle, so they are destroyed at the end
-               // of every read sequqnce, in order to mek another withour segmentation faults
-               Text_t msg[250];
-               Float_t xm = 0.0, ym = 0.0, zm = 0.0;
-               switch (dtype) {
-                       case 0: xm = 1.5; zm = 7.0; break;
-                       case 1: xm = 7.5; zm = 8.0; break;
-                       case 2: xm = 7.5; zm = 4.5; break;
-               }
-               sprintf(msg, "Module index=%d lay=%d lad=%d det=%d", ID[0], ID[1], ID[2], ID[3]);
-               TH2F *hhits = new TH2F("hhits", msg, 500, -xm, xm, 500, -zm, zm);     // Histogram of hits
-               TH2F *hrecs = new TH2F("hrecs", msg, 500, -xm, xm, 500, -zm, zm);     // Histogram of recpoints
-               TH2F *hdigits = new TH2F("hdigits", msg, 500, -xm, xm, 500, -zm, zm); // Histogram of digits
-               
-               cout << endl;
-               
-               // Reads hits...
-               Int_t hits = GetModuleHits(ITS, ID[0], x, y, z, St);
-               if (!hits) {
-                       cout << "No hits in module!" << endl;
-                       continue;
-               }
-               else
-                       cout << "Hits scanned..." << endl;
-               for (Int_t i = 0; i < hits; i++) if (!St[i]) hhits->Fill(x[i], z[i]);
-               
-               // Reads recpoints...
-               Int_t recs = GetModuleRecPoints(ITS, ID[0], x, z);
-               if (!recs) {
-                       cout << "No recpoints in module!" << endl;
-                       continue;
-               }
-               else
-                       cout << "Recpoints scanned..." << endl;
-               for (Int_t i = 0; i < recs; i++) hrecs->Fill(x[i], z[i]);
-               
-               // Reads digits...
-               Int_t digits = GetModuleDigits(ITS, ID[0], dtype, x, z);
-               if (!digits) {
-                       cout << "No digits in module!" << endl;
-                       //continue;
-               }
-               else
-                       cout << "Digits scanned..." << endl;
-               for (Int_t i = 0; i < digits; i++) hdigits->Fill(x[i], z[i]);
-
-               // Draws read data...
-               // HITS -------> red (2) crosses.
-               // DIGITS -----> green (8) boxes.
-               // REC-POINTS -> blue (4) St. Andrew's crosses.
-
-               TCanvas *viewer = new TCanvas("viewer", "Module viewer canvas", 0, 0, 800, 800);
-               viewer->cd();
-               
-               hdigits->SetMarkerStyle(25);
-               hdigits->SetMarkerColor(8);
-               hdigits->SetMarkerSize(2);
-               hdigits->SetStats(kFALSE);
-               hdigits->SetXTitle("Local X (cm)");
-               hdigits->SetYTitle("Local Z (cm)");
-               hdigits->Draw();
-               
-               hhits->SetMarkerStyle(5);
-               hhits->SetMarkerColor(2);
-               hhits->SetMarkerSize(3);
-               hhits->SetStats(kFALSE);
-               hhits->Draw("same");
-       
-               hrecs->SetMarkerStyle(2);
-               hrecs->SetMarkerColor(4);
-               hrecs->SetMarkerSize(3);
-               hrecs->SetStats(kFALSE);
-               hrecs->Draw("same");
-               
-               TLegend *legend = new TLegend(0.7, 0.8, 0.9, 0.9);
-               legend->SetMargin(0.2);
-               legend->AddEntry(hhits, "hits","P");
-               legend->AddEntry(hrecs, "recpoints","P");
-               legend->AddEntry(hdigits, "digits","P");
-               legend->SetTextSizePixels(14);
-               legend->Draw();
-               
-               viewer->Update();
-               
-               
-               Text_t fname[250],ans;
-               cout << "Do you want to save the current canvas on a file (y/n) ? ";
-               cin >> ans;
-               if(ans == 'y' || ans == 'Y') {
-                  cout << "Enter filename: ";
-                  cin >> fname;
-                  TString *control = new TString(fname);
-                  Bool_t ok=control->Contains(".C") || control->Contains(".root") || control->Contains(".ps") || control->Contains(".eps") || control->Contains(".gif");
-                  if(!ok){ 
-                     cout << "File extension is not recognized. The canvas will be saved as Postscript file";
-                     strcat(fname,".ps");
-                  }  
-                  viewer->SaveAs(fname);
-               }
-       }
-       
-       cout << "Done. Goodbye" << endl;
-       return;
-}
-
-Int_t GetModuleHits (TObject* its, Int_t ID, Float_t*& X, Float_t*& Y, Float_t*& Z, Bool_t*& St) {     
-       // First of all, the macro selects the specified module,
-       // then gets the array of hits in it and their number.
-       AliITS *ITS = (AliITS*) its;
-       AliITSmodule *module = ITS->GetModule(ID);
-       TObjArray *hits_array = module->GetHits();
-       Int_t hits_num = hits_array->GetEntriesFast();
-       
-       // Now, if this count returns 0, there's nothing to do,
-       // while, if it doesn't, the first thing to do is dimensioning
-       // the coordinate arrays, and then the loop can start.
-       if (!hits_num)
-               return 0;
-       else {
-               if (X) delete [] X;     
-               if (Y) delete [] Y;
-               if (Z) delete [] Z;
-               if (St) delete [] St;
-               X = new Float_t[hits_num];
-               Y = new Float_t[hits_num];
-               Z = new Float_t[hits_num];
-               St = new Int_t[hits_num];
-       }
-
-       for (Int_t j = 0; j < hits_num; j++) {
-               AliITShit *hit = (AliITShit*) hits_array->At(j);
-               X[j]  = hit->GetXL();
-               Y[j]  = hit->GetYL();
-               Z[j]  = hit->GetZL();
-               St[j] = hit->StatusEntering();
-       }
-       return hits_num;
-}
-
-Int_t GetModuleRecPoints (TObject *its, Int_t ID, Float_t*& X, Float_t*& Z) {
-       
-       // First of all, the macro selects the specified module,
-       // then gets the array of recpoints in it and their number.
-       AliITS *ITS = (AliITS*) its;
-       TTree *TR = gAlice->TreeR();
-       ITS->ResetRecPoints();
-       TR->GetEvent(ID);
-       TClonesArray *recs_array = ITS->RecPoints();
-       Int_t recs_num = recs_array->GetEntries();
-
-       // Now, if this count returns 0, there's nothing to do,
-       // while, if it doesn't, the first thing to do is dimensioning
-       // the coordinate and energy loss arrays, and then the loop can start.
-       if (!recs_num)
-               return 0;
-       else {
-               if (X) delete [] X;     
-               if (Z) delete [] Z;
-               X = new Float_t[recs_num];
-               Z = new Float_t[recs_num];
-       }
-       for(Int_t j = 0; j < recs_num; j++) {
-               AliITSRecPoint *recp = (AliITSRecPoint*)recs_array->At(j);
-          X[j] = recp->GetX();
-               Z[j] = recp->GetZ();
-       }
-       return recs_num;        
-}
-
-Int_t GetModuleDigits(TObject *its, Int_t ID, Int_t dtype, Float_t*& X, Float_t*& Z) {
-
-       // First of all, the macro selects the specified module,
-       // then gets the array of recpoints in it and their number.
-       AliITS *ITS = (AliITS*)its;
-       TTree *TD = gAlice->TreeD();
-       ITS->ResetDigits();
-       TD->GetEvent(ID);
-       TClonesArray *digits_array = ITS->DigitsAddress(dtype);
-       AliITSgeom *gm = ITS->GetITSgeom();     
-       AliITSDetType *det = ITS->DetType(dtype);       
-       AliITSsegmentation *seg = det->GetSegmentationModel();  
-       TArrayI ssdone(5000);  // used to match p and n side digits of strips
-       TArrayI pair(5000);    // as above      
-       Int_t digits_num = digits_array->GetEntries();
-       // Now, if this count returns 0, there's nothing to do,
-       // while, if it doesn't, the first thing to do is dimensioning
-       // the coordinate and energy loss arrays, and then the loop can start.
-
-        if(dtype==2){
-           Int_t layer, ladder, detec;
-           gm->GetModuleId(ID,layer,ladder,detec);
-           seg->SetLayer(layer);
-        }
-
-       if (!digits_num)
-               return 0;
-       else {
-               cout << "Digits to scan: " << digits_num << endl;
-               if (X) delete [] X;                     
-               if (Z) delete [] Z;
-               X = new Float_t[digits_num];            
-               Z = new Float_t[digits_num];
-       }
-       
-       // Get the coordinates of the module
-       if (dtype == 2) {
-               for (Int_t j = 0; j < digits_num; j++) {
-                       ssdone[j] = 0;                  
-                       pair[j] = 0;
-               }
-       }
-  for (Int_t j = 0; j < digits_num; j++) {
-               digit = (AliITSdigit*)digits_array->UncheckedAt(j);
-               Int_t iz=digit->fCoord1;  // cell number z
-               Int_t ix=digit->fCoord2;  // cell number x
-    // Get local coordinates of the element (microns)
-               // ******************************* PARTE CORRETTA ***************************************
-               if(dtype < 2) {
-                       Float_t xx, zz; // aggiunta
-       seg->DetToLocal(ix, iz, xx, zz);
-                       X[j] = xx; // aggiunta
-                       Z[j] = zz; // aggiunta
-               }
-               // ******************************* FINE PARTE CORRETTA ***************************************
-    else {
-                       // SSD: if iz==0 ---> N side; if iz==1 P side
-      if (ssdone[j] == 0) {
-                               ssdone[j]=1;
-                               pair[j]=-1;
-                               Bool_t pside = (iz == 1);
-                               Bool_t impaired = kTRUE;
-                               Int_t pstrip = 0;
-                               Int_t nstrip = 0;
-                               if (pside) pstrip = ix; else nstrip = ix;
-                               for (Int_t k = 0; k < digits_num; k++) {
-                                       if (ssdone[k] == 0 && impaired) {
-                                               AliITSdigitSSD *sdigit=(AliITSdigitSSD*)digits_array->UncheckedAt(k);
-                                               if (sdigit->fCoord1 != iz && sdigit->GetTracks()[0] == digit->GetTracks()[0]) {
-                                                       ssdone[k]=2;
-                                                       pair[j]=k;
-                                                       if (pside) nstrip = sdigit->fCoord2; else pstrip = sdigit->fCoord2;
-                                                       impaired=kFALSE;
-                                               }
-                                       }
-                               }
-        if (!impaired) seg->GetPadCxz(pstrip, nstrip, X[j], Z[j]);
-                               X[j] /= 10000.0;  // convert microns to cm
-                               Z[j] /= 10000.0;  // convert microns to cm
-                       }
-               }
-       }
-       return digits_num;
-} 
-
diff --git a/ITS/oldmacros/ITSdigitsTest.C b/ITS/oldmacros/ITSdigitsTest.C
deleted file mode 100644 (file)
index cff5df1..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-#include "iostream.h"
-
-void ITSdigitsTest (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   if (!file) file = new TFile("galice.root");
-   file->ls();
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-//
-//   Loop over events 
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TH = gAlice->TreeH();
-     Int_t ntracks = TH->GetEntries();
-     cout<<"ntracks "<<ntracks<<endl;
-
-   Int_t nbytes = 0;
-
-   AliITSdigitSSD  *ITSdigit;
-
-// Get pointers to Alice detectors and Digits containers
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   TClonesArray *Particles = gAlice->Particles();
-   TTree *TD = gAlice->TreeD();
-   //TD->Print();
-   Int_t nent=TD->GetEntries();
-   printf("Found %d entries in the tree (must be one per module per event!)\n",nent);
-   if (ITS) {
-   TObjArray *fBranches=TD->GetListOfBranches();
-   
-     for (Int_t ich=0;ich<3;ich++) {
-       TBranch *branch = (TBranch*)fBranches->UncheckedAt(ich);
-       printf ("branch %p \n",branch);
-       printf ("branch %p entries %d \n",branch,branch->GetEntries());
-       TClonesArray *ITSdigits  = ITS->DigitsAddress(ich);
-          printf ("ITSdigits %p \n",ITSdigits);
-
-          if (ich != 2) continue;
-         for (Int_t mod=1; mod<nent; mod++) {
-           //Int_t nmodules=2269;
-           //for (Int_t mod=nent-nmodules; mod<nent; mod++) {
-              ITS->ResetDigits();
-              nbytes += TD->GetEvent(mod+1);
-              //nbytes += branch->GetEvent(mod); this works as well
-             Int_t ndigits = ITSdigits->GetEntries();
-             if (ndigits) printf("Found %d digits for module %d in det type %d \n",ndigits,mod,ich+1);
-
-             if (!ndigits) continue;
-             /*
-             for (Int_t digit=0;digit<ndigits;digit++) {
-               ITSdigit   = (AliITSdigitSPD*)ITSdigits->UncheckedAt(digit);
-               printf("%d %d %d %d \n",ITSdigit->fCoord1,ITSdigit->fCoord2,ITSdigit->fTracks[0],ITSdigit->fTracks[1]);
-             */
-             /*
-             for (Int_t digit=0;digit<ndigits;digit++) {
-               ITSdigit   = (AliITSdigitSDD*)ITSdigits->UncheckedAt(digit);
-               printf("%d %d %d %d %f %f\n",ITSdigit->fCoord1,ITSdigit->fCoord2,ITSdigit->fSignal,ITSdigit->fTracks[0],ITSdigit->fTcharges[0],ITSdigit->fPhysics);
-             */
-             for (Int_t digit=0;digit<ndigits;digit++) {
-               ITSdigit   = (AliITSdigitSSD*)ITSdigits->UncheckedAt(digit);
-               printf("%d %d %d %d %d %d \n",ITSdigit->fCoord1,ITSdigit->fCoord2,ITSdigit->fSignal,ITSdigit->fTracks[0],ITSdigit->fTracks[1],ITSdigit->fTracks[2]);
-
-             }
-         }        
-     }
-   }   // end if ITS
-
-   }   // event loop 
-
-     cout<<"END  test for digits "<<endl;
-
-     file->Close();   
-}
-
-
-
diff --git a/ITS/oldmacros/ITSfastrecpoints.C b/ITS/oldmacros/ITSfastrecpoints.C
deleted file mode 100644 (file)
index 4a64f1f..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-#include "iostream.h"
-
-void ITSfastrecpoints (Int_t evNumber1=0,Int_t evNumber2=0,Int_t nsignal  =25, Int_t size=-1) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   printf("file %p\n",file);
-   if (file) file->Close(); 
-   file = new TFile("galice.root","UPDATE");
-   file->ls();
-
-   printf ("I'm after Map \n");
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-       gAlice = (AliRun*)file->Get("gAlice");
-       if (gAlice) printf("AliRun object found on file\n");
-       if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-   printf ("I'm after gAlice \n");
-   
-   AliITS *ITS  = (AliITS*) gAlice->GetModule("ITS");
-   if (!ITS) return;
-
-//
-// Event Loop
-//
-
-   Int_t nbgr_ev=0;
-
-   for (int ev=evNumber1; ev<= evNumber2; ev++) {
-       Int_t nparticles = gAlice->GetEvent(ev);
-       cout << "event         " <<ev<<endl;
-       cout << "nparticles  " <<nparticles<<endl;
-       if (ev < evNumber1) continue;
-       if (nparticles <= 0) return;
-
-       Int_t bgr_ev=Int_t(ev/nsignal);
-       //printf("bgr_ev %d\n",bgr_ev);
-       ITS->HitsToFastRecPoints(ev,bgr_ev,evNumber2,size," ","All"," ");
-       //ITS->HitsToDigits(ev,bgr_ev,evNumber2,size," ","SSD"," ");
-   } // event loop 
-
-   file->Close();
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITSgeoplot.C b/ITS/oldmacros/ITSgeoplot.C
deleted file mode 100644 (file)
index 8031fd4..0000000
+++ /dev/null
@@ -1,538 +0,0 @@
-#define __NOCOMPILED__
-#ifdef __COMPILED__
-#include<iostream.h>
-#include<TROOT.h>
-#include<TArrayI.h>
-#include<TCanvas.h>
-#include<TClassTable.h>
-#include<TClonesArray.h>
-#include<TFile.h>
-#include<TH1.h>
-#include<TH2.h>
-#include<TObject.h>
-#include<TObjArray.h>
-#include<TTree.h>
-#include <AliRun.h>
-#include <AliITS.h>
-#include <AliITSgeom.h>
-#include <AliITSDetType.h>
-#include <AliITSRecPoint.h>
-#include <AliITSdigit.h>
-#include <AliITShit.h>
-#include <AliITSmodule.h> 
-#include <AliITSsegmentation.h>
-#include <AliITSsegmentationSPD.h> 
-#include <AliITSsegmentationSDD.h>
-#include <AliITSsegmentationSSD.h>
-#endif
-Int_t ITSgeoplot (char *opt="All+Rec", char *filename="galice.root") {
-  /*******************************************************************
-   *  This macro displays geometrical information related to the
-   *  hits, digits and rec points in ITS.
-   *  There are histograms that are not displayed (i.e. energy
-   *  deposition) but that are saved onto a file (see below)
-   *
-   *  Options: Any combination of:
-   *    1) subdetector name:  "SPD", "SDD", "SSD", "All" (default)
-   *    2) Printouts:        "Verbose" Almost everything is printed out: 
-   *                          it is wise to redirect the output onto a file
-   *                    e.g.: .x ITSgeoplot.C("All+Verbose") > out.log 
-   *    3) Rec Points option: "Rec"   ---> Uses Rec. Points (default)
-   *                           otherwise ---> uses hits and digits only
-   *    Examples:
-   *       .x ITSgeoplot();  (All subdetectors; no-verbose; no-recpoints)
-   *       .x ITSgeoplot("SPD+SSD+Verbose+Rec"); 
-   *
-   *  OUTPUT: It produces a root file with a list of histograms
-   *          The list can be accessed either with the Root TBrowser
-   *          or with the simple macro ITSgeoplotread.C
-   *  WARNING: spatial information for SSD/DIGITS is obtained by pairing
-   *          digits on p and n side originating from the same track, when
-   *          possible. This (mis)use of DIGITS is tolerated for debugging 
-   *          purposes only !!!!  The pairing in real life should be done
-   *          starting from info really available... 
-   * 
-   *  COMPILATION: this macro can be compiled. 
-   *      1)       Change the first line above from its default 
-   *               value (#define __NOCOMPILED__) to
-   *               #define __COMPILED__
-   *      2)       You need to set your include path with
-   * gSystem->SetIncludePath("-I- -I$ALICE_ROOT/include -I$ALICE_ROOT/ITS -g");
-   *      3)       If you are using root instead of aliroot you need to
-   *               execute the macro loadlibs.C in advance
-   *      4)       To compile this macro from root (or aliroot):
-   *                 ---  .L ITSgeoplot.C++
-   *                 ---  ITSgeoplot("ListOfParametersIfAny");
-   *     
-   *  M.Masera  14/05/2001 18:30
-   *            Use DetToLocal instead of GetCxz for SPD and SDD
-   ********************************************************************/
-
-  extern void GetHitsCoor(TObject *its, Int_t mod, TObjArray & histos, Int_t subd,Bool_t verb);
-  extern Int_t GetRecCoor(TObject *ge, TClonesArray *ITSrec, Int_t mod, TH2F *h2, TH1F *h1, Bool_t verb);
-  extern void GetDigits(TObject *tmps,TObject *ge,TClonesArray *ITSdigits, Int_t subd, Int_t mod, Bool_t verbose, TObjArray & histos);
-  //Options
-  TString choice(opt);
-  Bool_t All = choice.Contains("All");
-  Bool_t verbose=choice.Contains("Verbose");
-  Bool_t userec=choice.Contains("Rec");
-  Int_t retcode=1; //return code
-#ifdef __NOCOMPILED__
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-  }
-  else {
-#endif
-    if(gAlice){
-      delete gAlice;
-      gAlice=0;
-    }
-#ifdef __NOCOMPILED__
-  }
-#endif
-  // Connect the Root input  file containing Geometry, Kine and Hits
-  // galice.root file by default
-
-  TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-  if (!file) file = new TFile(filename);
-  file->ls();
-
-  // Get AliRun object from file
-
-  if (!gAlice) {
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (gAlice && verbose)cout<<"AliRun object found on file "<<filename<<endl;
-    if(!gAlice){
-      cout<<"Can't access AliRun object on file "<<filename<<endl;
-      cout<<"Macro execution stopped!!!"<<endl;
-      retcode=-1;
-      return retcode;
-    }
-  }
-  Int_t nparticles = gAlice->GetEvent(0);
-  if(verbose) {
-    cout<<" "<<endl<<" "<<endl;
-    cout<<"******* Event processing started   *******"<<endl;
-    cout<<"In the following, hits with 'StatusEntering' flag active"<<endl;
-    cout<<"will not be processed"<<endl; 
-    cout << "Number of particles=  " << nparticles <<endl;
-  }
-
-  // HITS
-  TTree *TH = gAlice->TreeH();
-  Stat_t ntracks = TH->GetEntries();
-  if(verbose)cout<<"Number of primary tracks= "<<ntracks<<endl;
-
-  // ITS
-  AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-  Int_t nmodules;
-  ITS->InitModules(-1,nmodules);
-  cout<<"Number of ITS modules= "<<nmodules<<endl;
-  cout<<"Filling modules... It takes a while, now. Please be patient"<<endl;
-  ITS->FillModules(0,0,nmodules," "," ");
-  cout<<"ITS modules .... DONE!"<<endl;
-
-  // DIGITS
-  TTree *TD = gAlice->TreeD();
-
-  //RECPOINTS
-  TTree *TR = gAlice->TreeR();
-  TClonesArray *ITSrec  = ITS->RecPoints();
-  if(userec && (!TR || !ITSrec)){
-    userec = kFALSE;
-    cout<<" "<<endl<<"======================================================="<<endl;
-    cout<<"WARNING: there are no RECPOINTS on this file ! "<<endl;
-    cout<<"======================================================="<<endl<<" "<<endl;
-  }
-  //local variables
-  Int_t mod;   //module number
-  Int_t nbytes = 0; 
-  Double_t pos[3];  // Global position of the current module
-  Float_t ragdet; // Radius of detector (x y plane)
-  Int_t first; // first module
-  Int_t last; // last module
-  Int_t nrecp; //number of RecPoints for a given module
-
-  //List of histograms
-  TObjArray histos(26,0);  // contains the pointers to the histograms
-  // Book histograms SPD
-  TH2F *rspd = new TH2F("rspd","Radii of digits - SPD",50,-10.,10.,50,-10.,10.);
-  TH2F *rhspd = new TH2F("rhspd","Radii of hits - SPD",50,-10.,10.,50,-10.,10.);
-  TH2F *rmspd = new TH2F("rmspd","Radii of SPD modules",50,-10.,10.,50,-10.,10.);
-  TH1F *zspd = new TH1F("zspd","Z of digits - SPD",100,-30.,30.);
-  TH1F *zhspd = new TH1F("zhspd","Z of hits - SPD",100,-30.,30.);
-  TH1F *zmspd = new TH1F("zmspd","Z of SPD modules",100,-30,30.);
-  TH2F *rrspd = new TH2F("rrspd","Radii of recpoints - SPD",50,-10.,10.,50,-10.,10.);
-  TH1F *zrspd = new TH1F("zrspd","Z of recpoints - SPD",100,-30.,30.);
-  TH1F *enespd = new TH1F("enespd","Energy deposition SPD (KeV)",100,0.,1000.);
-  histos.AddLast(rspd);  // 0
-  histos.AddLast(rhspd); // 1
-  histos.AddLast(rmspd); // 2
-  histos.AddLast(zspd);  // 3
-  histos.AddLast(zhspd); // 4
-  histos.AddLast(zmspd); // 5
-  histos.AddLast(rrspd); // 6
-  histos.AddLast(zrspd); // 7
-  histos.AddLast(enespd); // 8
-  // Book histograms SDD
-  TH2F *rsdd = new TH2F("rsdd","Radii of digits - SDD",50,-40.,40.,50,-40.,40.);
-  TH2F *rhsdd = new TH2F("rhsdd","Radii of hits - SDD",50,-40.,40.,50,-40.,40.);
-  TH2F *rmsdd = new TH2F("rmsdd","Radii of SDD modules",50,-40.,40.,50,-40.,40.);
-  TH1F *zsdd = new TH1F("zsdd","Z of digits - SDD",100,-40.,40.);
-  TH1F *zhsdd = new TH1F("zhsdd","Z of hits - SDD",100,-40.,40.);
-  TH1F *zmsdd = new TH1F("zmsdd","Z of SDD modules",100,-40,40.);
-  TH2F *rrsdd = new TH2F("rrsdd","Radii of recpoints - SDD",50,-40.,40.,50,-40.,40.);
-  TH1F *zrsdd = new TH1F("zrsdd","Z of recpoints - SDD",100,-40.,40.);
-  TH1F *enesdd = new TH1F("enesdd","Energy deposition SDD (KeV)",100,0.,1000.);
-  histos.AddLast(rsdd);  // 9
-  histos.AddLast(rhsdd); // 10
-  histos.AddLast(rmsdd); // 11
-  histos.AddLast(zsdd);  // 12
-  histos.AddLast(zhsdd); // 13
-  histos.AddLast(zmsdd); // 14
-  histos.AddLast(rrsdd); // 15
-  histos.AddLast(zrsdd); // 16
-  histos.AddLast(enesdd); // 17
-  // Book histogram SSD
-  TH2F *rssd = new TH2F("rssd","Radii of digits - SSD",50,-50.,50.,50,-50.,50.);
-  TH2F *rhssd = new TH2F("rhssd","Radii of hits - SSD",50,-50.,50.,50,-50.,50.);
-  TH2F *rmssd = new TH2F("rmssd","Radii of SSD modules",50,-50.,50.,50,-50.,50.);
-  TH1F *zssd = new TH1F("zssd","Z of digits - SSD",100,-70.,70.);
-  TH1F *zhssd = new TH1F("zhssd","Z of hits - SSD",100,-70.,70.);
-  TH1F *zmssd = new TH1F("zmssd","Z of SSD modules",100,-70,70.);
-  TH2F *rrssd = new TH2F("rrssd","Radii of recpoints - SSD",50,-50.,50.,50,-50.,50.);
-  TH1F *zrssd = new TH1F("zrssd","Z of recpoints - SSD",100,-70.,70.);
-  TH1F *enessd = new TH1F("enessd","Energy deposition SSD (KeV)",100,0.,1000.);
-  histos.AddLast(rssd);  // 18
-  histos.AddLast(rhssd); // 19
-  histos.AddLast(rmssd); // 20
-  histos.AddLast(zssd);  // 21
-  histos.AddLast(zhssd); // 22
-  histos.AddLast(zmssd); // 23
-  histos.AddLast(rrssd); // 24
-  histos.AddLast(zrssd); // 25
-  histos.AddLast(enessd); // 26
-  //
-  // Loop on subdetectors
-  // 
-  AliITSgeom *geom = ITS->GetITSgeom();
-  TString detna; // subdetector name
-  for(Int_t subd=0;subd<3;subd++){
-    if(All || (choice.Contains("SPD") && subd==0) || (choice.Contains("SDD") && subd==1) || (choice.Contains("SSD") && subd==2)){
-      // Prepare array for the digits
-      TClonesArray *ITSdigits  = ITS->DigitsAddress(subd);
-      Bool_t usedigits = kTRUE;
-      if(!ITSdigits){
-        usedigits = kFALSE;
-        cout<<" "<<endl<<"======================================================="<<endl;
-        cout<<"WARNING: there are no DIGITS on this file ! "<<endl;
-        cout<<"======================================================="<<endl<<" "<<endl;
-      }
-      // Get segmentation model
-      AliITSDetType *iDetType=ITS->DetType(subd);
-      if(subd==0)detna="SPD";
-      if(subd==1)detna="SDD";
-      if(subd==2)detna="SSD";
-      AliITSsegmentation *seg=(AliITSsegmentation*)iDetType->GetSegmentationModel();
-      // Loop on modules
-      first = geom->GetStartDet(subd);
-      last = geom->GetLastDet(subd);
-      if(verbose){
-        cout<<"     "<<endl<<"-------------------------------------"<<endl;
-        cout<<"Start processing subdetector "<<detna<<endl;
-        cout<<detna<<" first module "<<first<<endl;
-        cout<<detna<<" last module "<<last<<endl;
-        cout<<" "<<endl<<" "<<endl;
-      }
-      for (mod=first; mod<=last; mod++){
-        geom->GetTrans(mod,pos);  // position of the module in the MRS
-        ragdet=sqrt(pos[0]*pos[0]+pos[1]*pos[1]);
-        // The following 2 histos are a check of the geometry
-        TH2F *bidi = (TH2F*)histos.At(2+subd*9);
-        TH1F *uni = (TH1F*)histos.At(5+subd*9);
-        bidi->Fill(pos[0],pos[1]);
-        uni->Fill(pos[2]);
-        if(verbose){
-          cout<<"==========================================================="<<endl;
-          cout<<detna<<" module="<<mod<<endl;
-          cout<<"Mod. coordinates: "<<pos[0]<<", "<<pos[1]<<", "<<pos[2]<<" Radius "<<ragdet<<endl;
-        }
-
-        // Hits
-        GetHitsCoor(ITS,mod,histos,subd,verbose);
-
-        //RecPoints     
-        if(userec){
-          ITS->ResetRecPoints();
-          TR->GetEvent(mod);
-          TH2F *bidi=(TH2F*)histos.At(6+subd*9);
-          TH1F *uni=(TH1F*)histos.At(7+subd*9);
-          nrecp=GetRecCoor(geom,ITSrec,mod,bidi,uni,verbose);
-        }
-     
-        // Digits
-        if(usedigits){
-          ITS->ResetDigits();
-          nbytes += TD->GetEvent(mod);
-          GetDigits(seg,geom,ITSdigits,subd,mod,verbose,histos);
-        }
-
-      } // End of loop on the modules
-      TH1F *h1tmp;
-      TH2F *h2tmp;
-      //  Plot the histograms
-      TCanvas *current=0; // current Canvas (1--> SPD, 2---> SDD, 3---> SSD)
-      if(subd==0){
-        // Prepare canvas 1
-        TCanvas *c1 = new TCanvas("c1","SPD",10,10,600,900);
-        c1->Divide(2,3);
-        current=c1;
-      }
-      if(subd==1){
-        // Prepare canvas 2
-        TCanvas *c2 = new TCanvas("c2","SDD",40,40,600,900);
-        c2->Divide(2,3);
-        current=c2;
-      }
-      if(subd==2){
-        // Prepare canvas 3
-        TCanvas *c3 = new TCanvas("c3","SSD",70,70,600,900);
-        c3->Divide(2,3);
-        current=c3;
-      }
-      current->cd(1);
-      h2tmp = (TH2F*)histos.At(9*subd);
-      h2tmp->Draw();
-      current->cd(2);
-      h1tmp=(TH1F*)histos.At(3+subd*9);
-      h1tmp->Draw();
-      current->cd(3);
-      h2tmp=(TH2F*)histos.At(1+9*subd);
-      h2tmp->Draw();
-      current->cd(4);
-      h1tmp=(TH1F*)histos.At(4+subd*9);
-      h1tmp->Draw();
-   
-      if(userec){
-        current->cd(5);
-        h2tmp=(TH2F*)histos.At(6+9*subd);
-        h2tmp->Draw();
-        current->cd(6);
-        h1tmp=(TH1F*)histos.At(7+subd*9);
-        h1tmp->Draw();
-      }
-  
-      else {
-        current->cd(5);
-        h2tmp=(TH2F*)histos.At(2+9*subd);
-        h2tmp->Draw();
-        current->cd(6);
-        h2tmp=(TH2F*)histos.At(5+9*subd);
-        h2tmp->Draw();
-      }
-    } // if(All.....
-  } // end of loop on subdetectors
-  // Save the histograms
-  TFile *fh = new TFile("ITSgeoplot.root","recreate");
-  // The list is written to file as a single entry
-  TList *lihi = new TList();
-  // copy the pointers to the histograms to a TList object.
-  // The histograms concerning recpoints are not copied if
-  // 'userec' is false.
-  for(Int_t i=0;i<histos.GetEntriesFast();i++){
-    if(choice.Contains("All") || (choice.Contains("SPD") && i<8) || (choice.Contains("SDD") && i>7 && i<16) || (choice.Contains("SSD") && i>15)){
-      if(!(!userec && ((i+2)%9==0 || (i+1)%9==0)))lihi->Add(histos.At(i));
-    }
-  }
-  lihi->Write("Histograms ITS hits+digits+recpoints",TObject::kSingleKey);
-  fh->Close();
-
-  return retcode;
-}
-
-
-void GetHitsCoor(TObject *its, Int_t mod, TObjArray & histos, Int_t subd,Bool_t verb){
-  TH2F *h2=(TH2F*)histos.At(1+subd*9);
-  TH1F *h1=(TH1F*)histos.At(4+subd*9);
-  TH1F *ener=(TH1F*)histos.At(8+subd*9);
-  AliITS *ITS= (AliITS*)its;
-  AliITSmodule *modu = ITS->GetModule(mod);
-  TObjArray *fHits = modu->GetHits();
-  Int_t nhits = fHits->GetEntriesFast();
-  if(nhits>0){
-    if(verb){
-      cout<<"-------------------------------------------------------"<<endl;
-      cout<<"Number of HITS for module "<<mod<<": "<<nhits<<endl;
-    }
-    for (Int_t hit=0;hit<nhits;hit++) {
-      AliITShit *iHit = (AliITShit*) fHits->At(hit);
-      if(!iHit->StatusEntering()){
-        Float_t x=iHit->GetXG();
-        Float_t y=iHit->GetYG();
-        Float_t z=iHit->GetZG();
-        Float_t edep=iHit->GetIonization()*1000000;
-        h2->Fill(x,y);
-        h1->Fill(z);
-        ener->Fill(edep);
-        if(verb){
-          cout<<"hit # "<<hit<<" Global coordinates "<<x<<" "<<y<<" "<<z<<endl;
-          cout<<"track # "<<iHit->GetTrack()<<" energy deposition (KeV)= "<<edep<<endl;
-        }
-      }
-    }
-  }
-}
-
-
-Int_t GetRecCoor(TObject *ge, TClonesArray *ITSrec, Int_t mod, TH2F *h2, TH1F *h1, Bool_t verb){
-  AliITSgeom *geom = (AliITSgeom*)ge;
-  Int_t nrecp = ITSrec->GetEntries();
-  if(nrecp>0){
-    Float_t lc[3]; for(Int_t i=0; i<3; i++) lc[i]=0.;
-    Float_t gc[3]; for(Int_t i=0; i<3; i++) gc[i]=0.;
-    if(verb){
-      cout<<"-------------------------------------------------------"<<endl;
-      cout<<"Number of REC POINTS for module "<<mod<<": "<<nrecp<<endl;
-    }
-    for(Int_t irec=0;irec<nrecp;irec++) {
-      AliITSRecPoint *recp = (AliITSRecPoint*)ITSrec->At(irec);
-      lc[0]=recp->GetX();
-      lc[2]=recp->GetZ();
-      geom->LtoG(mod,lc,gc);
-      if(verb){
-        cout<<"recp # "<<irec<<" local coordinates. lx= "<<lc[0]<<" lz= "<<lc[2]<<endl;
-        Float_t r=sqrt(gc[0]*gc[0]+gc[1]*gc[1]);
-        cout<<"Global coor. + radius "<<gc[0]<<" "<<gc[1]<<" "<<gc[2]<<" "<<r<<endl;
-      }
-      h2->Fill(gc[0],gc[1]);
-      h1->Fill(gc[2]);
-    }
-  }
-  return nrecp;
-}
-
-void GetDigits(TObject *tmps,TObject *ge,TClonesArray *ITSdigits, Int_t subd, Int_t mod, Bool_t verbose, TObjArray & histos){
-  AliITSsegmentation *seg = (AliITSsegmentation*)tmps;
-  AliITSgeom *geom = (AliITSgeom*)ge;
-  Int_t layer;
-  Int_t ladder;
-  Int_t detec;
-  if(subd==2){
-    geom->GetModuleId(mod,layer,ladder,detec);
-    seg->SetLayer(layer);
-  }
-  Float_t lcoor[3]; for(Int_t j=0; j<3; j++) lcoor[j]=0.;  //local coord dig.
-  Float_t gcoor[3]; for(Int_t j=0; j<3; j++) gcoor[j]=0.; // global coo. dig.
-  Float_t ragdig; // Radius digit
-  TArrayI ssdone(5000);  // used to match p and n side digits of strips
-  TArrayI pair(5000);    // as above 
-  Int_t ndigits = ITSdigits->GetEntries();
-  AliITSdigit *digs;
-  if(ndigits){ 
-    if(verbose){
-      cout<<"-------------------------------------------------------"<<endl;
-      cout<<"Number of DIGITS for module "<<mod<<": "<<ndigits<<endl;
-    }
-    // Get the coordinates of the module
-    if(subd==2){
-      for (Int_t digit=0;digit<ndigits;digit++){
-        ssdone[digit]=0;
-        pair[digit]=0;
-      }
-    }
-    for (Int_t digit=0;digit<ndigits;digit++) {
-      digs = (AliITSdigit*)ITSdigits->UncheckedAt(digit);
-      Int_t iz=digs->fCoord1;  // cell number z
-      Int_t ix=digs->fCoord2;  // cell number x
-      // Get local coordinates of the element 
-      if(subd<2){
-        seg->DetToLocal(ix,iz,lcoor[0],lcoor[2]);
-      }
-      else{
-        // SSD: if iz==0 ---> N side; if iz==1 P side
-        if(ssdone[digit]==0){
-          ssdone[digit]=1;
-          pair[digit]=-1;
-          Bool_t pside=(iz==1);
-          Bool_t impaired=kTRUE;
-          Int_t pstrip=0;
-          Int_t nstrip=0;
-          if(pside)pstrip=ix;
-          if(!pside)nstrip=ix;
-          for(Int_t digi2=0;digi2<ndigits;digi2++){
-            if(ssdone[digi2]==0 && impaired){
-              AliITSdigitSSD *dig2=(AliITSdigitSSD*)ITSdigits->UncheckedAt(digi2);
-              if(dig2->fCoord1 != iz && dig2->GetTrack(0)==digs->GetTrack(0) && dig2->GetTrack(0)>0){
-                ssdone[digi2]=2;
-                pair[digit]=digi2;
-                if(pside)nstrip=dig2->fCoord2;
-                if(!pside)pstrip=dig2->fCoord2;
-                impaired=kFALSE;
-              }
-            }
-          }
-          if(!impaired)seg->GetPadCxz(pstrip,nstrip,lcoor[0],lcoor[2]);
-        }
-      }
-      if(subd<2 || (subd==2 && ssdone[digit]==1)){
-        Int_t coor1=digs->fCoord1;
-        Int_t coor2=digs->fCoord2;
-        Int_t tra0=digs->GetTrack(0);
-        if(verbose){
-          cout<<"digit # "<<digit<<" fCoord1= "<<coor1<<" fCoord2= "<<coor2<<" track "<<tra0<<" "<<endl;
-          if(subd<2)cout<<"local coordinates -- x="<<lcoor[0]<<", z="<<lcoor[2]<<endl;
-          if(subd==2){
-            if(pair[digit]==-1){
-              cout<<"(digit  not paired)"<<endl;
-            }
-            else {
-              cout<<"local coordinates -- x="<<lcoor[0]<<", z="<<lcoor[2]<<endl;
-              Int_t dtmp=pair[digit];
-              AliITSdigitSSD *dig2=(AliITSdigitSSD*)ITSdigits->UncheckedAt(dtmp);
-              Int_t coor1b=dig2->fCoord1;
-              Int_t coor2b=dig2->fCoord2;
-              Int_t tra0b=dig2->GetTrack(0);
-              cout<<"(digit paired with digit #"<<dtmp<<endl;
-              cout<<"with fCoord1= "<<coor1b<<" fCoord2= "<<coor2b<<" track "<<tra0b<<")"<<endl;
-            }
-          }
-        }
-        if(subd<2 || (subd==2 && pair[digit]!=-1)){
-          // Global coordinates of the element
-          //SDD and SPD use cm, SSD microns (GetPadCxz)
-          if(subd==2)for(Int_t j=0;j<3;j++)lcoor[j]=lcoor[j]/10000.;
-          lcoor[1]=0.;
-          geom->LtoG(mod,lcoor,gcoor);  // global coord. in cm
-          ragdig=sqrt(gcoor[0]*gcoor[0]+gcoor[1]*gcoor[1]);
-          if(verbose)cout<<"global coordinates "<<gcoor[0]<<" "<<gcoor[1]<<" "<<gcoor[2]<<" Radius "<<ragdig<<endl;
-          //Fill histograms
-          TH2F *bidi = (TH2F*)histos.At(subd*9);
-          TH1F *uni = (TH1F*)histos.At(3+subd*9);
-          bidi->Fill(gcoor[0],gcoor[1]);
-          uni->Fill(gcoor[2]);
-        }
-      }
-    } // loop on digits for this module
-  } // if(ndigits>0....
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITShitOccupancy.C b/ITS/oldmacros/ITShitOccupancy.C
deleted file mode 100644 (file)
index 80ac55b..0000000
+++ /dev/null
@@ -1,503 +0,0 @@
-/*
-// Some time it is nice to compile the code to find all of the typos.
-#include <stdio.h>
-#include <math.h>
-#include "TROOT.h"
-#include "TSystem.h"
-#include "TClassTable.h"
-#include "TFile.h"
-#include "AliITS.h"
-#include "TTree.h"
-#include "TClonesArray.h"
-#include "TArray.h"
-#include "TCanvas.h"
-#include "AliRun.h"
-#include "AliITSgeom.h"
-#include "TParticlet.h"
-
-extern TSystem     *gSystem;
-extern TROOT       *gROOT;
-extern TClassTable *gClassTable;
-extern AliRun      *gAlice;
-*/
-
-Double_t dEtadZ(Double_t z,Double_t r){
-    Float_t a;
-
-    a = TMath::Sqrt(z*z+r*r);
-    if(a!=0.0) a = 1./a;
-    return(a);
-}
-
-Double_t PdEtadZ(Double_t *z,Double_t *r){
-    return(dEtadZ(*z,*r));
-}
-
-Double_t ZfromEtaR(Double_t eta,Double_t r){
-    Double_t z;
-
-    z   = 2.0*TMath::ATan(TMath::Exp(-eta));
-    z   = r/TMath::Tan(z);
-    return(z);
-}
-
-Double_t EtafromZr(Double_t z,Double_t r){
-    Double_t a,eta;
-
-    a   = 0.5*TMath::ATan2(r,z);    // Tan2(y,x) = y/x
-    eta = -TMath::Log(TMath::Abs(TMath::Tan(a)));
-    if(a<0.0) eta = -eta;
-    return (eta);
-}
-
-Double_t PEtafromZr(Double_t *z,Double_t *r){
-    return (EtafromZr(*z,*r));
-}
-
-Double_t Weight(Double_t *a,Double_t *b){
-    Double_t eta,z,Etap,rt,dEta,dEtap,weight,REtap;
-
-    eta    = a[0];
-    Etap   = a[1];
-    rt     = b[0];
-    dEta   = b[1];
-    dEtap  = b[2];
-    REtap  = b[3];
-    z      = ZfromEtaR(eta,rt);
-    weight = TMath::Abs(dEtadZ(z,rt));
-    weight = weight*REtap/(rt*2.0*TMath::Pi()*dEta*dEtap);
-    return weight;
-}
-
-void ITShitOccupancy (const char *filename="galice.root",Int_t evNumber=0){
-/////////////////////////////////////////////////////////////////////////
-//
-//   Written by Roberto Barbera
-//   Modified by Bjorn S. Nilsen May 19 1999
-//
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of aliroot
-//   and fill some histograms. The Occupancy values produce are only
-//   approximate and are known to have problems. No warranty of any kind
-//   may be give or assumed. 
-//
-//     Root > .L ITShitOccupancy.C//this loads the macro in memory
-//     Root > ITShitOccupancy();  //by default process first event   
-//     Root > ITShitOccupancy("galiceA.root");  //process file galiceA.root
-//     Root > ITShitOccupancy("galiceA.root",2);//process file galiceA.root 
-//                                                 third event
-//
-//     Root > .x ITShitOccupancy.C(); //by default process first event   
-//     Root > .x ITShitOccupancy.C("galiceA.root"); //process file galiceA.root
-//     Root > .x ITShitOccupancy.C("galiceA.root",2);//process file 
-//                                                     galiceA.root third event
-//     The test figures for this macro are kept in 
-// $ALICE_ROOT/ITS/figures/ITShitOccupancy.figures as a series of post-
-// script files and one ITShitOccupancy.root file. This is because ther
-// are so many figures produced.
-//
-////////////////////////////////////////////////////////////////////////
-//
-// The code computes the Occupancy of HITS in the different ITS detectors
-// as a function of z. This does not represent the true occupancy expected
-// in the ITS since there will be more than one hit per charge cluster in
-// the different detector of the ITS. To do a proper occupancy calculation
-// a full simulation of all of the detectors in the ITS will be needed. In
-// addition a proper background needs to be used.
-//
-//  This code has been modified to be as compatible with the standard (May 26
-//  1999) version of the official released ITS code as possible. Functions 
-//  introduce in the unofficial release of the ITS code (March 199) have
-//  been commented out and replaced by the variables defined in the ITShits
-//  class. As soon as these functions are officially part of the aliroot 
-//  release. These functions should be used instead to maximise future 
-//  portability.
-//
-//  As with all ITS software produced under the deadline of the ITS TDR, there
-//  is no real guarantee that this code will function, produce meaning full
-//  results, solve in any way any possible problem or question, or be supported
-//  in any kind. Questions or comments can be addressed to 
-//  Nilsen@mps.ohio-state.edu (for as long as I am there) or 
-//  Roberto.Barbera@ct.infn.it. A response may never come.
-//
-//  This exclamation should be copy written and thereby not used my any other
-//  software writer, especially those writing code for ALICE. We expect 
-//  everyone else's code to work perfectly and do the job as advertised, either
-//  explicitly, by word of mouth, or by any other mystical means.
-//
-////////////////////////////////////////////////////////////////////////
-// Dynamically link some shared libs
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } // end if gClassTable...
-//
-// Connect the Root Galice file containing Geometry, Kine and Hits
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-   if (!file) file = new TFile(filename);
-   printf("Reading from root file %s\n",filename);
-//
-// Get AliRun object from file or create it if not on file
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   } // end if !gAlice
-//
-// Get pointers to Alice detectors and Hits containers
-   Int_t  nparticles  = gAlice->GetEvent(evNumber);
-   if (nparticles <= 0) return;
-   AliITS       *ITS       = gAlice->GetDetector("ITS");
-   if(!ITS) {printf("ITS detector not found. Exiting\n"); return;}
-   TClonesArray *Particles = gAlice->Particles();
-   TClonesArray *ITShits   = ITS->Hits();
-   TTree        *TH        = gAlice->TreeH();
-   Int_t        ntracks    = TH->GetEntries();
-   AliITSgeom   *gm        = ITS->GetITSgeom();
-   Int_t        Nlayers    = gm->GetNlayers();
-//
-   printf("%d primary tracks and their secondary tracks read in\n",ntracks);
-//
-// Import the Kine and Hits Trees for the event evNumber in the file
-   Float_t x,y,z,mass,e,r,rt;
-   Float_t px,py,pz,pt;
-   Float_t destep;
-   Float_t theta,phi;
-   Float_t eta,etap;
-   Float_t dzeta,weight;
-   Int_t idpart;
-//
-   Float_t ztot[]  = {33.52,// total length of layer 1
-                      33.52,// total length of layer 2
-                      46.10,// total length of layer 3
-                      60.77,// total length of layer 4
-                      90.42,// total length of layer 5
-                     101.95};// total length of layer 6
-   Float_t raprx[] = {4.0,7.0,14.9,23.8,39.1,43.6}; // aproximate layer radii
-//
-   Float_t totdet[]={256*256*4*20,//total number of channels layer 1 =  5242880
-                     256*256*4*40,//total number of channels layer 2 = 10485760
-                   2*256*256*6*14,//total number of channels layer 3 = 11010048
-                   2*256*256*8*22,//total number of channels layer 4 = 23068672
-                        768*23*34,//total number of channels layer 5 =  1201152
-                        768*26*38};//total number of channels layer 6 = 1517568
-//
-   Float_t clusize,clusize_z,clusize_rphi;   
-//
-   Float_t threshold[]={8.0e-6,8.0e-6, // noise= 200 e- ; thr = 2000 e- ;
-                        3.0e-6,3.0e-6, // noise= 250 e- ; thr= 3 sigma noise
-                        6.0e-6,6.0e-6};// noise= 500 e- ; thr= 3 sigma noise
-//
-   Int_t     nhitlayer[6];
-   Int_t     ntrklayer[6];
-   Int_t     layer,ladder,det;
-   Int_t     nbytes = 0;
-   Int_t     i,j,jj,hit,ipart,ipartold,iparent;
-   Int_t     nhits;
-   Int_t     sector,plane;
-   TParticle *particle,*pparticle;
-   AliITShit *itsHit;
-
-// Create histograms
-
-   Float_t etamin = -1.;
-   Float_t etamax = 1.;
-   Float_t ptmin  = 0.;
-   Float_t ptmax  = 3.;
-   Int_t   nbin   = 40;
-   Int_t   nbinz  = 200;
-   Float_t deta   = (etamax-etamin)/nbin;
-   Float_t EtapMax=2.436246,EtapMin=-2.436246; // from Config.C file
-   TVector etabin(nbin+1);
-   TVector zbin(nbin+1);
-
-// Open a root file to save histograms in
-   char *Hfilename = "ITShitOccupancy.root";
-   TFile *Hfile    = (TFile *)gROOT->GetListOfFiles()->FindObject(Hfilename);
-   if(Hfile) Hfile->Close();
-   Hfile = new TFile(Hfilename,"RECREATE","Histograms for ITS Occupancy");
-   printf("Writting histograms to root file %s\n",Hfilename);
-//
-   TH2F *hzetap[6];
-   TH1D *hzetap_z[6],*hzetap_etap[6];
-   TH2F *hzetapden[6];
-   TH1D *hzetapden_z[6],*hzetapden_etap[6];
-   TH2F *hEtaEtapden[6];
-   TH1D *hEtaEtapden_Eta[6],*hEtaEtapden_Etap[6];
-   TH2F *hEtaEtapdenWeight[6];
-   TH1D *hEtaEtapdenWeight_Eta[6];
-   TF2  *fweight;
-   TF1  *fdEtadZ,*fEta;
-   TH1F *hdEtadZ[6],*hEta[6];
-
-   { // "Book" histograms
-       char histid[7],htit[40];
-       for(i=0;i<Nlayers;i++){
-          sprintf(histid,"hzetap%1.1d",i+1);
-          sprintf(htit,"Hits for Layer %1.1d",i+1);
-          hzetap[i] = new TH2F(histid,htit,nbinz,-0.6*ztot[i],0.6*ztot[i],
-                               20,floor(EtapMin)-1.0,ceil(EtapMax)+1.0);
-          hzetap[i]->SetXTitle("Z (cm)");
-          hzetap[i]->SetYTitle("Beam particle pseudorapidity");
-          hzetap[i]->Sumw2();
-          //
-          sprintf(histid,"hzetapden%1.1d",i+1);
-          sprintf(htit,"Density of Hits for Layer %1.1d",i+1);
-          hzetapden[i] = new TH2F(histid,htit,nbinz,-0.6*ztot[i],0.6*ztot[i],
-                              20,floor(EtapMin)-1.0,ceil(EtapMax)+1.0);
-          hzetapden[i]->Sumw2();
-          hzetapden[i]->SetXTitle("Z (cm)");
-          hzetapden[i]->SetYTitle("Beam particle pseudorapidity");
-          nhitlayer[i] = 0.0;
-          ntrklayer[i] = 0.0;
-          //
-          sprintf(histid,"hEtaEtapden%1.1d",i+1);
-          sprintf(htit,"Hits for Layer %1.1d by Eta",i+1);
-          hEtaEtapden[i] = new TH2F(histid,htit,nbinz,
-                                 -EtafromZr(0.6*ztot[i],raprx[i]),
-                                  EtafromZr(0.6*ztot[i],raprx[i]),
-                               20,floor(EtapMin)-1.0,ceil(EtapMax)+1.0);
-          hEtaEtapden[i]->SetXTitle("Track Pseudorapidity");
-          hEtaEtapden[i]->SetYTitle("Beam particle pseudorapidity");
-          hEtaEtapden[i]->Sumw2();
-       } // end for i
-
-       sprintf(histid,"fweight");
-       fweight = new TF2(histid,Weight,-EtafromZr(0.6*ztot[0],raprx[0]),
-                                  EtafromZr(0.6*ztot[0],raprx[0]),
-                        floor(EtapMin)-1.0,ceil(EtapMax)+1.0,4);
-       Double_t params[4];
-       sprintf(histid,"fdEtadZ");
-       fdEtadZ = new TF1(histid,PdEtadZ,floor(EtapMin)-1.0,
-                        ceil(EtapMax)+1.0,1);
-       sprintf(histid,"fEta");
-       fEta = new TF1(histid,PEtafromZr,floor(EtapMin)-1.0,
-                     ceil(EtapMax)+1.0,1);
-       for(i=0;i<Nlayers;i++){
-          params[0] = raprx[i];
-          params[1] = hEtaEtapden[i]->GetXaxis()->GetBinWidth(1);
-          params[2] = hEtaEtapden[i]->GetYaxis()->GetBinWidth(1);
-          params[3] = EtapMax-EtapMin;
-          fweight->SetParameters(params);
-          sprintf(histid,"hEtaEtapdenWeight%1.1d",i+1);
-          sprintf(htit,"Weight for Layer %1.1d by Eta",i+1);
-          hEtaEtapdenWeight[i] = new TH2F(histid,htit,nbinz,
-                                 -EtafromZr(0.6*ztot[i],raprx[i]),
-                                  EtafromZr(0.6*ztot[i],raprx[i]),
-                               20,floor(EtapMin)-1.0,ceil(EtapMax)+1.0);
-          hEtaEtapdenWeight[i]->SetXTitle("Track Pseudorapidity");
-          hEtaEtapdenWeight[i]->SetYTitle("Beam particle pseudorapidity");
-          hEtaEtapdenWeight[i]->Sumw2();
-          hEtaEtapdenWeight[i]->Eval(fweight);
-//
-          fdEtadZ->SetParameters(params);
-          sprintf(histid,"hdEtadZ%1.1d",i+1);
-          sprintf(htit,"dEtadZ(z) for Layer %1.1d",i+1);
-          hdEtadZ[i] = new TH1F(histid,htit,nbinz,
-                                 -0.6*ztot[i],0.6*ztot[i]);
-          hdEtadZ[i]->SetXTitle("Z (cm)");
-          hdEtadZ[i]->Sumw2();
-          hdEtadZ[i]->Eval(fdEtadZ);
-//
-          fEta->SetParameters(params);
-          sprintf(histid,"hEta%1.1d",i+1);
-          sprintf(htit,"Eta(z) for Layer %1.1d",i+1);
-          hEta[i] = new TH1F(histid,htit,nbinz,
-                                 -0.6*ztot[i],0.6*ztot[i]);
-          hEta[i]->SetXTitle("Z (cm)");
-          hEta[i]->Sumw2();
-          hEta[i]->Eval(fEta);
-       } // end for i
-
-   } //  end "Book" histograms
-// Start loop on tracks in the hits container
-
-   Double_t xa[2],par[4];
-
-   for (Int_t track=0; track<ntracks;track++) {
-     gAlice->ResetHits();
-     nbytes += TH->GetEvent(track);
-     nhits   = ITShits->GetEntriesFast();
-     for (hit=0;hit<nhits;hit++) {
-        itsHit   = (AliITShit*)ITShits->UncheckedAt(hit);
-        destep   = itsHit->GetIonization();
-        // With this new version, to be able to do proper detector
-        // simulations, the requirment that a "hit" leave some
-        // energy deposited has been removed.
-        if(destep<=0.0) continue; // skip hits without energy loss.
-        ipart    = itsHit->fTrack;
-        particle = (TParticle*)Particles->UncheckedAt(ipart);
-        iparent  = particle->GetFirstMother();
-        pparticle= (TParticle*)Particles->UncheckedAt(ntracks-track);
-        etap     = TMath::ATan2(pparticle->Pt(),pparticle->Pz());
-        etap     = -TMath::Log(TMath::Tan(0.5*etap));
-        itsHit->GetPositionG(x,y,z);
-        x -= pparticle->Vx();  // correct for primary vertex position
-        y -= pparticle->Vy();  // correct for primary vertex position
-        z -= pparticle->Vz();  // correct for primary vertex position
-        itsHit->GetMomentumG(px,py,pz);
-        itsHit->GetDetectorID(layer,ladder,det);
-        r        = sqrt(x*x+y*y+z*z);
-        rt       = sqrt(x*x+y*y);
-        theta    = TMath::ACos(z/r)*180./TMath::Pi();
-        phi      = TMath::ATan2(y,x); if(phi<0.0) phi += TMath::Pi();
-        eta      = EtafromZr(z,rt);
-        pt       = TMath::Sqrt(px*px+py*py);
-        if(ipart!=ipartold)ntrklayer[layer-1] += 1;
-        ipartold = ipart;
-        nhitlayer[layer-1] += 1;
-
-        switch (layer) {
-        // Calculate average cluster sizes
-        case 1:
-            clusize_rphi = 1.4;
-            if(TMath::Abs(eta)>=0.0 && TMath::Abs(eta)< 0.2) clusize_z=1.2;
-            if(TMath::Abs(eta)>=0.2 && TMath::Abs(eta)< 0.4) clusize_z=1.2;
-            if(TMath::Abs(eta)>=0.4 && TMath::Abs(eta)< 0.6) clusize_z=1.3;
-            if(TMath::Abs(eta)>=0.6 && TMath::Abs(eta)< 0.8) clusize_z=1.4;
-            if(TMath::Abs(eta)>=0.8 && TMath::Abs(eta)< 1.0) clusize_z=1.5;
-            clusize = clusize_z*clusize_rphi;
-        case 2:
-            clusize_rphi = 1.4;
-            if(TMath::Abs(eta)>=0.0 && TMath::Abs(eta)< 0.2) clusize_z=1.2;
-            if(TMath::Abs(eta)>=0.2 && TMath::Abs(eta)< 0.4) clusize_z=1.2;
-            if(TMath::Abs(eta)>=0.4 && TMath::Abs(eta)< 0.6) clusize_z=1.3;
-            if(TMath::Abs(eta)>=0.6 && TMath::Abs(eta)< 0.8) clusize_z=1.4;
-            if(TMath::Abs(eta)>=0.8 && TMath::Abs(eta)< 1.0) clusize_z=1.5;
-            clusize = clusize_z*clusize_rphi;
-        case 3:
-            clusize_rphi = 8.0;
-            clusize_z    = 3.0;
-            clusize      = clusize_z*clusize_rphi;
-        case 4:
-            clusize_rphi = 8.0;
-            clusize_z    = 3.0;
-            clusize      = clusize_z*clusize_rphi;
-        case 5:
-            clusize_z = 1.0;
-            if(pt>=0.0 && pt< 0.2) clusize_rphi=2.0;
-            if(pt>=0.2 && pt< 0.4) clusize_rphi=1.9;
-            if(pt>=0.4 && pt< 0.6) clusize_rphi=1.6;
-            if(pt>=0.6 && pt< 0.8) clusize_rphi=1.6;
-            if(pt>=0.8 && pt< 1.0) clusize_rphi=1.7;
-            if(pt>=1.0 && pt< 1.5) clusize_rphi=1.7;
-            if(pt>=1.5 && pt< 2.5) clusize_rphi=1.7;
-            if(pt>=2.5           ) clusize_rphi=1.7;
-            clusize = clusize_z*clusize_rphi;
-        case 6:
-            clusize_z = 1.0;
-            if(pt>=0.0 && pt< 0.2) clusize_rphi=2.0;
-            if(pt>=0.2 && pt< 0.4) clusize_rphi=1.9;
-            if(pt>=0.4 && pt< 0.6) clusize_rphi=1.6;
-            if(pt>=0.6 && pt< 0.8) clusize_rphi=1.6;
-            if(pt>=0.8 && pt< 1.0) clusize_rphi=1.7;
-            if(pt>=1.0 && pt< 1.5) clusize_rphi=1.7;
-            if(pt>=1.5 && pt< 2.5) clusize_rphi=1.7;
-            if(pt>=2.5           ) clusize_rphi=1.7;
-            clusize = clusize_z*clusize_rphi;
-        } // end switch layer
-//       weightE = clusize*ztot[layer-1]/totdet[layer-1];
-        xa[0]  = eta; xa[1]  = etap;
-        par[0] = rt;
-        par[1] = hEtaEtapden[layer-1]->GetXaxis()->GetBinWidth(1);
-        par[2] = hEtaEtapden[layer-1]->GetYaxis()->GetBinWidth(1);
-        par[3] = EtapMax-EtapMin;
-        weight = Weight(xa,par);
-        hEtaEtapden[layer-1]->Fill(eta,etap,weight);
-        weight = 1.;
-        hzetap[layer-1]->Fill(z,etap,weight);
-        weight = par[3]/(rt*2.0*TMath::Pi()*
-                      hzetapden[layer-1]->GetXaxis()->GetBinWidth(1)*
-                      hzetapden[layer-1]->GetYaxis()->GetBinWidth(1));
-        hzetapden[layer-1]->Fill(z,etap,weight);
-       } // end for hit
-   } // end for track
-
-   for(i=0;i<Nlayers;i++)printf("No. of hits   in layer %d = %d\n",i+1,nhitlayer[i]);
-   for(i=0;i<Nlayers;i++)printf("No. of tracks in layer %d = %d\n",i+1,ntrklayer[i]);
-
-//Create canvases, set the view ranges and show histograms
-
-     TCanvas *canvas = new TCanvas("canvas","ITShitOccupancy",1);
-
-     Bool_t printit = kTRUE;
-     char psfilename[40];
-     for(i=0;i<Nlayers;i++){
-         hzetap[i]->Draw("colz");
-        sprintf(psfilename,"ITShitOccupancy_%1.1d_z_etap.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-        sprintf(psfilename,"hzetap_z%1.1d",i+1);
-        hzetap_z[i]    = hzetap[i]->ProjectionX(psfilename,0,
-                                                hzetap[i]->GetNbinsY()+1,"E");
-        hzetap_z[i]->SetXTitle("Z (cm)");
-        hzetap_z[i]->SetYTitle("Number of Hits per cm");
-        sprintf(psfilename,"hzetap_etap%1.1d",i+1);
-        hzetap_etap[i] = hzetap[i]->ProjectionY(psfilename,0,
-                                                hzetap[i]->GetNbinsX()+1,"E");
-        hzetap_etap[i]->SetXTitle("Beam particle pseudorapidity");
-        hzetap_etap[i]->SetYTitle("Number of Hits");
-        hzetap_z[i]->Draw();
-        sprintf(psfilename,"ITShitOccupancy_%1.1d_z.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-        hzetap_etap[i]->Draw();
-        sprintf(psfilename,"ITShitOccupancy_%1.1d_etap.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-//
-         hzetapden[i]->Draw("colz");
-        sprintf(psfilename,"ITSHitDen_%1.1d_z_etap.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-        sprintf(psfilename,"hzetapden_z%1.1d",i+1);
-        hzetapden_z[i]    = hzetapden[i]->ProjectionX(psfilename,0,
-                                        hzetapden[i]->GetNbinsY()+1,"E");
-        hzetapden_z[i]->SetXTitle("Z (cm)");
-        hzetapden_z[i]->SetYTitle("Number of Hits (cm^-2)");
-        sprintf(psfilename,"hzetapden_etap%1.1d",i+1);
-        hzetapden_etap[i] = hzetapden[i]->ProjectionY(psfilename,0,
-                                      hzetapden[i]->GetNbinsX()+1,"E");
-        hzetapden_etap[i]->SetXTitle("Beam particle pseudorapidity");
-        hzetapden_etap[i]->SetYTitle("Number of Hits (cm^-2)");
-        hzetapden_z[i]->Draw();
-        sprintf(psfilename,"ITSHitDen_%1.1d_z.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-        hzetapden_etap[i]->Draw();
-        sprintf(psfilename,"ITSHitDen_%1.1d_etap.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-//
-         hEtaEtapden[i]->Draw("colz");
-        sprintf(psfilename,"ITShitDensity_%1.1d_Eta_Etap.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-        sprintf(psfilename,"hEtaEtapden_Eta%1.1d",i+1);
-        hEtaEtapden_Eta[i]    = hEtaEtapden[i]->ProjectionX(psfilename,0,
-                                         hEtaEtapden[i]->GetNbinsY()+1,"E");
-        hEtaEtapden_Eta[i]->SetXTitle("Pseudorapidity");
-        hEtaEtapden_Eta[i]->SetYTitle("Number of Hits (cm^-2)");
-        sprintf(psfilename,"hEtaEtapden_Etap%1.1d",i+1);
-        hEtaEtapden_Etap[i] = hEtaEtapden[i]->ProjectionY(psfilename,0,
-                                         hEtaEtapden[i]->GetNbinsX()+1,"E");
-        hEtaEtapden_Etap[i]->SetXTitle("Beam particle pseudorapidity");
-        hEtaEtapden_Etap[i]->SetYTitle("Number of Hits (cm^-2)");
-        hEtaEtapden_Eta[i]->Draw();
-        sprintf(psfilename,"ITShitDensity_%1.1d_Eta.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-        hEtaEtapden_Etap[i]->Draw();
-        sprintf(psfilename,"ITShitDensity_%1.1d_Etap.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-//
-         hEtaEtapdenWeight[i]->Draw("colz");
-        sprintf(psfilename,"ITShitDensityWeight_%1.1d_Eta_Etap.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-        sprintf(psfilename,"hEtaEtapdenWeight_Eta%1.1d",i+1);
-        hEtaEtapdenWeight_Eta[i] =
-                               hEtaEtapdenWeight[i]->ProjectionX(psfilename,
-                             0,hEtaEtapdenWeight[i]->GetNbinsY()+1,"E");
-        hEtaEtapdenWeight_Eta[i]->SetXTitle("Pseudorapidity");
-        hEtaEtapdenWeight_Eta[i]->SetYTitle("Weight (cm^-2)");
-        hEtaEtapdenWeight_Eta[i]->Draw();
-        sprintf(psfilename,"ITShitDensityWeight_%1.1d_Eta.ps",i+1);
-        if(printit) canvas->Print(psfilename);
-     } // end for i
-//
-     Hfile->Write();
-//
-     return;
-}
diff --git a/ITS/oldmacros/ITShuffman.C b/ITS/oldmacros/ITShuffman.C
deleted file mode 100644 (file)
index d515205..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-#include "iostream.h"
-
-void ITShuffman_f (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("stream.root");
-   if (!file) file = new TFile("stream.root");
-   file->ls();
-
-
-   AliITSInStream  *IStream;
-
-   char *path=gDirectory->GetPath();
-   printf("path %s\n",path);
-   
-
-   Int_t nkeys=gDirectory->GetNkeys();
-   printf("nkeys %d\n",nkeys);
-   char namecycle[40];
-
-   AliITSHTable *hufft=new AliITSHTable(256);
-   for (int i=1;i<=nkeys;i++) {
-     Int_t count=0;
-     Int_t count1=0;
-     Int_t count2=0;
-     Int_t count3=0;
-       sprintf(namecycle,"AliITSInStream;%d",i);
-       printf("namecycle %s\n",namecycle);
-       IStream=(AliITSInStream*)gDirectory->Get(namecycle);
-       UChar_t *str=IStream->Stream();
-       Int_t len=IStream->StreamLength();
-       //printf("str len %p %d\n",str,len);
-       for (int k=0;k<len;k++) {
-           UChar_t elem=str[k];
-          // test
-           if (elem==128) count++;
-           if (elem==127) count1++;
-           if (elem==129) count2++;
-           if (elem==134) count3++;
-          //if (elem != 128) printf("i,k,elem %d %d %d\n",i,k,elem);
-       }
-       //printf("count 128 127 129 134 %d %d %d %d \n",count,count1,count2,count3);
-       hufft->GetFrequencies(len,str);
-   }
-
-   hufft->BuildHTable();
-
-   cout<<"END  test for InStream "<<endl;
-
-   file->Close();   
-}
-
-
-
diff --git a/ITS/oldmacros/ITSlego.C b/ITS/oldmacros/ITSlego.C
deleted file mode 100644 (file)
index 4cb2d73..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-void ITSlego(Float_t nchtheta, Float_t nchphi) {
-// macro to visualize the lego plots generated by gAlive->RunLego
-   
-   gROOT->Reset();
-   TFile *file = new TFile("galice.root");
-
-
-/*
-   Float_t theta = 10;
-   Float_t phi   = 170;
-   Int_t ncont   = 50;
-
-   TCanvas *cradl = new TCanvas("cradl","radl",10,10,800,600);
-   cradl->SetTheta(theta);
-   cradl->SetPhi(phi);
-   TH2F *hradl = (TH2F*)file->Get("hradl");
-   hradl->SetStats(kFALSE);
-   hradl->GetXaxis()->SetTitle("Phi (degrees)");
-   hradl->GetYaxis()->SetTitle("Theta (degrees)");
-   hradl->SetFillColor(2);
-   hradl->SetContour(ncont);
-//   hradl->SetMaximum(1);
-   hradl->Draw("colz");
-//   hradl->Draw("lego2sphe");
-*/
-
-   TCanvas *cradlx = new TCanvas("cradl1","radl",50,50,800,600);
-   hradl->ProjectionX();
-   hradl_px->SetStats(kFALSE);
-//   hradl_px->SetOptLogY();
-//   hradl_px->SetMinimum(0.001);   
-//   hradl_px->SetMaximum(1);
-   hradl_px->Scale(1./nchtheta);   
-   hradl_px->GetXaxis()->SetTitle("Phi (degrees)");
-   hradl_px->GetYaxis()->SetTitle("X/X0");
-   hradl_px->Draw();
-//   cout << "Average over Phi: " << hradl_px->GetSumOfWeights()/nchphi << " X/X0" << endl;
-   
-   
-   TCanvas *cradly = new TCanvas("cradl2","radl",100,100,800,600);
-   hradl->ProjectionY();
-   hradl_py->SetStats(kFALSE);
-//   hradl_py->SetOptLogY();
-//   hradl_py->SetMinimum(0.001);   
-//   hradl_py->SetMaximum(1);   
-   hradl_py->Scale(1./nchphi);
-   hradl_py->GetXaxis()->SetTitle("Theta (degrees)");
-   hradl_py->GetYaxis()->SetTitle("X/X0");
-   hradl_py->Draw();   
-//   cout << "Average over Theta: " << hradl_py->GetSumOfWeights()/nchtheta << " X/X0" << endl;  
-   cout << "Average: " << hradl_py->GetSumOfWeights()/nchtheta << " X/X0" << endl;     
-}   
diff --git a/ITS/oldmacros/ITSmixedpoints.C b/ITS/oldmacros/ITSmixedpoints.C
deleted file mode 100644 (file)
index d136b7c..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#include "iostream.h"
-
-void ITSmixedpoints (Int_t evNumber1=0,Int_t evNumber2=0,Int_t nsignal  =25, Int_t size=-1) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   printf("file %p\n",file);
-   if (file) file->Close(); 
-   file = new TFile("galice.root","UPDATE");
-   file->ls();
-
-   printf ("I'm after Map \n");
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-       gAlice = (AliRun*)file->Get("gAlice");
-       if (gAlice) printf("AliRun object found on file\n");
-       if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-   printf ("I'm after gAlice \n");
-   
-   AliITS *ITS  = (AliITS*) gAlice->GetModule("ITS");
-   if (!ITS) return;
-
-   // set the simulation models
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-   // SPD - simulation slow points
-
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   AliITSresponseSPD *res0 = (AliITSresponseSPD*)iDetType->GetResponseModel();
-   AliITSsimulationSPD *sim0=new AliITSsimulationSPD(seg0,res0);
-   ITS->SetSimulationModel(0,sim0);
-
-   // SPD - cluster finder
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig0  = ITS->DigitsAddress(0);
-   TClonesArray *recp0  = ITS->ClustersAddress(0);
-   AliITSClusterFinderSPD *rec0=new AliITSClusterFinderSPD(seg0,dig0,recp0);
-   ITS->SetReconstructionModel(0,rec0);
-
-   // SDD+SSD - fast poinst
-
-   AliITSsimulationFastPoints *sim = new AliITSsimulationFastPoints();
-
-   for (Int_t i=1;i<3;i++) {
-       ITS->SetSimulationModel(i,sim);
-   }
-
-//
-// Event Loop
-//
-  Int_t nbgr_ev=0;
-
-   for (int ev=evNumber1; ev<= evNumber2; ev++) {
-       Int_t nparticles = gAlice->GetEvent(ev);
-       cout << "event         " <<ev<<endl;
-       cout << "nparticles  " <<nparticles<<endl;
-       if (ev < evNumber1) continue;
-       if (nparticles <= 0) return;
-       Int_t bgr_ev=Int_t(ev/nsignal);
-       Int_t last_entry=1;
-       ITS->DigitsToRecPoints(ev,last_entry,"SPD");
-       ITS->HitsToFastRecPoints(ev,bgr_ev,size," ","SDD"," ");
-       ITS->HitsToFastRecPoints(ev,bgr_ev,size," ","SSD"," ");
-   } // event loop 
-
-   file->Close();
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITSneuralCompleteEval.C b/ITS/oldmacros/ITSneuralCompleteEval.C
deleted file mode 100644 (file)
index cb43acc..0000000
+++ /dev/null
@@ -1,233 +0,0 @@
-// Neural performance evaluation
-//
-// before using this macro, you should have make run the macro
-// 'ITSstoreFindableTracks.C' in order to have a file named following
-// the rule to append '_fnd' to the name 
-// (e.g.   galice.root --> galice_fnd.root)
-// and have in it a tree with some tracks statistics useful for evaluation
-// of performance with the same event without loosing too much time...
-
-void ITSneuralCompleteEval
-(Int_t nsecs, const char *filename, Bool_t low = kFALSE, 
- Bool_t draw = kTRUE, const char *save = 0)
-{
-       Int_t N, M;
-       Float_t *edge = 0;
-       if (!low) {
-               N = 7;
-               edge = new Float_t[8];
-               edge[0] = 0.0;
-               edge[1] = 0.5;
-               edge[2] = 1.0;
-               edge[3] = 1.5;
-               edge[4] = 2.0;
-               edge[5] = 3.0;
-               edge[6] = 4.0;
-               edge[7] = 5.0;
-       }
-       else {
-               N = 5;
-               edge = new Float_t[6];
-               edge[0] = 0.0;
-               edge[1] = 0.2;
-               edge[2] = 0.4;
-               edge[3] = 0.6;
-               edge[4] = 0.8;
-               edge[5] = 1.0;
-       }
-       
-       Float_t find[2] = {0.0, 0.0}, find1[2] = {0.0, 0.0};
-       Float_t good[2] = {0.0, 0.0}, good1[2] = {0.0, 0.0};
-       Float_t fake[2] = {0.0, 0.0}, fake1[2] = {0.0, 0.0};
-       
-       // histos filled with neural results
-       TH1D *hgood[2], *hfake[2], *hfind[2];
-       TH1D *hgood1[2], *hfake1[2], *hfind1[2];
-       TH1D *hg[2], *hf[2];
-       if (draw) {
-               hgood[0] = new TH1D("hgood0", "Good found tracks", N, edge);
-               hfake[0] = new TH1D("hfake0", "Fake found tracks", N, edge);
-               hfind[0] = new TH1D("hfound0", "Findable tracks", N, edge);
-               hgood[1] = new TH1D("hgood1", "Good found tracks", N, edge);
-               hfake[1] = new TH1D("hfake1", "Fake found tracks", N, edge);
-               hfind[1] = new TH1D("hfound1", "Findable tracks", N, edge);
-       
-               hgood[0]->Sumw2(); 
-               hfake[0]->Sumw2(); 
-               hfind[0]->Sumw2(); 
-               hgood[1]->Sumw2(); 
-               hfake[1]->Sumw2(); 
-               hfind[1]->Sumw2(); 
-               
-               // histos for evaluating percentual efficiency
-               hg[0] = new TH1D("hg0", "Efficiency (%) for #geq 5 right pts.", N, edge);
-               hf[0] = new TH1D("hf0", "Fake probability (%) for #geq 5 right pts.", N, edge);
-               hg[1] = new TH1D("hg1", "Efficiency (%) for 6 right pts.", N, edge);
-               hf[1] = new TH1D("hf1", "Fake probability (%) for 6 right pts.", N, edge);
-       }
-       
-       TFile *ffind;
-       TTree *tree;
-       
-       if (low) {
-               ffind = new TFile(Form("%s.root", filename), "READ");
-               tree  = (TTree*)ffind->Get("TreeF");
-       }
-       else {
-               ffind = new TFile(Form("%s_fnd.root", filename), "READ");
-               tree  = (TTree*)ffind->Get("tree");
-       }
-       
-       TFile *ftracks = new TFile(Form("%s_%d.root", filename, nsecs), "READ");
-       
-       
-       Double_t pt;
-       Int_t i, j, count, prim, *none = 0, div;
-       Int_t entries = tree->GetEntries(), label, min[] = {5,6};
-       tree->SetBranchAddress("pt", &pt);
-       tree->SetBranchAddress("count", &count);
-       tree->SetBranchAddress("prim", &prim);
-       
-       AliITSneuralTrack *trk = 0;
-       div = low ? 50 : 500;
-       for(i = 1;;i++) {
-               trk = (AliITSneuralTrack*)ftracks->Get(Form("AliITSneuralTrack;%d", i));
-               if (i%div == 0) cout << "\rEvaluating found track " << i << flush;
-               if (!trk) break;
-               for (j = 0; j < 2; j++) {
-                       label = trk->EvaluateTrack(0, min[j], none);
-                       tree->GetEntry(abs(label));
-                       if (count >= min[j]) {
-                               if (label > 0) {
-                                       if (draw) hgood[j]->Fill(pt);
-                                       good[j]++;
-                                       if (pt >= 1.0) good1[j]++;
-                               }
-                               else {
-                                       if (draw) hfake[j]->Fill(pt);
-                                       fake[j]++;
-                                       if (pt >= 1.0) fake1[j]++;
-                               }
-                       }
-               }
-       }
-       cout << endl;
-               
-       div = low ? 200 : 20000;
-       
-       for (i = 0; i < entries; i++) {
-               if (i%div == 0) cout << "\rEvaluating findable track no. " << i << flush;
-               tree->GetEntry(i);
-               for (j = 0; j < 2; j++) {
-                       if (count >= min[j]) {
-                               find[j]++;
-                               if (draw) hfind[j]->Fill(pt);
-                               if (pt >= 1.0) find1[j]++;
-                       }
-               }
-       }
-       cout << endl;
-       cout << hgood[0]->GetEntries() << " " << hgood[1]->GetEntries() << endl;
-       cout << hfake[0]->GetEntries() << " " << hfake[1]->GetEntries() << endl;
-       cout << hfind[0]->GetEntries() << " " << hfind[1]->GetEntries() << endl << endl;
-       
-       if (draw) {
-               TCanvas *canv[2];
-               canv[0] = new TCanvas("c_0", "Tracking efficiency (soft)", 0, 0, 600, 500);
-               canv[1] = new TCanvas("c_1", "Tracking efficiency (hard)", 630, 0, 600, 500);
-               
-               TLine *line1 = new TLine(1,100.0,edge[N],100.0); line1->SetLineStyle(4);
-               TLine *line2 = new TLine(1,90,edge[N],90); line2->SetLineStyle(4);
-                       
-               Bool_t good_drawn;
-               for (i = 0; i < 2; i++) {
-                       canv[i]->cd();
-                       good_drawn = kFALSE;
-                       if (hgood[i]->GetEntries() > 0.0) {
-                               good_drawn = kTRUE;
-                               hg[i]->Divide(hgood[i], hfind[i], 100.0, 1.0);
-                               hg[i]->SetMaximum(120);
-                               hg[i]->SetMinimum(0);
-                               hg[i]->SetMarkerStyle(21);
-                               hg[i]->SetMarkerSize(1);
-                               hg[i]->SetStats(kFALSE);
-                               hg[i]->GetXaxis()->SetTitle("pt (GeV/c)");
-                               hg[i]->Draw("PE1");
-                       }
-                       if (hfake[i]->GetEntries() > 0.0) {
-                               hf[i]->Divide(hfake[i], hfind[i], 100.0, 1.0);
-                               hf[i]->SetMaximum(120);
-                               hf[i]->SetMinimum(0);
-                               hf[i]->SetMarkerStyle(25);
-                               hf[i]->SetMarkerSize(1);
-                               hf[i]->SetStats(kFALSE);
-                               if (good_drawn)
-                                       hf[i]->Draw("PE1SAME");
-                               else
-                                       hf[i]->Draw("PE1");
-                       }
-                       line1->Draw("histosame");
-                       line2->Draw("histosame");
-                       canv[i]->Update();
-               }
-               canv[0]->SaveAs(Form("%s_soft.eps", filename));
-               canv[1]->SaveAs(Form("%s_hard.eps", filename));
-               cout << endl;
-       }
-       
-       Float_t sgood[2] = {0.0, 0.0}, sgood1[2] = {0.0, 0.0};
-       Float_t sfake[2] = {0.0, 0.0}, sfake1[2] = {0.0, 0.0};
-       for (i = 0; i < 2; i++) {
-               sgood[i] = error(good[i], find[i]);
-               sgood1[i] = error(good1[i], find1[i]);
-               sfake[i] = error(fake[i], find[i]);
-               sfake1[i] = error(fake1[i], find1[i]);
-               
-               good[i] = good[i] * 100.0 / find[i];
-               fake[i] = fake[i] * 100.0 / find[i];
-               good1[i] = good1[i] * 100.0 / find1[i];
-               fake1[i] = fake1[i] * 100.0 / find1[i];
-       }
-       
-       if (save) {
-               fstream data(save, ios::app);
-               data.setf(ios::fixed);
-               data.precision(1);
-               data << good1[0] << " " << fake1[0] << " ";
-               data << good1[1] << " " << fake1[1] << endl;
-               data.close();
-       }
-       else {
-               cout.setf(ios::fixed);
-               cout.precision(1);
-               cout << "*****************************************" << endl;
-               cout << "* Tracks with at least 5 correct points *" << endl;
-               cout << "*****************************************" << endl;
-               cout << "(all particles)" << endl;
-               cout << "Efficiency: " << good[0] << " +/- " << sgood[0] << "%" << endl;
-               cout << "Fake prob.: " << fake[0] << " +/- " << sfake[0] << "%" << endl;
-               if (!low) {
-                       cout << "(pt >= 1 GeV/c)" << endl;
-                       cout << "Efficiency: " << good1[0] << " +/- " << sgood1[0] << "%" << endl;
-                       cout << "Fake prob.: " << fake1[0] << " +/- " << sfake1[0] << "%" << endl;
-               }
-               cout << endl;
-               cout << "************************************" << endl;
-               cout << "* Tracks with all 6 correct points *" << endl;
-               cout << "************************************" << endl;
-               cout << "(all particles)" << endl;
-               cout << "Efficiency: " << good[1] << " +/- " << sgood[1] << "%" << endl;
-               cout << "Fake prob.: " << fake[1] << " +/- " << sfake[1] << "%" << endl;
-               if (!low) {
-                       cout << "(pt >= 1 GeV/c)" << endl;
-                       cout << "Efficiency: " << good1[1] << " +/- " << sgood1[1] << "%" << endl;
-                       cout << "Fake prob.: " << fake1[1] << " +/- " << sfake1[1] << "%" << endl;
-               }
-               cout << endl;
-       }
-}
-
-Double_t error(Double_t x, Double_t y) {
-       Double_t radq = x + x * x / y;
-       return 100.0 * sqrt(radq) / y;
-}
diff --git a/ITS/oldmacros/ITSneuralTracking.C b/ITS/oldmacros/ITSneuralTracking.C
deleted file mode 100644 (file)
index d8f1a7c..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-// ARGUMENTS:
-// 1. number of azymuthal sectors (it's better not to go under 8 or over 40)
-// 2. the ROOT file to read (WITHOUT exstension)
-// 3. event number
-// 4. if specified a string, a fstream named like the argument is opened and
-//    the elapsed CPU time is stored (not useful)
-
-// the macro will save a file named, for example "galice_<nsecs>.root"
-// containing may AliITSneuralTrack objects
-
-void ITSneuralTracking
-(Int_t nsecs = 12, const char* rfile = "galice", Int_t event = 0, const char* save = 0)
-{
-       TStopwatch timer;
-       Double_t CONVERT = TMath::Pi() / 180.0;
-       const char* wfile = Form("%s_%d.root", rfile, nsecs);
-       cout << "Reading file " << rfile << ".root and saving in " << wfile << endl;
-       
-// ==================================
-// ==== CURVATURE CUT DEFINITION ====
-// ==================================
-
-       // These values define the curvature cuts for all steps 
-       // within a sector.
-       // For a greater clarity, the cuts are indicated in units
-       // of transverse momentum (GeV/c) but these value have no
-       // exact physical meaning, but are useful to understand
-       // well what means a choice in the value of a certain 
-       // curvature constraint
-       // NOTE: becareful to make sure that the 'ncuts' variable
-       //       have the same value of the dimension of the allocated arrays
-       
-       Int_t ncuts;
-       Double_t *p, *cut;
-       
-       ncuts = 5;
-       p = new Double_t[5];
-       cut = new Double_t[5];  
-       p[0] = 2.0;
-       p[1] = 1.0;
-       p[2] = 0.7;
-       p[3] = 0.5;
-       p[4] = 0.3;
-       
-       for (Int_t i = 0; i < ncuts; i++) cut[i] = 0.003 * 0.2 / p[i];
-       
-
-// ==========================
-// ==== OTHER PARAMETERS ====
-// ==========================
-           
-       Bool_t   flag   = kFALSE; // for now, don't change this line, please...
-       
-       Double_t diff   = 0.02;   // helicoidal cut 
-       Double_t dtheta = 1.0;    // delta-theta cut
-       Double_t temp   = 1.0;    // temperature parameter
-       Double_t var    = 0.0001; // stabilization threshold
-       
-       Double_t exp    = 7.0;    // straight-line excitator
-       Double_t gtoc   = 3.0;    // gain/cost contribution ratio
-       
-       Double_t min    = 0.4;    // minimum in random activation initialization
-       Double_t max    = 0.6;    // maximum in random activation initialization
-       
-       
-// =========================
-// ==== NEURAL TRACKING ====
-// =========================
-       
-       AliITSneuralTracker *ANN = new AliITSneuralTracker(nsecs, ncuts, cut, CONVERT*dtheta);
-               
-       TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(Form("%s.root", rfile));
-       if (!file) file = new TFile(Form("%s.root", rfile),"UPDATE");
-
-       //Double_t Xv = -0.001097;
-       //Double_t Yv = -0.00347647;
-       //Double_t Zv =  0.000631345;
-       //ANN->SetVertex(Xv, Yv, Zv);
-       // You should find the vertex with VertexMacro.C
-       // and then put by hand the found values with
-       // the above method.
-       
-       Int_t points = ANN->ReadFile(Form("%s.root", rfile), event);
-               
-       ANN->SetTemperature(temp);
-       ANN->SetVariationLimit(var);
-       ANN->SetGainToCostRatio(gtoc);
-       ANN->SetExponent(exp);
-       ANN->SetInitLimits(min, max);
-       ANN->SetDiff(diff);
-       
-       cout << points << " points found " << endl << endl;
-       
-       TStopwatch timer;
-       timer.Start();
-       
-       ANN->Go(wfile, flag);
-       
-       timer.Stop();
-       cout << endl;
-       timer.Print();
-       
-       if (save) {
-               fstream ksave(save, ios::app);
-               ksave << nsecs << " " << timer->CpuTime() << endl;
-               ksave.close();
-       }
-       
-//     delete gAlice;
-//     gAlice = 0;
-}
diff --git a/ITS/oldmacros/ITSreadClustTestSPD.C b/ITS/oldmacros/ITSreadClustTestSPD.C
deleted file mode 100644 (file)
index 7cb51b1..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-#include "iostream.h"
-
-void ITSreadClustTestSPD (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-  // Anyway, this macro needs to read a gAlice file, so it
-  // clears the gAlice object if there is already one in memory...
-  else {
-               if(gAlice){
-                       delete gAlice;
-                       gAlice = 0;
-               }
-       }   
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   if (!file) file = new TFile("galice.root");
-   file->ls();
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-//
-//   Loop over events 
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TH = gAlice->TreeH();
-     Int_t ntracks = TH->GetEntries();
-     cout<<"ntracks "<<ntracks<<endl;
-
-   Int_t nbytes = 0;
-
-   //AliITSRawClusterSDD  *ITSclust;
-   AliITSRawClusterSPD  *ITSclust;
-
-// Get pointers to Alice detectors and Digits containers
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   if(!ITS) return;
-   TClonesArray *Particles = gAlice->Particles();
-
-     ITS->GetTreeC(nev);
-     TTree *TC=ITS->TreeC();
-     Int_t nent=TC->GetEntries();
-     printf("Found %d entries in the tree (must be one per module per event!)\n",nent);
-   
-     for (Int_t idet=0;idet<3;idet++) {
-
-       TClonesArray *ITSclu  = ITS->ClustersAddress(idet);
-
-          if (idet != 0) continue;
-         for (Int_t mod=0; mod<nent; mod++) {
-              ITS->ResetClusters();
-              TC->GetEvent(mod);
-             Int_t ncl = ITSclu->GetEntries();
-             if (ncl) printf("Found %d clusters for module %d in det type %d \n",ncl,mod,idet);
-
-             if (!ncl) continue;
-
-             for (Int_t icl=0;icl<ncl;icl++) {
-               ITSclust   = (AliITSRawClusterSPD*)ITSclu->UncheckedAt(icl);
-               printf("%d %d %f %f %f\n",ITSclust->NclZ(),ITSclust->NclX(),ITSclust->Q(),ITSclust->X(),ITSclust->Z());
-             } 
-             //for (Int_t icl=0;icl<ncl;icl++) {
-             //ITSclust   = (AliITSRawClusterSDD*)ITSclu->UncheckedAt(icl);
-             //printf("%d %d %f %f %f\n",ITSclust->Anodes(),ITSclust->Samples(),ITSclust->Q(),ITSclust->X(),ITSclust->Z());
-             //}
-         }        
-     }
-
-   }   // event loop 
-
-     cout<<"END  test for clusters "<<endl;
-
-     file->Close();   
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITSreadClustTestSPDDubna.C b/ITS/oldmacros/ITSreadClustTestSPDDubna.C
deleted file mode 100644 (file)
index e79ded6..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-#include "iostream.h"
-
-void ITSreadClustTestSPDDubna (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-  // Anyway, this macro needs to read a gAlice file, so it
-  // clears the gAlice object if there is already one in memory...
-  else {
-               if(gAlice){
-                       delete gAlice;
-                       gAlice = 0;
-               }
-       }   
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   if (!file) file = new TFile("galice.root");
-   file->ls();
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-//
-//   Loop over events 
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TH = gAlice->TreeH();
-     Int_t ntracks = TH->GetEntries();
-     cout<<"ntracks "<<ntracks<<endl;
-
-   Int_t nbytes = 0;
-
-   //AliITSRawClusterSDD  *ITSclust;
-   AliITSRawClusterSPD  *ITSclust;
-
-// Get pointers to Alice detectors and Digits containers
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   if(!ITS) return;
-   TClonesArray *Particles = gAlice->Particles();
-
-     ITS->GetTreeC(nev);
-     TTree *TC=ITS->TreeC();
-     Int_t nent=TC->GetEntries();
-     printf("Found %d entries in the tree (must be one per module per event!)\n",nent);
-   
-     for (Int_t idet=0;idet<3;idet++) {
-
-       TClonesArray *ITSclu  = ITS->ClustersAddress(idet);
-
-          if (idet != 0) continue;
-         for (Int_t mod=0; mod<nent; mod++) {
-              ITS->ResetClusters();
-              TC->GetEvent(mod);
-             Int_t ncl = ITSclu->GetEntries();
-             if (ncl) printf("Found %d clusters for module %d in det type %d \n",ncl,mod,idet);
-
-             if (!ncl) continue;
-
-             for (Int_t icl=0;icl<ncl;icl++) {
-               ITSclust   = (AliITSRawClusterSPD*)ITSclu->UncheckedAt(icl);
-               printf("%d %d %f %f %f\n",ITSclust->NclZ(),ITSclust->NclX(),ITSclust->Q(),ITSclust->X(),ITSclust->Z());
-             } 
-             //for (Int_t icl=0;icl<ncl;icl++) {
-             //ITSclust   = (AliITSRawClusterSDD*)ITSclu->UncheckedAt(icl);
-             //printf("%d %d %f %f %f\n",ITSclust->Anodes(),ITSclust->Samples(),ITSclust->Q(),ITSclust->X(),ITSclust->Z());
-             //}
-         }        
-     }
-
-   }   // event loop 
-
-     cout<<"END  test for clusters "<<endl;
-
-     file->Close();   
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITSreadRecPointsTest.C b/ITS/oldmacros/ITSreadRecPointsTest.C
deleted file mode 100644 (file)
index a4c6a2f..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-#include "iostream.h"
-
-void ITSreadRecPointsTest (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-     // Anyway, this macro needs to read a gAlice file, so it
-  // clears the gAlice object if there is already one in memory...
-  else {
-               if(gAlice){
-                       delete gAlice;
-                       gAlice = 0;
-               }
-       }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   if (!file) file = new TFile("galice.root");
-   file->ls();
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-//
-//   Loop over events 
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TH = gAlice->TreeH();
-     Int_t ntracks = TH->GetEntries();
-     cout<<"ntracks "<<ntracks<<endl;
-
-     Int_t nbytes = 0;
-
-     AliITSRecPoint  *recp;
-
-     // Get pointers to Alice detectors and Digits containers
-     AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-     if (!ITS) return;
-     TClonesArray *Particles = gAlice->Particles();
-     TTree *TR = gAlice->TreeR();
-     Int_t nent=TR->GetEntries();
-     printf("Found %d entries in the tree (must be one per module per event!)\n",nent);
-
-     TClonesArray *ITSrec  = ITS->RecPoints();
-     for (Int_t mod=0; mod<nent; mod++) {
-       ITS->ResetRecPoints();
-       TR->GetEvent(mod);
-       Int_t nrecp = ITSrec->GetEntries();
-       if (nrecp) printf("Found %d rec points for module %d \n",nrecp,mod);
-       if (!nrecp) continue;
-
-       for (Int_t irec=0;irec<nrecp;irec++) {
-               recp   = (AliITSRecPoint*)ITSrec->UncheckedAt(irec);
-               printf("%d %f %f %d %d %d\n",irec,recp->GetX(),recp->GetZ(),recp->GetLabel(0),recp->GetLabel(1),recp->GetLabel(2));
-
-       }
-     }        
-   }   // event loop 
-   
-     cout<<"END  test for rec points "<<endl;
-
-     file->Close();   
-}
-
-
-
diff --git a/ITS/oldmacros/ITSreadTest.C b/ITS/oldmacros/ITSreadTest.C
deleted file mode 100644 (file)
index ba8f885..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-#include "iostream.h"
-
-void ITSreadTest (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   if (!file) file = new TFile("galice.root");
-   file->ls();
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-//
-//   Loop over events 
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TH = gAlice->TreeH();
-     Int_t ntracks = TH->GetEntries();
-     cout<<"ntracks "<<ntracks<<endl;
-
-   Int_t nbytes = 0;
-
-   AliITSRawClusterSDD  *ITSclust;
-   AliITSRecPoint  *ITSrecp;
-
-// Get pointers to Alice detectors and Digits containers
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   if(!ITS) return;
-   TClonesArray *Particles = gAlice->Particles();
-
-     // fill modules with sorted by module hits
-     Int_t nmodules;
-     ITS->InitModules(-1,nmodules); 
-     ITS->FillModules(nev,-1,nmodules," "," ");
-     //get pointer to modules array
-     TObjArray *ITSmodules = ITS->GetModules();
-     AliITShit *itsHit;
-
-     TTree *TR=gAlice->TreeR();
-     Int_t nentr=TR->GetEntries();
-     printf("Found %d entries in the TreeR (must be one per module per event!)\n",nentr);
-     TClonesArray *ITSrecpoints  = ITS->RecPoints();
-
-     // get the Tree for clusters
-     ITS->GetTreeC(nev);
-     TTree *TC=ITS->TreeC();
-     Int_t nent=TC->GetEntries();
-     printf("Found %d entries in the tree (must be one per module per event!)\n",nent);
-   
-     for (Int_t idettype=0;idettype<3;idettype++) {
-
-       TClonesArray *ITSclusters  = ITS->ClustersAddress(idettype);
-       //printf ("ITSclusters %p \n",ITSclusters);
-
-          if (idettype != 1) continue;
-         for (Int_t mod=0; mod<nent; mod++) {
-             AliITSmodule *itsModule = (AliITSmodule*)ITSmodules->At(mod);
-             Int_t nhits = itsModule->GetNhits();
-              printf("module nhits %d %d\n",mod,nhits);
-             for (Int_t ihit=0;ihit<nhits;ihit++) {
-               itsHit=(AliITShit*)itsModule->GetHit(ihit);
-                printf("ihit x y z %d %f %f %f\n",ihit,itsHit->GetXG(),itsHit->GetYG(),itsHit->GetZG());
-             }
-              
-       
-              ITS->ResetClusters();
-              TC->GetEvent(mod);
-             Int_t nclust = ITSclusters->GetEntries();
-             if (nclust) printf("Found %d clust for module %d in det type %d \n",nclust,mod,idettype);
-             if (!nclust) continue;
-
-              ITS->ResetRecPoints();
-              TR->GetEvent(mod);
-             Int_t nrecp = ITSrecpoints->GetEntries();
-             if (nrecp) printf("Found %d recp for module %d  \n",nrecp,mod);
-
-             for (Int_t clust=0;clust<nclust;clust++) {
-               ITSrecp   = (AliITSRecPoint*)ITSrecpoints->UncheckedAt(clust);
-               printf("recp %d %f %f %f\n",clust,ITSrecp->GetX(),ITSrecp->GetZ(),ITSrecp->GetQ());
-               ITSclust   = (AliITSRawClusterSDD*)ITSclusters->UncheckedAt(clust);
-               printf("clust %d %f %f %f\n",clust,ITSclust->X(),ITSclust->Z(),ITSclust->Q());
-             }
-         }        
-     }
-
-     ITS->ClearModules();
-
-   }   // event loop 
-
-     cout<<"END  test for clusters and hits "<<endl;
-
-     file->Close();   
-}
-
-
-
diff --git a/ITS/oldmacros/ITSsddanalysis.C b/ITS/oldmacros/ITSsddanalysis.C
deleted file mode 100644 (file)
index 82cf5f2..0000000
+++ /dev/null
@@ -1,881 +0,0 @@
-void ITSsddanalysis (Int_t evNumber1=0,Int_t evNumber2=0)
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and fill some histograms.
-//   
-//     Root > .L anal.C   //this loads the macro in memory
-//     Root > anal();     //by default process first event   
-//     Root > anal(2);    //process third event
-//Begin_Html
-/*
-<img src="gif/anal.gif">
-*/
-//End_Html
-/////////////////////////////////////////////////////////////////////////
-    
-// Dynamically link some shared libs
-
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-  } else {
-      delete gAlice;
-      gAlice=0;
-  }
-  
-  // Connect the Root Galice file containing Geometry, Kine and Hits
-  TString *str = new TString("galice.root");
-  TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(str->Data());
-  if (!file) file = new TFile(str->Data(),"UPDATE");
-  
-  // Get AliRun object from file or create it if not on file
-  //   if (!gAlice) {
-  gAlice = (AliRun*)file->Get("gAlice");
-  if (gAlice) printf("AliRun object found on file\n");
-  if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-  //}
-  
-  TH2F *local = new TH2F("local","time vs anode difference",101,-1.01,1.01,210,-210.,210.);
-  TH2F *local1 = new TH2F("local1","time vs anode difference",101,-5.01,5.01,210,-2100.,2100.);
-  TH2F *dtah = new TH2F("dtah","anode difference vs drift time (hits)",210,-21000.,21000.,101,-10000.01,10000.01);
-  TH2F *dtap = new TH2F("dtap","anode difference vs drift time (points)",21000,-21000.,210.,101,-10000.01,10000.01);
-  TH1F *dclutim = new TH1F("dclutim","cluster time difference (dan < 1)",200,-2000.,2000.);
-  TH1F *dfkctim = new TH1F("dfkctim","cluster time difference (dan > 5)",200,-2000.,2000.);
-  TH2F *xy3 = new TH2F("xy3","y vs x",100,-200.02,200.02,100,-200.02,200.02);
-  TH2F *xz3 = new TH2F("xz3","x vs z",100,-200.02,200.02,100,-200.02,200.02);
-  TH2F *yz3 = new TH2F("yz3","y vs z",100,-200.02,200.02,100,-200.02,200.02);
-  TH2F *xy4 = new TH2F("xy4","y vs x",100,-200.02,200.02,100,-200.02,200.02);
-  TH2F *xz4 = new TH2F("xz4","x vs z",100,-200.02,200.02,100,-200.02,200.02);
-  TH2F *yz4 = new TH2F("yz4","y vs z",100,-200.02,200.02,100,-200.02,200.02);
-  TH1F *chd = new TH1F("chargediff","Charge difference (Gen-Rec)",100,-1000.,1000.);
-  TH1F *chr = new TH1F("chargeratio","Charge ratio (Gen/Rec)",100,0.,0.1);
-  TH2F *chp = new TH2F("chp","Point Charge vs time",28,0.,7000.,300,0.,3000.);
-  TH2F *chh = new TH2F("chh","Hit Charge vs time",28,0.,7000.,80,0.,40.);
-  TH2F *dadth = new TH2F("dadth","danode vs dtime (hits)",560,-14000.,14000.,601,-300.5,300.5);
-  TH2F *dadt = new TH2F("dadt","danode vs dtime (points)",280,-7000.,7000.,601,-300.5,300.5);
-  TH2F *aa = new TH2F("aa","anode hit vs point",204,-0.5,50.5.,204,-.5,50.5);
-  TH2F *at = new TH2F("at","anode difference vs drift path (mm)",18,0.,36.,100,-200.,200.);
-  TH2F *tt = new TH2F("tt","time coord. difference (um) vs drift path (mm)",18,0.,36.,100,-200.,200.);
-  TH2F *at1 = new TH2F("at1","(1a) anode difference vs drift path (mm)",18,0.,36.,100,-200.,200.);
-  TH2F *tt1 = new TH2F("tt1","(1a) time coord. difference (um) vs drift path (mm)",18,0.,36.,100,-200.,200.);
-  TH2F *at2 = new TH2F("at2","(2a) anode difference vs drift path (mm)",18,0.,36.,100,-200.,200.);
-  TH2F *tt2 = new TH2F("tt2","(2a) time coord. difference (um) vs drift path (mm)",18,0.,36.,100,-200.,200.);
-  TH2F *asigma = new TH2F("asigma","anode sigma vs drift path (mm)",18,0.,36.,300,0.,300.);
-  TH2F *tsigma = new TH2F("tsigma","tau. vs drift path (mm)",18,0.,36.,200,0.,100.);
-  TH2F *asigma2 = new TH2F("asigma2","2 anode sigma vs drift path (mm)",18,0.,36.,150,0.,300.);
-  
-  TH1F *dtrp = new TH1F("dtrp","Double track separation (microns)",40,0.,2000.);
-  TH1F *dtrpall = new TH1F("dtrpall","Double track separation (mm)",100,0.,100.);
-  TH1F *dtrh = new TH1F("dtrh","Double track separation (microns)",40,0.,2000.);
-  TH1F *dtrhall = new TH1F("dtrhall","Double track separation (mm)",100,0.,100.);
-
-  TH1F *p = new TH1F("p","Momentum ",100,0.,20.);
-  
-  TH1F *effh = new TH1F("effh","Hit Multiplicity vs drift path (mm)",18,0.,36.);
-  TH1F *effp = new TH1F("effp","Point Multiplicity vs drift path (mm)",18,0.,36.);
-  
-  TH2F *anodes = new TH2F("nanodes","Anode Multiplicity vs drift time",28,0.,7000.,5,0.5,5.5);
-  TH2F *andtsm = new TH2F("nand_ntsm","Anode Mult vs Time Mult",15,0.5,15.5,5,0.5,5.5);
-  TH2F *tsampl = new TH2F("nsampls","Sample Multiplicity vs drift time",28,0.,7000.,15,0.5,15.5);
-  TH2F *ntotal = new TH2F("ntotal","Cluster Multiplicity vs drift time",28,0.,7000.,60,0.5,60.5);
-  TH2F *clmult = new TH2F("clmult","Anode Multiplicity vs Total Multiplicity",50,0.5,50.5,5,0.5,5.5);
-  TH2F *amplit1 = new TH2F("amplit1","Point Amplitude vs drift path (mm)",28,0.,7000.,64,0.5,1024.5);
-  TH2F *amplit = new TH2F("amplit","Point Amplitude vs drift path (mm)",28,0.,7000.,60,0.5,600.5);
-  TH1F *hitpnt = new TH1F("hitpnt","Hit-Point Multiplicity",21,-10.5,10.5);
-  
-  TH1F *nmatch = new TH1F("nmatch","Number of matched points",5,-0.5.,4.5);
-  TH1F *rec_vs_time = new TH1F("rec_vs_time","Point Rec. vs drift path",36,0.,36.);
-  TH1F *hit_vs_time = new TH1F("hit_vs_time","Hit vs drift path",36,0.,36.);
-  TH1F *rec_vs_time3 = new TH1F("rec_vs_time3","Point Rec. vs drift path",36,0.,36.);
-  TH1F *hit_vs_time3 = new TH1F("hit_vs_time3","Hit vs drift path",36,0.,36.);
-  TH1F *rec_vs_time4 = new TH1F("rec_vs_time4","Point Rec. vs drift path",36,0.,36.);
-  TH1F *hit_vs_time4 = new TH1F("hit_vs_time4","Hit vs drift path",36,0.,36.);
-  TH1F *rec_vs_time1 = new TH1F("rec_vs_time1","Point Rec. vs drift path",36,0.,36.);
-  TH1F *hit_vs_time1 = new TH1F("hit_vs_time1","Hit vs drift path",36,0.,36.);
-  TH1F *fake_vs_time = new TH1F("fake_vs_time","fake points vs drift path",36,0.,36.);
-  
-  TH1F *noihist = new TH1F("noisehist","noise",80,10.,30.);
-  
-  TH1F *occupancy3 = new TH1F("occupancy3","Occupancy vs Detector Number, Layer 3",20,0.5,20.5);
-  TH1F *occupancy4 = new TH1F("occupancy4","Occupancy vs Detector Number, Layer 4",20,0.5,20.5);
-  
-  TH2F *pntmap3 = new TH2F("pntmap3","Point map Layer 3",20,0.5,20.5,10,0.5,10.5);
-  TH2F *hitmap3 = new TH2F("hitmap3","Hit map Layer 3",20,0.5,20.5,10,0.5,10.5);
-  TH2F *map3 = new TH2F("map3","Hit/Point map Layer 3",20,0.5,20.5,10,0.5,10.5);
-  TH2F *pntmap4 = new TH2F("pntmap4","Point map Layer 4",30,0.5,30.5,10,0.5,10.5);
-  TH2F *hitmap4 = new TH2F("hitmap4","Hit map Layer 4",30,0.5,30.5,10,0.5,10.5);
-  TH2F *map4 = new TH2F("map4","Hit/Point map Layer 4",30,0.5,30.5,10,0.5,10.5);
-  TH2F *xz = new TH2F("xz","X vs Z",50,-5,5.,50,-5.,5.);
-  TH2F *and_tim = new TH2F("and_tim","Tim vs Anode",30,-100,356.,30,-8000.,8000.);
-  TH2F *pand_ptim = new TH2F("pand_ptim","Tim vs Anode",30,-100,356.,30,-8000.,8000.);
-
-  //Int_t nanodes = 256;
-  //TH2F *mappa3hit[14][6][2];
-  //TH2F *mappa4hit[22][8][2];
-  //TH2F *mappa3pnt[14][6][2];
-  //TH2F *mappa4pnt[22][8][2];
-  /*
-    for(Int_t i=0;i<22;i++) {
-    for(Int_t j=0;j<8;j++) {
-    for(Int_t k=0;k<2;k++) {
-    TString *hname = new TString("hitmap_");
-    TString *cname = new TString("pntmap_");
-    Char_t lad[2];
-    sprintf(lad,"%d",i+1);
-    hname->Append(lad);
-    hname->Append("_");
-    cname->Append(lad);
-    cname->Append("_");
-    Char_t det[2];
-    sprintf(det,"%d",j+1);
-    hname->Append(det);
-    hname->Append("_");
-    cname->Append(det);
-    cname->Append("_");
-    Char_t wng[2];
-    sprintf(wng,"%d",k+1);
-    hname->Append(wng);
-    cname->Append(wng);
-    //mappa4hit[i][j][k] = new TH2F(hname->Data(),hname->Data(),nanodes,0.5,nanodes+0.5,256,0.5,256.5);
-    //mappa4pnt[i][j][k] = new TH2F(cname->Data(),cname->Data(),nanodes,0.5,nanodes+0.5,256,0.5,256.5);
-    if(i<14 && j<6) {
-    mappa3hit[i][j][k] = new TH2F(hname->Data(),hname->Data(),nanodes,0.5,nanodes+0.5,256,0.5,256.5);
-    mappa3pnt[i][j][k] = new TH2F(cname->Data(),cname->Data(),nanodes,0.5,nanodes+0.5,256,0.5,256.5);
-    }
-    }
-    }
-    }
-  */
-  AliITS *ITS  = (AliITS*) gAlice->GetModule("ITS");
-  if (!ITS) { cout << "no ITS" << endl; return; }
-    
-  Int_t nparticles = gAlice->GetEvent(0);
-
-  Int_t cp[8]={0,0,0,0,0,0,0,0};
-  
-  AliITSDetType *iDetType=ITS->DetType(1);
-  
-  AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-  if (!res1) {
-    res1=new AliITSresponseSDD("simulated");
-    ITS->SetResponseModel(1,res1);
-  }
-  res1->SetZeroSupp("2D");  // 1D
-  res1->SetParamOptions("same","same");
-  //res1->SetFilenames(" ","$(ALICE_ROOT)/ITS/base.dat","$(ALICE_ROOT)/ITS/2D.dat ");
-  res1->SetCompressParam(cp);
-  res1->SetDriftSpeed(7.3);
-  Float_t vdrift = res1->DriftSpeed();
-  
-  AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->GetSegmentationModel();
-  AliITSgeom *aliitsgeo = ITS->GetITSgeom();
-  
-  Int_t cp[8]={0,0,0,0,0,0,0,0};
-    
-  Int_t dum = 0;
-  Float_t apitch = seg1->Dpz(dum);
-  Float_t tstep = seg1->Dpx(dum);
-  Float_t maxand = seg1->Npz()/2.;
-  //cout << "anodes: " << maxand << ", tstep: " << tstep << endl;
-  
-  Float_t n,b;
-  res1->GetNoiseParam(n,b);
-  printf("SDD: noise baseline %f %f zs option %s data type %s\n",n,b,res1->ZeroSuppOption(),res1->DataType());
-  printf("SDD: DriftSpeed %f TopValue %f\n",res1->DriftSpeed(),res1->DynamicRange());
-  Float_t dif0,dif1;
-  res1->DiffCoeff(dif0,dif1);
-  printf("SDD: dif0 %f dif1 %f\n",dif0,dif1);
-  
-  AliITSsimulationSDD *sim1=new AliITSsimulationSDD(seg1,res1);
-  ITS->SetSimulationModel(1,sim1);
-
-  //
-  //   Loop over events
-  //
-  
-  Int_t Nh=0;
-  Int_t Nh1=0;
-  for (int nev=0; nev<= evNumber2; nev++) {
-    if(nev>0) {
-      nparticles = gAlice->GetEvent(nev);
-      gAlice->SetEvent(nev);
-    }
-    cout << "nparticles  " <<nparticles<<endl;
-    if (nev < evNumber1) continue;
-    if (nparticles <= 0) return;
-
-    // Reset Pointers
-    AliITShit *itsHit;
-    AliITSRecPoint *itsPnt = 0;
-    AliITSRawClusterSDD *itsClu = 0;
-
-    // Reset Event Counters
-    Int_t nGoodTotalHits = 0;
-    Int_t nGoodTotalPnts = 0;
-        
-    // Get Hit, Cluster & Recpoints Tree Pointers
-    
-    TTree *TH = gAlice->TreeH();
-    Int_t nenthit=TH->GetEntries();
-    printf("Found %d entries in the Hit tree (must be one per track per event!)\n",nenthit);
-    
-    ITS->GetTreeC(nev);
-    TTree *TC=ITS->TreeC();
-    Int_t nentclu=TC->GetEntries();
-    printf("Found %d entries in the Cluster tree (must be one per module per event!)\n",nentclu);
-    
-    TTree *TR = gAlice->TreeR();
-    Int_t nentrec=TR->GetEntries();
-    printf("Found %d entries in the Rec tree (must be one per module per event!)\n",nentrec);
-    
-    // check recpoints
-    
-    Int_t nbytes = 0;
-    Int_t totpoints = 0;
-    Int_t totclust = 0;
-    
-    // check hits
-    
-    Int_t nmodules=0;    
-    ITS->InitModules(-1,nmodules); 
-    ITS->FillModules(nev,0,nmodules,"","");
-    
-    TObjArray *fITSmodules = ITS->GetModules();
-    
-    Int_t iDet = 1;  // 1 = SDD
-
-    Int_t first = aliitsgeo->GetStartDet(0);
-    Int_t last = aliitsgeo->GetLastDet(2);
-    Int_t first_ok = aliitsgeo->GetStartDet(iDet);
-    Int_t last_ok = aliitsgeo->GetLastDet(iDet);
-    printf("det type %d first, last %d %d \n",iDet,first,last);
-    
-    TClonesArray *ITSclu = 0;
-    TClonesArray *ITSrec = 0;
-    for (Int_t mod=first_ok; mod<=last_ok; mod++) {
-      cout << "Module: " << mod << endl;
-      //      if(mod < first_ok) continue;
-      //      if(mod > last_ok) continue;
-      // Get Pointers to Clusters & Recpoints TClonesArrays
-    
-      ITSclu  = ITS->ClustersAddress(iDet);
-      ITSrec  = ITS->RecPoints(); 
-    
-      TTree *TR = gAlice->TreeR();
-      Int_t nentrec=TR->GetEntries();
-      TClonesArray *ITSrec  = ITS->RecPoints(); 
-      
-      ITS->ResetClusters();
-      TC->GetEvent(mod);
-      ITS->ResetRecPoints();
-      nbytes += TR->GetEvent(mod);
-      
-      Int_t nrecp = ITSrec->GetEntries();
-      totpoints += nrecp;
-      if (nrecp) printf("Found %d rec points for module %d\n",nrecp,mod);
-      if (!nrecp) continue;
-      
-      Int_t nrecc = ITSclu->GetEntries();
-      totclust += nrecc;
-      if (nrecc) printf("Found %d clusters for module %d\n",nrecc,mod);
-      
-      Int_t nrecp = ITSrec->GetEntries();
-      Int_t startSDD = aliitsgeo->GetStartSDD();
-      Int_t *flagP = new Int_t [nrecp];     
-      memset( flagP, 0, sizeof(Int_t)*nrecp ); 
-
-      //printf("point loop\n");
-
-      Int_t nGoodPnts = 0;
-      for (Int_t pnt=0;pnt<nrecp;pnt++) {
-       itsPnt  = (AliITSRecPoint*)ITSrec->At(pnt);
-       if(!itsPnt) continue;
-       itsClu  = (AliITSRawClusterSDD*)ITSclu->At(pnt);
-       if(!itsClu) continue;
-        //itsClu->PrintInfo(); 
-       nGoodPnts++;
-       nGoodTotalPnts++;
-       
-       Int_t pntlayer;
-       Int_t pntladder;
-       Int_t pntdetector;
-       aliitsgeo->GetModuleId(mod+first,pntlayer,pntladder,pntdetector);
-       Int_t pntmult = itsClu->Samples();
-       Int_t pntands = itsClu->Anodes();
-       Float_t pnttime = itsClu->T();
-       Float_t pntanod = itsClu->A();
-       Float_t pntchrg = itsClu->Q();
-       Float_t pntampl = itsClu->PeakAmpl();
-       Float_t pntpath = pnttime*vdrift/1000.;
-
-       Float_t wy = 0.;
-       if(itsClu->Anodes() != 0.) {
-         wy = pntmult/((Float_t) pntands);
-       }
-       clmult->Fill((Float_t)pntmult,(Float_t) pntands);
-       ntotal->Fill(pnttime,(Float_t)pntmult);
-       tsampl->Fill(pnttime,wy);
-       amplit->Fill(pnttime,pntampl);
-       amplit1->Fill(pnttime,pntampl);
-       
-       //  Detector  occupancy
-       
-       if(pntlayer == 3) {
-         occupancy3->Fill((Float_t) pntdetector,(Float_t) pntmult);
-         //mappa3pnt[pntladder-1][pntdetector-1][0]->Fill(pntanod,pnttime);
-       }
-       if(pntlayer == 4) {
-         occupancy4->Fill((Float_t) pntdetector,(Float_t) pntmult);
-         //mappa4pnt[pntladder-1][pntdetector-1][0]->Fill(pntanod,pnttime);
-       }
-       
-       //  Point  Efficiency  vs  time.
-       
-       effp->Fill(pntpath);
-       anodes->Fill(pnttime,pntands);
-       andtsm->Fill(wy,pntands);
-       chp->Fill(pnttime,pntchrg);
-      }
-      
-      //printf("hit loop\n");
-
-      Float_t sddLength = seg1->Dx();
-      Float_t sddWidth = seg1->Dz();
-      Float_t driftSpeed=res1->DriftSpeed();    
-      
-      Int_t nGoodHits = 0;
-
-      AliITSmodule *Mod = (AliITSmodule *)fITSmodules->At(mod+first);
-      Int_t nhits = Mod->GetNhits();
-      for (Int_t hit=0;hit<nhits;hit++) {
-       itsHit   = (AliITShit*)Mod->GetHit(hit);
-       
-       Float_t avx = 0.;
-       Float_t avy = 0.;
-       Float_t avz = 0.;
-       Int_t ifl = 0;
-       Float_t DepEnergy = 100000.*itsHit->GetIonization();
-       AliITShit *itsHit1 = 0;
-       if(DepEnergy == 0.) { 
-         hit++;
-         if(hit == nhits) break;
-         itsHit1 = (AliITShit*) Mod->GetHit(hit);
-         avx = itsHit1->GetXG();
-         avy = itsHit1->GetYG();
-         avz = itsHit1->GetZG();
-         ifl = 1;
-       }
-       avx += itsHit->GetXG();
-       avy += itsHit->GetYG();
-       avz += itsHit->GetZG();
-       if(DepEnergy == 0.) { 
-         avx /= 2.;
-         avy /= 2.;
-         avz /= 2.;
-       }
-       if(ifl == 0) continue;
-       
-       Float_t px; Float_t py; Float_t pz;
-       itsHit->GetMomentumG(px,py,pz);
-       Float_t ptot = TMath::Sqrt(px*px+py*py+pz*pz);
-       p->Fill(ptot*100);
-       if(ptot < 0.05) continue;
-       
-       Int_t Layer = itsHit->GetLayer();
-       Int_t Ladder = itsHit->GetLadder();
-       Int_t Det = itsHit->GetDetector();
-       
-       Float_t And;
-       Float_t Tim;
-       Float_t x = itsHit->GetXL();
-       Float_t z = itsHit->GetZL();
-       xz->Fill(z,x);
-       seg1->GetPadTxz(x,z);
-       And = z;
-       Tim = x*tstep;
-       and_tim->Fill(And,Tim);
-
-       Float_t And1;
-       Float_t Tim1;
-       Float_t x1;
-       Float_t z1;
-       if(itsHit1) {
-         x1 = itsHit1->GetXL();
-         z1 = itsHit1->GetZL();
-         xz->Fill(z1,x1);
-         seg1->GetPadTxz(x1,z1);
-         And1 = z1;
-         Tim1 = x1*tstep;
-         and_tim->Fill(And1,Tim1);
-       }
-       Float_t DepEnergy = 100000.*itsHit->GetIonization();
-       if(DepEnergy == 0.) DepEnergy = 100000.*itsHit1->GetIonization(); 
-       if(DepEnergy < 5.) continue;    
-
-       if(itsHit1) {
-         Tim += Tim1;
-         Tim /= 2.;
-         And += And1;
-         And /= 2.;
-       }
-       if(And < 0. || And > maxand) { cout << "And: " << And << endl; continue; }
-       Float_t path = TMath::Abs(Tim)*vdrift/1000.;
-       hit_vs_time->Fill(path);
-       if(Layer==3) hit_vs_time3->Fill(path);
-       if(Layer==4) hit_vs_time4->Fill(path);
-       
-       nGoodHits++;
-       nGoodTotalHits++;
-       
-       //if(Layer == 3) mappa3hit[Ladder-1][Det-1][0]->Fill(And,Tim);
-       //if(Layer == 4) mappa4hit[Ladder-1][Det-1][0]->Fill(And,Tim);
-       
-       effh->Fill(path);
-       Float_t ww = DepEnergy;
-       chh->Fill(TMath::Abs(Tim),ww);
-       Int_t inmatches = 0;
-       
-       Float_t diffmin = 100000.;
-       Int_t pntmin = -1;
-
-       //printf("point loop\n");
-       for (Int_t pnt=0;pnt<nrecp;pnt++) {
-         itsPnt  = (AliITSRecPoint*)ITSrec->At(pnt);
-         if(!itsPnt) continue;
-         itsClu  = (AliITSRawClusterSDD*)ITSclu->At(pnt);
-         if(!itsClu) continue;
-         
-         Int_t LayerP;
-         Int_t LadderP;
-         Int_t DetP;
-         aliitsgeo->GetModuleId(mod+first,LayerP,LadderP,DetP);
-         Int_t LayerH =  itsHit->GetLayer();
-         Int_t LadderH =  itsHit->GetLadder();
-         Int_t DetH =  itsHit->GetDetector();
-         if(LayerH != LayerP) continue;
-         if(LadderH != LadderP) continue;
-         if(DetH != DetP) continue;
-
-         Float_t Pand = (Float_t) itsClu->A();
-         if(Pand < 0 || Pand > maxand) { cout << "Pand: " << Pand << endl; continue; }
-         Float_t Ptim = (Float_t) itsClu->T();
-         Float_t Pwng = (Float_t) itsClu->W();
-         if(Pwng == 1) Ptim *= -1.;
-          pand_ptim->Fill(Pand,Ptim);
-         Float_t adiff = And-Pand;
-         Float_t tdiff = Tim-Ptim;  
-         if(And < 0) {
-           printf("tim %f\n",Tim);
-           printf("and %f\n",And);
-         }
-         if(Pwng == 1) tdiff *=-1.;
-         local1->Fill(adiff,tdiff);
-         
-         if(TMath::Abs(adiff) >= 1) continue;
-         if(TMath::Abs(tdiff) >= 100) continue;
-
-         Float_t apdiff = adiff*apitch;
-         Float_t tpdiff = tdiff*vdrift;
-        
-          Float_t diff = TMath::Sqrt( apdiff*apdiff+tpdiff*tpdiff ); 
-         if( diff < diffmin ){
-           diffmin = diff;
-           pntmin = pnt;
-         }
-                 
-          if(TMath::Abs(adiff) < 1. && TMath::Abs(tdiff) < 100.) {
-            inmatches++;
-         }
-       } // loop (points)
-
-       if( pntmin > -1 ) {
-         if( flagP[pntmin] == 1) continue;
-         flagP[pntmin] = 1;
-         itsClu  = (AliITSRawClusterSDD*)ITSclu->At( pntmin );
-         Float_t Pand = (Float_t) itsClu->A();
-         Float_t Ptim = (Float_t) itsClu->T();
-         Float_t Pwng = (Float_t) itsClu->W();
-         Float_t sigma = itsClu->Asigma();
-         Float_t tau = itsClu->Tsigma();
-         Int_t pntands = itsClu->Anodes();
-         if(Pwng == 1) Ptim *= -1.;
-         Float_t adiff = And-Pand;
-         Float_t tdiff = Tim-Ptim;
-         if(Pwng == 1) tdiff *=-1.;
-         local->Fill(adiff,tdiff);
-         
-         Float_t dpath = Ptim*vdrift/1000.;
-         Float_t dpathh = Tim*vdrift/1000.;
-         Float_t adpath = TMath::Abs(dpath);
-         Float_t adpathh = TMath::Abs(dpathh);
-         Float_t apdiff = adiff*apitch;
-         Float_t tpdiff = tdiff*vdrift;
-         aa->Fill(Pand,And);
-         
-         Int_t pntands = itsClu->Anodes();
-         if(pntands == 1) {
-           at1->Fill(adpath,apdiff);
-           tt1->Fill(adpath,tpdiff);
-         } 
-         if(pntands == 2) {
-           at2->Fill(adpath,apdiff);
-           tt2->Fill(adpath,tpdiff);
-         } 
-         
-         at->Fill(adpathh,apdiff);
-         tt->Fill(adpathh,tpdiff);
-         asigma->Fill(adpathh,sigma);
-         tsigma->Fill(adpathh,tau);
-         if(pntands == 2) asigma2->Fill(adpathh,sigma);
-         
-         Float_t *lP = new Float_t[3];
-         lP[0] = itsPnt->GetX();
-         lP[1] = 0.;
-         lP[2] = itsPnt->GetZ();
-         Float_t *gP = new Float_t[3];
-         aliitsgeo->LtoG(LayerH,LadderH,DetH,lP,gP);
-         Float_t dx = avx - gP[0];
-         Float_t dy = avy - gP[1];
-         Float_t dz = avz - gP[2];
-         delete lP;
-         delete gP;
-         
-         Float_t pntchrg = itsClu->Q();
-         Float_t dq = DepEnergy/0.122 - pntchrg;
-         Float_t rq = 0;
-         if(pntchrg != 0) rq = DepEnergy/0.122/((Float_t) pntchrg);
-         if(LayerH == 3) {
-           xy3->Fill(dx,dy);
-           xz3->Fill(dz,dx);
-           yz3->Fill(dz,dy);
-         } else if(LayerH == 4) {
-           xy4->Fill(dx,dy);
-           xz4->Fill(dz,dx);
-           yz4->Fill(dz,dy);
-         }
-         chd->Fill(dq);
-         if(rq != 0.) chr->Fill(rq); 
-         
-         rec_vs_time->Fill(adpathh);
-         if(Layer==3) rec_vs_time3->Fill(adpathh);
-         if(Layer==4) rec_vs_time4->Fill(adpathh);
-       }
-       
-       nmatch->Fill(inmatches);
-      }  // loop hits
-      
-      if(nGoodHits != nGoodPnts) {
-       printf("module: %d",mod+1);
-       printf(", nGoodHits: %d",nGoodHits);
-       printf(", nGoodPnts: %d\n",nGoodPnts);
-      }
-      Float_t nHP = (Float_t) nGoodHits-nGoodPnts;
-      hitpnt->Fill(nHP);
-      
-      Int_t www = 0.;
-      if(nGoodHits != 0) www = nGoodPnts/((Float_t) nGoodHits);
-      if(Layer == 3) {
-       pntmap3->Fill(Ladder,Det,(Float_t) nGoodPnts);
-       hitmap3->Fill(Ladder,Det,(Float_t) nGoodHits);
-       map3->Fill(Ladder,Det,www);
-      }
-      if(Layer == 4) {
-       pntmap4->Fill(Ladder,Det,(Float_t) nGoodPnts);
-       hitmap4->Fill(Ladder,Det,(Float_t) nGoodHits);
-       map4->Fill(Ladder,Det,www);
-      }
-      
-      //printf("double hit loop\n");
-      
-      Stat_t wh = 1.;
-      if(nGoodHits > 1) 
-       wh /= (((Float_t) nGoodHits)*((Float_t) nGoodHits)-1)/2.;
-      else
-       wh = 0.;
-      
-      Int_t *flag = new Int_t[nhits];
-      Int_t nGoodHitsOK = 0;
-      for (Int_t hit=0;hit<nhits;hit++) {
-       flag[hit] = 0;
-       itsHit   = (AliITShit*)Mod->GetHit(hit);
-       Float_t avx = 0.;
-       Float_t avy = 0.;
-       Float_t avz = 0.;
-       Int_t ifl = 0;
-       Float_t DepEnergy = 100000.*itsHit->GetIonization();
-       AliITShit *itsHit1 = 0;
-       if(DepEnergy == 0.) { 
-         hit++;
-         flag[hit] = 0;
-         if(hit == nhits) break;
-         itsHit1 = (AliITShit*) Mod->GetHit(hit);
-         avx = itsHit1->GetXG();
-         avy = itsHit1->GetYG();
-         avz = itsHit1->GetZG();
-         ifl = 1;
-       }
-       avx += itsHit->GetXG();
-       avy += itsHit->GetYG();
-       avz += itsHit->GetZG();
-       if(DepEnergy == 0.) { 
-         avx /= 2.;
-         avy /= 2.;
-         avz /= 2.;
-       }
-       if(DepEnergy < 5. && DepEnergy > 0.) continue;
-       if(ifl == 0) continue;
-
-       Float_t px; Float_t py; Float_t pz;
-       itsHit->GetMomentumG(px,py,pz);
-       Float_t ptot = TMath::Sqrt(px*px+py*py+pz*pz);
-       if(ptot < 0.05) continue;
-       
-       for (Int_t hit1=hit+1;hit1<nhits;hit1++) {
-         itsHit2   = (AliITShit*)Mod->GetHit(hit1);
-         
-         Float_t avx2 = 0.;
-         Float_t avy2 = 0.;
-         Float_t avz2 = 0.;
-         Int_t ifl2 = 0;
-         Float_t DepEnergy2 = 100000.*itsHit2->GetIonization();
-         AliITShit *itsHit3 = 0;
-         if(DepEnergy2 == 0.) { 
-           hit1++;
-           itsHit3 = (AliITShit*) Mod->GetHit(hit1);
-           avx2 = itsHit3->GetXG();
-           avy2 = itsHit3->GetYG();
-           avz2 = itsHit3->GetZG();
-           ifl2 = 1;
-         }
-         avx2 += itsHit2->GetXG();
-         avy2 += itsHit2->GetYG();
-         avz2 += itsHit2->GetZG();
-         if(DepEnergy2 == 0.) { 
-           avx2 /= 2.;
-           avy2 /= 2.;
-           avz2 /= 2.;
-         }
-         if(DepEnergy2 < 5. && DepEnergy2 > 0.) continue;
-         if(itsHit->GetLayer() != itsHit2->GetLayer()) continue;
-         if(itsHit->GetLadder() != itsHit2->GetLadder()) continue;
-         if(itsHit->GetDetector() != itsHit2->GetDetector()) continue;
-         if(ifl2 == 0) continue;
-         
-         Float_t px1; Float_t py1; Float_t pz1;
-         itsHit2->GetMomentumG(px1,py1,pz1);
-         Float_t ptot1 = TMath::Sqrt(px1*px1+py1*py1+pz1*pz1);
-         if(ptot1 < 0.05) continue;
-         
-         Float_t And;
-         Float_t Tim;
-         Float_t x = itsHit->GetXL();
-         Float_t z = itsHit->GetZL();
-         seg1->GetPadTxz(x,z);
-         And = z;
-         Tim = x*tstep;
-         if(And < 0 || And > maxand) continue;
-         Float_t And2;
-         Float_t Tim2;
-         Float_t x2 = itsHit2->GetXL();
-         Float_t z2 = itsHit2->GetZL();
-         seg1->GetPadTxz(x2,z2);
-         And2 = z2;
-         Tim2 = x2*tstep;
-         if(And2 < 0 || And2 > maxand) continue;
-         Float_t da = apitch*(And-And2);
-          Float_t dt = vdrift*(Tim-Tim2);
-         Float_t danh = And-And2;
-         Float_t dtmh = Tim-Tim2;
-         Float_t dist = TMath::Sqrt(da*da+dt*dt);
-         if(dt < 1000.) {
-           Float_t wx = dt*clock/(1000.*vdrift);
-           Float_t wy = da/apitch;
-           dtah->Fill(wx,wy);
-         }
-         if(dist<20.) { cout << "skip hit " << hit1 << endl; flag[hit] = 1; }
-        
-         if(ifl == 1 && ifl2 == 1) {
-           if(dist>10)dtrh->Fill(dist,wh);
-           dtrhall->Fill(dist/1000.,wh);
-           dadth->Fill(dtmh,danh);
-         }
-       }  // end cluster loop
-       
-       Float_t path = TMath::Abs(Tim)*vdrift/1000.;
-       if(flag[hit] == 0) { nGoodHitsOK++; hit_vs_time1->Fill(path); }
-      } // end hit loop
-      delete [] flag;
-      printf("nGoodHits: %d",nGoodHits);
-      printf(", nGoodHitsOK: %d\n",nGoodHitsOK);
-
-      //printf("cluster loop\n");
-      AliITSRawClusterSDD *itsCluFake = 0;
-      Int_t nGoodPntsOK = 0;
-      for( int ip=0; ip<nrecp; ip++) {
-       itsClu  = (AliITSRawClusterSDD*)ITSclu->At(ip);
-       if(!itsClu) continue;
-       Float_t Ptim = (Float_t) itsClu->T();
-       Float_t dpath = Ptim*vdrift/1000.;
-       Float_t adpath = TMath::Abs(dpath);
-       if( flagP[ip] == 1) { nGoodPntsOK++; rec_vs_time1->Fill(dpath); }
-       else {
-         cout << "ip: " << ip << endl;
-         itsCluFake  = (AliITSRawClusterSDD*)ITSclu->At( ip );
-         if(!itsCluFake) continue;
-         cout << "pointer: " << itsCluFake << endl;
-         itsCluFake->PrintInfo();
-         Float_t Ptim = (Float_t) itsCluFake->T();
-         Float_t dpath = Ptim*vdrift/1000.;
-         fake_vs_time->Fill(dpath);  
-       }
-      }
-      
-      Stat_t wp = 1.;
-      if(nGoodPntsOK > 1) 
-       wp /= (((Float_t) nGoodPntsOK)*((Float_t) nGoodPntsOK)-1)/2.;
-      else
-       wp = 0.;
-      
-      //printf("double cluster loop\n");
-      for (Int_t pnt=0;pnt<nrecp;pnt++) {
-        if( flagP[pnt] == 0) continue;
-       itsPnt  = (AliITSRecPoint*)ITSrec->At(pnt);
-       if(!itsPnt) continue;
-       itsClu  = (AliITSRawClusterSDD*)ITSclu->At(pnt);
-       if(!itsClu) continue;
-       AliITSRecPoint *itsPnt1;
-       AliITSRawClusterSDD *itsClu1;
-       for (Int_t pnt1=pnt+1;pnt1<nrecp;pnt1++) {
-         if( flagP[pnt1] == 0) continue;
-         itsPnt1 = (AliITSRecPoint*)ITSrec->At(pnt1);
-         if(!itsPnt1) continue;
-         itsClu1 = (AliITSRawClusterSDD*)ITSclu->At(pnt1);
-         if(!itsClu1) continue;
-         
-         Float_t dan = itsClu->A()-itsClu1->A();
-         Float_t Pwng = (Float_t) itsClu->W();
-         Float_t dt1 = itsClu->T();
-         if(Pwng == 1) dt1 *= -1.;       
-         Float_t dt2 = itsClu1->T();
-         Float_t Pwng = (Float_t) itsClu1->W();
-         if(Pwng == 1) dt2 *= -1.;       
-         Float_t dtm = dt1-dt2;
-         dadt->Fill(dtm,dan);
-         Float_t dap = apitch*(itsClu->A()-itsClu1->A());
-          Float_t dtp = vdrift*(dt1-dt2);
-         Float_t distp = TMath::Sqrt(dap*dap+dtp*dtp);
-         if(TMath::Abs(dan) < 1.) dclutim->Fill(dtp);
-         if(TMath::Abs(dan) > 10.) dfkctim->Fill(dtp); 
-         if(dtp < 1000.) {
-           Float_t wx = dtp*clock;
-           Float_t wy = dap/apitch;
-           dtap->Fill(wx,wy);
-         }
-         dtrp->Fill(distp,wp);
-         dtrpall->Fill(distp/1000.,wp);
-       } // end loop points
-      } // end loop points
-      
-      delete [] flagP;
-    } // end loop modules
-
-    ITS->ClearModules();
-    gAlice->CleanDetectors();
-    
-  } // end loop events
-
-  cout << "open output file" << endl;
-  TFile fhistos("SDD_histos_test.root","RECREATE");
-  local->Write();
-  local1->Write();
-  
-  aa->Write();
-  at->Write();
-  tt->Write();
-  at1->Write();
-  tt1->Write();
-  at2->Write();
-  tt2->Write();
-  asigma->Write();
-  tsigma->Write();
-  asigma2->Write();
-  dadt->Write();
-  dadth->Write();
-  dclutim->Write();
-  dfkctim->Write();
-  xy3->Write();
-  xz3->Write();
-  yz3->Write();
-  xy4->Write();
-  xz4->Write();
-  yz4->Write();
-  chd->Write();
-  chr->Write();
-  chh->Write();
-  chp->Write();
-  dtrp->Write();
-  dtrpall->Write();
-  dtah->Write();
-  dtap->Write();
-  dtrh->Write();
-  dtrhall->Write();
-  effh->Write();
-  effp->Write();
-  rec_vs_time->Write();
-  hit_vs_time->Write();
-  hit_vs_time1->Write();
-  rec_vs_time1->Write();
-  rec_vs_time3->Write();
-  hit_vs_time3->Write();
-  rec_vs_time4->Write();
-  hit_vs_time4->Write();
-  fake_vs_time->Write();
-  p->Write();
-  nmatch->Write();
-  anodes->Write();
-  tsampl->Write();
-  ntotal->Write();
-  clmult->Write();
-  andtsm->Write();
-  amplit->Write();
-  amplit1->Write();
-  hitpnt->Write();
-  noihist->Write();
-  occupancy3->Write();
-  occupancy4->Write();
-  map3->Write();
-  hitmap3->Write();
-  pntmap3->Write();
-  map4->Write();
-  hitmap4->Write();
-  pntmap4->Write();
-  /*
-    for(Int_t i=0;i<22;i++) {
-    for(Int_t j=0;j<8;j++) {
-    for(Int_t k=0;k<2;k++) {
-    //mappa4hit[i][j][k]->Write();
-    //mappa4pnt[i][j][k]->Write();
-    if(i<14 && j<6) {
-    //mappa3hit[i][j][k]->Write();
-    //mappa3pnt[i][j][k]->Write();
-    }
-    }
-    }
-    }
-  */
-  xz->Write();
-  and_tim->Write();
-  pand_ptim->Write();
-  fhistos.Close();
-  file->Close();
-}
-
-
-
-
-
-
diff --git a/ITS/oldmacros/ITSsddtest.C b/ITS/oldmacros/ITSsddtest.C
deleted file mode 100644 (file)
index 3aad476..0000000
+++ /dev/null
@@ -1,391 +0,0 @@
-{
-
-gROOT->Reset();
-
-TFile f("SDD_histos_test.root");
-
-Int_t nbins = 18;
-Float_t dmax = 36.;
-
-a = local->ProjectionX();
-t = local->ProjectionY();
-local->Draw();
-
-TF1 *faa = new TF1("faa","gaus",-100.,100.);
-a->Fit("faa","R","Q",-100.,100.);
-TF1 *fat = new TF1("fat","gaus",-50,50);
-t->Fit("fat","R","Q",-50,50);
-
-//c1->Size(21.,15.);
-c1->SetFillColor(0);
-c1->Clear();
-c1->Divide(1,3);
-c1->cd(1);
-local->Draw();
-c1->cd(2);
-a->Draw();
-c1->cd(3);
-t->Draw();
-
-c1->SaveAs("ITS_res_1.ps");
-
-TH1F *anode_resolution = new TH1F("anoder","Anode resolution vs Drift Path",nbins,0.,dmax);
-TH1D *anodes[nbins];
-Float_t res_anodes[nbins];
-Float_t errres_anodes[nbins];
-Float_t dmin = 60.;
-
-for(Int_t i=0;i<nbins;i++){
-  if(i>6) dmin = 70.;
-  if(i>11) dmin = 90.;
-  TString *aa = new TString("aa_");
-  Char_t ai[2];
-  sprintf(ai,"%d",i+1);
-  aa->Append(ai);
-  anodes[i] = at->ProjectionY(aa->Data(),i,i+1);
-  TF1 *fa = new TF1("fa","gaus",-1.*dmin,dmin);
-  anodes[i]->Fit("fa","R","Q",-1.*dmin,dmin);
-  res_anodes[i] = fa->GetParameter(2);
-  Float_t RMS = anodes[i]->GetRMS();
-  //if(res_anodes[i] > RMS) 
-  res_anodes[i] = RMS;
-  errres_anodes[i] = fa->GetParError(2);
-  anode_resolution->Fill(i*dmax/nbins+dmax/(2*nbins),res_anodes[i]);
-  anode_resolution->SetBinError(i+1,(Stat_t) errres_anodes[i]);
-  anode_resolution->SetMarkerColor(2);
-  anode_resolution->SetLineColor(2);
-}
-c1->Clear();
-f->cd();
-
-TH1F *time_resolution = new TH1F("timer","Time resolution vs Drift Path",nbins,0.,dmax);
-TH1D *times[nbins];
-Float_t res_times[nbins];
-Float_t errres_times[nbins];
-for(Int_t i=0;i<nbins;i++){
-  TString *ta = new TString("tt_");
-  Char_t ti[2];
-  sprintf(ti,"%d",i+1);
-  ta->Append(ti);
-  times[i] = tt->ProjectionY(ta->Data(),i,i+1);
-  TF1 *ft = new TF1("ft","gaus",-50,50);
-  times[i]->Fit("ft","R","Q",-50,50);
-  res_times[i] = ft->GetParameter(2);
-  Float_t RMS = times[i]->GetRMS();
-  //if(res_times[i] > RMS) 
-  res_times[i] = RMS;
-  errres_times[i] = ft->GetParError(2);
-  time_resolution->Fill(i*dmax/nbins+dmax/(2*nbins),res_times[i]);
-  time_resolution->SetBinError(i+1,(Stat_t) errres_times[i]);
-  time_resolution->SetMarkerColor(6);
-  time_resolution->SetLineColor(6);
-}
-c1->Clear();
-
-Float_t x1 = 4000.;
-Float_t x2 = x1;
-Float_t y1 = 94;
-Float_t y2 = 84;
-
-TMarker *m1 = new TMarker(x1,y1,21);
-TMarker *m2 = new TMarker(x2,y2,22);
-Text_t *text1 = "Anode";
-Text_t *text2 = "Time";
-TText *t1 = new TText(x1 + 250,y1-2,text1);
-TText *t2 = new TText(x2 + 250,y2-2,text2);
-//text1->SetLineColor(2);
-//text2->SetLineColor(4);
-
-anode_resolution->SetMarkerStyle(21);
-anode_resolution->SetMaximum(100.);
-anode_resolution->SetMinimum(0.);
-anode_resolution->Draw("Ep");
-//m1->SetColor(2);
-//m2->SetColor(4);
-m1->Draw();
-m2->Draw();
-//t1->Draw();
-//t2->Draw();
-time_resolution->SetMarkerStyle(23);
-time_resolution->Draw("Ep,same");
-c1->SaveAs("ITS_res.ps");
-
-c1->Clear();
-/*
-c1->Divide(1,2);
-c1->cd(1);
-dtrh->Draw();
-dtrp->SetLineColor(2);
-dtrp->Draw("SAME");
-
-c1->cd(2);
-dtrhall->Draw();
-dtrpall->SetLineColor(1);
-//dtrpall->SetLineStyle(2);
-dtrpall->SetLineColor(2);
-dtrpall->Draw("SAME");
-
-c1->SaveAs("ITS_dtr_1.ps");
-*/
-//c1->Size(21.,14.);
-
-c1->Clear();
-at->Draw();
-c1->SaveAs("ITS_at.ps");
-
-c1->Clear();
-tt->Draw();
-c1->SaveAs("ITS_tt.ps");
-
-/*
-c1->cd(2);
-dtrh->Draw();
-dtrp->SetLineColor(1);
-//dtrp->SetLineStyle(2);
-dtrp->SetLineColor(2);
-dtrp->Draw("SAME");
-
-c1->SaveAs("ITS_dtr_2.ps");
-
-effh->SetMinimum(0.9);
-effh->Draw();
-effp->SetLineColor(2);
-effp->Draw("SAME");
-c1->SaveAs("ITS_eff_1.ps");
-*/
-
-hit_vs_time->Draw();
-rec_vs_time->SetLineColor(2);
-rec_vs_time->Draw("SAME");
-c1->SaveAs("ITS_eff_2.ps");
-
-nanodes->ProfileX();
-nanodes_pfx->Draw();
-nsampls->ProfileX();
-nsampls_pfx->Draw();
-nanodes_pfx->SetLineColor(2);
-nanodes_pfx->Draw("SAME");
-c1->SaveAs("ITS_clsize.ps");
-
-/*
-occupancy3->Draw();
-occupancy4->Draw("SAME");
-c1->SaveAs("ITS_occ.ps");
-
-xy3->ProjectionX();
-xz3->ProjectionX();
-xy3->ProjectionY();
-
-xy3_py->Draw();
-xy3_px->Draw("SAME");
-xz3_px->Draw("SAME");
-
-c1->SaveAs("ITS_xyz_3.ps");
-
-xy4->ProjectionX();
-xz4->ProjectionX();
-xy4->ProjectionY();
-
-xy4_py->Draw();
-xy4_px->Draw("SAME");
-xz4_px->Draw("SAME");
-
-c1->SaveAs("ITS_xyz_4.ps");
-*/
-amplit->Draw();
-c1->SaveAs("ITS_ampl_1.ps");
-
-amplit->ProfileX();
-amplit_pfx->Draw();
-c1->SaveAs("ITS_ampl_2.ps");
-
-TF1 *fhc = new TF1("fhc","gaus",-5,5);
-hitpnt->Fit("fhc","R","Q",-5,5);
-hitpnt->Draw();
-c1->SaveAs("ITS_hitpnt.ps");
-
-f.cd();
-anoder->SetMinimum(0.);
-anoder->Draw();
-anoder->SetXTitle("Drift Path (mm)");
-anoder->SetYTitle("Resolution (um)");
-
-TMarker *mk2 = new TMarker(16.,62.,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-TMarker *mk3 = new TMarker(16.,54.,23);
-mk3->SetMarkerColor(6);
-mk3->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(2,90,text);
-Text_t *text0 = "Spatial Resolution";
-TText *t0 = new TText(2,82,text0);
-Text_t *text2 = "Simulation (Anode)";
-TText *t2 = new TText(18,60,text2);
-Text_t *text4 = "Simulation (Time)";
-TText *t4 = new TText(18,52,text4);
-
-t4->Draw();
-t3->Draw();
-t0->Draw();
-t2->Draw();
-
-timer->Draw("SAME");
-c1->SaveAs("ITS_res_check_294.ps");
-
-f.cd();
-nanodes_pfx->SetXTitle("Drift Time (ns)");
-nanodes_pfx->SetYTitle("Anodes/Cluster");
-nanodes_pfx->SetMaximum(3.);
-nanodes_pfx->SetMarkerStyle(21);
-nanodes_pfx->SetLineColor(2);
-nanodes_pfx->SetMarkerColor(2);
-nanodes_pfx->Draw();
-
-TMarker *mk2 = new TMarker(4000.,0.3,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(200,2.7,text);
-Text_t *text0 = "Average Number of Anodes/Cluster";
-TText *t0 = new TText(200,2.4,text0);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(4200,0.2,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_and_check_294.ps");
-
-f.cd();
-nsampls_pfx->SetXTitle("Drift Time (ns)");
-nsampls_pfx->SetYTitle("Time bins/Anode/Cluster");
-nsampls_pfx->SetMaximum(10.);
-nsampls_pfx->SetMarkerStyle(21);
-nsampls_pfx->SetLineColor(2);
-nsampls_pfx->SetMarkerColor(2);
-nsampls_pfx->Draw();
-TMarker *mk2 = new TMarker(4000.,1.,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(200,9.,text);
-Text_t *text0 = "Average Number of Time bins/Anode/Cluster";
-TText *t0 = new TText(200,8.,text0);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(4200,0.8,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_tim_check_294.ps");
-
-f.cd();
-amplit->ProfileX();
-amplit_pfx->SetLineColor(2);
-amplit_pfx->SetMaximum(500.);
-amplit_pfx->SetMarkerStyle(21);
-amplit_pfx->SetMarkerColor(2);
-amplit_pfx->Draw();
-TMarker *mk2 = new TMarker(500.,50,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(1000,450.,text);
-Text_t *text0 = "Peak Amplitude";
-TText *t0 = new TText(1000,400.,text0);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(700,40.,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_amp_check_294.ps");
-
-f.cd();
-chp->ProfileX();
-chp_pfx->SetLineColor(2);
-chp_pfx->SetMaximum(2000.);
-chp_pfx->SetMarkerStyle(21);
-chp_pfx->SetMarkerColor(2);
-chp_pfx->Draw();
-TMarker *mk2 = new TMarker(500.,200.,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(300,1800.,text);
-Text_t *text0 = "Total Charge";
-TText *t0 = new TText(300,1600.,text0);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(700,150.,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_cha_check_294.ps");
-
-TH1F *eff = f.Get("rec_vs_time");
-TH1F *efh = f.Get("hit_vs_time");
-eff->Divide(efh);
-
-TH1F *effn = new TH1F("effn","Efficiency vs. drift path (mm)",18,0.,36.);
-effn->SetMinimum(0.9);
-
-for(Int_t i=1;i<=36;i++) {
-  Float_t cont = eff->GetBinContent(i);
-  i++;
-  cont += eff->GetBinContent(i);
-  cont /= 2.;
-  effn->SetBinContent(i/2,cont);
-}
-
-effn->SetXTitle("Drift Path (mm)");
-effn->SetYTitle("Reconstruction Efficiency");
-effn->SetMaximum(1.2);
-effn->SetMinimum(0.6);
-effn->SetMarkerStyle(21);
-effn->SetLineColor(2);
-effn->SetMarkerColor(2);
-effn->Draw("p");
-TMarker *mk2 = new TMarker(20.,0.7,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(2.,1.13,text);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(22,0.685,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_eff_check_294.ps");
-
-f.cd();
-TH1F *pa = (TH1F *) amplit_pfx;
-TH1F *pc = (TH1F *) chp_pfx;
-
-TH1F *sd = pa;
-sd->Divide(pc);
-
-sd->SetMaximum(0.4);
-TH1F *nsd = new TH1F("nsd","nsd",28,0.,7000.);
-for(Int_t i=1;i<=28;i++) {
-  Float_t sc = sd->GetBinContent(i);
-  nsd->SetBinContent(i,sc);
-}
-nsd->SetMarkerStyle(21);
-nsd->SetMarkerColor(2);
-nsd->SetLineColor(2);
-nsd->SetMaximum(0.4);
-nsd->Draw("p");
-TMarker *mk2 = new TMarker(300.,0.05,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text0 = "294 um pitch detector";
-TText *t0 = new TText(300.,0.35,text0);
-Text_t *text = "Peak Amplitude / Total Charge";
-TText *t3 = new TText(300.,0.3,text);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(500,0.04,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-
-c1->SaveAs("ITS_coa_check_294.ps");
-
-}
diff --git a/ITS/oldmacros/ITSstoreFindableTracks.C b/ITS/oldmacros/ITSstoreFindableTracks.C
deleted file mode 100644 (file)
index 585c740..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-void ITSstoreFindableTracks(const char *nfile = "galice", Int_t evnum = 0)
-{
-       TFile *froot = new TFile(Form("%s.root", nfile), "READ");
-       
-       gAlice = (AliRun*)froot->Get("gAlice");
-       if (!gAlice) {
-               cout << "gAlice not found in file!!!" << endl;
-               return;
-       }
-       
-       AliITS *ITS = (AliITS*)gAlice->GetModule("ITS");
-       
-       Int_t nparts = gAlice->GetEvent(evnum);
-       cout << "Tracks saved in event " << evnum << ": " << nparts << endl;
-       
-       TClonesArray *recPoints = ITS->RecPoints();
-       TTree        *treeRec   = gAlice->TreeR();
-   Int_t         ntracks   = gAlice->GetNtrack(); //FCA correction
-       Int_t         nmodules  = treeRec->GetEntries();
-       Int_t         modmin[6];
-       Int_t         modmax[6];
-       
-       Int_t layer, nlads, ndets;
-       AliITSgeom *gm = ITS->GetITSgeom();
-       for (layer = 0; layer < 6; layer++) {
-               nlads  = gm->GetNladders(layer+1);
-               ndets  = gm->GetNdetectors(layer+1);
-               modmin[layer] = gm->GetModuleIndex(layer+1, 1, 1);
-               modmax[layer] = gm->GetModuleIndex(layer+1, nlads, ndets);
-       }
-       
-       Int_t track, *goodITS[6];
-       for (layer = 0; layer < 6; layer++) {
-               goodITS[layer] = new Int_t[ntracks];
-               for(track = 0; track < ntracks; track++) goodITS[layer][track] = 0;
-       }
-   
-       Int_t irec, index, npoints = 0;
-       for (Int_t layer = 1; layer <= 6; layer++) {
-               for (Int_t mod = modmin[layer-1]; mod <= modmax[layer-1]; mod++) {
-                       ITS->ResetRecPoints();
-                       treeRec->GetEvent(mod);
-                       cout << "\rLayer " << layer << ", module: " << mod << flush;
-                       TObjArrayIter *iter = (TObjArrayIter*)recPoints->MakeIterator();
-                       while ((recp = (AliITSRecPoint*)iter.Next())) {
-                               for (index = 0; index < 3; index++) {
-                                       track = recp->GetLabel(index);
-                                       if(track < 0) continue;
-                                       if(track > ntracks) {
-                                               cerr << " Error on track number \n";
-                                               continue;
-                                       }
-                                       goodITS[layer-1][track] = 1;
-                               } //loop over tracks
-                       } //loop over points
-               } //loop over modules
-               cout << endl;
-       } //loop over layers
-       
-       // histos filled with neural results
-       TFile     *fnew = new TFile(Form("%s_fnd.root", nfile), "RECREATE");
-       TParticle *part = 0;
-       TTree     *tree = new TTree("tree", "Tree of tracks");
-       
-       Int_t count = 0, prim = 0;
-       Double_t pt = 0.0;
-       tree->Branch("count", &count, "count/I");
-       tree->Branch("prim", &prim, "prim/I");
-       tree->Branch("pt", &pt, "pt/D");
-       
-       for(track = 0; track < ntracks; track++) {
-               prim = 0;
-               count = 0;
-               part = gAlice->Particle(track);
-               if (!(track % 10000)) cout << "\rStoring track " << track << flush;
-               if (part->GetFirstMother() == -1) prim = 1;
-               for (layer = 0; layer < 6; layer++) count += goodITS[layer][track];
-               pt = part->Pt();
-               tree->Fill();
-       }
-       
-       fnew->cd();
-       tree->Write("tree", TObject::kOverwrite);
-       fnew->Close();
-}
diff --git a/ITS/oldmacros/ITSstream.C b/ITS/oldmacros/ITSstream.C
deleted file mode 100644 (file)
index 54d72f4..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-#include "iostream.h"
-
-void ITSstream (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("stream.root");
-   if (!file) file = new TFile("stream.root");
-   file->ls();
-
-// Get AliRun object from file or create it if not on file
-
-   /*
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-   */
-
-   AliITSInStream  *IStream;
-
-   char *path=gDirectory->GetPath();
-   printf("path %s\n",path);
-   
-
-   Int_t nkeys=gDirectory->GetNkeys();
-   printf("nkeys %d\n",nkeys);
-   char namecycle[40];
-
-   for (int i=1;i<=nkeys;i++) {
-     //sprintf(namecycle,"%s%d",GetName(),i);
-       sprintf(namecycle,"AliITSInStream;%d",i);
-       printf("namecycle %s\n",namecycle);
-       IStream=(AliITSInStream*)gDirectory->Get(namecycle);
-       //Char_t *str=IStream->Stream();
-       UChar_t *str=IStream->Stream();
-       Int_t len=IStream->StreamLength();
-       printf("str len %p %d\n",str,len);
-       for (int k=0;k<len;k++) {
-        //Char_t elem=str[k];
-           UChar_t elem=str[k];
-          printf("i,k,elem %d %d %d\n",i,k,elem);
-          //if (elem > 0) printf("i,k,elem %d %d %d\n",i,k,elem);
-       }
-   }
-
-     cout<<"END  test for InStream "<<endl;
-
-     file->Close();   
-}
-
-
-
diff --git a/ITS/oldmacros/ITStestSDD.C b/ITS/oldmacros/ITStestSDD.C
deleted file mode 100644 (file)
index f2137ea..0000000
+++ /dev/null
@@ -1,287 +0,0 @@
-{
-
-gROOT->Reset();
-
-TFile f("SDD_histos_test.root");
-
-Int_t nbins = 18;
-Float_t dmax = 36.;
-
-a = local->ProjectionX();
-t = local->ProjectionY();
-
-TF1 *faa = new TF1("faa","gaus",-100.,100.);
-a->Fit("faa","R","Q",-100.,100.);
-TF1 *fat = new TF1("fat","gaus",-50,50);
-t->Fit("fat","R","Q",-50,50);
-
-TH1F *anode_resolution = new TH1F("anoder","Anode resolution vs Drift Path",nbins,0.,dmax);
-TH1D *anodes[nbins];
-Float_t res_anodes[nbins];
-Float_t errres_anodes[nbins];
-Float_t dmin = 60.;
-
-for(Int_t i=0;i<nbins;i++){
-  if(i>6) dmin = 70.;
-  if(i>11) dmin = 90.;
-  TString *aa = new TString("aa_");
-  Char_t ai[2];
-  sprintf(ai,"%d",i+1);
-  aa->Append(ai);
-  anodes[i] = at->ProjectionY(aa->Data(),i,i+1);
-  TF1 *fa = new TF1("fa","gaus",-1.*dmin,dmin);
-  anodes[i]->Fit("fa","R","Q",-1.*dmin,dmin);
-  res_anodes[i] = fa->GetParameter(2);
-  Float_t RMS = anodes[i]->GetRMS();
-  //if(res_anodes[i] > RMS) 
-  res_anodes[i] = RMS;
-  errres_anodes[i] = fa->GetParError(2);
-  anode_resolution->Fill(i*dmax/nbins+dmax/(2*nbins),res_anodes[i]);
-  anode_resolution->SetBinError(i+1,(Stat_t) errres_anodes[i]);
-  anode_resolution->SetMarkerColor(2);
-  anode_resolution->SetLineColor(2);
-}
-
-f->cd();
-
-TH1F *time_resolution = new TH1F("timer","Time resolution vs Drift Path",nbins,0.,dmax);
-TH1D *times[nbins];
-Float_t res_times[nbins];
-Float_t errres_times[nbins];
-for(Int_t i=0;i<nbins;i++){
-  TString *ta = new TString("tt_");
-  Char_t ti[2];
-  sprintf(ti,"%d",i+1);
-  ta->Append(ti);
-  times[i] = tt->ProjectionY(ta->Data(),i,i+1);
-  TF1 *ft = new TF1("ft","gaus",-50,50);
-  times[i]->Fit("ft","R","Q",-50,50);
-  res_times[i] = ft->GetParameter(2);
-  Float_t RMS = times[i]->GetRMS();
-  //if(res_times[i] > RMS) 
-  res_times[i] = RMS;
-  errres_times[i] = ft->GetParError(2);
-  time_resolution->Fill(i*dmax/nbins+dmax/(2*nbins),res_times[i]);
-  time_resolution->SetBinError(i+1,(Stat_t) errres_times[i]);
-  time_resolution->SetMarkerColor(6);
-  time_resolution->SetLineColor(6);
-}
-Float_t x1 = 4000.;
-Float_t x2 = x1;
-Float_t y1 = 94;
-Float_t y2 = 84;
-
-TMarker *m1 = new TMarker(x1,y1,21);
-TMarker *m2 = new TMarker(x2,y2,22);
-Text_t *text1 = "Anode";
-Text_t *text2 = "Time";
-TText *t1 = new TText(x1 + 250,y1-2,text1);
-TText *t2 = new TText(x2 + 250,y2-2,text2);
-
-anode_resolution->SetMarkerStyle(21);
-anode_resolution->SetMaximum(100.);
-time_resolution->SetMarkerStyle(23);
-
-c1->Clear();
-at->Draw();
-c1->SaveAs("ITS_at.ps");
-
-c1->Clear();
-tt->Draw();
-c1->SaveAs("ITS_tt.ps");
-
-nanodes->ProfileX();
-nanodes_pfx->Draw();
-nsampls->ProfileX();
-nsampls_pfx->Draw();
-nanodes_pfx->SetLineColor(2);
-nanodes_pfx->Draw("SAME");
-c1->SaveAs("ITS_clsize.ps");
-
-f.cd();
-anoder->SetMinimum(0.);
-anoder->Draw();
-anoder->SetXTitle("Drift Path (mm)");
-anoder->SetYTitle("Resolution (um)");
-TMarker *mk0 = new TMarker(16.,54.,23);
-mk0->SetMarkerColor(6);
-mk0->Draw();
-TMarker *mk3 = new TMarker(16.,46.,21);
-mk3->SetMarkerColor(2);
-mk3->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(2,90,text);
-Text_t *text0 = "Spatial Resolution";
-TText *t0 = new TText(2,82,text0);
-Text_t *text2 = "Simulation (Anode)";
-TText *t2 = new TText(18,44,text2);
-Text_t *text4 = "Simulation (Time)";
-TText *t4 = new TText(18,52,text4);
-t4->Draw();
-t3->Draw();
-t2->Draw();
-t0->Draw();
-timer->Draw("SAME");
-c1->SaveAs("ITS_res_check_294.ps");
-
-f.cd();
-nanodes_pfx->SetXTitle("Drift Time (ns)");
-nanodes_pfx->SetYTitle("Anodes/Cluster");
-nanodes_pfx->SetMaximum(3.);
-nanodes_pfx->SetMarkerStyle(21);
-nanodes_pfx->SetLineColor(2);
-nanodes_pfx->SetMarkerColor(2);
-nanodes_pfx->Draw();
-TMarker *mk2 = new TMarker(4000.,0.3,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(200,2.7,text);
-Text_t *text0 = "Average Number of Anodes/Cluster";
-TText *t0 = new TText(200,2.4,text0);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(4200,0.2,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_and_check_294.ps");
-
-f.cd();
-nsampls_pfx->SetXTitle("Drift Time (ns)");
-nsampls_pfx->SetYTitle("Time bins/Anode/Cluster");
-nsampls_pfx->SetMaximum(10.);
-nsampls_pfx->SetMarkerStyle(21);
-nsampls_pfx->SetLineColor(2);
-nsampls_pfx->SetMarkerColor(2);
-nsampls_pfx->Draw();
-TMarker *mk2 = new TMarker(4000.,1.,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(200,9.,text);
-Text_t *text0 = "Average Number of Time bins/Anode/Cluster";
-TText *t0 = new TText(200,8.,text0);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(4200,0.8,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_tim_check_294.ps");
-
-f.cd();
-amplit->ProfileX();
-amplit_pfx->SetLineColor(2);
-amplit_pfx->SetMaximum(500.);
-amplit_pfx->SetMarkerStyle(21);
-amplit_pfx->SetMarkerColor(2);
-amplit_pfx->Draw();
-TMarker *mk2 = new TMarker(500.,50,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(1000,450.,text);
-Text_t *text0 = "Peak Amplitude";
-TText *t0 = new TText(1000,400.,text0);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(700,40.,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_amp_check_294.ps");
-
-f.cd();
-chp->ProfileX();
-chp_pfx->SetLineColor(2);
-chp_pfx->SetMaximum(2000.);
-chp_pfx->SetMarkerStyle(21);
-chp_pfx->SetMarkerColor(2);
-chp_pfx->Draw();
-TMarker *mk2 = new TMarker(500.,200.,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(300,1800.,text);
-Text_t *text0 = "Total Charge";
-TText *t0 = new TText(300,1600.,text0);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(700,150.,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_cha_check_294.ps");
-
-TH1F *eff = f.Get("rec_vs_time");
-TH1F *efh = f.Get("hit_vs_time");
-eff->Divide(efh);
-
-TH1F *effn = new TH1F("effn","Efficiency vs. drift path (mm)",18,0.,36.);
-effn->SetMinimum(0.9);
-
-for(Int_t i=1;i<=36;i++) {
-  Float_t cont = eff->GetBinContent(i);
-  i++;
-  cont += eff->GetBinContent(i);
-  cont /= 2.;
-  effn->SetBinContent(i/2,cont);
-}
-
-effn->SetXTitle("Drift Path (mm)");
-effn->SetYTitle("Reconstruction Efficiency");
-effn->SetMaximum(1.2);
-effn->SetMinimum(0.6);
-effn->SetMarkerStyle(21);
-effn->SetLineColor(2);
-effn->SetMarkerColor(2);
-effn->Draw("p");
-TMarker *mk2 = new TMarker(20.,0.7,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(2.,1.13,text);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(22,0.685,text2);
-t3->Draw();
-t0->Draw();
-t2->Draw();
-c1->SaveAs("ITS_eff_check_294.ps");
-
-f.cd();
-ntotal->ProfileX();
-ntotal->SetMarkerStyle(21);
-ntotal->SetLineColor(2);
-ntotal->SetMarkerColor(2);
-ntotal_pfx->SetMaximum(20);
-ntotal_pfx->SetMarkerStyle(21);
-ntotal_pfx->SetMarkerColor(2);
-ntotal_pfx->SetLineColor(2);
-ntotal_pfx->SetXTitle("Drift Time (ns)");
-ntotal_pfx->SetYTitle("N_total");
-ntotal_pfx->Draw();
-/*
-TH1F *nsi = new TH1F("nsi","nsi",28,0.,7000.);
-for(Int_t i=1;i<=28;i++) {
-  f->cd();
-  Float_t tscal = nsampls_pfx->GetBinContent(i);
-  Float_t cont = nanodes_pfx->GetBinContent(i);
-  cont *= tscal;
-  nsi->SetMaximum(20.);
-  nsi->SetBinContent(i,cont);
-}
-nsi->SetMarkerStyle(21);
-nsi->SetMarkerColor(2);
-nsi->SetLineColor(2);
-nsi->Draw("p,SAME");
-*/
-TMarker *mk2 = new TMarker(300.,2.,21);
-mk2->SetMarkerColor(2);
-mk2->Draw();
-Text_t *text = "294 um pitch detector";
-TText *t3 = new TText(300.,18.,text);
-Text_t *text2 = "Simulation";
-TText *t2 = new TText(500,1.8,text2);
-t3->Draw();
-t2->Draw();
-
-c1->SaveAs("ITS_ncl_check_294.ps");
-
-}
diff --git a/ITS/oldmacros/ITStracking.C b/ITS/oldmacros/ITStracking.C
deleted file mode 100644 (file)
index b25f669..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-#ifndef __CINT__
-#include "iostream.h"
-#endif
-
-void ITStracking(Int_t evNumber1=0,Int_t evNumber2=0, Int_t min_t=-1, Int_t max_t=0,Bool_t flagvert=1, Bool_t realmass=0) {
-
-  const char *filename="galice.root";
-  
-  ///////////////// Dynamically link some shared libs ////////////////////////////////
-  
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-  } else {
-    delete gAlice;
-    gAlice=0;
-  }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-   if (!file) file = new TFile("galice.root","UPDATE");
-   //if (!file) file = new TFile(filename);
-
-// Get AliRun object from file or create it if not on file
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-
-  AliITS* IITTSS =(AliITS *)gAlice->GetDetector("ITS");        
-  if (!IITTSS) return;                                           
-
-//
-//   Loop over events 
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (Int_t nev=0; nev<= evNumber2; nev++) {
-       AliITSTrackerV1 *ITStracker = new AliITSTrackerV1(IITTSS,nev,flagvert);
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TR=gAlice->TreeR();
-     Int_t nent=TR->GetEntries();
-     //printf("Found %d entries in the TreeR (must be one per module per event!)\n",nent);
-
-
-     TStopwatch timer;
-         
-         timer.Start();
-     ITStracker->DoTracking(nev,min_t,max_t,file,realmass);    
-     timer.Stop(); timer.Print();
-        AliITSgeom *g1 = IITTSS->GetITSgeom();
-    Int_t NumOfModules = g1->GetIndexMax();       
-         ITStracker->DelMatrix(NumOfModules);
-         delete ITStracker;  
-   }   // event loop  
-   file->Close();   
-}
-
diff --git a/ITS/oldmacros/ITStrackingGeneral.C b/ITS/oldmacros/ITStrackingGeneral.C
deleted file mode 100644 (file)
index 0361501..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-#include "iostream.h"
-
-void ITStrackingGeneral(Int_t evNumber1=0,Int_t evNumber2=0,Int_t min_t=-1,Int_t max_t=0,Bool_t flagvert=1) {
-
-  const char *filename="galice.root";
-  
-  ///////////////// Dynamically link some shared libs ////////////////////////////////
-  
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-  } else {
-    delete gAlice;
-    gAlice=0;
-  }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-   if (!file) file = new TFile("galice.root","UPDATE");
-   //if (!file) file = new TFile(filename);
-
-// Get AliRun object from file or create it if not on file
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-
-
-  AliITS* ITS =(AliITS *)gAlice->GetDetector("ITS");
-  if (!ITS) return;
-
-//
-//   Loop over events 
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TR=gAlice->TreeR();
-     Int_t nent=TR->GetEntries();
-     //printf("Found %d entries in the TreeR (must be one per module per event!)\n",nent);
-
-     ITS->DoTracking(nev,min_t,max_t,file,flagvert);
-   }   // event loop 
-   file->Close();   
-}
-
diff --git a/ITS/oldmacros/ITStracks.C b/ITS/oldmacros/ITStracks.C
deleted file mode 100644 (file)
index 0cd546f..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-#ifndef __CINT__
-#include "AliITSgeom.h"
-#include "TParticle.h"
-  cerr<<"Reading tp good tracks...\n";
-  while (in>>gt[ngood].lab>>gt[ngood].code
-  >>gt[ngood].px >>gt[ngood].py>>gt[ngood].pz
-#endif
-
-struct GoodTrack {
-  Int_t fEventN;
-  Int_t lab;
-  Int_t code;
-  Bool_t flag;
-  Float_t px,py,pz;
-  Float_t x,y,z;
-  Float_t pxg,pyg,pzg,ptg;
-};
-
-
-Int_t ITStracks(Int_t evNumber1=0,Int_t evNumber2=0,Int_t nclust=5) {
-
-  cerr<<"Select tracks which have nclust rec points in ITS...\n";
-
-  GoodTrack gt[30000];
-  Int_t ngood=0;
-  ifstream in("good_tracks_tpc");
-   ofstream out("itsgood_tracks");  
-
-  cerr<<"Reading good tracks...\n";
-  while (in>>gt[ngood].fEventN>>gt[ngood].lab>>gt[ngood].code
-  >>gt[ngood].px >>gt[ngood].py>>gt[ngood].pz
-  >>gt[ngood].x  >>gt[ngood].y >>gt[ngood].z
-  >>gt[ngood].pxg  >>gt[ngood].pyg >>gt[ngood].pzg
-  >>gt[ngood].ptg >>gt[ngood].flag) {
-    ngood++;
-    cerr<<ngood<<'\r';
-    if (ngood==30000) {
-      cerr<<"Too many good tracks !\n";
-      break;
-    }
-  }
-  
-  if (!in.eof()) cerr<<"Read error (good_tracks_tpc) !\n";
-
-  
-   TVector ntrackevtpc(evNumber2-evNumber1 +1);
-   Int_t nchange=-1;
-   Int_t nmev=-100;
-   
-   
-    Int_t i;
-    for( i =0; i<ngood ; i++){ 
-    if(gt[i].fEventN != nmev ){
-    nmev=gt[i].fEventN;
-    nchange++; 
-    }
-    if(nmev == gt[i].fEventN) ntrackevtpc(nchange)++;
-    }
-    
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-  } else {
-    delete gAlice;
-    gAlice=0;
-  }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-  TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-  if (!file) file = new TFile("galice.root","UPDATE");
-  //if (!file) file = new TFile(filename);
-
-// Get AliRun object from file or create it if not on file
-  if (!gAlice) {
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (gAlice) printf("AliRun object found on file\n");
-    if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-  }
-
-
-  AliITS* ITS =(AliITS *)gAlice->GetDetector("ITS");
-  if (!ITS) return;
-
-  //TClonesArray  *recPoints = ITS->RecPoints();
-  //cout<<" recPoints = "<<recPoints<<"\n";
-  Int_t numbpoints=0;
-  AliITSRecPoint *recp=0;
-  Int_t track=-3;
-   // Int_t modmin[]={0,80,240,324,500,1282};
-   // Int_t modmax[]={79,239,323,499,1281,2269};
-        
-       
-        Int_t modmin[6], modmax[6];
-        Int_t Nladder[6], Ndetector[6];
-    AliITSgeom *g1 = ITS->GetITSgeom(); 
-        
-    for(Int_t i=0; i<6; i++) {
-    Nladder[i]=g1->GetNladders(i+1);
-    Ndetector[i]=g1->GetNdetectors(i+1);
-        //cout<<Nladder[i]<<"    "<<Ndetector[i]<<"\n";
-  }
-     for(Int_t i=0; i<6; i++) {
-    modmin[i]=g1->GetModuleIndex(i+1,1,1);
-    modmax[i]=g1->GetModuleIndex(i+1,Nladder[i],Ndetector[i]);    
-        //cout<<modmin[i]<<"    "<<modmax[i]<<"\n";
-  } 
-  
-        
-
-  for (int nev=evNumber1; nev<= evNumber2; nev++) {
-    Int_t nparticles = gAlice->GetEvent(nev);
-    cout << "nev         " << nev <<endl;
-    cout << "nparticles  " << nparticles <<endl;
-    if (nev < evNumber1) continue;
-    if (nparticles <= 0) return; 
-    TClonesArray  *recPoints = ITS->RecPoints();
-   TObjArray *particles=gAlice->Particles();     
-   // TClonesArray *particles=gAlice->Particles(); 
-   // Int_t np=particles->GetEntriesFast();
-   Int_t np=gAlice->GetNtrack(); //FCA correction      
-    TMatrix goodITS(np,6);
-    //Int_t modmin[]={0,80,240,324,500,1282};
-    //Int_t modmax[]={79,239,323,499,1281,2269};
-   // for(Int_t j=0; j<np; j++){
-   //    for(Int_t j1=0; j1<6; j1++) goodITS(j,j1)=0; 
-   // }
-       
-       
-    Int_t nent=gAlice->TreeR()->GetEntries();
-    printf("Found %d entries in the TreeR (must be one per module per event!)\n",nent); //
-
-    for (Int_t layer=1;layer<=6;layer++) {
-      for (Int_t mod=modmin[layer-1];mod<=modmax[layer-1];mod++) {
-            ITS->ResetRecPoints();
-            //gAlice->TreeR()->GetEvent(mod+1); //first entry in TreeR is empty
-            gAlice->TreeR()->GetEvent(mod);   //modificato il 2-3-2001
-            numbpoints = recPoints->GetEntries();
-            if(!numbpoints) continue;
-            for (Int_t irec=0;irec<numbpoints;irec++) {
-                 recp=(AliITSRecPoint*)recPoints->UncheckedAt(irec);
-                for (Int_t it=0;it<3;it++) {
-                    track=recp->GetLabel(it);
-                    if(track<0) continue;
-                    if(track > np) { 
-                      cout<<" Error on track number \n";
-                      getchar();
-                    }
-                    goodITS(track,layer-1)=1;
-                } //loop over tracks
-            } //loop over points
-      } //loop over modules   
-    } //loop over layers
-
-    Int_t mingood=0, maxgood=0,jj=0;
-    if(nev==evNumber1) mingood=0;
-    else
-    {for(jj=evNumber1; jj<nev; jj++) mingood += ntrackevtpc(jj);}
-     for(jj=evNumber1; jj<=nev; jj++) maxgood+= ntrackevtpc(jj);
-    //cout<<" mingood maxgood = "<<mingood<<" "<<maxgood<<"\n";
-     for(i=mingood; i<maxgood; i++){
-       if(gt[i].lab>np) {cout<<" Error on TPC good tracks label \n"; getchar();}          
-       Int_t  ilab=gt[i].lab;
-       Int_t totclust=0;
-       for(Int_t j=0; j<6; j++) totclust+=goodITS(ilab,j);        
-          if(totclust>=nclust && nev==gt[i].fEventN) {
-            gt[i].flag=1;
-          //  printf("label nclusters %d %d\n",gt[i].lab,totclust);  //
-          }
-    }
-          
-    Int_t itsngood=0;
-    if (out) {
-     // for (Int_t ngd=0; ngd<ngood; ngd++) {
-      for(Int_t ngd=mingood; ngd<maxgood; ngd++){
-      TParticle *p = (TParticle*)gAlice->Particle(TMath::Abs(gt[ngd].lab));  //aggiunto 27-9   
-               gt[ngd].x=p->Vx(); gt[ngd].y=p->Vy();   gt[ngd].z=p->Vz();              
-            if(gt[ngd].flag) {
-              out<<gt[ngd].fEventN<<' '<<gt[ngd].lab<<' '<<gt[ngd].code<<' '
-                   <<gt[ngd].px <<' '<<gt[ngd].py<<' '<<gt[ngd].pz<<' '
-                   <<gt[ngd].x  <<' '<<gt[ngd].y <<' '<<gt[ngd].z <<' '
-                   <<gt[ngd].pxg  <<' '<<gt[ngd].pyg <<' '<<gt[ngd].pzg <<' '
-                   <<gt[ngd].ptg<<gt[ngd].flag<<endl;
-              itsngood++;
-            }
-      }
-    } else cerr<<"Can not open file (itsgood_tracks) !\n";
-
-
-    //cerr<<"Number of good tracks in TPC: "<<ngood<<endl;
-    cerr<<"Number of good tracks in TPC: "<<ntrackevtpc(nev)<<endl;
-    cerr<<"Number of good tracks in ITS: "<<itsngood<<endl;
-
-  }   // event loop 
-  
-  out.close();   
-  file->Close();   
-
-  printf("after file close\n");
-  
-  return 0;
-  
-}
-
diff --git a/ITS/oldmacros/ReadITSTracks.C b/ITS/oldmacros/ReadITSTracks.C
deleted file mode 100644 (file)
index ba7be61..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-#include "iostream.h"
-
-
-  void ReadITSTracks(Int_t evNumber1=0,Int_t evNumber2=0) {
-
-  const char *filename="itstracks.root";
-  
-  ///////////////// Dynamically link some shared libs ////////////////////////////////
-  
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-  } else {
-    delete gAlice;
-    gAlice=0;
-  }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-   if (!file) file = new TFile(filename);
-
-//
-//   Loop over events 
-//
-   char tname[30];
-   for (int nev=evNumber1; nev<= evNumber2; nev++) {
-
-  // for (int nev=0; nev<= evNumber2; nev++) {
-
-   sprintf(tname,"TreeT%d",nev);
-   TTree *tracktree=(TTree*)file->Get(tname);
-   TBranch *tbranch=tracktree->GetBranch("ITStracks");
-   cout<<" nev = "<<nev<<"\n";
-       //cout<<" open the file \n"; 
-       
-   Int_t nentr=tracktree->GetEntries();
-
-   TObjArray tarray(nentr);
-  // AliITSIOTrack *iotrack=0;
-   printf("nentr %d\n",nentr);
-       
-   for (Int_t i=0; i<nentr; i++) {
-      AliITSIOTrack *iotrack=new AliITSIOTrack;
-      // tarray.AddAt(new AliITSIOTrack,i);
-      // iotrack=(AliITSiotrack*)tarray.UncheckedAt(i);
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-                tarray.AddLast(iotrack);
-   }
-   //file->Close();             
-       
-         AliITSIOTrack *iotrack;
-   for (Int_t i=0; i<nentr; i++) {
-     AliITSIOTrack *iotrack=new AliITSIOTrack;         
-        iotrack=(AliITSIOTrack*)tarray.UncheckedAt(i);
-        if(!iotrack) continue;
-     Int_t label=iotrack->GetLabel();
-         Double_t phistate=iotrack->GetStatePhi();
-         Double_t tgl=iotrack->GetStateTgl();  
-         Double_t Zstate=iotrack->GetStateZ();
-         Double_t Dr=iotrack->GetStateD();               
-         Double_t C=iotrack->GetStateC();
-         
-     // cout<<" track label = "<<label<<"\n";
-     // cout<<" phi z D tanl C = "<<phistate<<" "<<Zstate<<" "<<Dr<<" "<<tgl<<" "<<C<<"\n";      
-         
-                                           
-           
-
- /*
-       Int_t label=iotrack->GetLabel();
-       Float_t x=iotrack->GetX();
-       Float_t y=iotrack->GetY();
-       Float_t z=iotrack->GetZ();
-       printf(" i %d label x y z %d %f %f %f\n",i,label,x,y,z);
-       // delete iotrack;
-                */
-    delete iotrack;             
-   }  
-
-   }   // event loop 
-   file->Close();   
-}
-
diff --git a/ITS/oldmacros/SPD_ntuple.C b/ITS/oldmacros/SPD_ntuple.C
deleted file mode 100644 (file)
index 5cff606..0000000
+++ /dev/null
@@ -1,559 +0,0 @@
-void SPD_ntuple()
-{
-
-TFile *f = new TFile("SPD_his.root");
-//TH1F *Pix = (TH1F*)f->Get("Pix");
-   
-//gStyle->SetOptStat(1111111);
-//gStyle->SetOptLogy();
-//TCanvas *c1 = new TCanvas("c1","SPD clusters",400,10,600,700);
-TCanvas *c2 = new TCanvas("c2","SPD clusters",400,10,600,700);
-//c1->Divide(2,2);
-c2->Divide(2,2);
-
-/////////////////////////  Ntuple analysis ///////////////////////////////
-
-// ntuple is created inside the hit loop for the hits in the cluster region;
-
-// ntuple1 is created after a finish of the hit loop if one or more hits
-// are in the cluster region;
-
-// ntuple2 is created befor the hit loop for all clusters;
-
-// -----------------------------------------------------------------------
-// lay       - number of ITS layer;
-// x        - coordinates in r*phi(x) direction (mm);
-// z        - coordinates in z direction (mm);
-// nx        - cluster size in the r*phi(x) direction;
-// nz        - cluster size in the z direction;
-// hitprim   - primary particle(hit) flag ( = 1 for primery particle);     
-// dx        - difference of hit(mediate) and reconstructed (from cluster)
-//             coordinates in r*phi(x) direction;
-// dz        - difference of hit(mediate) and reconstructed (from cluster)
-//             coordinates in z direction;
-// noverlaps - number of particles overlapping in one cluster found in this
-//             macros in the cluster region;
-// ntrover   - number of particles overlapping in one cluster found in the
-//             AliITSClusterFinderSPD class; 
-// noverprim - number of primary particles overlapping in one cluster;
-// qcl       - cluster charge in electron number  
-// -------------------------------------------------------------------------
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 2");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 2");
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 1 && hitprim == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 1 && hitprim == 1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 2 && hitprim == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 2 && hitprim == 1");
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 1 && hitprim == 1 && ntrover>=1&&nx==4");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 1 && hitprim == 1 && ntrover>=1&&nz==4");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 2 && hitprim == 1 && ntrover>=1&&nx==4");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 2 && hitprim == 1 && ntrover>=1&&nz==4");
-*/
-
-
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==1&&hitprim==1&&dx>-150&&dx<150");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==1&&hitprim==1&&dz>-500&&dz<500");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==2&&hitprim==1&&dx>-150&&dx<150");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==2&&hitprim==1&&dz>-500&&dz<500");
-
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==1&&hitprim==1&&dx>-150&&dx<150&&ntrover==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==1&&hitprim==1&&dz>-500&&dz<500&&ntrover==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==2&&hitprim==1&&dx>-150&&dx<150&&ntrover==1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==2&&hitprim==1&&dz>-500&&dz<500&&ntrover==1");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==1&&hitprim==1&&nx>4");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==1&&hitprim==1&&nz>4");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==2&&hitprim==1&&nx>4");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==2&&hitprim==1&&nz>4");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("noverlaps","lay == 1&&noverprim>0&&noverlaps>0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverlaps","lay == 2&&noverprim>0&&noverlaps>0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("ntrover","lay == 1&&noverprim>0&&ntrover>0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("ntrover","lay == 2&&noverprim>0&&ntrover>0");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("noverprim","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverprim","lay == 2");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("noverprim","lay == 1 && noverprim < 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverprim","lay == 2 && noverprim < 1");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nx:nz","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nx:nz","lay == 2");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("qcl","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("qcl","lay == 2");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nx","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nx","lay == 2");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nz","lay == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nz","lay == 2");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nx","lay == 1&&noverprim>0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nx","lay == 2&&noverprim>0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nz","lay == 1 && noverprim>0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nz","lay == 2 && noverprim>0");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("x","lay == 1&&noverprim>=0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("x","lay == 2&&noverprim>=0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("z","lay == 1 && noverprim>=0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("z","lay == 2 && noverprim>=0");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nx","lay == 1&&noverprim>0 && ntrover == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nx","lay == 2&&noverprim>0 && ntrover == 1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nz","lay == 1 && noverprim>0 && ntrover == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nz","lay == 2 && noverprim>0 && ntrover ==1");
-      */
-            
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 1&&noverprim>0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dx","lay == 2&&noverprim>0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dz","lay == 1 && noverprim>0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 2 && noverprim>0");
-*/
-
-      /*            
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dx","lay == 2");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dz","lay == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 2");
-      */
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("x","lay==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("z","lay==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("x","lay==2");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("z","lay==2");
-      */
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("nx","lay==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("nz","lay==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("nx","lay==2");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("nz","lay==2");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("qcl","lay==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("nx","lay==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("qcl","lay==2");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("nz","lay==2");
-*/
-      
-/////////////////////   Histogramm analysis  ////////////////////////
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Xres1->SetFillColor(42);
-      Xres1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Zres1->SetFillColor(42);
-      Zres1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Xres2->SetFillColor(46);
-      Xres2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Zres2->SetFillColor(46);
-      Zres2->Draw();
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Nzpix1->SetFillColor(42);
-      Nzpix1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Nxpix1->SetFillColor(42);
-      Nxpix1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Nzpix2->SetFillColor(46);
-      Nzpix2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Nxpix2->SetFillColor(46);
-      Nxpix2->Draw();
-      */                         
-      
-      /*                          
-c2->cd(1);
-gPad->SetFillColor(33);
-      Zpix1->SetFillColor(42);
-      Zpix1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Xpix1->SetFillColor(46);
-      Xpix1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Zpix2->SetFillColor(42);
-      Zpix2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Xpix2->SetFillColor(46);
-      Xpix2->Draw();
-      */
-
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Theta1->SetFillColor(42);
-      Theta1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Phi1->SetFillColor(46);
-      Phi1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Theta2->SetFillColor(42);
-      Theta2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Phi2->SetFillColor(46);
-      Phi2->Draw();
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Ptot1->SetFillColor(42);
-      Ptot1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Pz1->SetFillColor(46);
-      Pz1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Ptot2->SetFillColor(42);
-      Ptot2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Pz2->SetFillColor(46);
-      Pz2->Draw();
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Eta1->SetFillColor(42);
-      Eta1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Y1->SetFillColor(46);
-      Y1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Eta2->SetFillColor(42);
-      Eta2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Y2->SetFillColor(46);
-      Y2->Draw();
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Eta1Den->SetFillColor(42);
-      Eta1Den->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Y1Den->SetFillColor(46);
-      Y1Den->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Eta2Den->SetFillColor(42);
-      Eta2Den->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Y2Den->SetFillColor(46);
-      Y2Den->Draw();
-      */
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Eta1DenA->SetFillColor(42);
-      Eta1DenA->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Y1DenA->SetFillColor(46);
-      Y1DenA->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Eta2DenA->SetFillColor(42);
-      Eta2DenA->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Y2DenA->SetFillColor(46);
-      Y2DenA->Draw();
-      */
-     
-      /*                       
-c2->Draw();   
-c2->Print("spd_res.ps");
-      */
-      /*                        
-c2->Draw();   
-c2->Print("spd_clsize.ps");
-      */    
-
-}
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/SPD_ntuple_Dubna.C b/ITS/oldmacros/SPD_ntuple_Dubna.C
deleted file mode 100644 (file)
index 4294ab7..0000000
+++ /dev/null
@@ -1,560 +0,0 @@
-void SPD_ntuple_Dubna()
-{
-
-TFile *f = new TFile("SPD_his_dubna.root");
-//TH1F *Pix = (TH1F*)f->Get("Pix");
-   
-//gStyle->SetOptStat(1111111);
-//gStyle->SetOptLogy();
-//TCanvas *c1 = new TCanvas("c1","SPD clusters",400,10,600,700);
-TCanvas *c2 = new TCanvas("c2","SPD clusters",400,10,600,700);
-//c1->Divide(2,2);
-c2->Divide(2,2);
-
-/////////////////////////  Ntuple analysis ///////////////////////////////
-
-// ntuple is created inside the hit loop for the hits in the cluster region;
-
-// ntuple1 is created after a finish of the hit loop if one or more hits
-// are in the cluster region;
-
-// ntuple2 is created befor the hit loop for all clusters;
-
-// -----------------------------------------------------------------------
-// lay       - number of ITS layer;
-// x        - coordinates in r*phi(x) direction (mm);
-// z        - coordinates in z direction (mm);
-// nx        - cluster size in the r*phi(x) direction;
-// nz        - cluster size in the z direction;
-// hitprim   - primary particle(hit) flag ( = 1 for primery particle);     
-// dx        - difference of hit(mediate) and reconstructed (from cluster)
-//             coordinates in r*phi(x) direction;
-// dz        - difference of hit(mediate) and reconstructed (from cluster)
-//             coordinates in z direction;
-// noverlaps - number of particles overlapping in one cluster found in this
-//             macros in the cluster region;
-// ntrover   - number of particles overlapping in one cluster found in the
-//             AliITSClusterFinderSPD class; 
-// noverprim - number of primary particles overlapping in one cluster;
-// qcl       - cluster charge in electron number  
-// -------------------------------------------------------------------------
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 2");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 2");
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 1 && hitprim == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 1 && hitprim == 1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 2 && hitprim == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 2 && hitprim == 1");
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 1 && hitprim == 1 && ntrover>=1&&nx==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 1 && hitprim == 1 && ntrover>=1&&nz==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 2 && hitprim == 1 && ntrover>=1&&nx==1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 2 && hitprim == 1 && ntrover>=1&&nz==1");
-*/
-
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==1&&hitprim==1&&abs(dx)<150&&nx==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==1&&hitprim==1&&abs(dz)<500&&nz==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==2&&hitprim==1&&abs(dx)<150&&nx==1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==2&&hitprim==1&&abs(dz)<500&&nz==1");
-*/
-
-
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==1&&hitprim==1&&abs(dx)<150&&ntrover==1&&nx>0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==1&&hitprim==1&&abs(dz)<500&&ntrover==1&&nz>0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==2&&hitprim==1&&abs(dx)<150&&ntrover==1&&nx>0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==2&&hitprim==1&&abs(dz)<500&&ntrover==1&&nz>0");
-
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==1&&hitprim==1&&nx==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==1&&hitprim==1&&nz==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay==2&&hitprim==1&&nx==1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay==2&&hitprim==1&&nz==1");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("noverlaps","lay == 1&&noverprim>0&&noverlaps>1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverlaps","lay == 2&&noverprim>0&&noverlaps>1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("ntrover","lay == 1&&noverprim>0&&ntrover>1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("ntrover","lay == 2&&noverprim>0&&ntrover>1");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("noverprim","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverprim","lay == 2");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("noverprim","lay == 1 && noverprim < 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverprim","lay == 2 && noverprim < 1");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nx:nz","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nx:nz","lay == 2");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("qcl","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("qcl","lay == 2");
-      */
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nx","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nx","lay == 2");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nz","lay == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nz","lay == 2");
-      */
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nx","lay == 1&&noverprim>0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nx","lay == 2&&noverprim>0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nz","lay == 1 && noverprim>0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nz","lay == 2 && noverprim>0");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("x","lay == 1&&noverprim>=0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("x","lay == 2&&noverprim>=0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("z","lay == 1 && noverprim>=0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("z","lay == 2 && noverprim>=0");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nx","lay == 1&&noverprim>0 && ntrover == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nx","lay == 2&&noverprim>0 && ntrover == 1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nz","lay == 1 && noverprim>0 && ntrover == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nz","lay == 2 && noverprim>0 && ntrover ==1");
-      */
-            
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 1&&noverprim>0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dx","lay == 2&&noverprim>0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dz","lay == 1 && noverprim>0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 2 && noverprim>0");
-*/
-
-      /*            
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dx","lay == 2");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dz","lay == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 2");
-      */
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("x","lay==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("z","lay==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("x","lay==2");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("z","lay==2");
-      */
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("nx","lay==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("nz","lay==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("nx","lay==2");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("nz","lay==2");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("qcl","lay==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("nx","lay==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(42);
-      ntuple2->Draw("qcl","lay==2");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple2->SetFillColor(46);
-      ntuple2->Draw("nz","lay==2");
-*/
-      
-/////////////////////   Histogramm analysis  ////////////////////////
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Xres1->SetFillColor(42);
-      Xres1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Zres1->SetFillColor(42);
-      Zres1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Xres2->SetFillColor(46);
-      Xres2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Zres2->SetFillColor(46);
-      Zres2->Draw();
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Nzpix1->SetFillColor(42);
-      Nzpix1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Nxpix1->SetFillColor(42);
-      Nxpix1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Nzpix2->SetFillColor(46);
-      Nzpix2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Nxpix2->SetFillColor(46);
-      Nxpix2->Draw();
-      */                         
-      
-      /*                          
-c2->cd(1);
-gPad->SetFillColor(33);
-      Zpix1->SetFillColor(42);
-      Zpix1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Xpix1->SetFillColor(46);
-      Xpix1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Zpix2->SetFillColor(42);
-      Zpix2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Xpix2->SetFillColor(46);
-      Xpix2->Draw();
-      */
-
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Theta1->SetFillColor(42);
-      Theta1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Phi1->SetFillColor(46);
-      Phi1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Theta2->SetFillColor(42);
-      Theta2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Phi2->SetFillColor(46);
-      Phi2->Draw();
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Ptot1->SetFillColor(42);
-      Ptot1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Pz1->SetFillColor(46);
-      Pz1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Ptot2->SetFillColor(42);
-      Ptot2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Pz2->SetFillColor(46);
-      Pz2->Draw();
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Eta1->SetFillColor(42);
-      Eta1->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Y1->SetFillColor(46);
-      Y1->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Eta2->SetFillColor(42);
-      Eta2->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Y2->SetFillColor(46);
-      Y2->Draw();
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Eta1Den->SetFillColor(42);
-      Eta1Den->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Y1Den->SetFillColor(46);
-      Y1Den->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Eta2Den->SetFillColor(42);
-      Eta2Den->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Y2Den->SetFillColor(46);
-      Y2Den->Draw();
-      */
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      Eta1DenA->SetFillColor(42);
-      Eta1DenA->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      Y1DenA->SetFillColor(46);
-      Y1DenA->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      Eta2DenA->SetFillColor(42);
-      Eta2DenA->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      Y2DenA->SetFillColor(46);
-      Y2DenA->Draw();
-      */
-     
-      /*                       
-c2->Draw();   
-c2->Print("spd_res.ps");
-      */
-      /*                        
-c2->Draw();   
-c2->Print("spd_clsize.ps");
-      */    
-
-}
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/SPDclusterTest.C b/ITS/oldmacros/SPDclusterTest.C
deleted file mode 100644 (file)
index 816fcb7..0000000
+++ /dev/null
@@ -1,862 +0,0 @@
-void SPDclusterTest(Int_t evNumber1=0,Int_t evNumber2=0){
- //
- //  macro to monitor the SPD digitization and clusterization done with
- //  the Bari/Salerno model
- //
- //  R. Caliandro 15/05/2001 
- //
- //
- //--plots displayed:
- //
- //--pag1:  number of hits     per SPD detector (1-->250)
- //         number of hits     per SPD detector (1-->250)
- //         number of clusters per SPD detector (1-->250)
- //
- //--pag2:  r-phi cluster length layer 1 (red)
- //         z     cluster length layer 1 (red)
- //         r-phi cluster length layer 2 (blue)
- //         z     cluster length layer 2 (blue)
- //
- //--pag3:  r-phi resolution layer 1 (red)
- //         z     resolution layer 1 (red)
- //         r-phi resolution layer 2 (blue)
- //         z     resolution layer 2 (blue)
- //
- //--pag4:  Cluster shape analysis for clusters of 1, 2 and 3 digits
- //         zdim versus xdim for clusters of 4 digits
- //
- // input file name, digitized and clusterized
- char *filein="galice.root";
- // output file name, containing histograms
- char *fileout="SPD_his.root";
- // flag for debugging: 0=no debugging, 1=debugging
- Int_t debug=0;
-
-
- // Dynamically link some shared libs
- if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
- } else {
-    delete gAlice;
-    gAlice=0;
- }
-
-   
- // Connect the Root Galice file containing Geometry, Kine and Hits
- TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filein);
- if (!file) file = new TFile(filein);
-
- // Get AliRun object from file or create it if not on file
- if (!gAlice) {
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (gAlice) printf("AliRun object found on file\n");
-    if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
- }
-
-
-//=======================================================
-//--booking of ntuples 
-
-//--ntuple for each detector
-  TNtuple *ntuple2 = new TNtuple("ntuple2","","ndet:lay:lad:det:nhits:ndig:nclus");
-//--ntuple for each cluster 
-  TNtuple *ntuple = new TNtuple("ntuple","","ndet:iclus:ndigclus:xdim:zdim:xdiff:zdiff:anglex:anglez:pmom:errx:errz");
-
-//--booking of histograms 
-//layer 1
-  TH1F *hist1n1 = new TH1F("hist1n1","xdim",15,0.5,15.5);
-  TH1F *hist2n1 = new TH1F("hist2n1","zdim",10,0.5,10.5);
-  TH1F *hist3n1 = new TH1F("hist3n1","dig/clus",20,0.5,20.5);
-  TH1F *hist4n1 = new TH1F("hist4n1","errx",100,0,0.01);
-  TH1F *hist5n1 = new TH1F("hist5n1","errz",500,0,0.05);
-  TH2F *hist7n1 = new TH2F("hist7n1","xdim:delx",80,0,800.,15,0.5,15.5);
-  TH2F *hist8n1 = new TH2F("hist8n1","zdim:delz",180,0,1800.,10,0.5,10.5);
-//layer 2
-  TH1F *hist1n2 = new TH1F("hist1n2","xdim",15,0.5,15.5);
-  TH1F *hist2n2 = new TH1F("hist2n2","zdim",10,0.5,10.5);
-  TH1F *hist3n2 = new TH1F("hist3n2","dig/clus",20,0.5,20.5);
-  TH1F *hist4n2 = new TH1F("hist4n2","errx",100,0,0.01);
-  TH1F *hist5n2 = new TH1F("hist5n2","errz",500,0,0.05);
-  TH2F *hist7n2 = new TH2F("hist7n2","xdim:delx",80,0,800.,15,0.5,15.5);
-  TH2F *hist8n2 = new TH2F("hist8n2","zdim:delz",180,0,1800.,10,0.5,10.5);
-//--resolution 
-  TH1F *hist1 = new TH1F("hist1","xdiff",200,-100,100);
-  TH1F *hist3 = new TH1F("hist3","xdiff",200,-100,100);
-  TH1F *hist2 = new TH1F("hist2","zdiff",170,-850,850);
-  TH1F *hist4 = new TH1F("hist4","zdiff",170,-850,850);
-//--momentum 
-  TH1F *hist5 = new TH1F("hist5","pmom",200,0,2000);
-//--rapidity 
-  TH1F *hist6 = new TH1F("hist6","rapidity",60,-3,3);
-  TH1F *hist6b= new TH1F("hist6b","rapidity - charged tracks",60,-3,3);
-  TH1F *hist6b1= new TH1F("hist6b1","rapidity - charged tracks SPD",60,-3,3);
-//--pseudo-rapidity
-  TH1F *hist6p = new TH1F("hist6p","eta - charged tracks ",60,-3,3);
-  TH1F *hist6p1 = new TH1F("hist6p1","eta - charged tracks SPD ",60,-3,3);
-  TH1F *hist6p2 = new TH1F("hist6p2","eta - charged tracks SPD 2 ",60,-3,3);
-//--resolution vs angle
-  TH1F *hist11n1=new TH1F("hist11n1","anglex - layer 1",180,-90,90);
-  TH1F *hist11n2=new TH1F("hist11n2","anglex - layer 2",180,-90,90);
-  TH1F *hist12n1=new TH1F("hist12n1","anglez - layer 1",360,-180,180);
-  TH1F *hist12n2=new TH1F("hist12n2","anglez - layer 2",360,-180,180);
-  TH2F *hist13n1=new TH2F("hist13n1","xidff:anglex",20,-15,15,200,-100,100);
-  TH2F *hist13n2=new TH2F("hist13n2","xidff:anglex",20,-30,-15,200,-100,100);
-  TH2F *hist14n1=new TH2F("hist14n1","zidff:anglez",18,-90,90,170,-850,850);
-  TH2F *hist14n2=new TH2F("hist14n2","zidff:anglez",18,-90,90,170,-850,850);
-//--histograms for cluster shape analysis
-  TH1F *histsp1=new TH1F("histsp1","Cluster shape (1)",10,0.5,10.5);
-  TH2F *histsp2=new TH2F("histsp2","Cluster shape (2)",5,0.5,5.5,5,0.5,5.5);
-//=======================================================
-
- //loop over events
- for (int nev=0; nev<= evNumber2; nev++) {
-   Int_t nparticles = gAlice->GetEvent(nev);
-   cout << "nev         " <<nev<<endl;
-   cout << "nparticles  " <<nparticles<<endl;
-   if (nev < evNumber1) continue;
-   if (nparticles <= 0) return;
-
-   TTree *TH        = gAlice->TreeH();
-   Int_t ntracks    = TH->GetEntries();
-   cout << "ntracks  " <<ntracks<<endl;
-
-   // Get pointers to Alice detectors and Digit containers
-   AliITS *ITS  = (AliITS *)gAlice->GetModule("ITS");
-   //to get the segmentation pointer
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   //TClonesArray *Particles = gAlice->Particles();
-   if(!ITS) return;
-
-   // fill modules with sorted by module hits
-   Int_t nmodules;
-   ITS->InitModules(-1,nmodules);
-   ITS->FillModules(nev,evNumber2,nmodules," "," ");
-
-   // get pointer to modules array
-   TObjArray *mods = ITS->GetModules();
-   AliITShit *itsHit;
-
-
-   //get the Tree for clusters
-   ITS->GetTreeC(nev);
-   TTree *TC=ITS->TreeC();
-   //TC->Print();
-   Int_t nent=TC->GetEntries();
-   printf("Found %d entries in the tree of clusters)\n",nent);
-   TClonesArray *ITSclusters = ITS->ClustersAddress(0);
-   printf("ITSclusters %p\n",ITSclusters);
-
-   //get the Tree for digits
-   TTree *TD = gAlice->TreeD();
-   //TD->Print();
-   Int_t nentd=TD->GetEntries();
-   printf("Found %d entries in the tree of digits)\n",nentd);
-   TObjArray *fBranches=TD->GetListOfBranches();
-   TBranch *branch = (TBranch*)fBranches->UncheckedAt(0);
-   printf ("branch %p entries %d \n",branch,branch->GetEntries());
-   TClonesArray *ITSdigits  = ITS->DigitsAddress(0);
-   printf ("ITSdigits %p \n",ITSdigits);
-
-   //get the Tree for rec points
-   TTree *TR = gAlice->TreeR();
-   //TR->Print();
-   Int_t nentr=TR->GetEntries();
-   printf("Found %d entries in the tree of rec points)\n",nentr);
-   TClonesArray *ITSrec  = ITS->RecPoints();
-   printf ("ITSrec %p \n",ITSrec);
-   AliITSRecPoint  *recp;
-
-  // calculus of rapidity distribution for the generated tracks
-  gAlice-> ResetHits();
-  TParticle *particle;
-  for (Int_t track=0; track<ntracks; track++)
-  {
-    particle  = (TParticle*)gAlice->Particle(track);
-    Int_t ikparen   = particle -> GetFirstMother();
-    Double_t charge = particle -> GetPDG() ->Charge();
-    charge = charge/3.;  //charge is multiplied by 3 in PDG
-    Double_t mass   = particle -> GetPDG() -> Mass();
-    Double_t eta    = particle -> Eta();
-    Int_t pdgcode   = particle -> GetPdgCode();
-    char* title     = particle -> GetTitle();
-    if (ikparen<0)
-    {   
-      Double_t part_ene = particle->Energy();
-      Double_t part_pz  = particle->Pz();
-      Double_t rapid;
-      if (part_ene != part_pz) 
-      {
-        rapid=0.5*TMath::Log((part_ene+part_pz)/(part_ene-part_pz));
-      }
-      else {
-        rapid = 1.e30;
-      }
-      // filling of the rapidity histogram
-      hist6->Fill( (Float_t) rapid);
-      if( charge != 0 ) {
-        hist6b->Fill( (Float_t) rapid);
-        hist6p->Fill( (Float_t) eta);
-      }
-//          printf("charge= %f, mass = %f , pdg= %d, title = %s\n",
-//                    charge,mass,pdgcode,title);
-    }
-  }
-
-  AliITSgeom *g = ((AliITS *)ITS)->GetITSgeom(); 
-  Int_t lay, lad, det;
-  //printf("Starts loop on SPD detectors\n");
-
-
-  //loop over the pixel detectors index=0-79     (1-20)*4 layer 1  
-  //                              index=80-239   (1-40)*4 layer 2
-  for (Int_t index=g->GetStartSPD();index<=g->GetLastSPD();index++) 
-//  for (Int_t index=g->GetStartSPD();index<1;index++)  //debug
-  {
-  
-    g->GetModuleId(index,lay,lad,det); 
-    //printf("detector %d (lay=%d lad=%d det=%d)\n",index+1,lay,lad,det);
-
-    AliITSmodule *itsModule = (AliITSmodule*) mods->At(index);
-    Int_t numofhits = itsModule->GetNhits();
-    //printf("number of hits %d\n",numofhits);
-    if(!numofhits) continue;
-
-    //---------- starts test on digits
-    ITS->ResetDigits();
-    TD->GetEvent(index);
-    Int_t ndigits = ITSdigits->GetEntriesFast();
-    //if (ndigits) printf("Found %d digits for module %d \n",ndigits,index+1);
-    if (!ndigits) printf("no digits found \n");
-
-
-
-   if(debug==1) {
-    //loop on digits
-    for (Int_t digit=0;digit<ndigits;digit++) {
-        ITSdigit   = (AliITSdigitSPD*)ITSdigits->UncheckedAt(digit);
-        printf("digit=%d fCoord1=%d FCoord2=%d fSignal=%d fTracks=%d fHits=%d \n",digit,ITSdigit->fCoord1,ITSdigit->fCoord2,ITSdigit->fSignal,ITSdigit->fTracks[0],ITSdigit->fHits[0]);
-     }
-     cout<<"END  test for digits "<<endl;
-    }
-
-
-    //---------- starts test on clusters
-    ITS->ResetClusters();
-    TC->GetEvent(index);
-    Int_t nclust = ITSclusters->GetEntries();
-    //printf("Found %d clusters \n",nclust);
-    if (!nclust) printf("no clusters found \n");
-
-
-   if(debug==1) {
-     //loop on clusters
-     for (Int_t clu=0;clu<nclust;clu++)
-     {
-      //itsclu = (AliITSRawClusterSPD*) ITSclusters->UncheckedAt(clu);
-      itsclu = (AliITSRawClusterSPD*) ITSclusters->At(clu);
-      printf("cluster %d nZ=%f nX=%f Q=%f Z=%f X=%f\n",clu+1,itsclu->NclZ(),
-                      itsclu->NclX(),itsclu->Q(),itsclu->Z(),itsclu->X());
-     }
-     cout<<"END  test for clusters "<<endl;
-    }
-
-
-
-    //---------- starts test on rec points
-    ITS->ResetRecPoints();
-    TR->GetEvent(index);
-    Int_t nrecpoints = ITSrec->GetEntries();
-    //printf("Found %d recpoints for module %d \n",nrecpoints,index+1);
-    if (!nrecpoints) printf("no recpoints found \n");
-
-   if(debug==1) {
-    //loop on rec points
-    for (Int_t irec=0;irec<nrecpoints;irec++) {
-         recp   = (AliITSRecPoint*)ITSrec->UncheckedAt(irec);
-        printf("%d %f %f %f %f  %d %d %d\n",irec+1,recp->GetX(),recp->GetZ(),
-            recp->fSigmaX2,recp->fSigmaZ2,
-            recp->fTracks[0],recp->fTracks[1],recp->fTracks[2]);
-    }
-   }
-
-    printf("Detector n.%d (%d hits) (%d digits) (%d clusters)\n",
-                                         index+1,numofhits,ndigits,nclust);
-
-           // fill ntuple2
-           ntuple2->Fill (   (Float_t) index+1,
-                                    (Float_t) lay,
-                                    (Float_t) lad,
-                                    (Float_t) det,
-                                    (Float_t) numofhits,
-                                    (Float_t) ndigits,
-                                    (Float_t) nclust);
-
-    Int_t xlow; 
-    Int_t zlow; 
-    Int_t xhigh; 
-    Int_t zhigh; 
-    Int_t colcenter;
-    Int_t rowcenter;
-
-    // loop on clusters in each detector
-    for (Int_t i=0; i<nclust; i++)
-    {
-
-       irawclu = (AliITSRawClusterSPD*) ITSclusters->UncheckedAt(i);
-       irecp   = (AliITSRecPoint*)ITSrec->UncheckedAt(i);
-
-       Int_t xdim = irawclu->NclX();
-       Int_t zdim = irawclu->NclZ();
-       Float_t errx = TMath::Sqrt(irecp->fSigmaX2);
-       Float_t errz = TMath::Sqrt(irecp->fSigmaZ2);
-       Float_t xcenter = irawclu->X();
-       Float_t zcenter = irawclu->Z();
-       Float_t ndigclus = irawclu->Q();
-       Int_t itrackclus  = irecp->fTracks[0];
-
-     //Find the hits associated to the main track of the cluster
-     // loop on hits in the detector
-     for (Int_t hit=0; hit<numofhits; hit++)
-     {
-          AliITShit *itsHit  = (AliITShit*)itsModule->GetHit(hit);
-          Int_t itrackhit = itsHit->GetTrack();
-          //Take the same track index of the main track of the cluster
-          if (itrackhit == itrackclus) {
-               if (itsHit->GetTrackStatus()==66) {
-                   Float_t x1l = 10000*itsHit->GetXL(); //in microns
-                   Float_t y1l = 10000*itsHit->GetYL();
-                   Float_t z1l = 10000*itsHit->GetZL();
-                   Float_t p1x = 1000*itsHit->GetPXL(); //in MeV/c
-                   Float_t p1y = 1000*itsHit->GetPYL();
-                   Float_t p1z = 1000*itsHit->GetPZL();
-                }
-                else {
-                   Float_t x2l = 10000*itsHit->GetXL();
-                   Float_t y2l = 10000*itsHit->GetYL();
-                   Float_t z2l = 10000*itsHit->GetZL();
-                   Float_t p2x = 1000*itsHit->GetPXL();
-                   Float_t p2y = 1000*itsHit->GetPYL();
-                   Float_t p2z = 1000*itsHit->GetPZL();
-
-
-                }
-          }
-     }// end loop on hits on detector
-
-       
-     Float_t pmom=TMath::Sqrt(p1x*p1x+p1y*p1y+p1z*p1z); 
-     hist5->Fill(pmom);
-
-     Float_t dxhit = TMath::Abs(x2l-x1l);
-     Float_t dzhit = TMath::Abs(z2l-z1l);
-
-     Float_t xmidhit = (x1l + x2l)/2;
-     Float_t zmidhit = (z1l + z2l)/2;
-
-//   printf("cluster n.%d: x=%f z=%f\n",i,xcenter,zcenter);
-//   printf("track n.%d: x1=%f x2=%f z1=%f z2=%f\n",itrackclus,
-//                 x1l, x2l, z1l, z2l);
-
-     // analysis of resolution vs angle
-     if(index<80)
-     {
-           Float_t px = -p1x;
-           Float_t py = -p1y;
-     }
-     else{
-           Float_t px = p1x;
-           Float_t py = p1y;
-     }
-     Float_t pz = p1z;
-     // anglex is the angle in xy plane (local frame)
-     Float_t anglex = atan2(px,py); 
-     // anglez is the angle in zy plane (local frame)
-     Float_t anglez = atan2(pz,py); 
-     anglex *= 180.0/TMath::Pi(); // degrees
-     anglez *= 180.0/TMath::Pi(); // degrees
-
-     if(xmidhit != 0  || zmidhit != 0)
-     {
-          Float_t xdiff = (xcenter - xmidhit);
-          Float_t zdiff = (zcenter - zmidhit);
-
-          if(index<80)
-          {
-             // resolution plots
-             hist1->Fill(xdiff); 
-             hist2->Fill(zdiff); 
-
-             // plots of resolution vs angle
-             hist11n1->Fill(anglex);
-             hist12n1->Fill(anglez);
-             hist13n1->Fill(anglex,xdiff);
-             hist14n1->Fill(anglez,zdiff);
-
-          } else {
-
-             // resolution plots
-             hist3->Fill(xdiff); 
-             hist4->Fill(zdiff); 
-
-             // plots of resolution vs angle
-             hist11n2->Fill(anglex);
-             hist12n2->Fill(anglez);
-             hist13n2->Fill(anglex,xdiff);
-             hist14n2->Fill(anglez,zdiff);
-
-          }
-       } 
-         
-       // fill the ntuple
-       ntuple->Fill ( (Float_t) index,
-                         (Float_t) i,
-                         (Float_t) ndigclus,
-                             (Float_t) xdim,
-                             (Float_t) zdim,
-                             (Float_t) xdiff,
-                             (Float_t) zdiff,
-                             (Float_t) anglex,
-                             (Float_t) anglez,
-                             (Float_t) pmom,
-                                errx,
-                                errz);
-
-       // other histograms
-       if(index<80)
-       {
-          hist1n1->Fill((Float_t) xdim);
-          hist2n1->Fill((Float_t) zdim);
-          hist3n1->Fill(ndigclus);
-          hist4n1->Fill(errx);
-          hist5n1->Fill(errz);
-          hist7n1->Fill(dxhit,(Float_t) xdim);
-          hist8n1->Fill(dzhit,(Float_t) zdim);
-
-       } else {
-          hist1n2->Fill((Float_t) xdim);
-          hist2n2->Fill((Float_t) zdim);
-          hist3n2->Fill(ndigclus);
-          hist4n2->Fill(errx);
-          hist5n2->Fill(errz);
-          hist7n2->Fill(dxhit,(Float_t) xdim);
-          hist8n2->Fill(dzhit,(Float_t) zdim);
-       }
-
-       //histograms for cluster shape analysis
-       Int_t xx;
-       if(ndigclus<=3) {
-          if(ndigclus==1) {
-             xx=1;
-          } elseif(ndigclus==2){
-             if(zdim==2 && xdim==1) xx=2;
-             if(zdim==1 && xdim==2) xx=3;
-             if(zdim==2 && xdim==2) xx=4;
-          } elseif(ndigclus==3){
-             if(zdim==2 && xdim==2) xx=5;
-             if(zdim==3 && xdim==1) xx=6;
-             if(zdim==1 && xdim==3) xx=7;
-             if(zdim==3 && xdim==3) xx=8;
-             if(zdim==3 && xdim==2) xx=9;
-             if(zdim==2 && xdim==3) xx=10;
-          }
-          histsp1->Fill((Float_t) xx);
-       } elseif(ndigclus==4){
-          histsp2->Fill((Float_t) xdim,(Float_t) zdim);
-       }
-
-
-    }//end loop on clusters
-
- } //end loop on the SPD detectors
-
-} //end loop on events 
-
-
-//================== Plot the results ===================================
-
-gROOT->Reset();
-gStyle->SetFillColor(0);
-gStyle->SetStatW(0.37);
-gStyle->SetStatH(0.22);
-
-//----------------------------------------------------- page 1
-gStyle->SetOptLogy(0);
-gStyle->SetOptStat(1100);
-
-  TCanvas *c1 = new TCanvas("c1","hits, digits, clusters",200,10,700,780);
-c1->SetFillColor(0);
-c1->Divide(1,3);
-    c1->cd(1);
-      ntuple2->SetMarkerColor(kRed);
-      ntuple2->SetMarkerStyle(20);
-      ntuple2->SetMarkerSize(0.6);
-      ntuple2->Draw("nhits:ndet","");
-    c1->cd(2);
-      ntuple2->SetMarkerColor(kBlue);
-      ntuple2->Draw("ndig:ndet","");
-    c1->cd(3);
-      ntuple2->SetMarkerColor(6);
-      ntuple2->Draw("nclus:ndet","");
-
-//----------------------------------------------------- page 2
-
-  TCanvas *c2 = new TCanvas("c2","Cluster Lengths",200,10,700,780);
-   //
-   // Inside this canvas, we create 4 pads
-   //
-   pad1 = new TPad("pad1","xdim layer1"     ,0.01,0.51,0.49,0.99,10);
-   pad2 = new TPad("pad2","zdim layer1"     ,0.51,0.51,0.99,0.99,10);
-   pad3 = new TPad("pad3","xdim layer2"    ,0.01,0.01,0.49,0.49,10);
-   pad4 = new TPad("pad4","zdim layer2"    ,0.51,0.01,0.99,0.49,10);
-   pad1->Draw();
-   pad2->Draw();
-   pad3->Draw();
-   pad4->Draw();
-//
-   gStyle->SetStatW(0.40);
-   gStyle->SetStatH(0.20);
-   gStyle->SetStatColor(42);
-   gStyle->SetOptStat(111110);
-//  gStyle->SetOptFit(1);
-  
-   pad1->cd();
-   pad1->SetLogy();
-   hist1n1->Draw();
-   hist1n1->SetLineWidth(2);
-   hist1n1->SetLineColor(kRed);
-   hist1n1->GetXaxis()->SetNdivisions(110);
-   hist1n1->GetYaxis()->SetLabelSize(0.06);
-   c2->Update();
-   //
-   pad2->cd();
-   pad2->SetLogy();
-   hist2n1->Draw();
-   hist2n1->SetLineWidth(2);
-   hist2n1->SetLineColor(kRed);
-   hist2n1->GetXaxis()->SetNdivisions(110);
-   hist2n1->GetYaxis()->SetLabelSize(0.06);
-   c2->Update();
-   //
-   pad3->cd();
-   pad3->SetLogy();
-   hist1n2->Draw();
-   hist1n2->SetLineWidth(2);
-   hist1n2->SetLineColor(kBlue);
-   hist1n2->GetXaxis()->SetNdivisions(110);
-   hist1n2->GetYaxis()->SetLabelSize(0.06);
-   c2->Update();
-   //
-   pad4->cd();
-   pad4->SetLogy();
-   hist2n2->Draw();
-   hist2n2->SetLineColor(kBlue);
-   hist2n2->SetLineWidth(2);
-   hist2n2->GetXaxis()->SetNdivisions(110);
-   hist2n2->GetYaxis()->SetLabelSize(0.06);
-   c2->Update();
-   //
-//----------------------------------------------------- page 3
-
-  TCanvas *c3 = new TCanvas("c3","Resolutions",200,10,700,780);
-   //
-   // Inside this canvas, we create 4 pads
-   //
-   pad1 = new TPad("pad1","xdiff layer1"     ,0.01,0.51,0.49,0.99,10);
-   pad2 = new TPad("pad2","zdiff layer1"     ,0.51,0.51,0.99,0.99,10);
-   pad3 = new TPad("pad3","xdiff layer2"    ,0.01,0.01,0.49,0.49,10);
-   pad4 = new TPad("pad4","zdiff layer2"    ,0.51,0.01,0.99,0.49,10);
-   pad1->Draw();
-   pad2->Draw();
-   pad3->Draw();
-   pad4->Draw();
-//
-   gStyle->SetStatW(0.20);
-   gStyle->SetStatH(0.20);
-   gStyle->SetStatColor(42);
-   gStyle->SetOptStat(0);
-   gStyle->SetOptFit(1);
-  
-   pad1->cd();
-   hist1->Draw();
-   hist1->SetLineColor(kRed);
-   hist1->Fit("gaus");
-   c3->Update();
-   //
-   pad2->cd();
-   hist2->Draw();
-   hist2->SetLineColor(kRed);
-   hist2->Fit("gaus");
-   c3->Update();
-   //
-   pad3->cd();
-   hist3->Draw();
-   hist3->SetLineColor(kBlue);
-   hist3->Fit("gaus");
-   c3->Update();
-   //
-   pad4->cd();
-   hist4->Draw();
-   hist4->SetLineColor(kBlue);
-   hist4->Fit("gaus");
-   c3->Update();
-
-//----------------------------------------------------- page 4
-  TCanvas *c4 = new TCanvas("c4","Cluster Shape Analysis",200,10,700,780);
-//
-gStyle->SetOptStat(0);
-c4->SetFillColor(0);
-c4->Divide(1,2);
-
-    c4->cd(1);
-    c4_1->SetLogy();
-      histsp1->Draw();
-    c4->cd(2);
-    c4_2->Divide(2,1);
-    c4_2->cd(1);
-      histsp2->Draw("box");
-    c4_2->cd(2);
-     clustershape();
-
-
-
-
-//================== Store the histograms ===================================
-
-  //to write the histograms into a .root file
-  TFile outfile(fileout,"RECREATE");
-
-  ntuple->Write();
-  ntuple2->Write();
-  hist1n1->Write();
-  hist2n1->Write();
-  hist3n1->Write();
-  hist4n1->Write();
-  hist5n1->Write();
-  hist7n1->Write();
-  hist8n1->Write();
-  hist1n2->Write();
-  hist2n2->Write();
-  hist3n2->Write();
-  hist4n2->Write();
-  hist5n2->Write();
-  hist7n2->Write();
-  hist8n2->Write();
-  hist1->Write();
-  hist2->Write();
-  hist3->Write();
-  hist4->Write();
-  hist5->Write();
-  hist6->Write();
-  hist6b->Write();
-  hist6p->Write();
-  hist6b1->Write();
-  hist6p1->Write();
-  hist6p2->Write();
-  hist11n1->Write();
-  hist11n2->Write();
-  hist12n1->Write();
-  hist12n2->Write();
-  hist13n1->Write();
-  hist13n2->Write();
-  hist14n1->Write();
-  hist14n2->Write();
-  histsp1->Write();
-  histsp2->Write();
-
-  outfile->Close();
-}
-//-----------------------------------------------------------------
-
-
-
-void clustershape(){
- //
- //macro to display the legend of the cluster shape analysis plot
- //
-  
-   TPad *pad1 = new TPad("pad1", "This is pad2",0,0,1,1);
-   pad1->Draw();
-   pad1->cd();
-   pad1->Range(0,0.25,1,1);
-   pad1->SetFillColor(0);
-   pad1->SetBorderSize(1);
-
-//------------------------------------------
-   Float_t yfirst= 0.95;
-   Float_t ysh   = 0.05;
-   Float_t ysiz  = 0.02;
-   Float_t ynum  = 0.005;
-//------------------------------------------
-
-   //bin 1
-   TLatex *tex = new TLatex(0.12,yfirst,"1");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 2
-   yfirst=yfirst-ysh;
-   TLatex *tex = new TLatex(0.12,yfirst,"2");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.5,yfirst,0.7,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 3
-   yfirst=yfirst-ysh;
-   TLatex *tex = new TLatex(0.12,yfirst-ynum,"3");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst-ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 4
-   yfirst=yfirst-1.8*ysh;
-   TLatex *tex = new TLatex(0.12,yfirst+3*ynum,"4");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.5,yfirst+ysiz,0.7,yfirst+2*ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 5
-   yfirst=yfirst-1.5*ysh;
-   TLatex *tex = new TLatex(0.12,yfirst+3*ynum,"5");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.5,yfirst,0.7,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.5,yfirst+ysiz,0.7,yfirst+2*ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 6
-   yfirst=yfirst-1.5*ysh;
-   TLatex *tex = new TLatex(0.12,yfirst+ynum,"6");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.5,yfirst,0.7,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.7,yfirst,0.9,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 7
-   yfirst=yfirst-2*ysh;
-   TLatex *tex = new TLatex(0.12,yfirst+ysiz+ynum,"7");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.3,yfirst+ysiz,0.5,yfirst+2*ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.3,yfirst+2*ysiz,0.5,yfirst+3*ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 8
-   yfirst=yfirst-1.5*ysh;
-   TLatex *tex = new TLatex(0.12,yfirst+ynum,"8");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.5,yfirst+ysiz,0.7,yfirst+2*ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.7,yfirst+2*ysiz,0.9,yfirst+3*ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 9
-   yfirst=yfirst-1.5*ysh;
-   TLatex *tex = new TLatex(0.12,yfirst+ynum,"9");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.5,yfirst,0.7,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.7,yfirst+ysiz,0.9,yfirst+2*ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-
-   //bin 10
-   yfirst=yfirst-1.5*ysh;
-   TLatex *tex = new TLatex(0.12,yfirst-ynum,"10");
-   tex->SetTextSize(0.07);
-   tex->SetLineWidth(2);
-   tex->Draw();
-   TPave *pave = new TPave(0.3,yfirst-ysiz,0.5,yfirst,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.3,yfirst,0.5,yfirst+ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-   TPave *pave = new TPave(0.5,yfirst+ysiz,0.7,yfirst+2*ysiz,1,"br");
-   pave->SetFillColor(18);
-   pave->SetLineWidth(2);
-   pave->Draw();
-}
-
diff --git a/ITS/oldmacros/SPDclusterTestDubna.C b/ITS/oldmacros/SPDclusterTestDubna.C
deleted file mode 100644 (file)
index d7a5df9..0000000
+++ /dev/null
@@ -1,601 +0,0 @@
-#include "iostream.h"
-
-void SPDclusterTestDubna (Int_t evNumber1=0,Int_t evNumber2=0) 
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and do some analysis.
-//   
-/////////////////////////////////////////////////////////////////////////
-
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } else {
-      delete gAlice;
-      gAlice=0;
-   }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   if (!file) file = new TFile("galice.root");
-   file->ls();
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-
-         // ------------ Cluster and point analysis histogramms ------------
-
-         TH1F *Nxpix1 = new TH1F("Nxpix1","Cluster size in x(r*phi) direction for layer 1",20,0.,20.);
-         TH1F *Nxpix2 = new TH1F("Nxpix2","Cluster size in x(r*phi) direction for layer 2",20,0.,20.);
-         TH1F *Nzpix1 = new TH1F("Nzpix1","Cluster size in z direction for layer 1",15,0.,15.);
-         TH1F *Nzpix2 = new TH1F("Nzpix2","Cluster size in z direction for layer 2",15,0.,15.);
-         TH1F *Xpix1 = new TH1F("Xpix1","Local x coordinate (mm) for layer 1",20,-2.,18.);
-         TH1F *Xpix2 = new TH1F("Xpix2","Local x coordinate (mm) for layer 2",20,-2.,18.);
-         TH1F *Zpix1 = new TH1F("Zpix1","Local z coordinate (mm) for layer 1",90,-2.,88.);
-         TH1F *Zpix2 = new TH1F("Zpix2","Lolac z coordinate (mm) for layer 2",90,-2.,88.);
-
-         TH1F *Xres1 = new TH1F("Xres1","Xrec and Xgen difference (micr) for layers 1",100,-200.,200.);
-         TH1F *Xres2 = new TH1F("Xres2","Xrec and Xgen difference (micr) for layers 2",100,-200.,200.);
-         TH1F *Zres1 = new TH1F("Zres1","Zrec and Zgen difference (micr) for layers 1",100,-800.,800.);
-         TH1F *Zres2 = new TH1F("Zres2","Zrec and Zgen difference (micr) for layers 2",100,-800.,800.);
-
-         TH1F *Ptot1 = new TH1F("Ptot1","Total momentum (GeV/C) for layers 1",100,0.,5.);
-         TH1F *Pz1 = new TH1F("Pz1","Pz (GeV/C) for layers 1",100,-5.,5.);
-         TH1F *Theta1 = new TH1F("Theta1","Theta angle (rad) for layers 1",100,0.,4.);
-         TH1F *Y1 = new TH1F("Y1","Rapidity for layers 1",100,-4.,4.);
-         TH1F *Eta1 = new TH1F("Eta1","PseudoRapidity for layers 1",100,-4.,4.);
-         TH1F *Y1Den = new TH1F("Y1Den","Rapidity for layers 1",100,-0.5,0.5);
-         TH1F *Eta1Den = new TH1F("Eta1Den","PseudoRapidity for layers 1",100,-0.5,0.5);
-         TH1F *Y1DenA = new TH1F("Y1DenA","Rapidity for layers 1",100,-0.5,0.5);
-         TH1F *Eta1DenA = new TH1F("Eta1DenA","PseudoRapidity for layers 1",100,-0.5,0.5);
-         TH1F *Phi1 = new TH1F("Phi1","Phi angle (rad) for layers 1",100,0.,7.);
-         TH1F *Ptot2 = new TH1F("Ptot2","Total momentum (GeV/C) for layers 2",100,0.,5.);
-         TH1F *Pz2 = new TH1F("Pz2","Pz (GeV/C) for layers 2",100,-5.,5.);
-         TH1F *Theta2 = new TH1F("Theta2","Theta angle (rad) for layers 2",100,0.,4.);
-         TH1F *Y2 = new TH1F("Y2","Rapidity for layers 2",100,-4.,4.);
-         TH1F *Eta2 = new TH1F("Eta2","PseudoRapidity for layers 2",100,-4.,4.);
-         TH1F *Y2Den = new TH1F("Y2Den","Rapidity for layers 2",100,-0.5,0.5);
-         TH1F *Eta2Den = new TH1F("Eta2Den","PseudoRapidity for layers 2",100,-0.5,0.5);
-         TH1F *Y2DenA = new TH1F("Y2DenA","Rapidity for layers 2",100,-0.5,0.5);
-         TH1F *Eta2DenA = new TH1F("Eta2DenA","PseudoRapidity for layers 2",100,-0.5,0.5);
-         TH1F *Phi2 = new TH1F("Phi2","Phi angle (rad) for layers 2",100,0.,7.);
-
-         // -------------- Create ntuples --------------------
-         //  ntuple structures:
-
-         struct {
-           Int_t lay;
-           Int_t nx;
-           Int_t nz;
-           Int_t hitprim;
-           Int_t partcode;
-           Int_t ntrover;
-           Float_t dx;
-           Float_t dz;
-           Float_t pmod;
-         } ntuple_st;
-
-         struct {
-           Int_t lay;
-           Int_t lad;
-           Int_t det;
-           Int_t nx;
-           Int_t nz;
-           Int_t ntrover;
-           Int_t noverlaps;
-           Int_t noverprim;
-           Float_t qcl;
-           Float_t dx;
-           Float_t dz;
-           Float_t x;
-           Float_t z;
-         } ntuple1_st;
-
-         struct {
-           //      Int_t lay;
-           Int_t lay;
-           Int_t nx;
-           Int_t nz;
-           Float_t x;
-           Float_t z;
-           Float_t qcl;
-         } ntuple2_st;
-
-         ntuple = new TTree("ntuple","Demo ntuple");
-         ntuple->Branch("lay",&ntuple_st.lay,"lay/I");
-         ntuple->Branch("nx",&ntuple_st.nx,"nx/I");
-         ntuple->Branch("nz",&ntuple_st.nz,"nz/I");
-         ntuple->Branch("hitprim",&ntuple_st.hitprim,"hitprim/I");
-         ntuple->Branch("partcode",&ntuple_st.partcode,"partcode/I");
-         ntuple->Branch("ntrover",&ntuple_st.ntrover,"ntrover/I");
-         ntuple->Branch("dx",&ntuple_st.dx,"dx/F");
-         ntuple->Branch("dz",&ntuple_st.dz,"dz/F");
-         ntuple->Branch("pmod",&ntuple_st.pmod,"pmod/F");
-
-         ntuple1 = new TTree("ntuple1","Demo ntuple1");
-         ntuple1->Branch("lay",&ntuple1_st.lay,"lay/I");
-         ntuple1->Branch("lad",&ntuple1_st.lad,"lad/I");
-         ntuple1->Branch("det",&ntuple1_st.det,"det/I");
-         ntuple1->Branch("nx",&ntuple1_st.nx,"nx/I");
-         ntuple1->Branch("nz",&ntuple1_st.nz,"nz/I");
-         ntuple1->Branch("qcl",&ntuple1_st.qcl,"qcl/F");
-         ntuple1->Branch("ntrover",&ntuple1_st.ntrover,"ntrover/I");
-         ntuple1->Branch("noverlaps",&ntuple1_st.noverlaps,"noverlaps/I");
-         ntuple1->Branch("noverprim",&ntuple1_st.noverprim,"noverprim/I");
-         ntuple1->Branch("x",&ntuple1_st.x,"x/F");
-         ntuple1->Branch("z",&ntuple1_st.z,"z/F");
-         ntuple1->Branch("dx",&ntuple1_st.dx,"dx/F");
-         ntuple1->Branch("dz",&ntuple1_st.dz,"dz/F");
-
-
-         ntuple2 = new TTree("ntuple2","Demo ntuple2");
-         //      ntuple2->Branch("lay",&ntuple2_st.lay,"lay/I");
-         ntuple2->Branch("lay",&ntuple2_st.lay,"lay/I");
-         ntuple2->Branch("x",&ntuple2_st.x,"x/F");
-         ntuple2->Branch("z",&ntuple2_st.z,"z/F");
-         ntuple2->Branch("nx",&ntuple2_st.nx,"nx/I");
-         ntuple2->Branch("nz",&ntuple2_st.nz,"nz/I");
-         ntuple2->Branch("qcl",&ntuple2_st.qcl,"qcl/F");
-
-// ------------------------------------------------------------------------
-//
-//   Loop over events 
-//
-   for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TH = gAlice->TreeH();
-     Int_t ntracks = TH->GetEntries();
-     cout<<"ntracks "<<ntracks<<endl;
-
-// Get pointers to Alice detectors and Digits containers
-   AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-   TClonesArray *Particles = gAlice->Particles();
-
-   if (ITS) {
-     // fill modules with sorted by module hits
-     Int_t nmodules;
-     ITS->InitModules(-1,nmodules); 
-     //    ITS->FillModules(nev,-1,evNumber2,nmodules," "," ");
-     ITS->FillModules(nev,evNumber2,nmodules," "," ");
-     //get pointer to modules array
-     TObjArray *ITSmodules = ITS->GetModules();
-     AliITShit *itsHit;
-
-     // get the Tree for clusters
-     ITS->GetTreeC(nev);
-     TTree *TC=ITS->TreeC();
-     Int_t nent=TC->GetEntries();
-     printf("Found %d entries in the tree (must be one per module per event!)\n",nent);
-     Int_t lay, lad, det;
-     AliITSgeom *geom = ITS->GetITSgeom();
-
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   printf("SPD dimensions %f %f %f \n",seg0->Dx(),seg0->Dz(),seg0->Dy());
-   printf("SPD npixels %d %d \n",seg0->Npz(),seg0->Npx());
-   printf("SPD pitches %d %d \n",seg0->Dpz(0),seg0->Dpx(0));
-   Float_t SPDlength = seg0->Dz();     
-   Float_t SPDwidth = seg0->Dx();      
-   Float_t SPDthickness = seg0->Dy();
-   Float_t xpitch = seg0->Dpx(0);
-   if(SPDlength > 80000) SPDthickness = 150;
-   Float_t ylim;
-   if(SPDthickness < 200) {
-     ylim = SPDthickness/2 - 4;
-   }else{
-     ylim = SPDthickness/2 - 10;
-   }
-
-     for (Int_t idettype=0;idettype<3;idettype++) {
-
-       TClonesArray *ITSclusters  = ITS->ClustersAddress(idettype);
-       //printf ("ITSclusters %p \n",ITSclusters);
-
-          if (idettype != 0) continue;
-
-         Float_t occup1 = 0;
-         Float_t occup2 = 0;
-
-         // Module loop
-         for (Int_t mod=0; mod<nent; mod++) {
-             AliITSmodule *itsModule = (AliITSmodule*)ITSmodules->At(mod);
-             geom->GetModuleId(mod,lay,lad,det);
-
-             Int_t nhits = itsModule->GetNhits();
-              //if(nhits) printf("module nhits %d %d\n",mod,nhits);
-             if(!nhits) continue;
-     
-              ITS->ResetClusters();
-              TC->GetEvent(mod);
-             Int_t nclust = ITSclusters->GetEntries();
-             if (!nclust) continue;
-
-             // cluster/hit loops
-             //cout<<"mod,lay,nclust,nhits ="<<mod<<","<<lay<<","<<nclust<<","<<nhits<<endl;
-       for (Int_t clu=0;clu<nclust;clu++) {
-               itsclu   = (AliITSRawClusterSPD*)ITSclusters->UncheckedAt(clu);
-
-               Int_t noverlaps = 0;
-               Int_t noverprim = 0;
-
-               Int_t clustersizex = itsclu->NclX();
-               Int_t clustersizez = itsclu->NclZ();
-               Int_t xstart = itsclu->XStartf();
-               Int_t xstop = itsclu->XStopf();
-               Float_t fxstart = xstart*xpitch;
-               Float_t fxstop = (xstop+1)*xpitch;
-               Float_t zstart = itsclu->ZStart();
-               Float_t zstop = itsclu->ZStop();
-               Int_t zend = itsclu->Zend();
-               Int_t ntrover = itsclu->NTracks();
-                Float_t clusterx = 0;
-               Float_t clusterz = itsclu->Z();
-
-               Int_t tr0, tr1, tr2;
-               itsclu->GetTracks(tr0,tr1,tr2);
-
-               for(Int_t ii=0;ii<clustersizex;ii++) {
-                 clusterx += (xstart+0.5+ii)*xpitch;
-               }
-               clusterx /= clustersizex;
-               clusterz /= clustersizez;   
-
-               Float_t clusterQ = itsclu->Q();
-
-               if(lay == 1) occup1 += clusterQ;                
-               if(lay == 2) occup2 += clusterQ;                
-
-               ntuple2_st.lay = lay;
-               ntuple2_st.x = clusterx/1000.;
-               ntuple2_st.z = clusterz/1000.;
-               ntuple2_st.nx = clustersizex;
-               ntuple2_st.nz = clustersizez;
-               ntuple2_st.qcl = clusterQ;
-
-               ntuple2->Fill();
-
-               Int_t icl = 0;
-               Float_t dxprimlast = 10.e+6;
-               Float_t dzprimlast = 10.e+6;
-
-                Float_t xhit0 = 1e+6;
-                Float_t zhit0 = 1e+6;
-       for (Int_t hit=0;hit<nhits;hit++) {
-
-                 // Find coordinate differences between the hit and cluster positions
-                 // for the resolution determination.
-
-                 itsHit   = (AliITShit*)itsModule->GetHit(hit);
-
-                 Int_t hitlayer = itsHit->GetLayer();
-                 Int_t hitladder= itsHit->GetLadder();
-                 Int_t hitdet= itsHit->GetDetector();
-                 Float_t dEn = 1.0e+6*itsHit->GetIonization(); // hit energy, KeV 
-                 Int_t track = itsHit->GetTrack();
-                 Int_t dray = 0;
-                 Int_t hitstat = itsHit->GetTrackStatus();
-                 Float_t zhit = 10000*itsHit->GetZL();
-                 Float_t xhit = 10000*itsHit->GetXL();
-                 Float_t yhit = 10000*itsHit->GetYL();
-        Int_t parent = itsHit->GetParticle()->GetFirstMother();
-        Int_t partcode = itsHit->GetParticle()->GetPdgCode();
-
-        Int_t hitprim = 0;
-
-        if(parent < 0) hitprim = hitprim + 1; // hitprim=1 for the primery
-       // particles
-
-        Float_t pxsimL = itsHit->GetPXL();  // the momenta at GEANT points
-        Float_t pysimL = itsHit->GetPYL();
-        Float_t pzsimL = itsHit->GetPZL();
-       Float_t psimL = TMath::Sqrt(pxsimL*pxsimL+pysimL*pysimL+pzsimL*pzsimL);
-
-       // Check boundaries
-       if(zhit  > SPDlength/2) {
-         //cout<<"!!! z outside ="<<zhit<<endl;
-         zhit = SPDlength/2 - 10;
-       }
-       if(zhit < 0 && zhit < -SPDlength/2) {
-         //cout<<"!!! z outside ="<<zhit<<endl;
-         zhit = -SPDlength/2 + 10;
-       }
-       if(xhit  > SPDwidth/2) {
-         //cout<<"!!! x outside ="<<xhit<<endl;
-         xhit = SPDwidth/2 - 10;
-       }
-       if(xhit  < 0 && xhit < -SPDwidth/2) {
-         //cout<<"!!! x outside ="<<xhit<<endl;
-         xhit = -SPDwidth/2 + 10;
-       }
-
-                 zhit += SPDlength/2;
-                 xhit += SPDwidth/2;
-
-
-
-                 if(hitlayer == 1 && hitstat == 66 && yhit > ylim) {
-                   //if(hitstat == 66 && hitprim ==1) {
-                   xhit0 = xhit;
-                   zhit0 = zhit;
-                 }
-
-                 
-                 if(hitlayer == 2 && hitstat == 66 && yhit < -ylim) {
-                   xhit0 = xhit;
-                   zhit0 = zhit;
-                 }              
-                         
-                 if(hitstat != 68) continue; // Take only the hit if the last
-                 // track point went out from
-                 // the detector.
-
-                 if(xhit0 > 1e+5 || zhit0 > 1e+5) continue;
-
-                 Float_t xmed = (xhit + xhit0)/2;
-                 Float_t zmed = (zhit + zhit0)/2;
-
-                 Float_t xdif = xmed - clusterx;
-                 Float_t zdif = zmed - clusterz;
-                 xhit0 = 1e+6;
-                 zhit0 = 1e+6;
-
-        // Consider the hits inside of cluster region only   b.b.
-
-                 if((xmed >= fxstart && xmed <= fxstop) && (zmed >= zstart && zmed <= zstop)) {
-
-         // Consider the hits only with the track number equaled to one
-         // of the cluster
-                   //if((track == tr0) || (track == tr1) || (track == tr2)) {      
-
-        icl = 1;
-
-                //        part = (TParticle *)particles.UncheckedAt(track);
-                //        Int_t partcode = part->GetPdgCode();
-                //              Int_t primery = gAlice->GetPrimary(track);
-
-
-//  partcode (pdgCode): 11 - e-, 13 - mu-, 22 - gamma, 111 - pi0, 211 - pi+
-//                      310 - K0s, 321 - K+, 2112 - n, 2212 - p, 3122 - lambda
-
-       Float_t pmod = itsHit->GetParticle()->P(); // total momentum at the
-                                                  // vertex
-       Float_t energy = itsHit->GetParticle()->Energy(); // energy at the
-                                                  // vertex
-       Float_t mass = itsHit->GetParticle()->GetMass(); // particle mass 
-
-       Float_t pz = itsHit->GetParticle()->Pz(); // z momentum componetnt  
-                                                  // at the vertex
-       Float_t px = itsHit->GetParticle()->Px(); // z momentum componetnt  
-                                                  // at the vertex
-       Float_t py = itsHit->GetParticle()->Py(); // z momentum componetnt  
-                                                  // at the vertex
-       Float_t phi = itsHit->GetParticle()->Phi(); // Phi angle at the
-                                                  // vertex
-       Float_t theta = itsHit->GetParticle()->Theta(); // Theta angle at the
-                                                  // vertex
-       //Float_t eta = itsHit->GetParticle()->Eta(); // Pseudo rapidity at the
-                                                          // vertex
-       Float_t y;
-       if((energy-pz) > 0) {
-         y = 0.5*TMath::Log((energy+pz)/(energy-pz));
-       }else{
-         cout<<" Warning: energy < pz ="<<energy<<","<<pz<<endl;
-         y = 10;
-       }   
-        Float_t eta = -TMath::Log(TMath::Tan(theta/2));
-        pmod *= 1.0e+3;
-
-
-        Float_t pxsim = itsHit->GetPXG();  // the momenta at this GEANT point
-        Float_t pysim = itsHit->GetPYG();
-        Float_t pzsim = itsHit->GetPZG();
-       Float_t psim = TMath::Sqrt(pxsim*pxsim+pysim*pysim+pzsim*pzsim);
-
-        //Int_t hitprim = 0;
-
-        if(partcode == 11 && pmod < 6) dray = 1; // delta ray is e-
-                                                 // at p < 6 MeV/c
-
-        if(dray == 0) noverlaps = noverlaps + 1; // overlapps for all hits but
-                                                 // not for delta ray which
-                                                 // also went out from the
-                                                 // detector and returned
-                                                 // again
-
-        //if(parent < 0) hitprim = hitprim + 1; // hitprim=1 for the primery
-                                              // particles
-
-        if(hitprim > 0) noverprim = noverprim + 1;
-
-        if(hitprim > 0) {
-         dxprimlast = xdif;
-         dzprimlast = zdif;
-        }
-
-        // fill ntuple
-
-         ntuple_st.lay = hitlayer;
-         ntuple_st.nx = clustersizex;
-         ntuple_st.nz = clustersizez;
-         ntuple_st.hitprim = hitprim;
-         ntuple_st.partcode = partcode;
-         ntuple_st.ntrover = ntrover;
-         ntuple_st.dx = xdif;
-         ntuple_st.dz = zdif;
-         ntuple_st.pmod = pmod;
-
-         ntuple->Fill();
-
-        if(hitlayer == 1) {
-           Y1DenA->Fill(y);
-           Eta1DenA->Fill(eta);
-        }
-        if(hitlayer == 2) {
-           Y2DenA->Fill(y);
-           Eta2DenA->Fill(eta);
-        }
-
-      
-
-      if(hitprim > 0) {   // for primary particles
-
-        if(hitlayer == 1) {
-           Xres1->Fill(xdif);
-           Zres1->Fill(zdif);
-           Ptot1->Fill(pmod/1000.);
-           Pz1->Fill(pz);
-           Theta1->Fill(theta);
-           Y1->Fill(y);
-           Eta1->Fill(eta);
-           Y1Den->Fill(y);
-           Eta1Den->Fill(eta);
-           Phi1->Fill(phi);
-        }
-        if(hitlayer == 2) {
-           Xres2->Fill(xdif);
-           Zres2->Fill(zdif);
-           Ptot2->Fill(pmod/1000.);
-           Pz2->Fill(pz);
-           Theta2->Fill(theta);
-           Y2->Fill(y);
-           Eta2->Fill(eta);
-           Y2Den->Fill(y);
-           Eta2Den->Fill(eta);
-           Phi2->Fill(phi);
-        }
-      } // primery particles
-
-     } // end of cluster region
-
-   } // end of hit loop
-
-      if(icl == 1) {
-
-        // fill ntuple1
-
-        if(noverlaps == 0) noverlaps = 1; // cluster contains one or more
-                                          // delta rays only
-
-         ntuple1_st.lay = lay;
-         ntuple1_st.lad = lad;
-         ntuple1_st.det = det;
-         ntuple1_st.x = clusterx*1000.;
-         ntuple1_st.z = clusterz*1000.;
-         ntuple1_st.nx = clustersizex;
-         ntuple1_st.nz = clustersizez;
-         ntuple1_st.qcl = clusterQ;
-         ntuple1_st.ntrover = ntrover;
-         ntuple1_st.noverlaps = noverlaps;
-         ntuple1_st.noverprim = noverprim;
-         ntuple1_st.dx = dxprimlast;
-         ntuple1_st.dz = dzprimlast;
-
-         ntuple1->Fill();
-
-     } // icl = 1
-    } // cluster loop
-   } // module loop       
-
-     cout<<" Occupancy for layer-1 ="<<occup1<<endl;
-     cout<<" Occupancy for layer-2 ="<<occup2<<endl;
-     // The real occupancy values are:
-     // (for full ALICE event at the full SPD acceptence)
-     //   occup1 /= 3932160;    
-     //   occup2 /= 7864320;
-
-  } // idettype loop
- } // end if ITS
-} // event loop 
-
-
-   //  Write and Draw Histogramms and ntuples
-
-
-
-   TFile fhistos("SPD_his_dubna.root","RECREATE");
-
-   ntuple->Write();
-   ntuple1->Write();
-   ntuple2->Write();
-
-   Nxpix1->Write();
-   Nzpix1->Write();
-   Nxpix2->Write();
-   Nzpix2->Write();
-
-   Xpix1->Write();
-   Zpix1->Write();
-   Xpix2->Write();
-   Zpix2->Write();
-
-   Xres1->Write();
-   Zres1->Write();
-   Xres2->Write();
-   Zres2->Write();
-
-   Ptot1->Write();
-   Pz1->Write();
-   Theta1->Write();
-   Y1->Write();
-   Eta1->Write();
-   Y1Den->Write();
-   Eta1Den->Write();
-   Y1DenA->Write();
-   Eta1DenA->Write();
-   Phi1->Write();
-
-   Ptot2->Write();
-   Pz2->Write();
-   Theta2->Write();
-   Y2->Write();
-   Eta2->Write();
-   Y2Den->Write();
-   Eta2Den->Write();
-   Y2DenA->Write();
-   Eta2DenA->Write();
-   Phi2->Write();
-
-   fhistos.Close();
-   cout<<"!!! Histogramms and ntuples were written"<<endl;
-
-   TCanvas *c1 = new TCanvas("c1","ITS clusters",400,10,600,700);
-   c1->Divide(2,2);
-   c1->cd(1);
-   gPad->SetFillColor(33);
-         Xres1->SetFillColor(42);
-         Xres1->Draw();
-   c1->cd(2);
-   gPad->SetFillColor(33);
-         Zres1->SetFillColor(46);
-         Zres1->Draw();
-   c1->cd(3);
-   gPad->SetFillColor(33);
-         Xres2->SetFillColor(42);
-         Xres2->Draw();
-   c1->cd(4);
-   gPad->SetFillColor(33);
-         Zres2->SetFillColor(46);
-         Zres2->Draw();
-
-     cout<<"END  test for clusters and hits "<<endl;
-
-//     file->Close();   
-}
-
-
-
diff --git a/ITS/oldmacros/SSD_ntuple.C b/ITS/oldmacros/SSD_ntuple.C
deleted file mode 100644 (file)
index f89e196..0000000
+++ /dev/null
@@ -1,315 +0,0 @@
-void SSD_ntuple()
-{
-
-TFile *f = new TFile("SSD_his.root");
-   
-//gStyle->SetOptStat(1111111);
-//gStyle->SetOptLogy();
-//TCanvas *c1 = new TCanvas("c1","SPD clusters",400,10,600,700);
-TCanvas *c2 = new TCanvas("c2","SSD clusters",400,10,600,700);
-//c1->Divide(2,2);
-c2->Divide(2,2);
-
-/////////////////////////  Ntuple analysis ///////////////////////////////
-
-// ntuple is created inside the hit loop for the hits corresponding to the
-// recpoint;
-
-// ntuple1 is created after a finish of the hit loop if one or more hits
-// correspond to the recpoint;
-
-// ntuple2 is created befor the hit loop for all recpoints;
-
-// -----------------------------------------------------------------------
-// lay       - number of ITS layer;
-// lad       - number of ITS ladder;
-// det       - number of ITS detector;
-// nxP/N        - cluster size in the r*phi(x) direction for P/N sides;
-// hitprim   - primary particle(hit) flag ( = 1 for primery particle);     
-// x         - x local coordinate in mm; 
-// z         - z local coordinate in mm; 
-// dx        - difference of hit(mediate) and reconstructed (from cluster)
-//             coordinates in r*phi(x) direction in microns;
-// dz        - difference of hit(mediate) and reconstructed (from cluster)
-//             coordinates in z direction in microns;
-// noverlaps - number of particles overlapping in one cluster; 
-// noverprim - number of primary particles overlapping in one cluster;
-// qclP/N    - cluster signals in ADC normalized to the path length in Si  
-// qrec      - recpoint signal (maximum from qclP and qclN)  
-// pmod      - particle momentum at the vertex in MeV/c
-// partcode  - particle code
-// -------------------------------------------------------------------------
-
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 5 && hitprim == 1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 5 && hitprim == 1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 6 && hitprim == 1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 6 && hitprim == 1");
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 5 && hitprim == 1&&ntrover==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 5 && hitprim == 1&&ntrover==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 6 && hitprim == 1&&ntrover==1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 6 && hitprim == 1&&ntrover==1");
-*/
-
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 5 && hitprim == 1&&abs(dx)<200");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 5 && hitprim == 1&&abs(dz)<5000");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 6 && hitprim == 1&&abs(dx)<200");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 6 && hitprim == 1&&abs(dz)<5000");
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 5 && hitprim == 1&&abs(dx)<200&&ntrover==1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 5 && hitprim == 1&&abs(dz)<5000&&ntrover==1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(42);
-      ntuple->Draw("dx","lay == 6 && hitprim == 1&&abs(dx)<200&&ntrover==1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple->SetFillColor(46);
-      ntuple->Draw("dz","lay == 6 && hitprim == 1&&abs(dz)<5000&&ntrover==1");
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nxP","lay == 5&&noverprim>=0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nxN","lay == 5&&noverprim>=0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("nxP","lay == 6 && noverprim>=0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("nxN","lay == 6 && noverprim>=0");
-*/
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 5&&noverprim>=0&&abs(dx)<50&&nxP==2&&nxN==2");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 5&&noverprim>=0&&abs(dz)<2000&&nxP==2&&nxN==2");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 6 && noverprim>=0&&abs(dx)<200");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 6 && noverprim>=0&&abs(dz)<5000");
-*/
-
-/*      
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 5&&noverprim>=0&&noverlaps==0&&qcut<0.18");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 5&&noverprim>=0&&noverlaps==0&&qcut<0.18");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 6 && noverprim>=0&&noverlaps==0&&qcut<0.18");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 6 && noverprim>=0&&noverlaps==0&&qcut<0.18");
-*/      
-
-/*      
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 5&&noverprim>=0&&noverlaps==0&&abs(dx)<100&&qcut<0.18");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 5&&noverprim>=0&&noverlaps==0&&abs(dz)<5000&&qcut<0.18");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("dx","lay == 6&&noverprim>=0&&noverlaps==0&&abs(dx)<100&&qcut<0.18");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("dz","lay == 6&&noverprim>=0&&noverlaps==0&&abs(dz)<5000&&qcut<0.18");
-*/      
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("noverprim","lay == 5&&noverprim>=-1");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverlaps","lay == 5&&noverprim>=-1");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("noverprim","lay == 6 && noverprim>=-1");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverlaps","lay == 6 && noverprim>=-1");
-*/
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("ntrover","lay == 5&&noverprim>=0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverlaps","lay == 5&&noverprim>=0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("ntrover","lay == 6 && noverprim>=0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("noverlaps","lay == 6 && noverprim>=0");
-      */
-
-/*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("qclP","lay == 5&&noverprim>=0");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("qclN","lay == 5&&noverprim>=0");
-c2->cd(3);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("qclP","lay == 6&&noverprim>=0");
-c2->cd(4);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(46);
-      ntuple1->Draw("qclN","lay == 6&&noverprim>=0");
-*/
-
-
-/////////////////////   Histogramm/ntuple  analysis  ////////////////////////
-
-                      
-c2->cd(1);
-gPad->SetFillColor(33);
-      adcPadcN5all->SetFillColor(42);
-      adcPadcN5all->Draw();
-c2->cd(2);
-gPad->SetFillColor(33);
-      adcPadcN6all->SetFillColor(42);
-      adcPadcN6all->Draw();
-c2->cd(3);
-gPad->SetFillColor(33);
-      adcPadcN5cut->SetFillColor(42);
-      adcPadcN5cut->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      adcPadcN6cut->SetFillColor(46);
-      adcPadcN6cut->Draw();
-                       
-
-      /*
-c2->cd(1);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("qclP","noverprim>=0&&qclP<500");
-c2->cd(2);
-gPad->SetFillColor(33);
-      ntuple1->SetFillColor(42);
-      ntuple1->Draw("qclN","noverprim>=0&&qclN<500");
-c2->cd(3);
-gPad->SetFillColor(33);
-      adcPadcN5cut->SetFillColor(42);
-      adcPadcN5cut->Draw();
-c2->cd(4);
-gPad->SetFillColor(33);
-      adcPadcN6cut->SetFillColor(46);
-      adcPadcN6cut->Draw();
-      */
-      
-
-      /*
-c2->Draw();   
-c2->Print("ssd_res.ps");
-      */
-
-      /*                        
-c2->Draw();   
-c2->Print("spd_clsize.ps");
-      */    
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/SSDrecpointTest.C b/ITS/oldmacros/SSDrecpointTest.C
deleted file mode 100644 (file)
index 1c28c93..0000000
+++ /dev/null
@@ -1,541 +0,0 @@
-void SSDrecpointTest (Int_t evNumber1=0,Int_t evNumber2=0)
-  //void SSDrecpointTest (Int_t evNumber1=0,Int_t evNumber2=999)
-{
-/////////////////////////////////////////////////////////////////////////
-//   This macro is a small example of a ROOT macro
-//   illustrating how to read the output of GALICE
-//   and fill some histograms.
-//   
-//     Root > .L anal.C   //this loads the macro in memory
-//     Root > anal();     //by default process first event   
-//     Root > anal(2);    //process third event
-//Begin_Html
-/*
-<img src="gif/anal.gif">
-*/
-//End_Html
-/////////////////////////////////////////////////////////////////////////
-    
-// Dynamically link some shared libs
-
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } else {
-      delete gAlice;
-      gAlice=0;
-   }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-   //TString *str = new TString("galice.root");
-   //TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(str->Data());
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   //if (!file) file = new TFile(str->Data(),"UPDATE");
-   if (!file) file = new TFile("galice.root");
-   file->ls();
-
-// Get AliRun object from file or create it if not on file
-   if (!gAlice) {
-     gAlice = (AliRun*)file->Get("gAlice");
-     if (gAlice) printf("AliRun object found on file\n");
-     if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-
-
-     // -------------- Create ntuples --------------------
-
-     //  ntuple structures:  
-
-   /*
-          struct {
-            Int_t lay;
-            Int_t nxP;
-            Int_t nxN;
-            Int_t hitprim;
-            Int_t partcode;
-            Int_t ntrover;
-            Float_t x;
-            Float_t z;
-            Float_t dx;
-            Float_t dz;
-            Float_t pmod;
-          } ntuple_st;
-   */
-
-          struct {
-            Int_t lay;
-            Int_t lad;
-            Int_t det;
-            Int_t nxP;
-            Int_t nxN;
-            Int_t noverlaps;
-            Int_t noverprim;
-            Int_t ntrover;
-            Float_t qclP;
-            Float_t qclN;
-            Float_t qrec;
-           Float_t qcut;
-            Float_t dx;
-            Float_t dz;
-          } ntuple1_st;
-
-
-          struct {
-            Int_t nxP;
-            Int_t nxN;
-            Float_t x;
-            Float_t z;
-          } ntuple2_st;
-
-         /*
-          ntuple = new TTree("ntuple","Demo ntuple");
-          ntuple->Branch("lay",&ntuple_st.lay,"lay/I");
-          ntuple->Branch("nxP",&ntuple_st.nxP,"nxP/I");
-          ntuple->Branch("nxN",&ntuple_st.nxN,"nxN/I");
-          ntuple->Branch("hitprim",&ntuple_st.hitprim,"hitprim/I");
-          ntuple->Branch("partcode",&ntuple_st.partcode,"partcode/I");
-          ntuple->Branch("ntrover",&ntuple_st.ntrover,"ntrover/I");
-          ntuple->Branch("x",&ntuple_st.x,"x/F");
-          ntuple->Branch("z",&ntuple_st.z,"z/F");
-          ntuple->Branch("dx",&ntuple_st.dx,"dx/F");
-          ntuple->Branch("dz",&ntuple_st.dz,"dz/F");
-          ntuple->Branch("pmod",&ntuple_st.pmod,"pmod/F");
-         */
-
-         ntuple1 = new TTree("ntuple1","Demo ntuple1");
-         ntuple1->Branch("lay",&ntuple1_st.lay,"lay/I");
-         ntuple1->Branch("lad",&ntuple1_st.lad,"lad/I");
-         ntuple1->Branch("det",&ntuple1_st.det,"det/I");
-         ntuple1->Branch("nxP",&ntuple1_st.nxP,"nxP/I");
-         ntuple1->Branch("nxN",&ntuple1_st.nxN,"nxN/I");
-         ntuple1->Branch("qclP",&ntuple1_st.qclP,"qclP/F");
-          ntuple1->Branch("qclN",&ntuple1_st.qclN,"qclN/F");
-          ntuple1->Branch("qrec",&ntuple1_st.qrec,"qrec/F");
-          ntuple1->Branch("qcut",&ntuple1_st.qcut,"qcut/F");
-          ntuple1->Branch("dx",&ntuple1_st.dx,"dx/F");
-          ntuple1->Branch("dz",&ntuple1_st.dz,"dz/F");
-         ntuple1->Branch("noverlaps",&ntuple1_st.noverlaps,"noverlaps/I");
-          ntuple1->Branch("noverprim",&ntuple1_st.noverprim,"noverprim/I");
-          ntuple1->Branch("ntrover",&ntuple1_st.ntrover,"ntrover/I");
-
-
-          ntuple2 = new TTree("ntuple2","Demo ntuple2");
-          ntuple2->Branch("nxP",&ntuple2_st.nxP,"nxP/I");
-          ntuple2->Branch("nxN",&ntuple2_st.nxN,"nxN/I");
-          ntuple2->Branch("x",&ntuple2_st.x,"x/F");
-          ntuple2->Branch("z",&ntuple2_st.z,"z/F");
-
-
-         // Create Histogramms
-
-         TH1F *NxP5 = new TH1F("NxP5","P cluster size for layer 5",20,0.,20.);
-         TH1F *NxN5 = new TH1F("NxN5","N cluster size for layer 5",20,0.,20.);
-         TH1F *NxP6 = new TH1F("NxP6","P cluster size for layer 6",20,0.,20.);
-         TH1F *NxN6 = new TH1F("NxN6","N cluster size for layer 6",20,0.,20.);
-
-         TH1F *Xres5 = new TH1F("Xres5","Xrec and Xgen difference (micr) for layers 5",100,-200.,200.);
-         TH1F *Xres6 = new TH1F("Xres6","Xrec and Xgen difference (micr) for layers 6",100,-200.,200.);
-         TH1F *Zres5 = new TH1F("Zres5","Zrec and Zgen difference (micr) for layers 5",100,-8000.,8000.);
-         TH1F *Zres6 = new TH1F("Zres6","Zrec and Zgen difference (micr) for layers 6",100,-8000.,8000.);
-          TH1F *Path5 = new TH1F("Path5","Path length in Si",100,0.,600.);
-          TH1F *Path6 = new TH1F("Path6","Path length in Si",100,0.,600.);
-          TH1F *dEdX = new TH1F("dEdX","dEdX  (KeV)",100,0.,500.);
-          TH2F *adcPadcN5all = new TH2F("adcPadcN5all","adcP/N correlation for lay5",100,0.,200.,100,0.,200.);
-          TH2F *adcPadcN6all = new TH2F("adcPadcN6all","adcP/N correlation for lay6",100,0.,200.,100,0.,200.);
-          TH2F *adcPadcN5cut = new TH2F("adcPadcN5cut","adcP/N correlation for lay5 and cut of P-N signas",100,0.,200.,100,0.,200.);
-          TH2F *adcPadcN6cut = new TH2F("adcPadcN6cut","adcP/N correlation for lay6 and cut of P-N signals",100,0.,200.,100,0.,200.);
-         //-----------------------------------------------------------
-
-//
-//   Loop over events 
-//
-  for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     //cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-
-     TTree *TH = gAlice->TreeH();
-     Int_t ntracks = TH->GetEntries();
-     cout<<"all entries to GEANT(charged and neutral) "<<ntracks<<endl;
-
-// Get pointers to Alice detectors and Digits containers
-     AliITS *ITS  = (AliITS*)gAlice->GetModule("ITS");
-     TClonesArray *Particles = gAlice->Particles();
-
-   if (ITS) {
-
-     // fill modules with sorted by module hits
-     Int_t nmodules;
-     ITS->InitModules(-1,nmodules); 
-     ITS->FillModules(nev,evNumber2,nmodules," "," ");
-
-     //get pointer to modules array
-     TObjArray *ITSmodules = ITS->GetModules();
-     AliITShit *itsHit;
-
-     // get the Tree for clusters
-     ITS->GetTreeC(nev);
-     TTree *TC=ITS->TreeC();
-     Int_t nent=TC->GetEntries();
-     printf("Found %d entries in the TreeC (full number of the modules)\n",nent);
-     TTree *TR = gAlice->TreeR();
-     Int_t lay, lad, det;
-     AliITSgeom *geom = ITS->GetITSgeom();
-     Int_t mod;
-
-     Int_t first0 = geom->GetStartDet(0);  // SPD
-     Int_t last0 = geom->GetLastDet(0);    // SPD
-     Int_t first1 = geom->GetStartDet(1);  // SDD
-     Int_t last1 = geom->GetLastDet(1);    // SDD
-     Int_t first2 = geom->GetStartDet(2);  // SSD
-     Int_t last2 = geom->GetLastDet(2);    // SSD
-
-     //  For the SPD: first0 = 0, last0 = 239     (240 modules);  
-     //  for the SDD: first1 = 240, last1 = 499   (260 modules);  
-     //  for the SSD: first2 = 500, last2 = 2197  (1698 modules).  
-
-     printf("det type %d first0, last0 %d %d \n",0,first0,last0);
-     printf("det type %d first1, last1 %d %d \n",1,first1,last1);
-     printf("det type %d first2, last2 %d %d \n",2,first2,last2);
-
-
-   AliITSDetType *iDetType=ITS->DetType(2);
-   AliITSsegmentationSSD *seg2=(AliITSsegmentationSSD*)iDetType->GetSegmentationModel();
-   //AliITSresponseSSD *res2 = (AliITSresponseSSD*)iDetType->GetResponseModel();
-
-   printf("SSD dimensions %f %f %f \n",seg2->Dx(),seg2->Dz(),seg2->Dy());
-   printf("SSD nstrips %d %d \n",seg2->Npz(),seg2->Npx());
-   Float_t ylim = seg2->Dy()/2 - 12;
-
-
-
-    for (Int_t idettype=0;idettype<3;idettype++) {
-
-       TClonesArray *ITSclu  = ITS->ClustersAddress(idettype);
-       TClonesArray *ITSrec  = ITS->RecPoints(); 
-       //printf ("ITSrec %p \n",ITSrec);
-       //printf ("ITSclu %p \n",ITSclu);
-
-          if (idettype != 2) continue;
-
-         // Module loop
-
-     for (mod=first2; mod<last2+1; mod++) {  // for the "ALL" option
-       //for (mod=0; mod<last2-first2+1; mod++) { //for the "SSD" option       
-
-       //AliITSmodule *Mod = (AliITSmodule *)ITSmodules->At(mod+first2);
-       // for the "SSD" option
-
-       AliITSmodule *Mod = (AliITSmodule *)ITSmodules->At(mod);
-       // for the "ALL" option
-
-             geom->GetModuleId(mod,lay,lad,det);
-
-             Int_t nhits = Mod->GetNhits();
-              //if(nhits) printf("module nhits %d %d\n",mod,nhits);
-             if(!nhits) continue;
-
-              ITS->ResetClusters();
-              TC->GetEvent(mod);
-             Int_t nclust = ITSclu->GetEntries();
-             if (!nclust) continue;
-
-              ITS->ResetRecPoints();
-              TR->GetEvent(mod);
-              Int_t nrecp = ITSrec->GetEntries();
-              //if (nrecp) printf("Found %d rec points for module %d\n",nrecp,mod);
-              if (!nrecp) continue;
-
-
-
-       Float_t epart = 0;
-       cout <<" module,nrecp,nclust,nhits ="<<mod<<","<<nrecp<<","<<nclust<<","<<nhits<< endl;
-
-       // ---------------- cluster/recpoint/hit analysis ---------------------
-
-
-       Float_t pathInSSD = 300.;
-
-       // ---- Recpoint loop
-      for (Int_t pnt=0;pnt<nrecp;pnt++) {
-
-        itsPnt  = (AliITSRecPoint*)ITSrec->At(pnt);
-        if(!itsPnt) continue;
-        itsClu  = (AliITSRawClusterSSD*)ITSclu->At(pnt);
-        if(!itsClu) continue;
-
-        Int_t nxP = itsClu->fMultiplicity;
-        Int_t nxN = itsClu->fMultiplicityN;
-        Int_t ntrover = itsClu->fNtracks;
-        Float_t qclP = itsClu->fSignalP;     // in ADC
-        Float_t qclN = itsClu->fSignalN;     // in ADC
-        Float_t dq = TMath::Abs(qclP - qclN);    
-        Float_t xrec = 10000*itsPnt->GetX();
-        Float_t zrec = 10000*itsPnt->GetZ();
-        Float_t qrec = itsPnt->GetQ();      // in ADC, maximum from fSignalP/N
-        Float_t qcut = dq/qrec;
-        //Float_t dedx = itsPnt->GetdEdX();   // in KeV (ADC * 2.16)
-        Float_t dedx = itsPnt->fdEdX;   // in KeV (ADC * 2.16)
-         Int_t ii = 0;
-        Int_t tr1 = itsPnt->GetLabel(ii);
-         Int_t ii = 1;
-        Int_t tr2 = itsPnt->GetLabel(ii);
-         Int_t ii = 2;
-        Int_t tr3 = itsPnt->GetLabel(ii);
-
-        // fill ntuple2
-        ntuple2_st.nxP = nxP;
-        ntuple2_st.nxN = nxN;
-        ntuple2_st.x = xrec/1000;
-        ntuple2_st.z = zrec/1000;
-        
-        ntuple2->Fill();
-        
-        Int_t noverlaps = 0;
-        Int_t noverprim = 0;
-        Int_t flaghit = 0;
-        Float_t xhit0 = 1e+7;
-        Float_t yhit0 = 1e+7;
-        Float_t zhit0 = 1e+7;
-        Float_t dxprimbest = 1e+7;
-        Float_t dzprimbest = 1e+7;
-        
-        // Hit loop
-       for (Int_t hit=0;hit<nhits;hit++) {
-
-          itsHit   = (AliITShit*)Mod->GetHit(hit);
-          
-          Int_t flagtrack = 0;
-          Int_t hitlayer = itsHit->GetLayer();
-          Int_t hitladder= itsHit->GetLadder();
-          Int_t hitdet= itsHit->GetDetector();
-          
-          Int_t track = itsHit->GetTrack();
-          Int_t dray = 0;
-          Int_t hitstat = itsHit->GetTrackStatus();
-          
-          Float_t zhit = 10000*itsHit->GetZL();
-          Float_t xhit = 10000*itsHit->GetXL();
-          Float_t yhit = 10000*itsHit->GetYL();
-          Float_t ehit = 1.0e+6*itsHit->GetIonization(); // hit energy, KeV 
-          
-          Int_t parent = itsHit->GetParticle()->GetFirstMother();
-          Int_t partcode = itsHit->GetParticle()->GetPdgCode();
-          
-   //  partcode (pdgCode): 11 - e-, 13 - mu-, 22 - gamma, 111 - pi0, 211 - i+
-   //  310 - K0s, 321 - K+, 2112 - n, 2212 - p, 3122 - lambda
-
-           Float_t pmod = itsHit->GetParticle()->P(); // the momentum at the
-                                                     // vertex
-          pmod *= 1.0e+3;
-
-         if(hitstat == 66 && yhit < -ylim) {
-           xhit0 = xhit;
-           yhit0 = yhit;
-           zhit0 = zhit;
-         }
-
-         if(hitstat == 66) continue; // Take the not entering hits only 
-         
-         if(xhit0 > 9e+6 || zhit0 > 9e+6 || yhit0 > 9e+6) {
-           continue;
-         }
-         
-         // Consider the hits only with the track number equaled to one
-         // of the recpoint
-         if((track == tr1) || (track == tr2) || (track == tr3)) flagtrack = 1;
-         
-         if(flagtrack == 1) {     // the hit corresponds to the recpoint
-           
-           flaghit = 1;
-           
-           //Float_t px = itsHit->GetPXL(); // the momenta at this GEANT point
-           //Float_t py = itsHit->GetPYL();
-           //Float_t pz = itsHit->GetPZL();
-           
-           Int_t hitprim = 0;
-           
-           if(partcode == 11 && pmod < 6) dray = 1; // delta ray is e-
-           // at p < 6 MeV/c
-           
-           if((hitstat == 68 || hitstat == 33) && dray == 0)  noverlaps=noverlaps + 1;
-           // overlapps for all hits but
-           // not for delta ray which
-           // also went out from the
-           // detector and returned
-           // again
-           
-           
-           // x,z resolution colculation
-           if((hitstat == 68 || hitstat == 33) && dray == 0) {
-             Float_t xmed = (xhit + xhit0)/2;
-             Float_t zmed = (zhit + zhit0)/2;
-             Float_t xdif = xmed - xrec;
-             Float_t zdif = zmed - zrec;
-             
-             if(parent < 0)  {
-               hitprim = 1; // hitprim=1 for the primery particles
-               noverprim += 1;
-             }
-             pathInSSD = TMath::Sqrt((xhit0-xhit)*(xhit0-xhit)+(yhit0-yhit)*(yhit0-yhit)+(zhit0-zhit)*(zhit0-zhit));
-             
-             // Find the best xdif and zdif from any ones for the primery
-             // particles (to remove the wronge xdif and zdif if the hit
-             // belongs to the other package containing the same P/N cluster
-             
-             if(hitprim > 0) {
-               if(TMath::Abs(dxprimbest)>TMath::Abs(xdif)) dxprimbest = xdif;          
-               if(TMath::Abs(dzprimbest)>TMath::Abs(zdif)) dzprimbest = zdif;         
-             }
-             
-
-             /*
-             // fill ntuple
-             ntuple_st.lay = hitlayer;
-             ntuple_st.nxP = nxP;
-             ntuple_st.nxN = nxN;
-             ntuple_st.hitprim = hitprim;
-             ntuple_st.partcode = partcode;
-             ntuple_st.ntrover = ntrover;
-             ntuple_st.x = xrec/1000;
-             ntuple_st.z = zrec/1000;
-             ntuple_st.dx = xdif;
-             ntuple_st.dz = zdif;
-             ntuple_st.pmod = pmod;
-             
-             //if(qcut < 0.18) ntuple->Fill();
-             ntuple->Fill();
-             */
-             
-             //if(hitlayer == 5 && qcut < 0.18) {
-             
-             if(hitlayer == 5 ) {
-               Xres5->Fill(xdif);
-               Zres5->Fill(zdif);
-               Path5->Fill(pathInSSD);
-             }
-             //if(hitlayer == 6 && qcut < 0.18) {
-             if(hitlayer == 6) {
-               Xres6->Fill(xdif);
-               Zres6->Fill(zdif);
-               Path6->Fill(pathInSSD);
-             }
-           } // hitstat 68/33
-         } else {       // non correspondent hit
-           xhit0 = 1e+7;
-           zhit0 = 1e+7;
-         } // end of hit-recpoint correspondence
-       } // hit loop       
-        
-       if(flaghit == 1) {
-          
-          if(noverlaps == 0) noverlaps = 1; // cluster contains one or more
-          // delta rays only
-   
-
-          // fill ntuple1
-          ntuple1_st.lay = hitlayer;
-          ntuple1_st.lad = hitladder;
-          ntuple1_st.det = hitdet;
-          ntuple1_st.nxP = nxP;
-          ntuple1_st.nxN = nxN;
-          ntuple1_st.qclP = qclP*300/pathInSSD; 
-          ntuple1_st.qclN = qclN*300/pathInSSD; 
-          ntuple1_st.qrec = qrec*300/pathInSSD; 
-           ntuple1_st.qcut = qcut;
-          ntuple1_st.dx = dxprimbest;
-          ntuple1_st.dz = dzprimbest;
-          noverlaps -= 1;
-          noverprim -= 1;
-          ntuple1_st.noverlaps = noverlaps;
-          ntuple1_st.noverprim = noverprim;
-          ntuple1_st.ntrover = ntrover;
-          
-          //if(qcut < 0.18) ntuple1->Fill();
-          ntuple1->Fill();
-
-          
-          Float_t de = dedx*300./pathInSSD;
-          dEdX->Fill(de);
-          if(noverprim >=0) {
-            if(hitlayer == 5 ) {
-              adcPadcN5all->Fill(qclP,qclN);
-            }
-            if(hitlayer == 6 ) {
-              adcPadcN6all->Fill(qclP,qclN);
-            }
-            if(hitlayer == 5 && qcut < 0.18) {
-              //if(hitlayer == 5 && noverlaps == 0) {
-              adcPadcN5cut->Fill(qclP,qclN);
-              NxP5->Fill(nxP);
-              NxN5->Fill(nxN);
-            }
-            if(hitlayer == 6 && qcut < 0.18) {
-              //if(hitlayer == 6 && noverlaps == 0) {
-              adcPadcN6cut->Fill(qclP,qclN);
-              NxP6->Fill(nxP);
-              NxN6->Fill(nxN);
-            }
-          }
-       } // flaghit = 1
-      } //b.b. recpoint loop
-     } // module loop
-    } // detector loop (iDetType)
-   } // if ITS
-  } //b.b. evnt loop
-   
-   TFile fhistos("SSD_his.root","RECREATE");
-
-   //ntuple->Write();
-   ntuple1->Write();
-   ntuple2->Write();
-   NxP5->Write();
-   NxN5->Write();
-   NxP6->Write();
-   NxN6->Write();
-   Xres5->Write();
-   Zres5->Write();
-   Xres6->Write();
-   Zres6->Write();
-   Path5->Write();
-   Path6->Write();
-   adcPadcN5all->Write();
-   adcPadcN6all->Write();
-   adcPadcN5cut->Write();
-   adcPadcN6cut->Write();
-   dEdX->Write();
-
-   fhistos.Close();
-
-   cout<<"!!! Histogramms and ntuples were written"<<endl;
-
-   TCanvas *c1 = new TCanvas("c1","ITS clusters",400,10,600,700);
-   c1->Divide(2,2);
-   c1->cd(1);
-   gPad->SetFillColor(33);
-         Xres5->SetFillColor(42);
-         Xres5->Draw();
-   c1->cd(2);
-   gPad->SetFillColor(33);
-         Zres5->SetFillColor(46);
-         Zres5->Draw();
-   c1->cd(3);
-   gPad->SetFillColor(33);
-         Xres6->SetFillColor(42);
-         Xres6->Draw();
-   c1->cd(4);
-   gPad->SetFillColor(33);
-         Zres6->SetFillColor(46);
-         Zres6->Draw();
-
-   cout<<"END  test for clusters and hits "<<endl;
-
-}
-
-
-
-
-
-
diff --git a/ITS/oldmacros/SetConvConst.C b/ITS/oldmacros/SetConvConst.C
deleted file mode 100644 (file)
index feee514..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-AliKalmanTrack::SetConvConst(100/.299792458/.2);
-}
diff --git a/ITS/oldmacros/TPCtracking.C b/ITS/oldmacros/TPCtracking.C
deleted file mode 100644 (file)
index 8fe30b6..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-void TPCtracking( Int_t N =-1 )
-{
-  // Dynamically link some shared libs                    
-/*    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-   TFile *in=TFile::Open("galice.root");
-   if (!in->IsOpen()) {cerr<<"Can't open galice.root !\n"; return;}
-   if (!(gAlice=(AliRun*)in->Get("gAlice"))) {
-     cerr<<"gAlice have not been found on galice.root !\n";
-     return;
-   }              
-  
-  if (N < 0 ) N = (Int_t)gAlice->TreeE()->GetEntries();
-  cout<<endl<<N<<" EVENTS FOUND"<<endl;
-  */
-
-  cout<<"Running AliBarrelReconstruction4ITS.C  ...\n";
-  gROOT->LoadMacro("$ALICE_ROOT/ITS/AliBarrelReconstruction4ITS.C");
-  AliBarrelReconstruction4ITS(N);
-  
-  cout<<"Running AliTPCComparison4ITS.C  ...\n";
-  gROOT->LoadMacro("$ALICE_ROOT/ITS/AliTPCComparison4ITS.C");
-  AliTPCComparison4ITS(N);
-  
-  
- }
diff --git a/ITS/oldmacros/TPCtracks.C b/ITS/oldmacros/TPCtracks.C
deleted file mode 100644 (file)
index b551ba7..0000000
+++ /dev/null
@@ -1,512 +0,0 @@
-#ifndef __CINT__
-  #include "alles.h"
- #include "AliTPCtracker.h"  
-#endif
-
-struct GoodTrack {
-  Int_t lab;
-  Int_t code;
-  Float_t px,py,pz;
-  Float_t x,y,z;
-  Float_t pxg,pyg,pzg,ptg;
-  Bool_t flag;
-};
-Int_t good_tracks(GoodTrack *gt, Int_t max);
-
-Int_t TPCtracks() {
-  Int_t i;
-   gBenchmark->Start("AliTPCComparison");
-  //to run alone 
- AliKalmanTrack::SetConvConst(100/0.299792458/0.2/gAlice->Field()->Factor());   
-
-   TFile *cf=TFile::Open("AliTPCclusters.root");
-   if (!cf->IsOpen()) {cerr<<"Can't open AliTPCclusters.root !\n"; return 1;}
-   AliTPCParam *digp= (AliTPCParam*)cf->Get("75x40_100x60");
-   if (!digp) { cerr<<"TPC parameters have not been found !\n"; return 2; }
-   AliTPCtracker *tracker = new AliTPCtracker(digp);
-/*   
-// Load clusters
-   AliTPCClustersArray *ca=new AliTPCClustersArray;
-   ca->Setup(digp);
-   ca->SetClusterType("AliTPCcluster");
-   ca->ConnectTree("Segment Tree");
-   Int_t nentr=Int_t(ca->GetTree()->GetEntries());
-   for (i=0; i<nentr; i++) ca->LoadEntry(i);
-*/
-// Load clusters
-   tracker->LoadInnerSectors();
-   tracker->LoadOuterSectors();
-   
-// Load tracks
-   TFile *tf=TFile::Open("AliTPCtracks.root");
-   if (!tf->IsOpen()) {cerr<<"Can't open AliTPCtracks.root !\n"; return 3;}
-   TObjArray tarray(2000);
-  // TTree *tracktree=(TTree*)tf->Get("TreeT");
-   TTree *tracktree=(TTree*)tf->Get("TPCf");
-   if (!tracktree) {cerr<<"Can't get a tree with TPC tracks !\n"; return 4;}   
-   TBranch *tbranch=tracktree->GetBranch("tracks");
-   Int_t nentr=(Int_t)tracktree->GetEntries();
-   
-   AliTPCtrack *iotrack=0;
-   for (i=0; i<nentr; i++) {
-       iotrack=new AliTPCtrack;
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-       //iotrack->CookLabel(ca);
-       tracker->CookLabel(iotrack,0.1);       
-       tarray.AddLast(iotrack);
-   }
-   
-   delete tracker; 
-        
-   tf->Close();
-
-   //delete ca;
-   cf->Close();
-
-/////////////////////////////////////////////////////////////////////////
-   GoodTrack gt[15000];
-   Int_t ngood=0;
-   ifstream in("good_tracks_tpc");
-   if (in) {
-      cerr<<"Reading good tracks...\n";
-      while (in>>gt[ngood].lab>>gt[ngood].code>>
-                 gt[ngood].px>>gt[ngood].py>>gt[ngood].pz>>
-                 gt[ngood].x >>gt[ngood].y >>gt[ngood].z>>
-                gt[ngood].pxg>>gt[ngood].pyg>>gt[ngood].pzg>>
-                gt[ngood].ptg>>gt[ngood].flag) {
-         ngood++;
-         cerr<<ngood<<'\r';
-         if (ngood==15000) {
-            cerr<<"Too many good tracks !\n";
-            break;
-         }
-      }
-      if (!in.eof()) cerr<<"Read error (good_tracks_tpc) !\n";
-   } else {
-      cerr<<"Marking good tracks (this will take a while)...\n";
-      ngood=good_tracks(gt,15000);
-      ofstream out("good_tracks_tpc");
-      if (out) {
-         for (Int_t ngd=0; ngd<ngood; ngd++)            
-           out<<gt[ngd].lab<<' '<<gt[ngd].code<<' '<<
-                 gt[ngd].px<<' '<<gt[ngd].py<<' '<<gt[ngd].pz<<' '<<
-                 gt[ngd].x <<' '<<gt[ngd].y <<' '<<gt[ngd].z<<' '<<
-                 gt[ngd].pxg<<' '<<gt[ngd].pyg<<' '<<gt[ngd].pzg<<' '<<' '
-                 <<gt[ngd].ptg<<gt[ngd].flag<<endl;
-      } else cerr<<"Can not open file (good_tracks_tpc) !\n";
-      out.close();
-
-      cerr<<"Preparing tracks for matching with the ITS...\n";
-      tarray.Sort();
-      tf=TFile::Open("AliTPCtracks.root","recreate");
-     // tracktree=new TTree("TreeT","Tree with TPC tracks");
-     tracktree=new TTree("TPCf","Tree with TPC tracks");
-      tracktree->Branch("tracks","AliTPCtrack",&iotrack,32000,0);
-      for (i=0; i<nentr; i++) {
-          iotrack=(AliTPCtrack*)tarray.UncheckedAt(i);
-          tracktree->Fill();
-      }
-      tracktree->Write();
-      tf->Close();
-
-   }
-   cerr<<"Number of good tracks : "<<ngood<<endl;
-
-   cerr<<"Doing comparison...\n";
-   TH1F *hp=new TH1F("hp","PHI resolution",50,-20.,20.); hp->SetFillColor(4);
-   TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-20,20);hl->SetFillColor(4);
-   TH1F *hpt=new TH1F("hpt","Relative Pt resolution",30,-10.,10.); 
-   hpt->SetFillColor(2); 
-   TH1F *hmpt=new TH1F("hmpt","Relative Pt resolution (pt>4GeV/c)",30,-60,60); 
-   hmpt->SetFillColor(6);
-
-   AliTPCtrack *trk=(AliTPCtrack*)tarray.UncheckedAt(0);
-   Double_t pmin=0.1*(100/0.299792458/0.2/trk->GetConvConst());
-   Double_t pmax=6.0+pmin;   
-   /*
-   TH1F *hgood=new TH1F("hgood","Good tracks",30,0.1,6.1);    
-   TH1F *hfound=new TH1F("hfound","Found tracks",30,0.1,6.1);
-   TH1F *hfake=new TH1F("hfake","Fake tracks",30,0.1,6.1);
-   TH1F *hg=new TH1F("hg","",30,0.1,6.1); //efficiency for good tracks
-   hg->SetLineColor(4); hg->SetLineWidth(2);
-   TH1F *hf=new TH1F("hf","Efficiency for fake tracks",30,0.1,6.1);   
-   hf->SetFillColor(1); hf->SetFillStyle(3013); hf->SetLineWidth(2);
-   */
-   TH1F *hgood=new TH1F("hgood","Good tracks",30,pmin,pmax);    
-   TH1F *hfound=new TH1F("hfound","Found tracks",30,pmin,pmax);
-   TH1F *hfake=new TH1F("hfake","Fake tracks",30,pmin,pmax);
-   TH1F *hg=new TH1F("hg","",30,pmin,pmax); //efficiency for good tracks
-   hg->SetLineColor(4); hg->SetLineWidth(2);
-   TH1F *hf=new TH1F("hf","Efficiency for fake tracks",30,pmin,pmax);
-   hf->SetFillColor(1); hf->SetFillStyle(3013); hf->SetLineWidth(2);
-      
-   TH1F *he =new TH1F("he","dE/dX for pions with 0.4<p<0.5 GeV/c",50,0.,100.);
-   TH2F *hep=new TH2F("hep","dE/dX vs momentum",50,0.,2.,50,0.,200.);
-   hep->SetMarkerStyle(8);
-   hep->SetMarkerSize(0.4);
-
-   Int_t mingood = ngood;  //MI change
-   Int_t * track_notfound = new Int_t[ngood];
-   Int_t   itrack_notfound =0;
-   Int_t * track_fake  = new Int_t[ngood];
-   Int_t   itrack_fake = 0;
-   Int_t * track_multifound = new Int_t[ngood];
-   Int_t * track_multifound_n = new Int_t[ngood];
-   Int_t   itrack_multifound =0;
-
-   while (ngood--) {
-      Int_t lab=gt[ngood].lab,tlab=-1;
-      Float_t ptg=
-      TMath::Sqrt(gt[ngood].px*gt[ngood].px + gt[ngood].py*gt[ngood].py);
-
-      if (ptg<pmin) continue;
-      hgood->Fill(ptg);
-
-      AliTPCtrack *track=0;
-      for (i=0; i<nentr; i++) {
-          track=(AliTPCtrack*)tarray.UncheckedAt(i);
-          tlab=track->GetLabel();
-          if (lab==TMath::Abs(tlab)) break;
-      }
-      if (i==nentr) {
-       //cerr<<"Track "<<lab<<" was not found !\n";
-       track_notfound[itrack_notfound++]=lab;
-        continue;
-      }
-      
-      //MI change  - addition
-      Int_t micount=0;
-      Int_t mi;
-      AliTPCtrack * mitrack;
-      for (mi=0; mi<nentr; mi++) {
-       mitrack=(AliTPCtrack*)tarray.UncheckedAt(mi);          
-       if (lab==TMath::Abs(mitrack->GetLabel())) micount++;
-      }
-      if (micount>1) {
-       //cout<<"Track no. "<<lab<<" found "<<micount<<"  times\n";
-       track_multifound[itrack_multifound]=lab;
-       track_multifound_n[itrack_multifound]=micount;
-       itrack_multifound++;
-      }
-      
-
-      //
-      Double_t xk=gt[ngood].x;//digp->GetPadRowRadii(0,0);
-      track->PropagateTo(xk);
-
-      if (lab==tlab) hfound->Fill(ptg);
-      else { 
-       track_fake[itrack_fake++]=lab;
-       hfake->Fill(ptg); 
-       //cerr<<lab<<" fake\n";
-      }
-
-      Double_t par[5]; track->GetExternalParameters(xk,par);
-      //cout<<"par = "<<par[0]<<" "<<par[1]<<" "<<par[2]<<" "<<par[3]<<" "<<par[4]
-      //<<"\n"; getchar();
-      Float_t phi=TMath::ASin(par[2]) + track->GetAlpha();
-      if (phi<-TMath::Pi()) phi+=2*TMath::Pi();
-      if (phi>=TMath::Pi()) phi-=2*TMath::Pi();
-      Float_t lam=TMath::ATan(par[3]); 
-      Float_t pt_1=TMath::Abs(par[4]);
-
-      if (TMath::Abs(gt[ngood].code)==11 && ptg>4.) {
-         hmpt->Fill((pt_1 - 1/ptg)/(1/ptg)*100.);
-      } else {
-         Float_t phig=TMath::ATan2(gt[ngood].py,gt[ngood].px);
-         hp->Fill((phi - phig)*1000.);
-
-         Float_t lamg=TMath::ATan2(gt[ngood].pz,ptg);
-         hl->Fill((lam - lamg)*1000.);
-
-         hpt->Fill((pt_1 - 1/ptg)/(1/ptg)*100.);
-      }
-
-      Float_t mom=1./(pt_1*TMath::Cos(lam));
-      Float_t dedx=track->GetdEdx();
-      hep->Fill(mom,dedx,1.);
-      if (TMath::Abs(gt[ngood].code)==211)
-        if (mom>0.4 && mom<0.5) {
-            he->Fill(dedx,1.);
-         }
-
-   }
-
-   
-   Stat_t ng=hgood->GetEntries(); cerr<<"Good tracks "<<ng<<endl;
-   Stat_t nf=hfound->GetEntries();
-   if (ng!=0) 
-      cerr<<"\n\n\nIntegral efficiency is about "<<nf/ng*100.<<" %\n";
-   
-   //MI change  - addition
-   cout<<"Total number of found tracks ="<<nentr<<"\n";
-   cout<<"Total number of \"good\" tracks ="<<mingood<<"\n";
-
-
-   cout<<"\nList of Not found tracks :\n";
-   //   Int_t i;
-   for ( i = 0; i< itrack_notfound; i++){
-     cout<<track_notfound[i]<<"\t";
-     if ((i%5)==4) cout<<"\n";
-   }
-   cout<<"\nList of fake  tracks :\n";
-   for ( i = 0; i< itrack_fake; i++){
-     cout<<track_fake[i]<<"\t";
-     if ((i%5)==4) cout<<"\n";
-   }
-    cout<<"\nList of multiple found tracks :\n";
-   for ( i=0; i<itrack_multifound; i++) {
-       cout<<"id.   "<<track_multifound[i]<<"     found - "<<track_multifound_n[i]<<"times\n";
-   }
-   cout<<"\n\n\n";
-
-   
-   gStyle->SetOptStat(111110);
-   gStyle->SetOptFit(1);
-
-   TCanvas *c1=new TCanvas("c1","",0,0,700,850);
-
-   TPad *p1=new TPad("p1","",0,0.3,.5,.6); p1->Draw();
-   p1->cd(); p1->SetFillColor(42); p1->SetFrameFillColor(10); 
-   hp->SetFillColor(4);  hp->SetXTitle("(mrad)"); hp->Fit("gaus"); c1->cd();
-
-   TPad *p2=new TPad("p2","",0.5,.3,1,.6); p2->Draw(); 
-   p2->cd(); p2->SetFillColor(42); p2->SetFrameFillColor(10);
-   hl->SetXTitle("(mrad)"); hl->Fit("gaus"); c1->cd();
-
-   TPad *p3=new TPad("p3","",0,0,0.5,0.3); p3->Draw();
-   p3->cd(); p3->SetFillColor(42); p3->SetFrameFillColor(10); 
-   hpt->SetXTitle("(%)"); hpt->Fit("gaus"); c1->cd();
-
-   TPad *p4=new TPad("p4","",0.5,0,1,0.3); p4->Draw();
-   p4->cd(); p4->SetFillColor(42); p4->SetFrameFillColor(10);
-   hmpt->SetXTitle("(%)"); hmpt->Fit("gaus"); c1->cd();
-
-   TPad *p5=new TPad("p5","",0,0.6,1,1); p5->Draw(); p5->cd(); 
-   p5->SetFillColor(41); p5->SetFrameFillColor(10);
-   hfound->Sumw2(); hgood->Sumw2(); hfake->Sumw2();
-   hg->Divide(hfound,hgood,1,1.,"b");
-   hf->Divide(hfake,hgood,1,1.,"b");
-   hg->SetMaximum(1.4);
-   hg->SetYTitle("Tracking efficiency");
-   hg->SetXTitle("Pt (GeV/c)");
-   hg->Draw();
-   /*
-   TLine *line1 = new TLine(0,1.0,7,1.0); line1->SetLineStyle(4);
-   line1->Draw("same");
-   TLine *line2 = new TLine(0,0.9,7,0.9); line2->SetLineStyle(4);
-   line2->Draw("same");
-    */
-   TLine *line1 = new TLine(pmin,1.0,pmax,1.0); line1->SetLineStyle(4);
-   line1->Draw("same");
-   TLine *line2 = new TLine(pmin,0.9,pmax,0.9); line2->SetLineStyle(4);
-   line2->Draw("same"); 
-      
-   hf->SetFillColor(1);
-   hf->SetFillStyle(3013);
-   hf->SetLineColor(2);
-   hf->SetLineWidth(2);
-   hf->Draw("histsame");
-   TText *text = new TText(0.461176,0.248448,"Fake tracks");
-   text->SetTextSize(0.05);
-   text->Draw();
-   text = new TText(0.453919,1.11408,"Good tracks");
-   text->SetTextSize(0.05);
-   text->Draw();
-
-
-
-   TCanvas *c2=new TCanvas("c2","",320,32,530,590);
-
-   TPad *p6=new TPad("p6","",0.,0.,1.,.5); p6->Draw();
-   p6->cd(); p6->SetFillColor(42); p6->SetFrameFillColor(10); 
-   he->SetFillColor(2); he->SetFillStyle(3005);  
-   he->SetXTitle("Arbitrary Units"); 
-   he->Fit("gaus"); c2->cd();
-
-   TPad *p7=new TPad("p7","",0.,0.5,1.,1.); p7->Draw(); 
-   p7->cd(); p7->SetFillColor(42); p7->SetFrameFillColor(10);
-   hep->SetXTitle("p (Gev/c)"); hep->SetYTitle("dE/dX (Arb. Units)"); 
-   hep->Draw(); c1->cd();
-
-   gBenchmark->Stop("AliTPCComparison");
-   gBenchmark->Show("AliTPCComparison");
-
-
-   return 0;
-}
-
-
-Int_t good_tracks(GoodTrack *gt, Int_t max) {
-   Int_t nt=0;
-
-   //TFile *file=TFile::Open("rfio:galice.root");
-   TFile *file=TFile::Open("galice.root");
-   if (!file->IsOpen()) {cerr<<"Can't open galice.root !\n"; exit(4);}
-
-   if (!(gAlice=(AliRun*)file->Get("gAlice"))) {
-     cerr<<"gAlice have not been found on galice.root !\n";
-     exit(5);
-   }
-
-   Int_t np=gAlice->GetEvent(0);   
-
-   AliTPC *TPC=(AliTPC*)gAlice->GetDetector("TPC");
-   Int_t ver = TPC->IsVersion(); 
-   cerr<<"TPC version "<<ver<<" has been found !\n";
-
-   AliTPCParam *digp=(AliTPCParam*)file->Get("75x40_100x60");
-   if (!digp) { cerr<<"TPC parameters have not been found !\n"; exit(6); }
-   TPC->SetParam(digp);
-
-   Int_t nrow_up=digp->GetNRowUp();
-   Int_t nrows=digp->GetNRowLow()+nrow_up;
-   Int_t zero=digp->GetZeroSup();
-   Int_t gap=Int_t(0.125*nrows);
-   Int_t good_number=Int_t(0.4*nrows);
-
-   Int_t *good=new Int_t[np];
-   for (Int_t ii=0; ii<np; ii++) good[ii]=0;
-
-
-   //MI change to be possible compile macro
-   //definition out of the swith statemnet
-    Int_t sectors_by_rows=0;
-    TTree *TD=0;
-    AliSimDigits da, *digits=&da;
-    Int_t *count=0;
-   switch (ver) {
-   case 1:
-     {
-      TFile *cf=TFile::Open("AliTPCclusters.root");
-      if (!cf->IsOpen()){cerr<<"Can't open AliTPCclusters.root !\n";exit(5);}
-      AliTPCClustersArray *ca=new AliTPCClustersArray;
-      ca->Setup(digp);
-      ca->SetClusterType("AliTPCcluster");
-      ca->ConnectTree("Segment Tree");
-      Int_t nrows=Int_t(ca->GetTree()->GetEntries());
-      for (Int_t n=0; n<nrows; n++) {
-          AliSegmentID *s=ca->LoadEntry(n);
-          Int_t sec,row;
-          digp->AdjustSectorRow(s->GetID(),sec,row);
-          AliTPCClustersRow &clrow = *ca->GetRow(sec,row);
-          Int_t ncl=clrow.GetArray()->GetEntriesFast();
-          while (ncl--) {
-              AliTPCcluster *c=(AliTPCcluster*)clrow[ncl];
-              Int_t lab=c->GetLabel(0);
-              if (lab<0) continue; //noise cluster
-              lab=TMath::Abs(lab);
-              if (sec>=digp->GetNInnerSector())
-              if (row==nrow_up-1    ) good[lab]|=0x1000;
-              if (sec>=digp->GetNInnerSector())
-              if (row==nrow_up-1-gap) good[lab]|=0x800;
-              good[lab]++;
-          }
-          ca->ClearRow(sec,row);
-      }
-      cf->Close();
-     }
-      break;
-   case 2:
-      TD=(TTree*)gDirectory->Get("TreeD_75x40_100x60");
-      TD->GetBranch("Segment")->SetAddress(&digits);
-      count = new Int_t[np];
-      Int_t i;
-      for (i=0; i<np; i++) count[i]=0;
-      sectors_by_rows=(Int_t)TD->GetEntries();
-      for (i=0; i<sectors_by_rows; i++) {
-          if (!TD->GetEvent(i)) continue;
-          Int_t sec,row;
-          digp->AdjustSectorRow(digits->GetID(),sec,row);
-          cerr<<sec<<' '<<row<<"                                     \r";
-          digits->First();
-         // while (digits->Next()) {
-          do { //Many thanks to J.Chudoba who noticed this      
-              Int_t it=digits->CurrentRow(), ip=digits->CurrentColumn();
-              Short_t dig = digits->GetDigit(it,ip);
-              Int_t idx0=digits->GetTrackID(it,ip,0); 
-              Int_t idx1=digits->GetTrackID(it,ip,1);
-              Int_t idx2=digits->GetTrackID(it,ip,2);
-              if (idx0>=0 && dig>=zero) count[idx0]+=1;
-              if (idx1>=0 && dig>=zero) count[idx1]+=1;
-              if (idx2>=0 && dig>=zero) count[idx2]+=1;
-          } while (digits->Next());
-          for (Int_t j=0; j<np; j++) {
-              if (count[j]>1) {
-                 if (sec>=digp->GetNInnerSector())
-                  if (row==nrow_up-1    ) good[j]|=0x1000;
-                 if (sec>=digp->GetNInnerSector())
-                  if (row==nrow_up-1-gap) good[j]|=0x800;
-                 good[j]++;
-              }
-              count[j]=0;
-          }
-      }
-      delete[] count;
-      break;
-   default:
-      cerr<<"Invalid TPC version !\n";
-      file->Close();
-      exit(7);
-   }
-
-   TTree *TH=gAlice->TreeH();
-   Int_t npart=(Int_t)TH->GetEntries();
-
-   while (npart--) {
-      AliTPChit *hit0=0;
-
-      TPC->ResetHits();
-      TH->GetEvent(npart);
-      AliTPChit * hit = (AliTPChit*) TPC->FirstHit(-1);
-      while (hit){
-       if (hit->fQ==0.) break;
-       hit =  (AliTPChit*) TPC->NextHit();
-      }
-      if (hit) {
-       hit0 = new AliTPChit(*hit); //Make copy of hit
-       hit = hit0;
-      }
-      else continue;
-      AliTPChit *hit1=(AliTPChit*)TPC->NextHit();      
-      if (hit1==0) continue;
-      if (hit1->fQ != 0.) continue;
-      Int_t i=hit->Track();
-      TParticle *p = (TParticle*)gAlice->Particle(i);
-
-      if (p->GetFirstMother()>=0) continue;  //secondary particle
-      if (good[i] < 0x1000+0x800+2+good_number) continue;
-      if (p->Pt()<0.100) continue;
-      if (TMath::Abs(p->Pz()/p->Pt())>0.999) continue;
-
-      gt[nt].lab=i;
-      gt[nt].code=p->GetPdgCode();
-//**** px py pz - in global coordinate system, x y z - in local !
-      gt[nt].px=hit->X(); gt[nt].py=hit->Y(); gt[nt].pz=hit->Z();
-      Float_t cs,sn; digp->AdjustCosSin(hit1->fSector,cs,sn);
-      gt[nt].x = hit1->X()*cs + hit1->Y()*sn;
-      gt[nt].y =-hit1->X()*sn + hit1->Y()*cs;
-      gt[nt].z = hit1->Z();
-      gt[nt].pxg = p->Px();
-      gt[nt].pyg = p->Py();
-      gt[nt].pzg = p->Pz();
-      gt[nt].ptg = p->Pt();
-      gt[nt].flag = 0;
-      nt++;    
-       if (hit0) delete hit0;
-      cerr<<i<<"                \r";
-      if (nt==max) {cerr<<"Too many good tracks !\n"; break;}
-   }
-   delete[] good;
-
-   delete gAlice; gAlice=0;
-
-   file->Close();
-   gBenchmark->Stop("AliTPCComparison");
-   gBenchmark->Show("AliTPCComparison");   
-   return nt;
-}
-
-
-
diff --git a/ITS/oldmacros/VertexMacro.C b/ITS/oldmacros/VertexMacro.C
deleted file mode 100644 (file)
index d58901f..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-#include "iostream.h"
-#include "TMath.h"
-
-void VertexMacro(Int_t evNumber1=0,Int_t evNumber2=0) {
-
-  const char *filename="galice.root";
-  
-  ///////////////// Dynamically link some shared libs ////////////////////////////////
-  
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
-  } else {
-    delete gAlice;
-    gAlice=0;
-  }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-   if (!file) file = new TFile(filename,"UPDATE");
-
-
-// Get AliRun object from file or create it if not on file
-   if (!gAlice) {
-      gAlice = (AliRun*)file->Get("gAlice");
-      if (gAlice) printf("AliRun object found on file\n");
-      if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-
-//   Loop over events 
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (int nev=0; nev<= evNumber2; nev++) {
-     gAlice->SetEvent(nev);
-        Int_t nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-  
-  
-     TStopwatch timer;
-     timer.Start();
-
-     AliITSVertex *V = new AliITSVertex();
-         V->Exec();
-
-     timer.Stop();
-     timer.Print();
-
-     cout << endl << "Xv = " << V->GetXv() << " cm" << endl;
-     cout << "X resolution = " << V->GetXRes()*10000 << " microns"  << endl;
-     cout << "Signal/Noise for X = " << V->GetXSNR() << endl;
-     cout << endl << "Yv = " << V->GetYv() << " cm"  << endl;
-     cout << "Y resolution = " << V->GetYRes()*10000 << " microns"  << endl;
-     cout << "Signal/Noise for Y = " << V->GetYSNR() << endl;
-     cout << endl << "Zv = " << V->GetZv() << " cm" << endl;
-     cout << "Z Resolution = " << V->GetZRes()*10000 << " microns" << endl;
-     cout << "Signal/Noise for Z = " << V->GetZSNR() <<endl;
-                
-     delete V;
-  } 
-  
-  file->Close(); 
-}
-
diff --git a/ITS/oldmacros/dEdXgeant.C b/ITS/oldmacros/dEdXgeant.C
deleted file mode 100644 (file)
index 95869db..0000000
+++ /dev/null
@@ -1,647 +0,0 @@
-
-Int_t max_modules=2269;
-
-void dEdXyy (Int_t evNumber1=0,Int_t evNumber2=0,AliITSPid* pid=0,int mtest=0)
-{
-   if (gClassTable->GetID("AliRun") < 0) {
-      gROOT->LoadMacro("loadlibs.C");
-      loadlibs();
-   } else {
-      delete gAlice;
-      gAlice=0;
-   }
-
-// Connect the Root Galice file containing Geometry, Kine and Hits
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject("galice.root");
-   printf("file %p\n",file);
-   if (file) file->Close(); 
-   file = new TFile("galice.root","UPDATE");
-   file->ls();
-
-   printf ("I'm after Map \n");
-
-// Get AliRun object from file or create it if not on file
-
-   if (!gAlice) {
-       gAlice = (AliRun*)file->Get("gAlice");
-       if (gAlice) printf("AliRun object found on file\n");
-       if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
-   }
-   printf ("I'm after gAlice \n");
-
- // Create Histogramms -------------------------------------------------
-
-     TH1F *dedxSDD = new TH1F("dedxSDD","Particle energy (KeV) for layer 3 and 4",100,0.,400.);
-     //TH1F *dedxSDDnorm = new TH1F("dedxSDDnorm","Particle energy (KeV) for layer 3 and 4",100,0.,400.);
-     TH1F *dedxSDDnorm = new TH1F("dedxSDDnorm","Particle energy (KeV) for layer 3 and 4",100,0.,3000.);
-     //TH1F *dedxSDDmip = new TH1F("dedxSDDmip","Particle energy (mips) for layer 3 and 4",100,0.,6.);
-     TH1F *dedxSDDmip = new TH1F("dedxSDDmip","Particle energy (mips) for layer 3 and 4",100,0.,30.);
-     //TH1F *signalSDD = new TH1F("signalSDD","SDD signal (ADC) for layer 3 and 4",100,0.,2000.);
-     TH1F *signalSDD = new TH1F("signalSDD","SDD signal (ADC) for layer 3 and 4",100,0.,15000.);
-     //TH1F *signalSDDmip = new TH1F("signalSDDmip","SDD signal (mips) for layer 3 and 4",100,0.,6.);
-     TH1F *signalSDDmip = new TH1F("signalSDDmip","SDD signal (mips) for layer 3 and 4",100,0.,30.);
-     TH1F *dedxSSD = new TH1F("dedxSSD","Particle energy (KeV) for layer 5 and 6",100,0.,400.);
-     //TH1F *dedxSSDnorm = new TH1F("dedxSSDnorm","Particle energy (KeV) for layer 5 and 6",100,0.,400.);
-     TH1F *dedxSSDnorm = new TH1F("dedxSSDnorm","Particle energy (KeV) for layer 5 and 6",100,0.,3000.);
-     //TH1F *dedxSSDmip = new TH1F("dedxSSDmip","Particle energy (mips) for layer 5 and 6",100,0.,6.);
-     TH1F *dedxSSDmip = new TH1F("dedxSSDmip","Particle energy (mips) for layer 5 and 6",100,0.,30.);
-     //TH1F *signalSSD = new TH1F("signalSSD","SSD signal (ADC) for layer 5 and 6",100,0.,200.);
-     TH1F *signalSSD = new TH1F("signalSSD","SSD signal (ADC) for layer 5 and 6",100,0.,2000.);
-     //TH1F *signalSSDmip = new TH1F("signalSSDmip","SSD signal (mips) for layer 5 and 6",100,0.,6.);
-     TH1F *signalSSDmip = new TH1F("signalSSDmip","SSD signal (mips) for layer 5 and 6",100,0.,30.);
-
-
-
-     /*
-     TH1F *dedxSDD = new TH1F("dedxSDD","Particle energy (KeV) for layer 3 and 4",100,0.,4000.);
-     TH1F *dedxSDDnorm = new TH1F("dedxSDDnorm","Particle energy (KeV) for layer 3 and 4",100,0.,4000.);
-     TH1F *dedxSDDmip = new TH1F("dedxSDDmip","Particle energy (mips) for layer 3 and 4",100,0.,40.);
-     TH1F *signalSDD = new TH1F("signalSDD","SDD signal (ADC) for layer 3 and 4",100,0.,20000.);
-     TH1F *signalSDDmip = new TH1F("signalSDDmip","SDD signal (mips) for layer 3 and 4",100,0.,40.);
-     TH1F *dedxSSD = new TH1F("dedxSSD","Particle energy (KeV) for layer 5 and 6",100,0.,4000.);
-     TH1F *dedxSSDnorm = new TH1F("dedxSSDnorm","Particle energy (KeV) for layer 5 and 6",100,0.,4000.);
-     TH1F *dedxSSDmip = new TH1F("dedxSSDmip","Particle energy (mips) for layer 5 and 6",100,0.,40.);
-     TH1F *signalSSD = new TH1F("signalSSD","SSD signal (ADC) for layer 5 and 6",100,0.,2000.);
-     TH1F *signalSSDmip = new TH1F("signalSSDmip","SSD signal (mips) for layer 5 and 6",100,0.,40.);
-     */
-
-     TH1F *pathSDD = new TH1F("pathSDD","Path length in the SDD",100,0.,1000.);
-     TH1F *pathSSD = new TH1F("pathSSD","Path length in the SSD",100,0.,1000.);
-
- // -------------------------------------------------------------
-   AliITS *ITS  = (AliITS*) gAlice->GetModule("ITS");
-   if (!ITS) return;
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-   // Set the models for cluster finding
-
-   // SPD
-
-   ITS->MakeTreeC();
-   Int_t nparticles=gAlice->GetEvent(0);
-
-   AliITSDetType *iDetType=ITS->DetType(0);
-   AliITSsegmentationSPD *seg0=(AliITSsegmentationSPD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig0  = ITS->DigitsAddress(0);
-   TClonesArray *recp0  = ITS->ClustersAddress(0);
-   AliITSClusterFinderSPD *rec0=new AliITSClusterFinderSPD(seg0,dig0,recp0);
-   ITS->SetReconstructionModel(0,rec0);
-
-   // SDD
-
-   AliITSDetType *iDetType=ITS->DetType(1);
-   AliITSgeom *geom = ITS->GetITSgeom();
-
-   AliITSsegmentationSDD *seg1=(AliITSsegmentationSDD*)iDetType->GetSegmentationModel();
-   if (!seg1) seg1 = new AliITSsegmentationSDD(geom);
-   AliITSresponseSDD *res1 = (AliITSresponseSDD*)iDetType->GetResponseModel();
-   if (!res1) res1=new AliITSresponseSDD();
-
-   Float_t baseline,noise;
-   res1->GetNoiseParam(noise,baseline);
-   Float_t noise_after_el = res1->GetNoiseAfterElectronics();
-   Float_t thres = baseline;
-   thres += (4.*noise_after_el);  // TB // (4.*noise_after_el);
-   printf("thres %f\n",thres);
-   //res1->Print();
-
-   TClonesArray *dig1  = ITS->DigitsAddress(1);
-   TClonesArray *recp1  = ITS->ClustersAddress(1);
-   AliITSClusterFinderSDD *rec1=new AliITSClusterFinderSDD(seg1,res1,dig1,recp1);
-   rec1->SetCutAmplitude((int)thres);
-   ITS->SetReconstructionModel(1,rec1);
-   //rec1->Print();
-
-   // SSD
-
-   AliITSDetType *iDetType=ITS->DetType(2);
-   AliITSsegmentationSSD *seg2=(AliITSsegmentationSSD*)iDetType->GetSegmentationModel();
-   TClonesArray *dig2  = ITS->DigitsAddress(2);
-   AliITSClusterFinderSSD *rec2=new AliITSClusterFinderSSD(seg2,dig2);
-   ITS->SetReconstructionModel(2,rec2);
-   
-//
-//   Loop over events
-//
-   Int_t Nh=0;
-   Int_t Nh1=0;
-   for (int nev=0; nev<= evNumber2; nev++) {
-     Int_t nparticles = 0;
-     nparticles = gAlice->GetEvent(nev);
-     cout << "nev         " << nev <<endl;
-     cout << "nparticles  " << nparticles <<endl;
-     if (nev < evNumber1) continue;
-     if (nparticles <= 0) return;
-     
-     AliITShit *itsHit;
-     AliITShit *itsHitPrev;
-     AliITSRecPoint *itsPnt = 0;
-     AliITSRawClusterSDD *itsClu = 0;
-     
-     // Get Hit, Cluster & Recpoints Tree Pointers
-
-     TTree *TH = gAlice->TreeH();
-     Int_t nenthit=TH->GetEntries();
-     printf("Found %d entries in the Hit tree (must be one per track per event!)\n",nenthit);
-
-     ITS->GetTreeC(nev);
-     TTree *TC=ITS->TreeC();
-     Int_t nentclu=TC->GetEntries();
-     printf("Found %d entries in the Cluster tree (must be one per module per event!)\n",nentclu);
-
-     TTree *TR = gAlice->TreeR();
-     Int_t nentrec=TR->GetEntries();
-     printf("Found %d entries in the RecPoints tree\n",nentrec);
-
-     // Get Pointers to Clusters & Recpoints TClonesArrays
-
-     TClonesArray *ITSclu  = ITS->ClustersAddress(1); 
-     printf ("ITSclu %p \n",ITSclu);
-     //            Int_t ncl = ITSclu->GetEntries();
-     //     cout<<"ncluster ="<<ncl<<endl;
-     TClonesArray *ITSrec  = ITS->RecPoints(); 
-     printf ("ITSrec %p \n",ITSrec);
-
-     // check recpoints
-
-     //Int_t nbytes = 0;
-     Int_t totpoints = 0;
-     Int_t totclust = 0;
-
-     // check hits
-     
-     Int_t nmodules=0;
-     
-     ITS->InitModules(-1,nmodules); 
-     ITS->FillModules(nev,0,nmodules,"","");
-     
-     TObjArray *fITSmodules = ITS->GetModules();
-
-     Int_t first0 = geom->GetStartDet(0);  // SPD
-     Int_t last0 = geom->GetLastDet(0);    // SPD
-     Int_t first1 = geom->GetStartDet(1);  // SDD
-     Int_t last1 = geom->GetLastDet(1);    // SDD
-     Int_t first2 = geom->GetStartDet(2);  // SSD
-     Int_t last2 = geom->GetLastDet(2);    // SSD
-
-     //  For the SPD: first0 = 0, last0 = 239     (240 modules);  
-     //  for the SDD: first1 = 240, last1 = 499   (260 modules);  
-     //  for the SSD: first2 = 500, last2 = 2269  (1770 modules).  
-
-     Int_t mod;
-     printf("det type %d first0, last0 %d %d \n",0,first0,last0);
-     printf("det type %d first1, last1 %d %d \n",1,first1,last1);
-     printf("det type %d first2, last2 %d %d \n",2,first2,last2);
-       Int_t negtrSDD = 0;
-       Int_t negtrSSD = 0;
-
-    for (mod=0; mod<last2+1; mod++) {
-      if(mod>max_modules)continue;
-      if(mod < first1) continue;  // for the SDD/SSD only
-
-       AliITSmodule *Mod = (AliITSmodule *)fITSmodules->At(mod);
-       Int_t nhits = Mod->GetNhits();
-       Int_t layer = Mod->GetLayer();
-       Int_t ladder = Mod->GetLadder();
-       Int_t detector = Mod->GetDet();
-       Int_t hit;
-       Int_t parent;
-       Int_t dray;
-       Int_t hitstat;
-       Int_t partcode;
-       Int_t hitprim;
-       Float_t epart;
-       Float_t pathInSi=300;
-       Float_t xhit;
-       Float_t yhit;
-       Float_t zhit;
-       Float_t px;
-       Float_t py;
-       Float_t pz;
-       Float_t pmod;
-       Float_t xhit0 = 1e+7;
-       Float_t yhit0 = 1e+7;
-       Float_t zhit0 = 1e+7;
-
-       TTree *TR = gAlice->TreeR();
-       ITS->ResetClusters();
-       //cout << "CLUSTERS: get" << endl;
-       TC->GetEvent(mod);
-       //cout << "RECPOINTS: reset" << endl;
-       ITS->ResetRecPoints();
-       //cout << "RECPOINTS: get" << endl;
-       //TR->GetEvent(mod+1);
-       TR->GetEvent(mod);
-   
-       Int_t nrecp = ITSrec->GetEntries();
-       totpoints += nrecp;
-       if (!nrecp) continue;
-
-       Int_t trackRecp[3];
-       Int_t itr;
-       Int_t TrackRecPoint;
-       Float_t PmodRecP;
-       Float_t signalRP;
-
-//         cout <<" module,layer,ladder,detector,nrecp,nhits ="<<
-//      mod<<","<<layer<<","<<ladder<<","<<detector<<","<<nrecp<<","<<nhits<< endl;
-       cout<<".";
-
-       // ---------- RecPoint signal analysis for the SDD/SSD  ---------
-
-       for (Int_t pnt=0;pnt<nrecp;pnt++) {          // recpoint loop
-
-        itsPnt  = (AliITSRecPoint*)ITSrec->At(pnt);
-
-        Int_t RecPointPrim = 0;
-        if(!itsPnt) continue;
-
-          signalRP = itsPnt->GetQ();
-          trackRecp[0] = itsPnt->GetLabel(0);
-          trackRecp[1] = itsPnt->GetLabel(1);
-          trackRecp[2] = itsPnt->GetLabel(2);
-
-//        cout<<"New Recp: pnt,signal,tr0,tr1,tr2 ="<<pnt
-//            <<","<<signalRP<<","<<trackRecp[0]<<","<<trackRecp[1]<<","<<trackRecp[2]<<endl;
-
-          /*
-            if(trackRecp[0]<0&&trackRecp[1]<0&&trackRecp[2]<0) {
-cout<<"pnt,tr0,1,2 ="<<pnt<<","<<trackRecp[0]<<","<<trackRecp[1]<<","<<trackRecp[2]<<endl;
- if(mod<first2) negtrSDD += 1;
- if(mod>=first2) negtrSSD += 1;
-           }
-          */
-
-          xhit0 = 1e+7;
-          yhit0 = 1e+7;
-          zhit0 = 1e+7;
-
-       // Hit loop
-        for (hit=0;hit<nhits;hit++) {
-
-        itsHit   = (AliITShit*)Mod->GetHit(hit);
-
-        hitprim = 0;
-        dray = 0;
-        Int_t hitRecp = 0;
-        Int_t trackHit = itsHit->GetTrack();
-        hitstat = itsHit->GetTrackStatus();
-        zhit = 10000*itsHit->GetZL();
-        xhit = 10000*itsHit->GetXL();
-        yhit = 10000*itsHit->GetYL();
-        Float_t dEn = 1.0e+6*itsHit->GetIonization(); // hit energy, KeV 
-
-        //      cout<<" New hit: hit,track,hitstat,yhit,ehit ="<<hit<<","<<trackHit<<","<<hitstat<<","<<yhit<<","<<dEn<<endl;
-
-        // check the primary particle
-        partcode = itsHit->GetParticle()->GetPdgCode();
-        parent = itsHit->GetParticle()->GetFirstMother();
-        if(parent < 0) hitprim = 1; // primery particle
-
-
-
-        // select the primery hits with the track number equaled to 
-        // the one of the RecPoint
-        for(itr=0;itr<3;itr++) {
-          if(trackRecp[itr] == trackHit) hitRecp = 1; 
-          if(trackRecp[itr] == trackHit && hitprim == 1) {
-             RecPointPrim = 1; 
-            TrackRecPoint = trackRecp[itr]; 
-          }
-          if(trackRecp[itr] == trackHit && hitprim == 0) trackRecp[itr]=-100; 
-        }
-         
-        if(hitRecp != 1) continue; // hit doesn't correspond to the recpoint
-
-        //cout<<"Hit Ok: trackRecp0,1,2,hitRecp,RecPointPrim,TrackRecPoint ="<<trackRecp[0]<<","<<trackRecp[1]<<","<<trackRecp[2]<<","<<hitRecp<<","<<RecPointPrim<<","<<TrackRecPoint<<endl;
-
-        //      if(hitstat == 66 && yhit < -136.) {  // entering hit
-        if(hitstat == 66 && hitprim == 1) {  // entering hit
-           xhit0 = xhit;
-           yhit0 = yhit;
-           zhit0 = zhit;
-        }
-        //              cout<<" xhit0,zhit0 ="<<xhit0<<","<<zhit0<<","<<endl;
-         
-         if(hitstat == 66) continue; // Take only the hits with the not
-                                      // zero energy
-
-         if(xhit0 > 9e+6 || zhit0 > 9e+6) {
-           // cout<<"default xhit0,zhit0 ="<<xhit0<<","<<zhit0<<","<<endl;
-           continue;
-         }
-
-        // check the particle code (type)
-        //        Int_t parent = itsHit->GetParticle()->GetFirstMother();
-         //partcode = itsHit->GetParticle()->GetPdgCode();
-
-   //  partcode (pdgCode): 11 - e-, 13 - mu-, 22 - gamma, 111 - pi0, 211 - i+
-   //  310 - K0s, 321 - K+, 2112 - n, 2212 - p, 3122 - lambda
-
-          /*
-          px = itsHit->GetPXL();  // momentum for the hit
-          py = itsHit->GetPYL();
-          pz = itsHit->GetPZL();
-          pmod = 1000*sqrt(px*px+py*py+pz*pz);
-          */
-          
-           pmod = itsHit->GetParticle()->P(); // momentum at the vertex
-          pmod *= 1.0e+3;
-
-          // cout<<"track,partcode,pmod,hitprim ="<<trackHit<<","<<partcode<<","<<pmod<<","<<hitprim<<endl;
-
-        if(partcode == 11 && pmod < 6) dray = 1; // delta ray is e-
-                                                 // at p < 6 MeV/c
-
-  // find the primery particle path length in Si and pmod (MeV/c) 
-          if((hitstat == 68 || hitstat == 33) && hitprim == 1)  {
-            pathInSi = TMath::Sqrt((xhit0-xhit)*(xhit0-xhit)+(yhit0-yhit)*(yhit0-yhit)+(zhit0-zhit)*(zhit0-zhit));
-             PmodRecP = itsHit->GetParticle()->P();
-            PmodRecP *= 1.0e+3;
-            // cout<<"path in Si="<<pathInSi<<endl;
-
-        Float_t Signal = signalRP*(300/pathInSi)/38; 
-           if(Signal<0.5) {
-             //cout<<"track,partcode,pmod,hitprim,hitstat,Signal,dEn ="<<trackHit<<","<<partcode<<","<<pmod<<","<<hitprim<<","<<hitstat<<","<<Signal<<","<<dEn<<endl;
-           }
-         }
-       } // hit loop
-
-       if(RecPointPrim == 1) {
-        
-         //cout<<" SDD/SSD RecPoints: lay,lad,det,track,pmod,signal,path ="<<layer<<","<<ladder<<","<<detector<<","<<TrackRecPoint<<","<<PmodRecP<<","<<signalRP<<","<<pathInSi<<endl;
-
-        Int_t xpartcode=gAlice->Particle(TrackRecPoint)->GetPdgCode();
-         
-        if(mod < first2) {            // SDD
-         signalRP *= (280./pathInSi); // 280 microns of Si thickness    
-         signalSDD->Fill(signalRP); 
-         signalSDDmip->Fill(signalRP/280.); // ADC/280 -> mips
-        InPID(pid,(Int_t)nev,(Int_t)TrackRecPoint, signalRP/280. ,
-              (Float_t)PmodRecP,(Int_t)xpartcode);
-         //cout<<" SDD RecPoints: lay,lad,det,track,pmod,signal,path ="<<layer<<","<<ladder<<","<<detector<<","<<TrackRecPoint<<","<<PmodRecP<<","<<signalRP<<","<<pathInSi<<endl;
-         if(pathInSi < 100 || pathInSi > 2000) cout<<" No normal pathInSi in SDD ="<<pathInSi<<endl;
-
-         //if(signalRP/280 < 5) cout<<" small signalSDDmip, path ="<<signalRP/280<<","<<pathInSDD<<endl;
-        }else{                        // SSD
-         signalRP *= (300/pathInSi); // 300 microns of Si thickness
-         //cout<<" SSD RecPoints: lay,lad,det,track,pmod,signal,path ="<<layer<<","<<ladder<<","<<detector<<","<<TrackRecPoint<<","<<PmodRecP<<","<<signalRP<<","<<pathInSi<<endl;
-         signalSSD->Fill(signalRP); 
-         signalSSDmip->Fill(signalRP/38.); // ADC/38 -> mips
-         InPID(pid,(Int_t)nev,(Int_t)TrackRecPoint, signalRP/38. ,
-               (Float_t)PmodRecP,(Int_t)xpartcode);
-         if(pathInSi < 100 || pathInSi > 2000) cout<<" No normal pathInSi in SSD ="<<pathInSi<<endl;
-
-         if(signalRP/38 < 0.5) cout<<" small signalSSD (mip), path, module ="<<signalRP/38<<","<<pathInSi<<mod<<endl;
-        }
-       } // primery particle
-       } // pnt, recpoint loop       
-       
-       // dEdX hit analysis for the SDD/SSD
-
-         Int_t track = -100;
-         Int_t trackPrev = -100;
-         parent = -100;
-         Int_t parentPrev = -100;
-         Int_t flagprim = 0;
-        Int_t TrackPart;
-         epart = 0;
-         pathInSi = 1.0e+7;
-        Float_t PmodPart;
-        zhit0 = 1.0e+7;
-        xhit0 = 1.0e+7;
-        yhit0 = 1.0e+7;
-
-        /*
-        if(mod <= 259) {
-        cout<<" SDD hits: nhits ="<<nhits<<endl;
-        }else{
-        cout<<" SSD hits: nhits ="<<nhits<<endl;
-        }
-        */
-        
-       for (hit=0;hit<nhits;hit++) {
-        
-        itsHit   = (AliITShit*)Mod->GetHit(hit);
-        if(hit>0) itsHitPrev   = (AliITShit*)Mod->GetHit(hit-1);
-         hitprim = 0;
-         Int_t hitprimPrev = 0;
-        track = itsHit->GetTrack();
-        if(hit > 0) Int_t trackPrev = itsHitPrev->GetTrack();
-        dray = 0;
-        hitstat = itsHit->GetTrackStatus();
-
-         zhit = 10000*itsHit->GetZL();
-         xhit = 10000*itsHit->GetXL();
-         yhit = 10000*itsHit->GetYL();
-         Float_t ehit = 1.0e+6*itsHit->GetIonization(); // hit energy, KeV 
-
-         //              cout<<"New hit,lay,hitstat,yhit,ehit ="<<hit<<","<<layer<<","<<hitstat<<","<<yhit<<","<<ehit<<endl;
-         //  cout<<"befor: track,trackPrev ="<<track<<","<<trackPrev<<endl;
-
-          parent = itsHit->GetParticle()->GetFirstMother();
-          if(hit>0) Int_t parentPrev = itsHitPrev->GetParticle()->GetFirstMother();
-          partcode = itsHit->GetParticle()->GetPdgCode();
-
-   //  partcode (pdgCode): 11 - e-, 13 - mu-, 22 - gamma, 111 - pi0, 211 - i+
-   //  310 - K0s, 321 - K+, 2112 - n, 2212 - p, 3122 - lambda
-
-          px = itsHit->GetPXL();
-          py = itsHit->GetPYL();
-          pz = itsHit->GetPZL();
-          pmod = 1000*sqrt(px*px+py*py+pz*pz);
-
-          //  cout<<"partcode,pmod,parent,parentPrev,hitprim,flagprim ="<<partcode<<","<<pmod<<","<<parent<<","<<parentPrev<<","<<hitprim<<","<<flagprim<<endl;
-
-
-        if(partcode == 11 && pmod < 6) dray = 1; // delta ray is e-
-                                                 // at p < 6 MeV/c
-
-
-          if(parent < 0 && parent > -90) hitprim += 1;
-          if(parentPrev < 0 && parentPrev >-90) hitprimPrev += 1; 
-         // hitprim=1 for the primery particles
-         //      if(hit==0&&hitprim==1&&hitstat==66) {
-         if(hitprim==1&&hitstat==66) {
-           zhit0 = zhit;
-           xhit0 = xhit;
-           yhit0 = yhit;
-         }
-
-         if((hitstat == 68 || hitstat == 33) && hitprim == 1) {
-            pathInSi = TMath::Sqrt((xhit0-xhit)*(xhit0-xhit)+(yhit0-yhit)*(yhit0-yhit)+(zhit0-zhit)*(zhit0-zhit));
-            TrackPart = track;
-             PmodPart = itsHit->GetParticle()->P();
-            PmodPart *= 1.0e+3;
-            //  cout<<"xhit0,yhit0,zhit0,pathInSi ="<<xhit0<<","<<yhit0<<","<<zhit0<<","<<pathInSi<<endl;
-         }
-
-         if(hitprim == 0) track = parent;          
-         if(hitprimPrev == 0) trackPrev = parentPrev;          
-         //  cout<<"after: track,trackPrev ="<<track<<","<<trackPrev<<endl;
-          
-         if(hit > 0 && track == trackPrev) epart += ehit;   
-         if((hit > 0 && track == trackPrev) && (hitprim==1)) flagprim +=1;
-
-         //  cout<<"new hitprim, flagprim ="<<hitprim<<","<<flagprim<<endl;
-
-         if((hit > 0 && track != trackPrev) || (hit == nhits-1)) {
-           if(flagprim > 0) {
-             if(layer > 2 && layer < 5) {
-               if(epart < 40) cout<<" small SDD dedx ="<<epart<<endl;
-               if(pathInSi < 100 || pathInSi > 2000) cout<<" No normal pathSDD ="<<pathInSi<<endl;
-               if(epart > 40 && pathInSi > 100 && pathInSi < 1.0e+5) {
-                 dedxSDD->Fill(epart); 
-                epart *= (280/pathInSi);
-                 dedxSDDnorm->Fill(epart); 
-                dedxSDDmip->Fill(epart/75); 
-                //InPID(pid,(Int_t)nev,(Int_t)track, epart/75. ,(Float_t)pmod,(Int_t)partcode);
-                 pathSDD->Fill(pathInSi); 
-                //  cout<<"SDD hit: lay,lad,det,track,pmod,epart,path ="<<layer<<","<<ladder<<","<<detector<<","<<TrackPart<<","<<PmodPart<<","<<epart<<","<<pathInSi<<endl;
-               }
-             }
-             if(layer > 4) {
-               if(epart < 40) cout<<" small SSD dedx ="<<epart<<endl;
-               if(pathInSi < 100 || pathInSi > 2000) cout<<" No normal pathSSD ="<<pathInSi<<endl;
-               if(epart > 40 && pathInSi > 100 && pathInSi < 1.0e+5) {
-                 dedxSSD->Fill(epart); 
-                epart *= (280/pathInSi);
-                dedxSSDnorm->Fill(epart); 
-                dedxSSDmip->Fill(epart/80); 
-                //InPID(pid,(Int_t)nev,(Int_t)track, epart/80. ,(Float_t)pmod,(Int_t)partcode);
-                 pathSSD->Fill(pathInSi); 
-                //cout<<"SSD hit: lay,lad,det,track,pmod,epart,path ="<<layer<<","<<ladder<<","<<detector<<","<<TrackPart<<","<<PmodPart<<","<<epart<<","<<pathInSi<<endl;
-               }
-             }
-              flagprim=0;
-              epart = 0;
-           }else{
-             //cout<<"No!, epart for the secondary"<<endl;
-              epart = 0;
-           }                 
-         }
-       } // SDD/SSD hit loop
-    } // module loop
-    //cout<<"negtrSDD, negtrSSD ="<<negtrSDD<<","<<negtrSSD<<endl;
-   } // event loop
-   
-   cout<<endl;
-     
-   TFile fhistos("dEdX_his.root","RECREATE");
-  
-   dedxSDD->Write();
-   dedxSDDnorm->Write();
-   dedxSDDmip->Write();
-   dedxSSD->Write();
-   dedxSSDnorm->Write();
-   dedxSSDmip->Write();
-   signalSDD->Write();
-   signalSDDmip->Write();
-   signalSSD->Write();
-   signalSSDmip->Write();
-   pathSDD->Write();
-   pathSSD->Write();
-
-   fhistos.Close();
-   cout<<"!!! Histogramms and ntuples were written"<<endl;
-   // ------------------------------------------------------------
-
-   TCanvas *c1 = new TCanvas("c1","ITS clusters",400,10,600,700);
-   c1->Divide(2,2);
-
-
-//     c1->cd(1);
-//     gPad->SetFillColor(33);
-//     signalSDD->SetFillColor(42);
-//     signalSDD->Draw();
-
-//     c1->cd(2);
-//     gPad->SetFillColor(33);
-//     signalSDDmip->SetFillColor(42);
-//     signalSDDmip->Draw();
-
-//     c1->cd(3);
-//     gPad->SetFillColor(33);
-//     dedxSDDnorm->SetFillColor(46);
-//     dedxSDDnorm->Draw();
-
-//     c1->cd(4);
-//     gPad->SetFillColor(33);
-//     dedxSDDmip->SetFillColor(46);
-//     dedxSDDmip->Draw();
-
-   c1->cd(1);
-   gPad->SetFillColor(33);
-   signalSSD->SetFillColor(42);
-   signalSSD->Draw();
-
-   c1->cd(2);
-   gPad->SetFillColor(33);
-   signalSSDmip->SetFillColor(42);
-   signalSSDmip->Draw();
-
-   c1->cd(3);
-   gPad->SetFillColor(33);
-   dedxSSDnorm->SetFillColor(46);
-   dedxSSDnorm->Draw();
-
-   c1->cd(4);
-   gPad->SetFillColor(33);
-   dedxSSDmip->SetFillColor(46);
-   dedxSSDmip->Draw();
-
-   /*
-    c1->cd(1);
-   gPad->SetFillColor(33);
-   dedxSDD->SetFillColor(42);
-   dedxSDD->Draw();
-
-   c1->cd(2);
-   gPad->SetFillColor(33);
-   pathSDD->SetFillColor(42);
-   pathSDD->Draw();
-
-   c1->cd(3);
-   gPad->SetFillColor(33);
-   dedxSSD->SetFillColor(46);
-   dedxSSD->Draw();
-
-   c1->cd(4);
-   gPad->SetFillColor(33);
-   pathSSD->SetFillColor(46);
-   pathSSD->Draw();
-   */
-
-//   if(!pid)pid->Tab();
-   cout<<"END  test for clusters and hits "<<endl;
-
-}
-//============================ InPID() =========================================
-int totpid;
-void InPID (AliITSPid *pid=0,int     nev,
-                             Int_t   track,
-                            Float_t signal,
-                            Float_t pmom,
-                            Int_t   pcode)
-{  
-// Includes recp in PID  table.
-    if(pid){
-      //cout<<" In pid: track,sig,pmod,pcode="<<track<<","<<signal<<","<<pmom<<","<<pcode<<endl;                                                                                      
-    if( abs(pcode)==321 || abs(pcode)==211 ||abs(pcode)==2212 ||abs(pcode)==11  )
-       {
-        pid->SetEdep(10000*nev+track,signal);   
-       pid->SetPmom(10000*nev+track,pmom);                                     
-       pid->SetPcod(10000*nev+track,abs(pcode));
-       }                                     
-    } 
-    totpid++;                            
-}
-//=======================
-
-
-
-
-
-
diff --git a/ITS/oldmacros/debug.C b/ITS/oldmacros/debug.C
deleted file mode 100644 (file)
index 8f47d45..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-void debug(){
- //
- //  macro fro trigger analysis (F. Meddi suggestion)
- //
- Int_t evNumber=0;
- char *filename="galice.root";
- char *fileout="analyse.root";
-
- // Dynamically link some shared libs
- if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");
-    loadlibs();
- } 
-   
- // Connect the Root Galice file containing Geometry, Kine and Hits
- TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
- if (!file) file = new TFile(filename);
-
- // Get AliRun object from file or create it if not on file
- if (!gAlice) {
-    gAlice = (AliRun*)file->Get("gAlice");
-    if (gAlice) printf("AliRun object found on file\n");
-    if (!gAlice) gAlice = new AliRun("gAlice","Alice test program");
- }
-
- //loop over events
- for (int nev=0; nev<= evNumber; nev++) {
-   Int_t nparticles = gAlice->GetEvent(nev);
-   cout << "nev         " <<nev<<endl;
-   cout << "nparticles  " <<nparticles<<endl;
-   if (nparticles <= 0) return;
-
-   TTree *TH        = gAlice->TreeH();
-   Int_t ntracks    = TH->GetEntries();
-   cout << "ntracks  " <<ntracks<<endl;
-
-   // Get pointers to Alice detectors and Digit containers
-   AliITS *ITS  = (AliITS *)gAlice->GetModule("ITS");
-   TClonesArray *Particles = gAlice->Particles();
-   if(!ITS) return;
-
-   // fill modules with sorted by module hits
-   Int_t nmodules;
-   ITS->InitModules(-1,nmodules);
-   ITS->FillModules(nev,-1,nmodules," "," ");
-
-   // get pointer to modules array
-   TObjArray *mods = ITS->GetModules();
-   AliITShit *itsHit;
-
-
-   //get the Tree for clusters
-   ITS->GetTreeC(nev);
-   TTree *TC=ITS->TreeC();
-   //TC->Print();
-   Int_t nent=TC->GetEntries();
-   printf("Found %d entries in the tree of clusters)\n",nent);
-   TClonesArray *ITSclusters = ITS->ClustersAddress(0);
-   printf("ITSclusters %p\n",ITSclusters);
-
-   //get the Tree for digits
-   TTree *TD = gAlice->TreeD();
-   //TD->Print();
-   Int_t nentd=TD->GetEntries();
-   printf("Found %d entries in the tree of digits)\n",nentd);
-   TObjArray *fBranches=TD->GetListOfBranches();
-   TBranch *branch = (TBranch*)fBranches->UncheckedAt(0);
-   printf ("branch %p entries %d \n",branch,branch->GetEntries());
-   TClonesArray *ITSdigits  = ITS->DigitsAddress(0);
-   printf ("ITSdigits %p \n",ITSdigits);
-
-   //get the Tree for rec points
-   TTree *TR = gAlice->TreeR();
-   //TR->Print();
-   Int_t nentr=TR->GetEntries();
-   printf("Found %d entries in the tree of rec points)\n",nentr);
-   TClonesArray *ITSrec  = ITS->RecPoints();
-   printf ("ITSrec %p \n",ITSrec);
-   AliITSRecPoint  *recp;
-
-  AliITSgeom *g = ((AliITS *)ITS)->GetITSgeom();
-  Int_t lay, lad, det;
-  printf("Starts loop on SPD detectors\n");
-
-
-  //loop over the pixel detectors index=0-79     (1-20)*4 layer 1  
-  //                              index=80-239   (1-40)*4 layer 2
-//  for (Int_t index=g->GetStartSPD();index<=g->GetLastSPD();index++) 
-    for (Int_t index=0;index<2;index++)  //debug
-//    Int_t index=5;
-  {
-  
-    g->GetModuleId(index,lay,lad,det); 
-    printf("detector %d (lay=%d lad=%d det=%d)\n",index+1,lay,lad,det);
-
-    AliITSmodule *itsModule = (AliITSmodule*) mods->At(index);
-    Int_t numofhits = itsModule->GetNhits();
-    printf("number of hits %d\n",numofhits);
-    if(!numofhits) continue;
-
-    //---------- starts test on digits
-    ITS->ResetDigits();
-    TD->GetEvent(index+1);
-    Int_t ndigits = ITSdigits->GetEntriesFast();
-    if (ndigits) printf("Found %d digits for module %d \n",ndigits,index+1);
-    if (!ndigits) printf("no digits found \n");
-
-
-    //loop on digits
-    for (Int_t digit=0;digit<ndigits;digit++) {
-        ITSdigit   = (AliITSdigitSPD*)ITSdigits->UncheckedAt(digit);
-        printf("%d %d %d %d \n",ITSdigit->fCoord1,ITSdigit->fCoord2,ITSdigit->fSignal,ITSdigit->fTracks[0]);
-     }
-     cout<<"END  test for digits "<<endl;
-
-
-    //---------- starts test on clusters
-    ITS->ResetClusters();
-    TC->GetEvent(index);
-    Int_t nclust = ITSclusters->GetEntries();
-    printf("number of clusters %d\n",nclust);
-
-
-    //loop on clusters
-    for (Int_t clu=0;clu<nclust;clu++)
-    {
-      itsclu = (AliITSRawClusterSPD*) ITSclusters->UncheckedAt(clu);
-      printf("cluster %d nZ=%f nX=%f Z=%f X=%f\n",clu+1,itsclu->NclZ(),
-                      itsclu->NclX(),itsclu->Z(),itsclu->X());
-    }
-     cout<<"END  test for clusters "<<endl;
-
-
-    //---------- starts test on rec points
-    ITS->ResetRecPoints();
-    TR->GetEvent(index+1);
-    Int_t nrecpoints = ITSrec->GetEntries();
-    printf("Found %d recpoints for module %d \n",nrecpoints,index+1);
-
-    //loop on rec points
-    for (Int_t irec=0;irec<nrecpoints;irec++) {
-         recp   = (AliITSRecPoint*)ITSrec->UncheckedAt(irec);
-        printf("%d %f %f %f %f  %d %d %d\n",irec+1,recp->GetX(),recp->GetZ(),
-            recp->fSigmaX2,recp->fSigmaZ2,
-            recp->fTracks[0],recp->fTracks[1],recp->fTracks[2]);
-    }
-
-    printf("Detector No. %d (%d total hits) (%d digits) (%d clusters)\n",
-                                         index+1,numofhits,ndigits,nclust);
-
-  } //end loop on the SPD detectors
-
-} // end loop over events
-
-}
diff --git a/ITS/oldmacros/dedxanal.C b/ITS/oldmacros/dedxanal.C
deleted file mode 100644 (file)
index cd12e3c..0000000
+++ /dev/null
@@ -1,804 +0,0 @@
-//=========================================
-int HMax=80,PMax=6.;
-int NStat=15000;
-Float_t pmin,pmax;
-
-char tit[]="--------------------------";                                                
-TH1F pions=TH1F("Qpi",tit,100,0.5,PMax);   
-TH1F *qpi =&pions;     
-
-TH2F qplotP, qplotKa, qplotPi, qplotE;
-TH1F *q1plot;
-TH2F *qplot;
-void dedxhis(Int_t pcod=0,Float_t pmin=0,Float_t pmax=1300)
-{
-     if(!q1plot)q1plot =  new TH1F("Qhis","Particle charge",100,0.5,PMax);
-     if(!qplot){  qplot =  new TH2F("Qtrm","Qtrm vs Pmom",100,0,1300,100,0,13);
-     //     TH2F qplotP, qplotKa, qplotPi, qplotE;
-     qplot->Copy(qplotP); 
-     qplotP.SetMarkerStyle(8); qplotP.SetMarkerColor(kBlack); qplotP.SetMarkerSize(.2);
-     qplot->Copy(qplotKa); 
-     qplotKa.SetMarkerStyle(8); qplotKa.SetMarkerColor(kRed); qplotKa.SetMarkerSize(.2);
-     qplot->Copy(qplotPi); 
-     qplotPi.SetMarkerStyle(8); qplotPi.SetMarkerColor(kBlue); qplotPi.SetMarkerSize(.2);
-     qplot->Copy(qplotE); 
-     qplotE.SetMarkerStyle(8); qplotE.SetMarkerColor(kGreen); qplotE.SetMarkerSize(.2);
-     }else{
-         qplotP.Reset();
-         qplotPi.Reset(); qplotKa.Reset(); qplotE.Reset();
-     }
-// -------------------------------------------------------------
-    Float_t Qtr,Pmom;
-    for(Int_t i=0;i<NStat;i++){
-       TVector tabv(*( pid->GetVec(i) ));
-           Qtr=tabv(6);Pmom=tabv(10);
-    if(pcod==0) 
-      { if(tabv(0)>=1 ){ 
-       //qplot->Fill( Pmom,Qtr );
-       if(tabv(11)==2212)qplotP.Fill( Pmom,Qtr );
-       if(tabv(11)== 321)qplotKa.Fill( Pmom,Qtr );
-       if(tabv(11)== 211)qplotPi.Fill( Pmom,Qtr );
-       if(tabv(11)==  11)qplotE.Fill( Pmom,Qtr );
-      } 
-      }
-       else { if(tabv(11)==pcod && tabv(0)>=1 )qplot->Fill( Pmom,Qtr );}
-       
-       //if( tabv(0)>=2 && tabv(11)==pcod )qplot->Fill( Pmom,Qtr );
-       //if(tabv(0)>=1)qplot->Fill( Pmom,Qtr );
-       if(Pmom>pmin&&Pmom<pmax)q1plot->Fill(Qtr);
-    }
-// ------------------------------------------------------------
-//    c1=new TCanvas("c1","  ",10,10,700,500);
-//    pad1 =new TPad("p1","  " ,0  ,  0,0,1,21);
-//    pad1 =new TPad("p1","  " ,0  ,  0,.3,1,21);
-//    pad2 =new TPad("p2","  " ,.35,  0, 1,1,0);  
-//    pad2->Draw();  pad2->cd();
-//.....................
-    //if(pcod==0){ qplotP.Draw(); qplotKa.Draw("same"); qplotPi.Draw("same"); qplotE.Draw("same"); }
-
-    if(pcod==0){
-
-      //qplotP->GetXaxis()->SetTitleSize(0.05);
-      //qplotP->GetYaxis()->SetTitleSize(0.05);
-      //gPad->SetFillColor(kWhite);    // b.b.
-      gStyle->SetOptStat(0);
-      qplotP->SetXTitle("(Mev/c)");
-      qplotP->SetYTitle("(mips)");
-      qplotP.Draw(); qplotKa.Draw("same"); qplotPi.Draw("same");
-      qplotE.Draw("same");
-      TText *text = new TText(800.,11.,"Protons");
-      text->SetTextSize(0.05);
-      text->SetTextColor(kBlack);
-      text->Draw();
-      TText *text = new TText(800.,10.,"Kaons");
-      text->SetTextSize(0.05);
-      text->SetTextColor(kRed);
-      text->Draw();
-      TText *text = new TText(800.,9.,"Pions");
-      text->SetTextSize(0.05);
-      text->SetTextColor(kBlue);
-      text->Draw();
-      TText *text = new TText(800.,8.,"Electrons");
-      text->SetTextSize(0.05);
-      text->SetTextColor(kGreen);
-      text->Draw();
-
-    }
-    else{
-      qplot->Draw();}
-    c1->Range(0,0,1300,10);
-    gStyle->SetLineColor(kRed);
-    gStyle->SetLineWidth(2);
-       TLine *lj[3],*lk[3]; 
-       for(Int_t j=0;j<3;j++){
-               Float_t x1,x2,y1,y2,xx1,xx2,yy1,yy2;
-               x1=pid->cut[j+1][0]; x2=pid->cut[j+2][0];
-               y1=y2=pid->cut[j+2][2];
-           lj[j]=new TLine(1000*x1,y1,1000*x2,y2);
-            //lj[j]->Draw();
-           if(j==0){yy1=10.;}else{yy1=lj[j-1]->GetY1();}
-           yy2=lj[j]->GetY1();
-           xx1=xx2=x1;
-           lk[j]=new TLine(1000*xx1,yy1,1000*xx2,yy2);
-            //lk[j]->Draw();
-       }
-       //Draw pions-kaons cuts.
-//..................................   
-       TLine *mj[7],*mk[7]; 
-       for(Int_t j=0;j<7;j++){
-               Float_t x1,x2,y1,y2,xx1,xx2,yy1,yy2;
-               x1=pid->cut[j+2][0]; x2=pid->cut[j+3][0];
-               y1=y2=pid->cut[j+3][5];
-           mj[j]=new TLine(1000*x1,y1,1000*x2,y2);
-            //mj[j]->Draw();
-           if(j==0){yy1=10.;}else{yy1=mj[j-1]->GetY1();}
-           yy2=mj[j]->GetY1();
-           xx1=xx2=x1;
-           mk[j]=new TLine(1000*xx1,yy1,1000*xx2,yy2);
-            //mk[j]->Draw();
-       }
-       //Draw kaons-protons cuts.      
-    gStyle->SetLineWidth(1.);
-}
-void qhispi(Float_t pmin=0,Float_t pmax=1300)
-{
-    char tit[]="--------------------------";
-    sprintf(tit,"%s%.1f %.1f","Pmom ",pmin,pmax);
-//     TH1F *qpi =  new TH1F("Qpi",tit,100,0.5,PMax);
-//     TH1F *nhit =  new TH1F("Nhit",tit,100,0,6);
-     TH2F *nhit =  new TH2F("Nhit",tit,100,0,6,100,0,1300);
-// -------------------------------------------------------------
-    Float_t Qtr,Pmom;
-    for(Int_t i=0;i<NStat;i++){
-       TVector tabv(*( pid->GetVec(i) ));
-           Qtr=tabv(6);Pmom=tabv(10);
-       if(Pmom>pmin&&Pmom<pmax&&abs(tabv(11))==211)qpi->Fill(Qtr);
-//     if(tabv(11)==2212)nhit->Fill(tabv(0));
-       if(tabv(11)==211)nhit->Fill(tabv(0),Pmom);
-    }
-// ------------------------------------------------------------
-    int pistat=qpi->GetEntries();
-    //qpi->SetMaximum(pistat+1);
-    qpi->SetMaximum(HMax);
-    qpi->SetFillColor(42);
-    qpi->Fit("gaus"); 
-    TF1 *fun=qpi->GetFunction("gaus");
-    fun->SetLineWidth(.1);
-    qpi->SetLineWidth(.1);
-    qpi->Draw();
-//---------------------------
-    if(0){
-       gaus1=new TF1("g1","gaus",.5,2);
-       qpi->SetMaximum(-1111);
-       gaus1->SetParameter(0, qpi->GetMaximum() );
-       qpi->SetMaximum(HMax);
-       gaus1->SetParameter(1,1);
-       gaus1->SetParameter(2,.12);
-       gaus1->SetLineWidth(.1);
-       gaus1->Draw("same");
-    }
-}
-
-void qhiska(Float_t pmin=0,Float_t pmax=1300)
-{
-     TH1F *qka =  new TH1F("Qka","Particle charge",100,0.5,PMax);
-// -------------------------------------------------------------
-    Float_t Qtr,Pmom;
-    for(Int_t i=0;i<NStat;i++){
-       TVector tabv(*( pid->GetVec(i) ));
-           Qtr=tabv(6);Pmom=tabv(10);
-//     qplot->Fill( Pmom,Qtr );
-       if(Pmom>pmin&&Pmom<pmax&&tabv(11)==321)qka->Fill(Qtr);
-    }
-// ------------------------------------------------------------
-    qka->SetFillColor(0);
-    qka->SetLineColor(kRed);
-//...................
-    qka->Fit("gaus","0"); 
-    TF1 *fun=qka->GetFunction("gaus");
-    fun->SetLineWidth(.1);
-    qka->SetLineWidth(.1);
-    qka->Draw("same");
-//...................
-//    qka->Draw("same");
-//    gaus_k(pmin,pmax,qka);
-
-}
-
-void qhisp(Float_t pmin=0,Float_t pmax=1300)
-{
-     TH1F *qpr =  new TH1F("Qpr","Particle charge",100,0.5,PMax);
-// -------------------------------------------------------------
-    qpr->Clear();
-    Float_t Qtr,Pmom;
-    for(Int_t i=0;i<NStat;i++){
-       TVector tabv(*( pid->GetVec(i) ));
-           Qtr=tabv(6);Pmom=tabv(10);
-//     qplot->Fill( Pmom,Qtr );
-       if(Pmom>pmin&&Pmom<pmax&&tabv(11)==2212)qpr->Fill(Qtr);
-    }
-// ------------------------------------------------------------
-    qpr->SetFillColor(16);
-//...................
-    qpr->Fit("gaus","0"); 
-    TF1 *fun=qpr->GetFunction("gaus");
-    fun->SetLineWidth(.1);
-    qpr->SetLineWidth(.1);
-    qpr->Draw("same");
-//...................
-//    qpr->Draw("same");
-//    gaus_p(pmin,pmax,qpr);
-}
-//---------------------------------------
-
-void gaus_k(Float_t pmin=450,Float_t pmax=470,TH1F *qka){
-    Float_t xmean,xsig;
-    if(pmin==410&&pmax==470){xmean=pid->cut[5][3]; xsig=pid->cut[5][4];}
-    else 
-    if(pmin==470&&pmax==530){xmean=pid->cut[6][3]; xsig=pid->cut[6][4];}
-    else
-    if(pmin==730&&pmax==830){xmean=pid->cut[10][3]; xsig=pid->cut[10][4];}
-    else
-    if(pmin==830&&pmax==930){xmean=pid->cut[11][3]; xsig=pid->cut[11][4];}
-    else
-    if(pmin==930&&pmax==1030){xmean=pid->cut[12][3]; xsig=pid->cut[12][4];}
-    else{return;}
-       gaus1=new TF1("g1","gaus",xmean-3*xsig,xmean+3*xsig);
-       qka->SetMaximum(-1111);
-       gaus1->SetParameter(0, qka->GetMaximum() );
-       qka->SetMaximum(HMax);
-       gaus1->SetParameter(1,xmean);
-       gaus1->SetParameter(2,xsig);
-       gaus1->SetLineWidth(.1);
-       gaus1->Draw("same");
-}
-//---------------------------------------
-void gaus_p(Float_t pmin=730,Float_t pmax=830,TH1F *qp){
-    Float_t xmean,xsig;
-    if(pmin==730&&pmax==830){xmean=pid->cut[10][5]; xsig=pid->cut[10][6];}
-    else
-    if(pmin==830&&pmax==930){xmean=pid->cut[11][5]; xsig=pid->cut[11][6];}
-    else
-    if(pmin==930&&pmax==1030){xmean=pid->cut[12][5]; xsig=pid->cut[12][6];}
-    else{return;}
-       gaus1=new TF1("g1","gaus",xmean-3*xsig,xmean+3*xsig);
-       qp->SetMaximum(-1111);
-       gaus1->SetParameter(0, qp->GetMaximum() );
-       qp->SetMaximum(HMax);
-       gaus1->SetParameter(1,xmean);
-       gaus1->SetParameter(2,xsig);
-       gaus1->SetLineWidth(.1);
-       gaus1->Draw("same");
-}
-
-//----b.b.---------------------------------
-void fitpi(Float_t pmin=0,Float_t pmax=1300,char *tit)
-{
-  cout<<"fitpi: NStat, PMax, pmin, pmax ="<<NStat<<","<<PMax<<","<<pmin<<","<<pmax<<endl;
-     TH1F *q1fit =  new TH1F("Qfit",tit,100,0.5,PMax);
-// -------------------------------------------------------------
-    Float_t Qtr,Pmom;
-    for(Int_t i=0;i<NStat;i++){
-       TVector tabv(*( pid->GetVec(i) ));
-           Qtr=tabv(6);Pmom=tabv(10);
-       if(Pmom>pmin&&Pmom<pmax&&tabv(11)==211)q1fit->Fill(Qtr);
-    }
-    q1fit->SetFillColor(0);
-    q1fit->SetLineColor(kRed);
-    q1fit->Draw();
-    q1fit->Fit("gaus");
-}
-
-//---------------------------------------
-void fitka(Float_t pmin=0,Float_t pmax=1300,char *tit)
-{
-  //TH1F *q1fit =  new TH1F("Qfit",tit,100,0.5,PMax);
-     TH1F *q1fit =  new TH1F("Qfit",tit,100,0.5,10.);
-// -------------------------------------------------------------
-    Float_t Qtr,Pmom;
-    for(Int_t i=0;i<NStat;i++){
-       TVector tabv(*( pid->GetVec(i) ));
-           Qtr=tabv(6);Pmom=tabv(10);
-       if(Pmom>pmin&&Pmom<pmax&&tabv(11)==321)q1fit->Fill(Qtr);
-    }
-    q1fit->SetFillColor(0);
-    q1fit->SetLineColor(kRed);
-    q1fit->Draw();
-    q1fit->Fit("gaus");
-}
-//---------------------------------------
-void fitp(Float_t pmin=0,Float_t pmax=1300,char *tit)
-{
-     TH1F *q1fit =  new TH1F("Qfit",tit,100,0.5,PMax);
-// -------------------------------------------------------------
-    Float_t Qtr,Pmom;
-    for(Int_t i=0;i<NStat;i++){
-       TVector tabv(*( pid->GetVec(i) ));
-           Qtr=tabv(6);Pmom=tabv(10);
-       if(Pmom>pmin&&Pmom<pmax&&tabv(11)==2212)q1fit->Fill(Qtr);
-    }
-    q1fit->SetFillColor(0);
-    q1fit->Draw();
-    q1fit->Fit("gaus");
-}
-//---------------------------------------
-void effall(){
-      eff(211,211,"",3);
-      eff(321,321,"same",2);
-     eff(2212,2212,"same",1);
-}
-//---------------------------------------
-void eff(int pc=211,int pc2=211,char *opt="",int color=2)
-{
-    const Int_t HSize=100;
-     TH1F *efpi =  new TH1F("Effpi","Eff of PID",HSize,0.025,1400);
-     TH1F *pmom =  new TH1F("Pmom" ,"Eff of PID",HSize,0.025,1400);
-     TH1F *heff =  new TH1F("Eff%" ,"Eff of PID",HSize,0.025,1400);
-// -------------------------------------------------------------
-    Float_t Qtr,Pmom;
-    Int_t   Pcode;
-    for(Int_t i=0;i<NStat;i++){
-       TVector tabv(*( pid->GetVec(i) ));
-           Qtr=tabv(6);Pmom=tabv(10);
-       Pcode=  (  pid->GetPcode(Qtr,Pmom/1000.) );
-    if(tabv(0)>=4){
-       if(Pcode==pc&&tabv(11)==pc2)   efpi->Fill(Pmom);
-       if(tabv(11)==pc2)    pmom->Fill(Pmom);
-       }
-    }
-// ------------------------------------------------------------
-    for(int i=1;i<=HSize;i++){
-       if(  pmom->fArray[i] > 0 )
-       heff->fArray[i] = color * ( efpi->fArray[i] )/( pmom->fArray[i] );
-    }
-    heff->SetLineColor(color);
-    if(color==1)heff->SetLineWidth(2)else heff->SetLineWidth(.5);
-    heff->Draw(opt);
-return;
-    pmom->SetFillColor(16);    pmom->Draw(); 
-    efpi->SetFillColor(0); //42 
-    efpi->Draw("same");
-}
-//---------------------------------------
-Int_t NRange=0;
-    Float_t xpmin[]={410,470,730,830,930};
-    Float_t xpmax[]={470,530,830,930,1030};
-void all(){
-    PMax=3; HMax=500; NStat=99000;
-  Float_t pmin,pmax;
-  pmin=xpmin[NRange];pmax=xpmax[NRange];NRange++;if(NRange==5)NRange=0;
-   qhispi(pmin,pmax); qhisp(pmin,pmax); qhiska(pmin,pmax);
-}
-//---------------------------------------
-void fitkall(){
- PMax=3;
- Float_t pmin,pmax;
- //pmin=xpmin[NRange];pmax=xpmax[NRange];NRange++;if(NRange==5)NRange=0;
- pmin=200;pmax=300; // b.b.
- char str[]="                  ";
- sprintf(str,"Kaons %d - %d MeV/c",pmin,pmax);
- gStyle->SetOptFit();
- fitka(pmin,pmax,str);
-}
-
-//--b.b.-------------------------------------
-void fitpiall(){
- PMax=3;
- NRange=3; // b.b.
- Float_t pmin,pmax;
- cout<<"fitpiall: NRange ="<<NRange<<endl;
- //pmin=xpmin[NRange];pmax=xpmax[NRange];NRange++;if(NRange==5)NRange=0;
- pmin=100;pmax=200; // b.b.
- char str[]="                  ";
- sprintf(str,"Pions %d - %d MeV/c",pmin,pmax);
- gStyle->SetOptFit();
- cout<<"fitpiall: pmin, pmax ="<<pmin<<","<<pmax<<endl;
- fitpi(pmin,pmax,str);
-}
-
-//---------------------------------------
-void fitpall(){
- PMax=3;
- Float_t pmin,pmax;
- if(NRange==0)NRange=2;
- pmin=xpmin[NRange];pmax=xpmax[NRange];NRange++;if(NRange==5)NRange=2;
- char str[]="                        ";
- sprintf(str,"Protons %d - %d MeV/c",pmin,pmax);
- gStyle->SetOptFit();
- fitp(pmin,pmax,str);
-}
-//-------------
-void newcuts(){
-//             
-
-    pid->SetCut(3,.3, 0   , 2.5,  2.5  ,  9,  9,  10   ); //200-300
-
-    pid->SetCut(5,.47, 1  , 0.12,   1.98 , 1.17 ,  2.5,  10   );//410-470
-    pid->SetCut(6,.53, 1  , 0.12,   1.73 , 0.15 ,  2.5,  10   );//470-530
-    pid->SetCut(7,.59, 0  , 0,      1.18 , 1.125 ,  2.5,  10   );//530-590
-
-    pid->SetCut(8,.65, 0  , 0,   1.18,  1.125 ,  2.3,  10   );//590-650
-}
-//---------------------------------------
-void qhisall(Float_t pmin=0.25,Float_t pmax=.700)
-//void qhisall()
-{
-    qhispi(pmin,pmax);
-    qhisp(pmin,pmax);
-    qhiska(pmin,pmax);
-}
-//--------------------------------------
-void pcode(){
-    TH1F *his =  new TH1F("pcode","tit",100,10,2300);                                      
-Float_t Pcod;                                                                       
-for(Int_t i=0;i<NStat;i++){                                                             
-    TVector tabv(*( pid->GetVec(i) ));                                                  
-    Pcod=tabv(11); if(Pcod>0)  his->Fill(Pcod);                            
-}                                                                                       
-his->SetFillColor(0);his->SetLineColor(kRed);his->Draw();                                                                          
-}
-
-void signal(){                                                                               
-    TH1F *hisR =  new TH1F("Rec signal","tit",100,0,13);    
-    TH1F *hisH =  new TH1F("Hit signal","tit",100,0,13);    
-    Float_t xx;                                                                               
-    for(Int_t i=0;i<NStat;i++){                                                                 
-        TVector tabv(*( pid->GetVec(i) ));                                                      
-           xx=tabv(1); if(tabv(0)>0)  hisR->Fill(xx);                                             
-    }                                                                                           
-    hisR->SetFillColor(0);hisR->SetLineColor(kRed);hisR->Draw();         
-    hisH->SetFillColor(0);hisH->SetLineColor(kBlue);hisH->Draw("same");                                   
-}     
-//-------------------------------------
-
-void pmom(){                                                                               
-    TH1F *his =  new TH1F("pmom","tit",100,0,1000);    
-    Float_t xx;                                                                               
-    for(Int_t i=0;i<NStat;i++){                                                                 
-        TVector tabv(*( pid->GetVec(i) ));                                                      
-           xx=tabv(10); if(tabv(0)>0)  his->Fill(xx);                                             
-    }                                                                                           
-    his->SetFillColor(0);his->SetLineColor(kRed);his->Draw();                                   
-}     
-
-// Print next track
-int jtrack=0;
-void track(){
-    if(jtrack==NStat)jtrack=0;
-    for(Int_t i=jtrack;i<NStat;i++){                                                                 
-        TVector tabv(*( pid->GetVec(i) ));                                                      
-            if(tabv(0)>0) 
-                {  jtrack=i;break; }                                             
-    }                                                                                           
-cout<<"Track No "<<jtrack<<endl;
-pid->Print(jtrack++);
-}
-
-// Fill histogram for track number
-//--------------------------------
-void tracks(){
-   TH1F *his =  new TH1F("tracks","tit",100,0,15000);    
-    Float_t xx;                                                                               
-    for(Int_t i=0;i<NStat;i++){                                                                 
-        TVector tabv(*( pid->GetVec(i) ));                                                      
-            if(tabv(0)>0) 
-                {  his->Fill(i); }                                             
-    }                                                                                           
-    his->SetFillColor(0);his->SetLineColor(kRed);his->Draw();      
-}
-// Fill pid table with reconstructed tracks
-
-
-#ifndef __CINT__
-  #include <iostream.h>
-  #include <fstream.h>
-  #include "AliRun.h"
-  #include "AliITS.h"
-  #include "AliITSgeom.h"
-  #include "AliITStrackerV2.h"
-  #include "AliITStrackV2.h"
-  #include "AliITSclusterV2.h"
-  #include "TFile.h"
-  #include "TTree.h"
-  #include "TH1.h"
-  #include "TObjArray.h"
-  #include "TStyle.h"
-  #include "TCanvas.h"
-  #include "TLine.h"
-  #include "TText.h"
-#endif
-struct GoodTrackITS {
-  Int_t lab;
-  Int_t code;
-  Float_t px,py,pz;
-  Float_t x,y,z;
-};
-
-
-
-void filltab_tracks(){
-
-  cerr<<"Filling of track table...\n";
-
-  Int_t event=0;
-Int_t good_tracks_its(GoodTrackITS *gt, const Int_t max, const Int_t event);
-
-  const Int_t MAX=15000;
-  Int_t nentr=0; TObjArray tarray(2000);
-  {/* Load tracks */
-    TFile *tf=TFile::Open("AliITStracksV2.root");
-    if (!tf->IsOpen()) {cerr<<"Can't open AliITStracksV2.root !\n"; return 3;}
-    char tname[100]; sprintf(tname,"TreeT_ITS_%d",event);
-    TTree *tracktree=(TTree*)tf->Get(tname);
-    if (!tracktree) {cerr<<"Can't get a tree with ITS tracks !\n"; return 4;}
-    TBranch *tbranch=tracktree->GetBranch("tracks");
-    nentr=(Int_t)tracktree->GetEntries();
-    for (Int_t i=0; i<nentr; i++) {
-      AliITStrackV2 *iotrack=new AliITStrackV2;
-      tbranch->SetAddress(&iotrack);
-      tracktree->GetEvent(i);
-      tarray.AddLast(iotrack);
-    }
-    delete tracktree; //Thanks to Mariana Bondila
-    tf->Close();
-  }
-
-  /* Generate a list of "good" tracks */
-  GoodTrackITS gt[MAX];
-  Int_t ngood=0;
-  Float_t ConvRadAng=180./TMath::Pi();
-  ifstream in("good_tracks_its");
-  if (in) {
-    cerr<<"Reading good tracks...\n";
-    while (in>>gt[ngood].lab>>gt[ngood].code>>
-          gt[ngood].px>>gt[ngood].py>>gt[ngood].pz>>
-          gt[ngood].x >>gt[ngood].y >>gt[ngood].z) {
-      ngood++;
-      cerr<<ngood<<'\r';
-      if (ngood==MAX) {
-       cerr<<"Too many good tracks !\n";
-       break;
-      }
-    }
-    if (!in.eof()) cerr<<"Read error (good_tracks_its) !\n";
-  } else {
-    cerr<<"Marking good tracks (this will take a while)...\n";
-    ngood=good_tracks_its(gt,MAX,event);
-    ofstream out("good_tracks_its");
-    if (out) {
-      for (Int_t ngd=0; ngd<ngood; ngd++)
-       out<<gt[ngd].lab<<' '<<gt[ngd].code<<' '
-          <<gt[ngd].px<<' '<<gt[ngd].py<<' '<<gt[ngd].pz<<' '
-          <<gt[ngd].x <<' '<<gt[ngd].y <<' '<<gt[ngd].z <<endl;
-    } else cerr<<"Can not open file (good_tracks_its) !\n";
-    out.close();
-  }
-  cerr<<"Number of good tracks : "<<ngood<<endl;
-  TH1F *hp=new TH1F("hp","PHI resolution",50,-20.,20.); hp->SetFillColor(4);
-  TH1F *hl=new TH1F("hl","LAMBDA resolution",50,-20,20);hl->SetFillColor(4);
-  TH1F *hpt=new TH1F("hpt","Relative Pt resolution",30,-10.,10.);
-  hpt->SetFillColor(2);
-  TH1F *hmpt=new TH1F("hmpt","Transverse impact parameter",30,-300,300);
-  hmpt->SetFillColor(6);
-  TH1F *hz=new TH1F("hz","Longitudinal impact parameter",30,-300,300);
-  //hmpt->SetFillColor(6);
-
-  AliITStrackV2 *trk=(AliITStrackV2*)tarray.UncheckedAt(0);
-  Double_t pmin=0.1*(100/0.299792458/0.2/trk->GetConvConst());
-  Double_t pmax=6.0+pmin;
-
-  TH1F *hgood=new TH1F("hgood","Good tracks",30,pmin,pmax);
-  TH1F *hfound=new TH1F("hfound","Found tracks",30,pmin,pmax);
-  TH1F *hfake=new TH1F("hfake","Fake tracks",30,pmin,pmax);
-  TH1F *hg=new TH1F("hg","",30,pmin,pmax); //efficiency for good tracks
-  hg->SetLineColor(4); hg->SetLineWidth(2);
-  TH1F *hf=new TH1F("hf","Efficiency for fake tracks",30,pmin,pmax);
-  hf->SetFillColor(1); hf->SetFillStyle(3013); hf->SetLineWidth(2);
-
-  TH1F *hptw=new TH1F("hptw","Weghted pt",30,pmax,pmin);
-  
-  while (ngood--) {
-    Int_t lab=gt[ngood].lab, tlab=-1;
-    Double_t pxg=gt[ngood].px, pyg=gt[ngood].py, pzg=gt[ngood].pz;
-    Double_t ptg=TMath::Sqrt(pxg*pxg+pyg*pyg);
-    Double_t pg=1000.*TMath::Sqrt(pxg*pxg+pyg*pyg+pzg*pzg); // b.b.
-
-
-    if (ptg<pmin) continue;
-
-    hgood->Fill(ptg);
-
-    AliITStrackV2 *track=0;
-    Int_t j;
-    for (j=0; j<nentr; j++) {
-      track=(AliITStrackV2*)tarray.UncheckedAt(j);
-      tlab=track->GetLabel();
-      if (lab==TMath::Abs(tlab)) break;
-    }
-    if (j==nentr) {
-    cerr<<"Track "<<lab<<" was not found !\n";
-    continue;
-    }
-    //track->Propagate(track->GetAlpha(),3.,0.1/65.19*1.848,0.1*1.848);
-    track->PropagateTo(3.,0.0028,65.19);
-
-  track->PropagateToVertex();
-
-  if (lab==tlab) hfound->Fill(ptg);
-  else { hfake->Fill(ptg); cerr<<lab<<" fake\n";}
-
-  Double_t xv,par[5]; track->GetExternalParameters(xv,par);
-  Float_t phi=TMath::ASin(par[2]) + track->GetAlpha();
-  if (phi<-TMath::Pi()) phi+=2*TMath::Pi();
-  if (phi>=TMath::Pi()) phi-=2*TMath::Pi();
-  Float_t lam=TMath::ATan(par[3]);
-  Float_t pt_1=TMath::Abs(par[4]);
-  Double_t phig=TMath::ATan2(pyg,pxg);
-  //hp->Fill((phi - phig)*1000.);
-
-  Double_t lamg=TMath::ATan2(pzg,ptg);
-  //hl->Fill((lam - lamg)*1000.);
-
-  Double_t d=10000*track->GetD();
-  //hmpt->Fill(d);
-
-  //hptw->Fill(ptg,TMath::Abs(d));
-
-  Double_t z=10000*track->GetZ();
-  //hz->Fill(z);
-
-
-
-// ------------------------------------------------ b.b. -----
-    Int_t nev=0;
-    Float_t mom=1000.*(1./(pt_1*TMath::Cos(lam)));
-    Float_t dedx=track->GetdEdx();
-    //hep->Fill(mom,dedx,1.);
-    Int_t pcode=gt[ngood].code;
-    pid->SetEdep(10000*nev+ngood,dedx);
-    pid->SetPmom(10000*nev+ngood,mom);
-    pid->SetPcod(10000*nev+ngood,abs(pcode));
-    //cout<<"!!!!! pcode, pmod, dedx ="<<pcode<<","<<mom<<","<<dedx<<endl;
-  }
-  pid->Tab();
-
-  Stat_t ng=hgood->GetEntries();
-  //cerr<<"Good tracks "<<ng<<endl;
-  Stat_t nf=hfound->GetEntries();
-  Stat_t nfak=hfake->GetEntries();
-  if (ng!=0)
-    cerr<<"Integral efficiency is about "<<nf/ng*100.<<" %\n";
-  //delete gAlice; //b.b.
-  cout<<"Done with nfound(good): "<<nf<<" + nfake: "<<nfak<<" = "<<nf+nfak<<" tracks."<<endl;
-// -------------------- b.b. -------------------
-  //return 0;
-}
-
-Int_t good_tracks_its(GoodTrackITS *gt, const Int_t max, const Int_t event) {
-  if (gAlice) {delete gAlice; gAlice=0;}
-
-  TFile *file=TFile::Open("galice.root");
-  if (!file->IsOpen()) {cerr<<"Can't open galice.root !\n"; exit(4);}
-  if (!(gAlice=(AliRun*)file->Get("gAlice"))) {
-    cerr<<"gAlice have not been found on galice.root !\n";
-    exit(5);
-  }
-
-  Int_t np=gAlice->GetEvent(event);
-
-  Int_t *good=new Int_t[np];
-  Int_t k;
-  for (k=0; k<np; k++) good[k]=0;
-
-  AliITS *ITS=(AliITS*)gAlice->GetDetector("ITS");
-  if (!ITS) {
-    cerr<<"can't get ITS !\n"; exit(8);
-  }
-  AliITSgeom *geom=ITS->GetITSgeom();
-  if (!geom) {
-    cerr<<"can't get ITS geometry !\n"; exit(9);
-  }
-
-  TFile *cf=TFile::Open("AliITSclustersV2.root");
-  if (!cf->IsOpen()){
-    cerr<<"Can't open AliITSclustersV2.root !\n"; exit(6);
-  }
-  char cname[100]; sprintf(cname,"TreeC_ITS_%d",event);
-  TTree *cTree=(TTree*)cf->Get(cname);
-  if (!cTree) {
-    cerr<<"Can't get cTree !\n"; exit(7);
-  }
-  TBranch *branch=cTree->GetBranch("Clusters");
-  if (!branch) {
-    cerr<<"Can't get clusters branch !\n"; exit(8);
-  }
-  TClonesArray *clusters=new TClonesArray("AliITSclusterV2",10000);
-  branch->SetAddress(&clusters);
-
-  Int_t entr=(Int_t)cTree->GetEntries();
-  for (k=0; k<entr; k++) {
-    cTree->GetEvent(k);
-    Int_t ncl=clusters->GetEntriesFast(); if (ncl==0) continue;
-    Int_t lay,lad,det;  geom->GetModuleId(k,lay,lad,det);
-    if (lay<1 || lay>6) {
-      cerr<<"wrong layer !\n"; exit(10);
-    }
-    while (ncl--) {
-      AliITSclusterV2 *pnt=(AliITSclusterV2*)clusters->UncheckedAt(ncl);
-      Int_t l0=pnt->GetLabel(0);
-      Int_t l1=pnt->GetLabel(1);
-      Int_t l2=pnt->GetLabel(2);
-      Int_t mask=1<<(lay-1);
-      if (l0>=0) good[l0]|=mask;
-      if (l1>=0) good[l1]|=mask;
-      if (l2>=0) good[l2]|=mask;
-    }
-  }
-  clusters->Delete(); delete clusters;
-  delete cTree; //Thanks to Mariana Bondila
-  cf->Close();
-
-  ifstream in("good_tracks_tpc");
-  if (!in) {
-    cerr<<"can't get good_tracks_tpc !\n"; exit(11);
-  }
-  Int_t nt=0;
-  Double_t px,py,pz,x,y,z;
-  Int_t code,lab;
-  while (in>>lab>>code>>px>>py>>pz>>x>>y>>z) {
-    if (good[lab] != 0x3F) continue;
-    TParticle *p = (TParticle*)gAlice->Particle(lab);
-    gt[nt].lab=lab;
-    gt[nt].code=p->GetPdgCode();
-    //**** px py pz - in global coordinate system
-    gt[nt].px=p->Px(); gt[nt].py=p->Py(); gt[nt].pz=p->Pz();
-    gt[nt].x=gt[nt].y=gt[nt].z=0.;
-    nt++;
-    if (nt==max) {cerr<<"Too many good tracks !\n"; break;}
-  }
-
-  delete[] good;
-
-  delete gAlice; gAlice=0;
-  file->Close();
-
-  return nt;
-}
-
-
-//----------------------------------------
-void filltab(){
-  cout<<"Fill tab..";
-  int nev=0;
-  int track,pcode;
-  float signal,pmom;
-  for(int t=0;t<10000;t++){
-    track=t; signal=5.; pmom=1200.; pcode=321;
-       pid->SetEdep(10000*nev+track,signal);   
-       pid->SetPmom(10000*nev+track,pmom);                                     
-       pid->SetPcod(10000*nev+track,abs(pcode));
-  }
-  pid->Tab();
-  cout<<"Done."<<endl;
-}
-//
-void loadpid(){
-  if(pid==0){                                                                  
-            TFile *f=new TFile("pidhit.root");                                       
-           AliITSPid *pid=(AliITSPid*)f->Get("AliITSPid");
-  if(pid)                                                                      
-       {cout<<"Load PID object from PIDHIT.ROOT file"<<endl;}                   
-    else{cout<<"ERROR load PID object from PIDHIT.ROOT file"<<endl;}         
- }                                                                            
- pid->Print(0);       
-}
-
-void quit(){
-    gROOT->Reset();
-    gROOT->ProcessLine(".q");
-}
-//---------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/grunITS.C b/ITS/oldmacros/grunITS.C
deleted file mode 100644 (file)
index a4c6104..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-void grunITS (Int_t nevent=1, const char *config="Config.C")
-{
-  //
-  // Simple macro to run aliroot in a batch mode
-  //
-  gAlice->Init(config);
-  TStopwatch timer;
-  timer.Start();
-  gAlice->Run(nevent);
-  timer.Stop();
-  timer.Print();
-  timer.Reset();
-  timer.Start();
-  gAlice->Hits2Digits("ITS");
-  timer.Stop(); timer.Print(); 
-  AliITSreconstruction *itsr = new AliITSreconstruction(0);
-  itsr->Exec();
-  delete itsr;
-  
-}
diff --git a/ITS/oldmacros/list.txt b/ITS/oldmacros/list.txt
deleted file mode 100644 (file)
index 3af6d64..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-       Macro                                  1 evt              >1 evt
-
-
-AliBarrelReconstruction4ITS.C         
-
-AliBarrelReconstructionV2.C
-
-AliCascadeComparison.C
-
-AliCascadeFindVertices.C
-
-AlignITSmacro2.C
-
-AlignITSmacro3A.C
-
-AlignITSmacro3B.C
-
-AlignITSmacro3.C
-
-AlignITSmacro3C.C
-
-AlignITSmacro3R.C
-
-AlignITSmacro3Rphi.C
-
-AlignITSmacro3Z.C
-
-AlignITSmacro.C
-
-AliITSComparisonV1.C
-
-AliITSComparisonV2.C
-
-AliITSDigits2Clusters.C
-
-AliITSFindClusters.C
-
-AliITSFindClustersDubna.C
-
-AliITSFindClustersV2.C
-
-AliITSFindTracksV2.C
-
-AliITSHits2Digits.C
-
-AliITSHits2DigitsDefault.C
-
-AliITSHits2DigitsDubna.C
-
-AliITSHits2SDigits.C
-
-AliITSHits2SDigitsDefault.C                    OK
-
-AliITSHitsToDigitsDefault.C
-
-AliITSHitsToSDigits.C
-
-AliITSHitsToSDigitsDefault.C
-
-AliITSplotgeom.C
-
-AliITSPrintHits.C
-
-AliITSPropagateBackV2.C
-
-AliITSsDigits2Digits.C                         OK
-
-AliITStest.C
-
-AliITStestDubna.C
-
-AliITStestV2.C
-
-AliTPCComparison4ITS.C
-
-AliTPCtracknew.C
-
-AliTPCtracks.C
-
-AliV0Comparison.C
-
-AliV0FindVertices.C
-
-Config_pid.C
-
-debug.C
-
-dedxanal.C
-
-dEdXgeant.C
-
-GeneralTest.C
-
-grunITS.C
-
-ITSdigitsTest.C
-
-ITSDigitsToClusters.C
-
-ITSDigitsToClustersDubna.C
-
-ITSDisplayTracks.C
-
-ITSfastrecpoints.C
-
-ITSgeoplot.C
-
-ITShitOccupancy.C
-
-ITSHitsToFastPoints.C
-
-ITShuffman.C
-
-ITSlego.C
-
-ITSmixedpoints.C
-
-ITSneuralCompleteEval.C
-
-ITSneuralTracking.C
-
-ITSOccupancy.C
-
-ITSPIDtest.C
-
-ITSPlotAllTracks.C
-
-ITSPlotFakeTracks.C
-
-ITSPlotTracks.C
-
-ITSreadClustTestSPD.C
-
-ITSreadClustTestSPDDubna.C
-
-ITSReadPlotData.C
-
-ITSreadRecPointsTest.C
-
-ITSreadTest.C
-
-ITSRF.C
-
-ITSsddanalysis.C
-
-ITSsddtest.C
-
-ITSstoreFindableTracks.C
-
-ITSstream.C
-
-ITStestSDD.C
-
-ITStracking.C
-
-ITStrackingGeneral.C
-
-ITStracks.C
-
-load_particles.C
-
-ReadITSTracks.C
-
-save_pid.C
-
-save_pidV2.C
-
-scan_pidV2.C
-
-SetConvConst.C
-
-SPDclusterTest.C
-
-SPDclusterTestDubna.C
-
-SPD_ntuple.C
-
-SPD_ntuple_Dubna.C
-
-SSD_ntuple.C
-
-SSDrecpointTest.C
-
-TPCtracking.C
-
-TPCtracks.C
-
-VertexMacro.C
-
-
-
diff --git a/ITS/oldmacros/list.txt.bck b/ITS/oldmacros/list.txt.bck
deleted file mode 100644 (file)
index 05f8f88..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-
-       macro                                  1 evt              >1 evt
-
-
-AliBarrelReconstruction4ITS.C         
-
-AliBarrelReconstructionV2.C
-
-AliCascadeComparison.C
-
-AliCascadeFindVertices.C
-
-AlignITSmacro2.C
-
-AlignITSmacro3A.C
-
-AlignITSmacro3B.C
-
-AlignITSmacro3.C
-
-AlignITSmacro3C.C
-
-AlignITSmacro3R.C
-
-AlignITSmacro3Rphi.C
-
-AlignITSmacro3Z.C
-
-AlignITSmacro.C
-
-AliITSComparisonV1.C
-
-AliITSComparisonV2.C
-
-AliITSDigits2Clusters.C
-
-AliITSFindClusters.C
-
-AliITSFindClustersDubna.C
-
-AliITSFindClustersV2.C
-
-AliITSFindTracksV2.C
-
-AliITSHits2Digits.C
-
-AliITSHits2DigitsDefault.C
-
-AliITSHits2DigitsDubna.C
-
-AliITSHits2SDigits.C
-
-AliITSHits2SDigitsDefault.C                    OK
-
-AliITSHitsToDigitsDefault.C
-
-AliITSHitsToSDigits.C
-
-AliITSHitsToSDigitsDefault.C
-
-AliITSplotgeom.C
-
-AliITSPrintHits.C
-
-AliITSPropagateBackV2.C
-
-AliITSsDigits2Digits.C
-
-AliITStest.C
-
-AliITStestDubna.C
-
-AliITStestV2.C
-
-AliTPCComparison4ITS.C
-
-AliTPCtracknew.C
-
-AliTPCtracks.C
-
-AliV0Comparison.C
-
-AliV0FindVertices.C
-
-Config_pid.C
-
-debug.C
-
-dedxanal.C
-
-dEdXgeant.C
-
-GeneralTest.C
-
-grunITS.C
-
-ITSdigitsTest.C
-
-ITSDigitsToClusters.C
-
-ITSDigitsToClustersDubna.C
-
-ITSDisplayTracks.C
-
-ITSfastrecpoints.C
-
-ITSgeoplot.C
-
-ITShitOccupancy.C
-
-ITSHitsToFastPoints.C
-
-ITShuffman.C
-
-ITSlego.C
-
-ITSmixedpoints.C
-
-ITSneuralCompleteEval.C
-
-ITSneuralTracking.C
-
-ITSOccupancy.C
-
-ITSPIDtest.C
-
-ITSPlotAllTracks.C
-
-ITSPlotFakeTracks.C
-
-ITSPlotTracks.C
-
-ITSreadClustTestSPD.C
-
-ITSreadClustTestSPDDubna.C
-
-ITSReadPlotData.C
-
-ITSreadRecPointsTest.C
-
-ITSreadTest.C
-
-ITSRF.C
-
-ITSsddanalysis.C
-
-ITSsddtest.C
-
-ITSstoreFindableTracks.C
-
-ITSstream.C
-
-ITStestSDD.C
-
-ITStracking.C
-
-ITStrackingGeneral.C
-
-ITStracks.C
-
-load_particles.C
-
-ReadITSTracks.C
-
-save_pid.C
-
-save_pidV2.C
-
-scan_pidV2.C
-
-SetConvConst.C
-
-SPDclusterTest.C
-
-SPDclusterTestDubna.C
-
-SPD_ntuple.C
-
-SPD_ntuple_Dubna.C
-
-SSD_ntuple.C
-
-SSDrecpointTest.C
-
-TPCtracking.C
-
-TPCtracks.C
-
-VertexMacro.C
-
-
-
diff --git a/ITS/oldmacros/load_particles.C b/ITS/oldmacros/load_particles.C
deleted file mode 100644 (file)
index ea85bc4..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-   TFile *file = new TFile("galice.root");
-    file->ls();
-       delete gAlice;
-       gAlice = (AliRun*)(file->Get("gAlice"));
-
-       Int_t npart = gAlice->GetEvent(0);
-       assert(npart);
-       TObjArray*  parray = gAlice->Particles();
-       cout<<" load_particles: N part="<<npart<<endl;
-
-}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/save_pid.C b/ITS/oldmacros/save_pid.C
deleted file mode 100644 (file)
index bfacd2f..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-{
-   TObjArray tarray(2000);
-   TObjArray parray(2000);
-//{
-  TFile *cf=TFile::Open("AliITSclustersV2.root");      assert(cf);
-  AliITSgeom *geom=(AliITSgeom*)cf->Get("AliITSgeom"); assert(geom);   
-  AliITStrackerV2 tracker(geom);                             
-  cf->Close();           
-   TFile *tf=TFile::Open("AliITStracksV2.root");
-   if (!tf->IsOpen()) {cerr<<"Can't open AliITStracksV2.root !\n"; return 3;}
-//   TObjArray tarray(2000);
-   TTree *tracktree=(TTree*)tf->Get("TreeT_ITS_0;1");
-   if (!tracktree) {cerr<<"Can't get a tree with ITS tracks !\n"; return 4;}
-   TBranch *tbranch=tracktree->GetBranch("tracks");
-   Int_t nentr=(Int_t)tracktree->GetEntries(),i;
-   for (i=0; i<nentr; i++) {
-       AliITStrackV2 *iotrack=new AliITStrackV2;
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-
-       Int_t tpcLabel=iotrack->GetLabel();
-       //       tracker.CookLabel(iotrack,0.);
-       Int_t itsLabel=iotrack->GetLabel();
-       if (itsLabel != tpcLabel) iotrack->SetLabel(-TMath::Abs(itsLabel));
-       if (tpcLabel < 0)         iotrack->SetLabel(-TMath::Abs(itsLabel));
-      tarray.AddLast(iotrack);
-   }   
-    cout<<" N rec. tracks="<<nentr<<endl;
-   tf->Close();
-//----------------------------------------
-TFile *fpid = new TFile("AliITStracksV2Pid.root","recreate");
-AliITStrackV2Pid pidtmp;
-AliITSPid* pid = new AliITSPid(1000);
-  TTree itsTree("ITSf","Tree with PID");
-  AliITStrackV2Pid *outpid=&pidtmp;
-  itsTree.Branch("pids","AliITStrackV2Pid",&outpid,32000,1);
-Float_t signal,pmom;
-Double_t xv,par[5];
-AliITStrackV2* track;
-Float_t lam,pt_1;
-Int_t pcode;
-for(Int_t ii=0;ii<nentr;ii++)
-{
-  track = (AliITStrackV2*)tarray[ii];
-  track->Propagate(track->GetAlpha(),3.,0.1/65.19*1.848,0.1*1.848);
-  track->PropagateToVertex();
-    signal=track->GetdEdx();
-    track->GetExternalParameters(xv,par);  
-    lam=TMath::ATan(par[3]);
-    pt_1=TMath::Abs(par[4]);
-    //cout<<"lam,pt_1="<<lam<<" " <<pt_1<<endl;
-    if(TMath::Abs(pt_1)>0)pmom=1.*(1./(pt_1*TMath::Cos(lam)));
-  pidtmp.fSignal=signal;
-  pcode=pid->GetPcode(signal,pmom);
-  pidtmp.fPcode=pcode;
-  pidtmp.fWpi=pidtmp.fWk=pidtmp.fWp=-1;
-  if(pcode==211)pidtmp.fWpi=1;
-  if(pcode==321)pidtmp.fWk=1;
-  if(pcode==2212)pidtmp.fWp=1;
-
-  pidtmp.fMom=pmom;
-  itsTree.Fill();
-}
-itsTree.Write();
-fpid->Close();
-cout<<"File AliITStracksV2Pid.root written"<<endl; 
-//----------------------------------------
-
-TFile *fpid = new TFile("AliITStracksV2Pid.root");
-fpid->ls();
-fpid->Close();
-//-------------------------------------------------
-   TFile *tfpid=TFile::Open("AliITStracksV2Pid.root");
-   if (!tfpid->IsOpen()) {cerr<<"Can't open AliITStracksV2Pid.root !\n"; return 3;}
-//   TObjArray parray(2000);
-   TTree *pidtree=(TTree*)tfpid->Get("ITSf");
-   if (!pidtree) {cerr<<"Can't get a tree with ITS pid !\n"; return 4;}
-   TBranch *tbranch=pidtree->GetBranch("pids");
-   Int_t nentr=(Int_t)pidtree->GetEntries(),i;
-   for (i=0; i<nentr; i++) {
-       AliITStrackV2Pid *iopid=new AliITStrackV2Pid;
-       tbranch->SetAddress(&iopid);
-       pidtree->GetEvent(i);
-      parray.AddLast(iopid);
-      //cout<<" fWpi,k,p, Signal = "<<iopid->fWpi<<","<<iopid->fWk<<","<<iopid->fWp<<","<<iopid->fSignal  <<endl;
-      //cout<<" Pcode,pmom="<<iopid->fPcode<<" "<<iopid->fMom<<endl;
-   }   
-    cout<<" N rec. pids="<<nentr<<endl;
-   tfpid->Close();
-
-//-------------------------------------------------
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/save_pidV2.C b/ITS/oldmacros/save_pidV2.C
deleted file mode 100644 (file)
index c930630..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-////////////////////////////////////////////////////////////
-// Test macro for AliITSPid class and tracking version V2 // 
-////////////////////////////////////////////////////////////
-void
-save_pidV2(Int_t evNumber1=0,Int_t evNumber2=0) {
-  const char *filename="AliITStracksV2.root";
-  
-  if (gClassTable->GetID("AliRun") < 0) {
-    gROOT->LoadMacro("loadlibs.C");    loadlibs();
-      } else {    delete gAlice;    gAlice=0;
-  }
-
-   TFile *file = (TFile*)gROOT->GetListOfFiles()->FindObject(filename);
-   if (!file) file = new TFile(filename);
-
-TFile *fpid = new TFile("AliITStracksV2Pid.root","recreate");
- Float_t factor=0;
- if(gAlice!=0)factor=gAlice->Field()->Factor();
- if(factor==0.)factor=1.;
- AliKalmanTrack::SetConvConst(100/0.299792458/0.2/factor);
-
-//
-//   Loop over events 
-//
- for (int nev=0; nev<= evNumber2; nev++) {
-   char tname[30];
-   sprintf(tname,"TreeT_ITS_%d;1",nev);
-   TTree *tracktree=(TTree*)file->Get(tname);
-   TBranch *tbranch=tracktree->GetBranch("tracks");
-       
-   Int_t nentr=tracktree->GetEntries();
-   cout<<"Found "<<nentr<<" ITS tracks in event No "<<nev<<endl;
-
-   char tpidname[30];
-   sprintf(tpidname,"TreeT%d",nev);
-   AliITStrackV2Pid pidtmp;
-   TTree itspidTree(tpidname,"Tree with PID");
-   AliITStrackV2Pid *outpid=&pidtmp;
-   itspidTree.Branch("pids","AliITStrackV2Pid",&outpid,32000,1);
-   AliITSPid pid;
-
-   AliITStrackV2 *iotrack=0;
-   for (Int_t i=0; i<nentr; i++) {
-      AliITStrackV2 *iotrack=new AliITStrackV2;
-       tbranch->SetAddress(&iotrack);
-       tracktree->GetEvent(i);
-              Int_t    pcode=pid->GetPcode(iotrack);
-              Float_t  signal=iotrack->GetdEdx();
-             //iotrack->Propagate(iotrack->GetAlpha(),3.,0.1/65.19*1.848,0.1*1.848);
-             iotrack->PropagateTo(3.,0.0028,65.19);
-
-             iotrack->PropagateToVertex();
-             Double_t xk,par[5]; iotrack->GetExternalParameters(xk,par);
-             Float_t lam=TMath::ATan(par[3]);
-             Float_t pt_1=TMath::Abs(par[4]);
-             Float_t mom=0.;
-             if( (pt_1*TMath::Cos(lam))!=0. ){ mom=1./(pt_1*TMath::Cos(lam)); }else{mom=0.;};
-       pidtmp.fPcode=pcode;
-       pidtmp.fSignal=signal;
-       pidtmp.fMom=mom;
-       itspidTree.Fill();
-       delete iotrack;
-   }// End for i (tracks)
- fpid->Write();
- }// End for nev (events)
- fpid->Close();
- file->Close();                 
- cout<<"File AliITStracksV2Pid.root written"<<endl;
- return;
-///////////////////////////////////////////////////////
-}
-
-
-
-
-
-
-
-
diff --git a/ITS/oldmacros/scan_pidV2.C b/ITS/oldmacros/scan_pidV2.C
deleted file mode 100644 (file)
index 5e0f5b4..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-///////////////////////////////////////////////////////////
-// Test macro for AliITStracksV1Pid.root file            //
-// JINR Dubna Jan 2002                                   //
-///////////////////////////////////////////////////////////
-void
-scan_pidV2(Int_t evNumber1=0,Int_t evNumber2=0) {
-  //................. Prepare histogramms ................
-     TH2F *qplot =  new TH2F("Qtrm","Qtrm vs Pmom",100,0,1300,100,0,13);
-     TH2F *qplotP=  new TH2F("Qtrm","Qtrm vs Pmom",100,0,1300,100,0,13); 
-     TH2F *qplotKa= new TH2F("Qtrm","Qtrm vs Pmom",100,0,1300,100,0,13);
-     TH2F *qplotPi= new TH2F("Qtrm","Qtrm vs Pmom",100,0,1300,100,0,13);
-     TH2F *qplotE=  new TH2F("Qtrm","Qtrm vs Pmom",100,0,1300,100,0,13);
-     qplotP.SetMarkerStyle(8); qplotP.SetMarkerColor(kBlack); qplotP.SetMarkerSize(.3);
-     qplotKa.SetMarkerStyle(8); qplotKa.SetMarkerColor(kRed); qplotKa.SetMarkerSize(.3);
-     qplotPi.SetMarkerStyle(8); qplotPi.SetMarkerColor(kBlue); qplotPi.SetMarkerSize(.3);
-     qplotE.SetMarkerStyle(8); qplotE.SetMarkerColor(kGreen); qplotE.SetMarkerSize(.3);
-  //......................................................
-  TH1F *signal_mip = new TH1F("signal_mip","Signal (mips) for track",100,0.,15.);
-
-TFile *fpid = new TFile("AliITStracksV2Pid.root","read");
-fpid->ls();
-//
-//   Loop over events 
-//
-for (int nev=0; nev<= evNumber2; nev++) {
-  char tpidname[30];
-  sprintf(tpidname,"TreeT%d",nev);
-  TTree *tracktree=(TTree*)fpid->Get(tpidname);
-  TBranch *tbranch=tracktree->GetBranch("pids");
-       
-   Int_t nentr=tracktree->GetEntries();
-   cout<<"Found PID for "<<nentr<<" ITS V1 tracks on "<<tpidname<<endl;
-
-   AliITStrackV2Pid *iopid=0;
-for(Int_t ii=0;ii<nentr;ii++)
-  {
-      AliITStrackV2Pid *iopid=new AliITStrackV2Pid;
-      tbranch->SetAddress(&iopid);
-      tracktree->GetEvent(ii);
-
-      signal_mip->Fill(iopid->fSignal);
-
-        if(iopid->fPcode ==2212)qplotP.Fill(1000*iopid->fMom,iopid->fSignal);
-       if(iopid->fPcode == 321)qplotKa.Fill(1000*iopid->fMom,iopid->fSignal  );
-       if(iopid->fPcode == 211)qplotPi.Fill(1000*iopid->fMom,iopid->fSignal  );
-       if(iopid->fPcode ==  11)qplotE.Fill(1000*iopid->fMom,iopid->fSignal   );
-
-      cout<<"PID pcode,fsignal,fmom= "
-         <<iopid->fPcode<<","<<iopid->fSignal<<","<<iopid->fMom<<endl;
-      delete iopid;
-  }// Enf for ii (tracks)
- }// End for nev (events)
- fpid->Close();
-  //...................... Draw histogramms .................
-   TCanvas *c1 = new TCanvas("PID_test","Scan PID ",200,10,900,700);
-   c1->Divide(2,1);
-  //.........................................................
-   c1->cd(1); gPad->SetFillColor(33);
-   signal_mip->Draw();
-
-   c1->cd(2); //gPad->SetFillColor(33);
-   qplot->Draw();
-   qplotP.Draw("same"); qplotKa.Draw("same"); qplotPi.Draw("same"); qplotE.Draw("same");
-   AliITSPid *pid =new AliITSPid(100);
-    c1->Range(0,0,1300,10);
-    gStyle->SetLineColor(kRed);
-    gStyle->SetLineWidth(2);
-       TLine *lj[3],*lk[3]; 
-       for(Int_t j=0;j<3;j++){
-               Float_t x1,x2,y1,y2,xx1,xx2,yy1,yy2;
-               x1=pid->cut[j+1][0]; x2=pid->cut[j+2][0];
-               y1=y2=pid->cut[j+2][2];
-           lj[j]=new TLine(1000*x1,y1,1000*x2,y2); lj[j]->Draw();
-           if(j==0){yy1=10.;}else{yy1=lj[j-1]->GetY1();}
-           yy2=lj[j]->GetY1();
-           xx1=xx2=x1;
-           lk[j]=new TLine(1000*xx1,yy1,1000*xx2,yy2); lk[j]->Draw();
-       }
-       //Draw pions-kaons cuts.
-       TLine *mj[7],*mk[7]; 
-       for(Int_t j=0;j<7;j++){
-               Float_t x1,x2,y1,y2,xx1,xx2,yy1,yy2;
-               x1=pid->cut[j+2][0]; x2=pid->cut[j+3][0];
-               y1=y2=pid->cut[j+3][5];
-           mj[j]=new TLine(1000*x1,y1,1000*x2,y2); mj[j]->Draw();
-           if(j==0){yy1=10.;}else{yy1=mj[j-1]->GetY1();}
-           yy2=mj[j]->GetY1();
-           xx1=xx2=x1;
-           mk[j]=new TLine(1000*xx1,yy1,1000*xx2,yy2); mk[j]->Draw();
-       }
-  cout<<"End of file AliITStracksV1Pid.root "<<endl; 
-  return;
-}
-