/[PAMELA software]/calo/flight/CaloNuclei/src/CaloNuclei.cpp
ViewVC logotype

Diff of /calo/flight/CaloNuclei/src/CaloNuclei.cpp

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

revision 1.15 by mocchiut, Fri Nov 28 16:00:19 2008 UTC revision 1.18 by mocchiut, Thu Dec 18 10:31:00 2008 UTC
# Line 501  void CaloNuclei::Process(Int_t ntr){ Line 501  void CaloNuclei::Process(Int_t ntr){
501      Int_t uplim2 = interplane-1;      Int_t uplim2 = interplane-1;
502      //      //
503      while ( l < uplim && ind < interplane ){      while ( l < uplim && ind < interplane ){
504        qm = TMath::KOrdStat((Long_64_t)interplane,qme,(Long64_t)ind,work);        qm = TMath::KOrdStat((Long64_t)interplane,qme,(Long64_t)ind,work);
505        if ( qm >= qmt ){        if ( qm >= qmt ){
506          if ( l < 3 ){          if ( l < 3 ){
507            qpremean += qm;            qpremean += qm;
# Line 518  void CaloNuclei::Process(Int_t ntr){ Line 518  void CaloNuclei::Process(Int_t ntr){
518      l = 0;      l = 0;
519      RN = 0;      RN = 0;
520      while ( l < uplim && ind < interplane ){      while ( l < uplim && ind < interplane ){
521        qm2 = TMath::KOrdStat((Long_64_t)interplane,qme2,(Long_64_t)ind,work);        qm2 = TMath::KOrdStat((Long64_t)interplane,qme2,(Long64_t)ind,work);
522        if ( qm2 >= qmt ){                if ( qm2 >= qmt ){        
523          if ( l < N ){          if ( l < N ){
524            qpremeanN += qm2;            qpremeanN += qm2;
# Line 539  void CaloNuclei::Process(Int_t ntr){ Line 539  void CaloNuclei::Process(Int_t ntr){
539      RN = 0;      RN = 0;
540      S2=0;      S2=0;
541      while ( l < uplim2 && ind<interplane){      while ( l < uplim2 && ind<interplane){
542        qm2 = TMath::KOrdStat((Long_64_t)interplane,qme2,(Long_64_t)ind,work);        qm2 = TMath::KOrdStat((Long64_t)interplane,qme2,(Long64_t)ind,work);
543        if ( qm2 < qmt ) S2++;        if ( qm2 < qmt ) S2++;
544        ind++;        ind++;
545      }      }
# Line 548  void CaloNuclei::Process(Int_t ntr){ Line 548  void CaloNuclei::Process(Int_t ntr){
548      l = 0;      l = 0;
549      RN = 0;      RN = 0;
550      while ( l < uplim2 && ind < interplane ){      while ( l < uplim2 && ind < interplane ){
551        qm2 = TMath::KOrdStat((Long_64_t)interplane,qme2,(Long_64_t)ind,work);        qm2 = TMath::KOrdStat((Long64_t)interplane,qme2,(Long64_t)ind,work);
552        if ( qm2 >= qmt ){                if ( qm2 >= qmt ){        
553          if ( l < (interplane - 1 - S2)){            if ( l < (interplane - 1 - S2)){  
554            qNmin1_w += qm2;            qNmin1_w += qm2;
# Line 665  Float_t beta = 100.; Line 665  Float_t beta = 100.;
665  // //=======================================================================  // //=======================================================================
666  // //===========    charge determination Maximum release  vs. beta    ===============  // //===========    charge determination Maximum release  vs. beta    ===============
667  // //======================     Rome method    ===========================  // //======================     Rome method    ===========================
668  // //=======================================================================  // //=======================================================================    
       
     Float_t D0[7] = {0, 3 , 4 , 5 , 6, 8, 90};  
     Float_t E1[7] = {0 ,923.553 , 659.842, 1113.97, 3037.25, 3034.84, 0};  
     Float_t E2[7] = {0 ,6.92574 , 5.08865, 5.29349, 6.41442, 5.52969, 0};  
     Float_t E3[7] = {0 ,9.7227  , 13.18, 23.5444, 38.2057, 63.6784, 80000};  
669    
670      Float_t xx1[7],yy1[7];      Float_t D0[9] = {0, 1, 2, 3 , 4 , 5 , 6, 8, 90};
671      n1 = 7;      Float_t E1[9] = {0, 500, 500, 923.553 , 659.842, 1113.97, 3037.25, 3034.84, 0};
672        Float_t E2[9] = {0, 11.0, 7.5, 6.92574 , 5.08865, 5.29349, 6.41442, 5.52969, 0};
673        Float_t E3[9] = {0, 1.2, 4, 9.7227  , 13.18, 23.5444, 38.2057, 63.6784, 80000};
674    
675        Float_t xx1[9],yy1[9];
676        n1 = 9;
677            
678      charge = 1000.;      charge = 1000.;
679      mip=0;      mip=0;
# Line 714  Float_t beta = 100.; Line 714  Float_t beta = 100.;
714  // =======================================================================  // =======================================================================
715  // ===========    charge determination dedx  vs. beta    ===============  // ===========    charge determination dedx  vs. beta    ===============
716  // ======================     Rome method    ===========================  // ======================     Rome method    ===========================
717  // =======================================================================  // =======================================================================  
718        
719      Float_t F0[7] = {0.,3. ,4., 5. , 6., 8, 90};      Float_t F0[9] = {0., 1., 2., 3. ,4., 5. , 6., 8, 90};
720      Float_t G1[7] = {0 ,642.935 , 848.684, 1346.05, 3238.82, 3468.6, 0};      Float_t G1[9] = {0, 500, 500, 642.935 , 848.684, 1346.05, 3238.82, 3468.6, 0};
721      Float_t G2[7] = {0 ,6.2038 , 5.51723, 5.65265, 6.54089, 5.72723, 0};      Float_t G2[9] = {0, 11, 7.5, 6.2038 , 5.51723, 5.65265, 6.54089, 5.72723, 0};
722      Float_t G3[7] = {0 ,9.2421 , 13.9858, 25.3912, 39.6332, 64.5674, 80000};      Float_t G3[9] = {0, 1.2, 4, 9.2421 , 13.9858, 25.3912, 39.6332, 64.5674, 80000};
723    
724        
725      charge = 1000.;      charge = 1000.;
# Line 763  Float_t beta = 100.; Line 763  Float_t beta = 100.;
763  //=======================================================================  //=======================================================================
764  //===========    charge determination dedx  vs. defl    ===============  //===========    charge determination dedx  vs. defl    ===============
765  //======================     Rome method    ===========================  //======================     Rome method    ===========================
766  //=======================================================================  //=======================================================================    
       
     //new  
      Float_t H0[7] = {0, 3 , 4 , 5 , 6, 8, 90 };  
      Float_t I1[7] = {0 , 56.1019, 101.673, 109.225, 150.599, 388.531, 0};  
      Float_t I2[7] = {0 , -12.5581, -22.5543, -15.9823, -28.2207, -93.6871, 0};  
      Float_t I3[7] = {0 , 11.6218, 19.664, 32.1817, 45.7527, 84.5992, 80000};  
       
   
 //     Float_t H0[7] = {0, 3 , 4 , 5 , 6, 8, 90 };  
 //     Float_t I1[7] = {0 , 56.1019, 101.673, 155, 150.599, 388.531, 0};  
 //     Float_t I2[7] = {0 , -12.5581, -22.5543, -35.6217, -28.2207, -93.6871, 0};  
 //     Float_t I3[7] = {0 , 11.6218, 19.664, 34.3311, 45.7527, 84.5992, 8000};  
767    
768         Float_t H0[9] = {0, 1, 2, 3 , 4 , 5 , 6, 8, 90 };
769         Float_t I1[9] = {0, 3.5, 40, 56.1019, 101.673, 109.225, 150.599, 388.531, 0};
770         Float_t I2[9] = {0, -1, -13.6, -12.5581, -22.5543, -15.9823, -28.2207, -93.6871, 0};
771         Float_t I3[9] = {0, 1, 5.3, 11.6218, 19.664, 32.1817, 45.7527, 84.5992, 80000};
772    
773            
774      charge = 1000.;      charge = 1000.;
# Line 822  Float_t beta = 100.; Line 814  Float_t beta = 100.;
814  //============================================================================================  //============================================================================================
815  //===========    charge determination Truncated mean (N-1 planes) vs. defl ===================  //===========    charge determination Truncated mean (N-1 planes) vs. defl ===================
816  //================================     Rome method    ========================================  //================================     Rome method    ========================================
817  //============================================================================================  //============================================================================================  
818        
819      Float_t L0[7] = {0, 3 , 4 , 5 , 6, 8, 90};      Float_t L0[9] = {0, 1, 2, 3 , 4 , 5 , 6, 8, 90};
820      Float_t M1[7] = {0 , 63.0145, 120.504, 173.663, 245.33, 236.517, 0};      Float_t M1[9] = {0, 3.5, 27, 63.0145, 120.504, 173.663, 245.33, 236.517, 0};
821      Float_t M2[7] = {0 , -15.005, -31.0635, -39.4988, -60.5011, -46.3992, 0};      Float_t M2[9] = {0, -1, -10.6, -15.005, -31.0635, -39.4988, -60.5011, -46.3992, 0};
822      Float_t M3[7] = {0 , 12.5037, 22.8652, 35.2907, 51.4678, 86.4155, 8000};      Float_t M3[9] = {0, 1, 7, 12.5037, 22.8652, 35.2907, 51.4678, 86.4155, 80000};
823    
824      charge = 1000.;      charge = 1000.;
825      mip=0;      mip=0;

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.18

  ViewVC Help
Powered by ViewVC 1.1.23