/[PAMELA software]/DarthVader/ToFLevel2/src/tofl2com.for
ViewVC logotype

Diff of /DarthVader/ToFLevel2/src/tofl2com.for

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

revision 1.8 by pam-de, Mon Mar 31 19:24:04 2008 UTC revision 1.13 by mocchiut, Mon Nov 23 09:50:50 2009 UTC
# Line 29  C             beta is taken as good if c Line 29  C             beta is taken as good if c
29  C  mar-08 WM: Call to "newbeta" changed, now a flag tells the function if the  C  mar-08 WM: Call to "newbeta" changed, now a flag tells the function if the
30  C             call comes from "tofl2com" or form "toftrack"  C             call comes from "tofl2com" or form "toftrack"
31  C  mar-08 WM: Bug found in dEdx if check_charge>1  C  mar-08 WM: Bug found in dEdx if check_charge>1
32    C  oct-08 WM: Calculation of zenith angle debugged, sometimes strange values
33    C             were possible
34    C  nov-09 WM: the dEdx part ("adctof_c") moved to the new dEdx routine from Napoli
35  C******************************************************************************  C******************************************************************************
36    
37        INTEGER FUNCTION TOFL2COM()        INTEGER FUNCTION TOFL2COM()
# Line 48  C     Line 51  C    
51        INTEGER j,hitvec(6)        INTEGER j,hitvec(6)
52    
53        REAL dx,dy,dr,ds        REAL dx,dy,dr,ds
54        REAL yhelp,xhelp,xhelp1,xhelp2        REAL yhelp,yhelp1,yhelp2,xhelp,xhelp1,xhelp2
55        REAL c1,c2        REAL c1,c2
56    
57  C      REAL sw,sxw,w_i  C      REAL sw,sxw,w_i
# Line 105  c     second index : 1... number of padd Line 108  c     second index : 1... number of padd
108  C--   DATA ZTOF/53.74,53.04,23.94,23.44,-23.49,-24.34/ !Sergio 9.05.2006  C--   DATA ZTOF/53.74,53.04,23.94,23.44,-23.49,-24.34/ !Sergio 9.05.2006
109        REAL tofarm12        REAL tofarm12
110        PARAMETER (tofarm12 = 29.70) ! from 53.39 to 23.69        PARAMETER (tofarm12 = 29.70) ! from 53.39 to 23.69
111        REAL tofarm23                REAL tofarm23        
112        PARAMETER (tofarm23 = 47.61)  ! from 23.69 to -23.92        PARAMETER (tofarm23 = 47.61)  ! from 23.69 to -23.92
113        REAL tofarm13        REAL tofarm13
114        PARAMETER (tofarm13 = 77.31)  ! from 53.39 to -23.92        PARAMETER (tofarm13 = 77.31)  ! from 53.39 to -23.92
# Line 578  c     check if an other paddle has also Line 581  c     check if an other paddle has also
581         hitvec(5)=tof31_i         hitvec(5)=tof31_i
582         hitvec(6)=tof32_i         hitvec(6)=tof32_i
583    
 c       write(*,*) 'tofl2com',  
 c     &   tof11_i,tof12_i,tof21_i,tof22_i,tof31_i,tof32_i  
