/[PAMELA software]/DarthVader/TrackerLevel2/src/TrkLevel2.cpp
ViewVC logotype

Diff of /DarthVader/TrackerLevel2/src/TrkLevel2.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.55 by mocchiut, Thu Jan 16 15:29:47 2014 UTC revision 1.56 by pam-fi, Thu Feb 27 11:24:43 2014 UTC
# Line 687  void TrkTrack::FillMiniStruct(cMini2trac Line 687  void TrkTrack::FillMiniStruct(cMini2trac
687  //      --- temporaneo ----------------------------  //      --- temporaneo ----------------------------
688    
689          if( XGood(i) || YGood(i) ){          if( XGood(i) || YGood(i) ){
690              double segment = 2.;//cm              //NB!! the length of the sensor is not exactely taken into account    
691                double segment = 7.;// 2.;//cm //Elena 10th
692              // NB: i parametri di allineamento hanno una notazione particolare!!!              // NB: i parametri di allineamento hanno una notazione particolare!!!
693              // sensor = 0 (hybrid side), 1              // sensor = 0 (hybrid side), 1
694              // ladder = 0-2 (increasing x)              // ladder = 0-2 (increasing x)
# Line 760  void TrkTrack::SetFromMiniStruct(cMini2t Line 761  void TrkTrack::SetFromMiniStruct(cMini2t
761          zm[i]  = track->zm[i];          zm[i]  = track->zm[i];
762          axv[i] = track->axv[i];          axv[i] = track->axv[i];
763          ayv[i] = track->ayv[i];          ayv[i] = track->ayv[i];
764            resx[i] = track->resx[i]; //Elena 10th
765            resy[i] = track->resy[i];
766      }      }
767            
768  }  }
# Line 810  Bool_t TrkTrack::EvaluateClusterPosition Line 813  Bool_t TrkTrack::EvaluateClusterPosition
813    
814      for(int ip=0; ip<6; ip++){      for(int ip=0; ip<6; ip++){
815  //      cout << ip<<" ** "<<xm[ip]<<" / "<<ym[ip]<<endl;;  //      cout << ip<<" ** "<<xm[ip]<<" / "<<ym[ip]<<endl;;
816          int icx = GetClusterX_ID(ip)+1;          int icx = GetClusterX_ID(ip)+1;//0=no-cluster,1-N
817          int icy = GetClusterY_ID(ip)+1;          int icy = GetClusterY_ID(ip)+1;//0=no-cluster,1-N
818          int sensor = GetSensor(ip)+1;//<< convenzione "Paolo"          int sensor = GetSensor(ip)+1;//<< convenzione "Paolo"
819          if(ip==5 && sensor!=0)sensor=3-sensor;//<< convenzione "Elena"          if(ip==5 && sensor!=0)sensor=3-sensor;//<< convenzione "Elena"
820          int ladder = GetLadder(ip)+1;          int ladder = GetLadder(ip)+1;
# Line 825  Bool_t TrkTrack::EvaluateClusterPosition Line 828  Bool_t TrkTrack::EvaluateClusterPosition
828          float bfy = 10*TrkParams::GetBY(v);//Tesla          float bfy = 10*TrkParams::GetBY(v);//Tesla
829          int ipp=ip+1;          int ipp=ip+1;
830          xyzpam_(&ipp,&icx,&icy,&ladder,&sensor,&ax,&ay,&bfx,&bfy);          xyzpam_(&ipp,&icx,&icy,&ladder,&sensor,&ax,&ay,&bfx,&bfy);
831          if(icx<0 || icy<0)return false;          //      if(icx<0 || icy<0)return false;
832      }      }
833      return true;      return true;
834  }  }
# Line 875  void TrkTrack::Fit(double pfixed, int& f Line 878  void TrkTrack::Fit(double pfixed, int& f
878      extern cMini2track track_;      extern cMini2track track_;
879      fail = 0;      fail = 0;
880    
881      FillMiniStruct(track_);      //    FillMiniStruct(track_);
882                    
883      if(froml1!=0){      if(froml1!=0){
884          if( !EvaluateClusterPositions() ){          if( !EvaluateClusterPositions() ){
# Line 914  void TrkTrack::Fit(double pfixed, int& f Line 917  void TrkTrack::Fit(double pfixed, int& f
917          if(iprint)cout << "ERROR: ifail= " << ifail << endl;          if(iprint)cout << "ERROR: ifail= " << ifail << endl;
918          fail = 1;          fail = 1;
919      }      }
920        if(chi2!=chi2){
921            if(iprint)cout << "ERROR: chi2= " << chi2 << endl;      
922            FitReset();
923            fail = 1;      
924        }
925      //  ------------------------------------------      //  ------------------------------------------
926            
927      SetFromMiniStruct(&track_);      SetFromMiniStruct(&track_);
# Line 1152  Int_t TrkTrack::GetSensor(int ip){ Line 1160  Int_t TrkTrack::GetSensor(int ip){
1160  void TrkTrack::SetXGood(int ip, int clid, int il, int is, bool bad){  void TrkTrack::SetXGood(int ip, int clid, int il, int is, bool bad){
1161  //    int il=0;       //ladder (temporary)  //    int il=0;       //ladder (temporary)
1162  //    bool bad=false; //ladder (temporary)  //    bool bad=false; //ladder (temporary)
1163      if(ip<0||ip>5||clid<0||il<-1||il>2||is<-1||is>1)      if(ip<0||ip>5||clid<1||il<-1||il>2||is<-1||is>1)
1164          cout << " void TrkTrack::SetXGood(int,int,int,int,bool) --> MA SEI DI COCCIO?!?!"<<endl;          cout << " void TrkTrack::SetXGood(int,int,int,int,bool) --> MA SEI DI COCCIO?!?!"<<endl;
1165      xgood[ip]=(il+1)*100000000+(is+1)*10000000+clid;      xgood[ip]=(il+1)*100000000+(is+1)*10000000+clid;
1166      if(bad)xgood[ip]=-xgood[ip];      if(bad)xgood[ip]=-xgood[ip];
# Line 1169  void TrkTrack::SetXGood(int ip, int clid Line 1177  void TrkTrack::SetXGood(int ip, int clid
1177  void TrkTrack::SetYGood(int ip, int clid, int il, int is, bool bad){  void TrkTrack::SetYGood(int ip, int clid, int il, int is, bool bad){
1178  //    int il=0;       //ladder (temporary)  //    int il=0;       //ladder (temporary)
1179  //    bool bad=false; //ladder (temporary)  //    bool bad=false; //ladder (temporary)
1180      if(ip<0||ip>5||clid<0||il<-1||il>2||is<-1||is>1)      if(ip<0||ip>5||clid<1||il<-1||il>2||is<-1||is>1)
1181          cout << " void TrkTrack::SetYGood(int,int,int,int,bool) --> MA SEI DI COCCIO?!?!"<<endl;          cout << " void TrkTrack::SetYGood(int,int,int,int,bool) --> MA SEI DI COCCIO?!?!"<<endl;
1182      ygood[ip]=(il+1)*100000000+(is+1)*10000000+clid;      ygood[ip]=(il+1)*100000000+(is+1)*10000000+clid;
1183      if(bad)ygood[ip]=-ygood[ip];      if(bad)ygood[ip]=-ygood[ip];

Legend:
Removed from v.1.55  
changed lines
  Added in v.1.56

  ViewVC Help
Powered by ViewVC 1.1.23