584    
585  C------------------------------------------------------------------  C------------------------------------------------------------------
586  C--  calculate track position in paddle using timing difference  C--  calculate track position in paddle using timing difference
# Line 637  C--------------------------------------- Line 638  C---------------------------------------
638  C---------------------  zenith angle theta  ---------------------------  C---------------------  zenith angle theta  ---------------------------
639  C----------------------------------------------------------------------  C----------------------------------------------------------------------
640    
641        dx=0.         xhelp1=0.
642        dy=0.         if (tof11_i.GT.none_find) xhelp1=tof11_x(tof11_i)
643        dr=0.         if (xtofpos(1).lt.100)  xhelp1=xtofpos(1)
644        theta13 = 0.  
645           yhelp1=0.
646           IF ((tof12_i.GT.none_find).AND.(tof32_i.GT.none_find))         if (tof12_i.GT.none_find) yhelp1=tof12_y(tof12_i)
647       &        dx  = xtofpos(1) - xtofpos(3)         if (ytofpos(1).lt.100)  yhelp1=ytofpos(1)
648           IF ((tof11_i.GT.none_find).AND.(tof31_i.GT.none_find))  
649       &        dy  = ytofpos(1) - ytofpos(3)  
650           dr = sqrt(dx*dx+dy*dy)         yhelp2=0.
651           theta13 = atan(dr/tofarm13)         if (tof32_i.GT.none_find) yhelp2=tof32_y(tof32_i)
652           if (ytofpos(3).lt.100)  yhelp2=ytofpos(3)
653    
654           xhelp2=0.
655           if (tof31_i.GT.none_find) xhelp2=tof31_x(tof31_i)
656           if (xtofpos(3).lt.100)  xhelp2=xtofpos(3)
657    
658    
659           dx=0.
660           dy=0.
661           dr=0.
662           theta13 = 0.
663    
664           dx  = xhelp1 - xhelp2
665           dy  = yhelp1 - yhelp2
666           dr = sqrt(dx*dx+dy*dy)
667           theta13 = atan(dr/tofarm13)
668    
669    
670  C----------------------------------------------------------------------  C----------------------------------------------------------------------
# Line 659  C--- the k1 constants in the beta calcul Line 676  C--- the k1 constants in the beta calcul
676  C----------------------------------------------------------------------  C----------------------------------------------------------------------
677    
678           iz = int(check_charge(theta13,hitvec))           iz = int(check_charge(theta13,hitvec))
679  C         write(*,*) 'in tofl2com',iz  c         write(*,*) 'charge in tofl2com',iz
680    
681  C--------------------------------------------------------------------  C--------------------------------------------------------------------
682  C---- if TDCleft.and.TDCright and NO ADC insert artificial ADC  C---- if TDCleft.and.TDCright and NO ADC insert artificial ADC
# Line 676  c       DATA tof32_y/ -5.0,0.0,5.0/ Line 693  c       DATA tof32_y/ -5.0,0.0,5.0/
693    
694  C----------------------------  S1 -------------------------------------  C----------------------------  S1 -------------------------------------
695    
696         yhelp=0.  c       yhelp=0.
697           yhelp=100.  ! WM
698         if (tof12_i.GT.none_find) yhelp=tof12_y(tof12_i)         if (tof12_i.GT.none_find) yhelp=tof12_y(tof12_i)
699         if (ytofpos(1).lt.100)  yhelp=ytofpos(1)         if (ytofpos(1).lt.100)  yhelp=ytofpos(1)
700    
# Line 696  C----------------------------  S1 ------ Line 714  C----------------------------  S1 ------
714           endif           endif
715         ENDIF         ENDIF
716    
717         xhelp=0.  c       xhelp=0.
718           xhelp=100.  ! WM
719         if (tof11_i.GT.none_find) xhelp=tof11_x(tof11_i)         if (tof11_i.GT.none_find) xhelp=tof11_x(tof11_i)
720         if (xtofpos(1).lt.100)  xhelp=xtofpos(1)         if (xtofpos(1).lt.100)  xhelp=xtofpos(1)
721    
# Line 718  C----------------------------  S1 ------ Line 737  C----------------------------  S1 ------
737    
738  C-----------------------------S2 --------------------------------  C-----------------------------S2 --------------------------------
739    
740         xhelp=0.  c       xhelp=0.
741           xhelp=100.   ! WM
742         if (tof22_i.GT.none_find) xhelp=tof22_x(tof22_i)         if (tof22_i.GT.none_find) xhelp=tof22_x(tof22_i)
743         if (xtofpos(2).lt.100)  xhelp=xtofpos(2)         if (xtofpos(2).lt.100)  xhelp=xtofpos(2)
744    
# Line 739  C-----------------------------S2 ------- Line 759  C-----------------------------S2 -------
759         ENDIF         ENDIF
760    
761    
762         yhelp=0.  c       yhelp=0.
763           yhelp=100.   ! WM
764         if (tof21_i.GT.none_find) yhelp=tof21_y(tof21_i)         if (tof21_i.GT.none_find) yhelp=tof21_y(tof21_i)
765         if (ytofpos(2).lt.100)  yhelp=ytofpos(2)         if (ytofpos(2).lt.100)  yhelp=ytofpos(2)
766    
# Line 761  C-----------------------------S2 ------- Line 782  C-----------------------------S2 -------
782    
783  C-----------------------------S3 --------------------------------  C-----------------------------S3 --------------------------------
784    
785         yhelp=0.  c       yhelp=0.
786           yhelp=100.  ! WM
787         if (tof32_i.GT.none_find) yhelp=tof32_y(tof32_i)         if (tof32_i.GT.none_find) yhelp=tof32_y(tof32_i)
788         if (ytofpos(3).lt.100)  yhelp=ytofpos(3)         if (ytofpos(3).lt.100)  yhelp=ytofpos(3)
789    
# Line 781  C-----------------------------S3 ------- Line 803  C-----------------------------S3 -------
803           endif           endif
804         ENDIF         ENDIF
805    
806         xhelp=0.  c       xhelp=0.
807           xhelp=100.   ! WM
808         if (tof31_i.GT.none_find) xhelp=tof31_x(tof31_i)         if (tof31_i.GT.none_find) xhelp=tof31_x(tof31_i)
809         if (xtofpos(3).lt.100)  xhelp=xtofpos(3)         if (xtofpos(3).lt.100)  xhelp=xtofpos(3)
810    
# Line 921  C---- Line 944  C----
944           tdc_c(ch32b(i),hb32b(i))=tof32(right,i,itdc)           tdc_c(ch32b(i),hb32b(i))=tof32(right,i,itdc)
945                                               ENDIF                                               ENDIF
946        ENDDO        ENDDO
947                  
948    
949  C---------------------------------------------------------------  C---------------------------------------------------------------
950  C--- calculate track position in paddle using timing difference  C--- calculate track position in paddle using timing difference
951  C--- now using the time-walk corrected TDC values  C--- now using the time-walk corrected TDC values
# Line 937  C-----------------------------S1 ------- Line 961  C-----------------------------S1 -------
961        IF (tof11_i.GT.none_find) THEN        IF (tof11_i.GT.none_find) THEN
962           ytofpos(1)  = ((tof11(1,tof11_i,itdc)-tof11(2,tof11_i,itdc))/2.           ytofpos(1)  = ((tof11(1,tof11_i,itdc)-tof11(2,tof11_i,itdc))/2.
963       +        -y_coor_lin11(tof11_i,offset))/y_coor_lin11(tof11_i,slope)       +        -y_coor_lin11(tof11_i,offset))/y_coor_lin11(tof11_i,slope)
964           i=tof11_i
965        endif        endif
966    
967        IF (tof12_i.GT.none_find) THEN        IF (tof12_i.GT.none_find) THEN
968           xtofpos(1)  = ((tof12(1,tof12_i,itdc)-tof12(2,tof12_i,itdc))/2.           xtofpos(1)  = ((tof12(1,tof12_i,itdc)-tof12(2,tof12_i,itdc))/2.
969       +        -x_coor_lin12(tof12_i,offset))/x_coor_lin12(tof12_i,slope)       +        -x_coor_lin12(tof12_i,offset))/x_coor_lin12(tof12_i,slope)
970          i=tof12_i
971        endif        endif
972    
973    
# Line 950  C-----------------------------S2 ------- Line 976  C-----------------------------S2 -------
976        IF (tof21_i.GT.none_find) THEN        IF (tof21_i.GT.none_find) THEN
977           xtofpos(2) = ((tof21(1,tof21_i,itdc)-tof21(2,tof21_i,itdc))/2.           xtofpos(2) = ((tof21(1,tof21_i,itdc)-tof21(2,tof21_i,itdc))/2.
978       +        -x_coor_lin21(tof21_i,offset))/x_coor_lin21(tof21_i,slope)       +        -x_coor_lin21(tof21_i,offset))/x_coor_lin21(tof21_i,slope)
979          i=tof21_i
980        endif        endif
981    
982        IF (tof22_i.GT.none_find) THEN        IF (tof22_i.GT.none_find) THEN
983           ytofpos(2) = ((tof22(1,tof22_i,itdc)-tof22(2,tof22_i,itdc))/2.           ytofpos(2) = ((tof22(1,tof22_i,itdc)-tof22(2,tof22_i,itdc))/2.
984       +        -y_coor_lin22(tof22_i,offset))/y_coor_lin22(tof22_i,slope)       +        -y_coor_lin22(tof22_i,offset))/y_coor_lin22(tof22_i,slope)
985          i=tof22_i
986        endif        endif
987                
988    
# Line 963  C-----------------------------S3 ------- Line 991  C-----------------------------S3 -------
991        IF (tof31_i.GT.none_find) THEN        IF (tof31_i.GT.none_find) THEN
992           ytofpos(3)  = ((tof31(1,tof31_i,itdc)-tof31(2,tof31_i,itdc))/2.           ytofpos(3)  = ((tof31(1,tof31_i,itdc)-tof31(2,tof31_i,itdc))/2.
993       +        -y_coor_lin31(tof31_i,offset))/y_coor_lin31(tof31_i,slope)       +        -y_coor_lin31(tof31_i,offset))/y_coor_lin31(tof31_i,slope)
994          i=tof31_i
995        endif        endif
996    
997        IF (tof32_i.GT.none_find) THEN        IF (tof32_i.GT.none_find) THEN
998           xtofpos(3)  = ((tof32(1,tof32_i,itdc)-tof32(2,tof32_i,itdc))/2.           xtofpos(3)  = ((tof32(1,tof32_i,itdc)-tof32(2,tof32_i,itdc))/2.
999       +        -x_coor_lin32(tof32_i,offset))/x_coor_lin32(tof32_i,slope)       +        -x_coor_lin32(tof32_i,offset))/x_coor_lin32(tof32_i,slope)
1000          i=tof32_i
1001        endif        endif
1002    
1003    
# Line 980  c            ytofpos(i)=101. Line 1010  c            ytofpos(i)=101.
1010  c         endif  c         endif
1011  c      enddo  c      enddo
1012    
1013    
1014  C--  restrict TDC measurements to physical paddle dimensions +/- 10 cm  C--  restrict TDC measurements to physical paddle dimensions +/- 10 cm
1015  C--  this cut is now stronger than in the old versions  C--  this cut is now stronger than in the old versions
1016    
# Line 991  C--  this cut is now stronger than in th Line 1022  C--  this cut is now stronger than in th
1022          if (abs(ytofpos(2)).gt.18.)  ytofpos(2)=101.          if (abs(ytofpos(2)).gt.18.)  ytofpos(2)=101.
1023          if (abs(ytofpos(3)).gt.18.)  ytofpos(3)=101.          if (abs(ytofpos(3)).gt.18.)  ytofpos(3)=101.
1024    
   
1025  C----------------------------------------------------------------------  C----------------------------------------------------------------------
1026  C---------------------  zenith angle theta  ---------------------------  C---------------------  zenith angle theta  ---------------------------
1027  C----------------------------------------------------------------------  C----------------------------------------------------------------------
1028    C-------------------  improved calculation  ---------------------------
1029    
1030        dx=0.         xhelp1=0.
1031        dy=0.         if (tof11_i.GT.none_find) xhelp1=tof11_x(tof11_i)
1032        dr=0.         if (xtofpos(1).lt.100)  xhelp1=xtofpos(1)
1033        theta13 = 0.  
1034           yhelp1=0.
1035           IF ((tof12_i.GT.none_find).AND.(tof32_i.GT.none_find))         if (tof12_i.GT.none_find) yhelp1=tof12_y(tof12_i)
1036       &        dx  = xtofpos(1) - xtofpos(3)         if (ytofpos(1).lt.100)  yhelp1=ytofpos(1)
1037           IF ((tof11_i.GT.none_find).AND.(tof31_i.GT.none_find))  
1038       &        dy  = ytofpos(1) - ytofpos(3)         yhelp2=0.
1039           dr = sqrt(dx*dx+dy*dy)         if (tof32_i.GT.none_find) yhelp2=tof32_y(tof32_i)
1040           theta13 = atan(dr/tofarm13)         if (ytofpos(3).lt.100)  yhelp2=ytofpos(3)
1041    
1042  C------------------------------------------------------------------         xhelp2=0.
1043  c      dx=0.         if (tof31_i.GT.none_find) xhelp2=tof31_x(tof31_i)
1044  c      dy=0.         if (xtofpos(3).lt.100)  xhelp2=xtofpos(3)
1045  c      dr=0.  
1046  c      theta12 = 0.  
1047  c         dx=0.
1048  c         IF ((tof12_i.GT.none_find).AND.(tof21_i.GT.none_find))         dy=0.
1049  c     &        dx  = xtofpos(1) - xtofpos(2)         dr=0.
1050  c         IF ((tof11_i.GT.none_find).AND.(tof22_i.GT.none_find))         theta13 = 0.
1051  c     &        dy  = ytofpos(1) - ytofpos(2)  
1052  c         dr = sqrt(dx*dx+dy*dy)         dx  = xhelp1 - xhelp2
1053  c         theta12 = atan(dr/tofarm12)         dy  = yhelp1 - yhelp2
1054  c                 dr = sqrt(dx*dx+dy*dy)
1055  c      dx=0.         theta13 = atan(dr/tofarm13)
 c      dy=0.  
 c      dr=0.  
 c      theta23 = 0.  
 c  
 c         IF ((tof21_i.GT.none_find).AND.(tof32_i.GT.none_find))  
 c     &        dx  = xtofpos(2) - xtofpos(3)  
 c         IF ((tof22_i.GT.none_find).AND.(tof31_i.GT.none_find))  
 c     &        dy  = ytofpos(2) - ytofpos(3)  
 c         dr = sqrt(dx*dx+dy*dy)  
 c         theta23 = atan(dr/tofarm23)  
 c          
 C----------------------------------------------------------------------  
 C------------------angle and ADC(x) correction  
 C----------------------------------------------------------------------  
 C-----------------------------S1 --------------------------------  
 c middle y (or x) position of the upper and middle ToF-Paddle  
 c       DATA tof11_x/ -17.85,-12.75,-7.65,-2.55,2.55,7.65,12.75,17.85/  
 c       DATA tof12_y/ -13.75,-8.25,-2.75,2.75,8.25,13.75/  
 c       DATA tof21_y/  3.75,-3.75/     ! paddles in different order  
 c       DATA tof22_x/ -4.5,4.5/  
 c       DATA tof31_x/ -6.0,0.,6.0/  
 c       DATA tof32_y/ -5.0,0.0,5.0/  
   
       yhelp=0.  
       if (tof12_i.GT.none_find) yhelp=tof12_y(tof12_i)  
       if (ytofpos(1).lt.100)  yhelp=ytofpos(1)  
   
       IF (tof11_i.GT.none_find.AND.abs(yhelp).lt.100) THEN  
   
          i = tof11_i  
          if (tof11(left,i,iadc).lt.3786) then  
 c          if (adc(ch11a(i),hb11a(i)).lt.4095) then  
             tof11(left,i,iadc) = tof11(left,i,iadc)*cos(theta13)  
             xkorr = atten(left,11,i,yhelp)  
 c            write(40+i,*) yhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch11a(i),hb11a(i))=tof11(left,i,iadc)/xkorr  
          endif  
   
          if (tof11(right,i,iadc).lt.3786) then  
 c          if (adc(ch11b(i),hb11b(i)).lt.4095) then  
             tof11(right,i,iadc) = tof11(right,i,iadc)*cos(theta13)  
             xkorr = atten(right,11,i,yhelp)  
 c            write(40+i,*) yhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch11b(i),hb11b(i))=tof11(right,i,iadc)/xkorr  
          endif  
       ENDIF  
   
       xhelp=0.  
       if (tof11_i.GT.none_find) xhelp=tof11_x(tof11_i)  
       if (xtofpos(1).lt.100)  xhelp=xtofpos(1)  
   
       IF (tof12_i.GT.none_find.AND.abs(xhelp).lt.100) THEN  
   
          i = tof12_i  
          if (tof12(left,i,iadc).lt.3786) then  
 c          if (adc(ch12a(i),hb12a(i)).lt.4095) then  
             tof12(left,i,iadc) = tof12(left,i,iadc)*cos(theta13)  
             xkorr = atten(left,12,i,xhelp)  
 c            write(50+i,*) xhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch12a(i),hb12a(i))=tof12(left,i,iadc)/xkorr  
          endif  
   
          if (tof12(right,i,iadc).lt.3786) then  
 c          if (adc(ch12b(i),hb12b(i)).lt.4095) then  
             tof12(right,i,iadc) = tof12(right,i,iadc)*cos(theta13)  
             xkorr = atten(right,12,i,xhelp)  
 c            write(50+i,*) xhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch12b(i),hb12b(i))=tof12(right,i,iadc)/xkorr  
          endif  
       ENDIF  
   
 C-----------------------------S2 --------------------------------  
   
       xhelp=0.  
       if (tof22_i.GT.none_find) xhelp=tof22_x(tof22_i)  
       if (xtofpos(2).lt.100)  xhelp=xtofpos(2)  
1056    
       IF (tof21_i.GT.none_find.AND.abs(xhelp).lt.100) THEN  
1057    
1058           i = tof21_i  C------------------------------------------------------------------
1059           if (tof21(left,i,iadc).lt.3786) then  C------------------------------------------------------------------
1060  c          if (adc(ch21a(i),hb21a(i)).lt.4095) then  C-------angle and ADC(x) correction: moved to new dEdx routine
1061              tof21(left,i,iadc) = tof21(left,i,iadc)*cos(theta13)  C------------------------------------------------------------------
1062              xkorr = atten(left,21,i,xhelp)  C------------------------------------------------------------------
 c            write(60+i,*) xhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch21a(i),hb21a(i))=tof21(left,i,iadc)/xkorr  
          endif  
   
          if (tof21(right,i,iadc).lt.3786) then  
 c          if (adc(ch21b(i),hb21b(i)).lt.4095) then  
             tof21(right,i,iadc) = tof21(right,i,iadc)*cos(theta13)  
             xkorr=adcx21(right,i,1)*exp(xhelp/adcx21(right,i,2))  
             xkorr = atten(right,21,i,xhelp)  
 c            write(60+i,*) xhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch21b(i),hb21b(i))=tof21(right,i,iadc)/xkorr  
          endif  
       ENDIF  
   
   
       yhelp=0.  
       if (tof21_i.GT.none_find) yhelp=tof21_y(tof21_i)  
       if (ytofpos(2).lt.100)  yhelp=ytofpos(2)  
   
       IF (tof22_i.GT.none_find.AND.abs(yhelp).lt.100) THEN  
   
          i = tof22_i  
          if (tof22(left,i,iadc).lt.3786) then  
 c          if (adc(ch22a(i),hb22a(i)).lt.4095) then  
             tof22(left,i,iadc) = tof22(left,i,iadc)*cos(theta13)  
             xkorr = atten(left,22,i,yhelp)  
 c            write(70+i,*) yhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch22a(i),hb22a(i))=tof22(left,i,iadc)/xkorr  
          endif  
   
          if (tof22(right,i,iadc).lt.3786) then  
 c          if (adc(ch22b(i),hb22b(i)).lt.4095) then  
             tof22(right,i,iadc) = tof22(right,i,iadc)*cos(theta13)  
             xkorr = atten(right,22,i,yhelp)  
 c            write(70+i,*) yhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch22b(i),hb22b(i))=tof22(right,i,iadc)/xkorr  
          endif  
       ENDIF  
   
 C-----------------------------S3 --------------------------------  
   
       yhelp=0.  
       if (tof32_i.GT.none_find) yhelp=tof32_y(tof32_i)  
       if (ytofpos(3).lt.100)  yhelp=ytofpos(3)  
   
       IF (tof31_i.GT.none_find.AND.abs(yhelp).lt.100) THEN  
   
          i = tof31_i  
          if (tof31(left,i,iadc).lt.3786) then  
 c          if (adc(ch31a(i),hb31a(i)).lt.4095) then  
             tof31(left,i,iadc) = tof31(left,i,iadc)*cos(theta13)  
             xkorr = atten(left,31,i,yhelp)  
 c            write(80+i,*) yhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch31a(i),hb31a(i))=tof31(left,i,iadc)/xkorr  
          endif  
   
          if (tof31(right,i,iadc).lt.3786) then  
 c          if (adc(ch31b(i),hb31b(i)).lt.4095) then  
             tof31(right,i,iadc) = tof31(right,i,iadc)*cos(theta13)  
             xkorr = atten(right,31,i,yhelp)  
 c            write(80+i,*) yhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch31b(i),hb31b(i))=tof31(right,i,iadc)/xkorr  
          endif  
       ENDIF  
   
       xhelp=0.  
       if (tof31_i.GT.none_find) xhelp=tof31_x(tof31_i)  
       if (xtofpos(3).lt.100)  xhelp=xtofpos(3)  
   
       IF (tof32_i.GT.none_find.AND.abs(xhelp).lt.100) THEN  
   
          i = tof32_i  
          if (tof32(left,i,iadc).lt.3786) then  
 c          if (adc(ch32a(i),hb32a(i)).lt.4095) then  
             tof32(left,i,iadc) = tof32(left,i,iadc)*cos(theta13)  
             xkorr = atten(left,32,i,xhelp)  
 c            write(90+i,*) xhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch32a(i),hb32a(i))=tof32(left,i,iadc)/xkorr  
          endif  
   
          if (tof32(right,i,iadc).lt.3786) then  
 c          if (adc(ch32b(i),hb32b(i)).lt.4095) then  
             tof32(right,i,iadc) = tof32(right,i,iadc)*cos(theta13)  
             xkorr = atten(right,32,i,xhelp)  
 c            write(90+i,*) xhelp,xkorr  
             xkorr=xkorr/hepratio  
             adctof_c(ch32b(i),hb32b(i))=tof32(right,i,iadc)/xkorr  
          endif  
       ENDIF  
1063    
1064  C--------------------------------------------------------------------  C--------------------------------------------------------------------
1065  C----------------------calculate Beta  ------------------------------  C----------------------calculate Beta  ------------------------------
# Line 1578  C         if ((betatof_a(i).gt.-1.5).and Line 1432  C         if ((betatof_a(i).gt.-1.5).and
1432  C            icount= icount+1  C            icount= icount+1
1433  C            if (i.le.4) w_i=1./(0.13**2.)  C            if (i.le.4) w_i=1./(0.13**2.)
1434  C            if ((i.ge.5).and.(i.le.8)) w_i=1./(0.16**2.)  C            if ((i.ge.5).and.(i.le.8)) w_i=1./(0.16**2.)
1435  C           if (i.ge.9) w_i=1./(0.25**2.)     ! to be checked  C         if (i.ge.9) w_i=1./(0.25**2.)     ! to be checked
1436  C            sxw=sxw + betatof_a(i)*w_i  C            sxw=sxw + betatof_a(i)*w_i
1437  C            sw =sw + w_i  C            sw =sw + w_i
1438  C         endif  C         endif
# Line 1608  c      write(*,*) ytofpos Line 1462  c      write(*,*) ytofpos
1462  c      write(*,*) xtr_tof  c      write(*,*) xtr_tof
1463  c      write(*,*) ytr_tof  c      write(*,*) ytr_tof
1464                
1465   100  continue  c 100  continue
1466            continue
1467    
1468  C  C
1469        RETURN        RETURN
# Line 1752  C k2 constant is taken to be the standar Line 1607  C k2 constant is taken to be the standar
1607          REAL  a1,a2          REAL  a1,a2
1608          INTEGER jj          INTEGER jj
1609    
1610    c get rid of warnings EMILIANO
1611            i = 0
1612            slope = 0
1613            offset = 0
1614            none_find = 0
1615            none_ev = 0
1616            adc_ev = 0
1617            tdc_ev = 0
1618            iadc = 0
1619            itdc = 0
1620            right = 0
1621            left = 0
1622            tof12_y(1) = tof12_y(1)
1623            tof11_x(1) = tof11_x(1)
1624            tof21_y(1) = tof21_y(1)
1625            tof22_x(1) = tof22_x(1)
1626            tof32_y(1) = tof32_y(1)
1627            tof31_x(1) = tof31_x(1)
1628    c get rid of warnings
1629    
1630  C-----------------------------------------------------------  C-----------------------------------------------------------
1631  C--- get data  C--- get data
1632  C-----------------------------------------------------------  C-----------------------------------------------------------
# Line 2135  C*************************************** Line 2010  C***************************************
2010          DATA itop /1,1,2,2,3,3,4,4,1,1,2,2/          DATA itop /1,1,2,2,3,3,4,4,1,1,2,2/
2011          DATA ibot /5,6,5,6,5,6,5,6,3,4,3,4/          DATA ibot /5,6,5,6,5,6,5,6,3,4,3,4/
2012    
2013    
2014    c get rid of warnings EMILIANO
2015            slope = 0
2016            offset = 0
2017            none_find = 0
2018            none_ev = 0
2019            adc_ev = 0
2020            tdc_ev = 0
2021            iadc = 0
2022            itdc = 0
2023            right = 0
2024            left = 0
2025            tof12_y(1) = tof12_y(1)
2026            tof11_x(1) = tof11_x(1)
2027            tof21_y(1) = tof21_y(1)
2028            tof22_x(1) = tof22_x(1)
2029            tof32_y(1) = tof32_y(1)
2030            tof31_x(1) = tof31_x(1)
2031    c get rid of warnings
2032    
2033  C====================================================================  C====================================================================
2034    
2035          tof11_i = hitvec(1)          tof11_i = hitvec(1)
# Line 2308  c        quality = sw Line 2203  c        quality = sw
2203    
2204  C****************************************************************************  C****************************************************************************
2205    
   

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.13

  ViewVC Help
Powered by ViewVC 1.1.23