/[PAMELA software]/DarthVader/TrackerLevel2/src/F77/reductionflight.f
ViewVC logotype

Diff of /DarthVader/TrackerLevel2/src/F77/reductionflight.f

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

revision 1.5 by pam-fi, Tue Sep 5 12:52:21 2006 UTC revision 1.6 by pam-fi, Thu Sep 28 14:04:40 2006 UTC
# Line 18  Line 18 
18        include 'common_reduction.f'        include 'common_reduction.f'
19        include 'calib.f'        include 'calib.f'
20                
21          data eventn_old/nviews*0/
22    
23        integer ierror        integer ierror
24        ierror = 0        ierror = 0
25    
# Line 28  Line 30 
30  c      call stripmask   !called later, after CN computation  c      call stripmask   !called later, after CN computation
31        call init_level1        call init_level1
32    
33        good1 = good0  c      good1 = good0
34    c--------------------------------------------------
35    c     check the LEVEL0 event status for missing
36    c     sections or DSP alarms
37    c     ==> set the variable GOOD1(12)
38    c--------------------------------------------------
39          do iv=1,nviews
40             if(DSPnumber(iv).gt.0.and.DSPnumber(iv).le.12)then
41    c           ------------------------
42    c           GOOD
43    c           ------------------------
44                GOOD1(DSPnumber(iv))=0                  !OK
45    c           ------------------------
46    c           CRC error
47    c           ------------------------
48                if(crc(iv).eq.1) then
49                   GOOD1(DSPnumber(iv)) = 2
50                   goto 18 !next view
51                endif
52    c           ------------------------
53    c           online-software alarm
54    c           ------------------------
55                if(
56         $           fl1(iv).ne.0.or.
57         $           fl2(iv).ne.0.or.
58         $           fl3(iv).ne.0.or.
59         $           fl4(iv).ne.0.or.
60         $           fl5(iv).ne.0.or.
61         $           fl6(iv).ne.0.or.
62         $           fc(iv).ne.0.or.
63         $           DATAlength(iv).eq.0.or.
64         $           .false.)then
65                   GOOD1(DSPnumber(iv))=3
66                   goto 18
67                endif
68    c           ------------------------
69    c           DSP-counter jump
70    c           ------------------------
71                if(
72         $           eventn_old(iv).ne.0.and. !first event in this file
73         $           eventn(iv).ne.1.and.     !first event in run
74         $           good_old(DSPnumber(iv)).ne.0.and. !previous event corrupted
75         $           .true.)then
76    
77                   if(eventn(iv).ne.(eventn_old(iv)+1))then
78                      GOOD1(DSPnumber(iv))=4
79                      goto 18
80                   endif
81    
82                endif
83    c           ------------------------
84     18         continue
85             endif
86          enddo
87    
88          ngood = 0
89          do iv = 1,nviews
90             eventn_old(iv) = eventn(iv)
91             good_old(iv)   = good1(iv)
92             ngood = ngood + good1(iv)
93          enddo
94    c      if(ngood.ne.0)print*,'* WARNING * LEVEL0 event status: '
95    c     $     ,(good1(i),i=1,nviews)
96  c--------------------------------------------------  c--------------------------------------------------
97  c     read the variable DATATRACKER from LEVEL0  c     read the variable DATATRACKER from LEVEL0
98  c     and fill the variable ADC (inverting view 11)  c     and fill the variable ADC (invertin view 11)
99  c--------------------------------------------------  c--------------------------------------------------
100        call filladc(iflag)        call filladc(iflag)
101        if(iflag.ne.0)then        if(iflag.ne.0)then
102          good1=0  c        good1=0!<<<<<<<<<<<<<<<
103  c       if(DEBUG)print*,'event ',eventn(1),' >>>>>  decode ERROR'  c       if(DEBUG)print*,'event ',eventn(1),' >>>>>  decode ERROR'
104              ierror = 220           ierror = 220
105          goto 200  c        goto 200
106    c         print*,'filladc error'
107        endif        endif
108    
109  c--------------------------------------------------  c--------------------------------------------------
# Line 115  ccc Line 180  ccc
180             call save_cluster(iv)             call save_cluster(iv)
181          else          else
182             fshower(iv) = 1             fshower(iv) = 1
183               GOOD1(DSPn) = 11
184          endif          endif
185        enddo                     ! end loop on views        enddo                     ! end loop on views
186        do iv=1,nviews        do iv=1,nviews
# Line 129  C     come here if GOOD1=0 Line 195  C     come here if GOOD1=0
195  C     or the event has too many clusters  C     or the event has too many clusters
196  C---------------------------------------------  C---------------------------------------------
197   200  continue   200  continue
198    
199          ngood = 0
200          do iv = 1,nviews
201             ngood = ngood + good1(iv)
202          enddo
203          if(ngood.ne.0)print*,'* WARNING * LEVEL1 event status: '
204         $     ,(good1(i),i=1,nviews)
205  c------------------------------------------------------------------------  c------------------------------------------------------------------------
206  c  c
207  c     closes files and exits  c     closes files and exits
# Line 156  c--------------------------------------- Line 229  c---------------------------------------
229        include 'level1.f'        include 'level1.f'
230        include 'level0.f'        include 'level0.f'
231    
232        good1 = 0  c      good1 = 0
233          do iv=1,12
234             good1(iv) = 1 !missing packet
235          enddo
236        nclstr1 = 0        nclstr1 = 0
237        totCLlength = 0        totCLlength = 0
238        do ic=1,nclstrmax        do ic=1,nclstrmax
# Line 253  c     X views have 1018 strips instead o Line 329  c     X views have 1018 strips instead o
329              first=first+3              first=first+3
330              last=last-3              last=last-3
331           endif           endif
332    
333           do is=first,last       !loop on strips in each ladder           do is=first,last       !loop on strips in each ladder
334    
335              if(is.le.iseed+1) goto 220              if(is.le.iseed+1) goto 220
336  *******************************************************  *******************************************************
337  *     Elena 08/2006  *     Elena 08/2006
338  * QUESTA PARTE NON E` ADEGUATA per cluster con grossi rilasci di carica  * QUESTA PARTE NON E` ADEGUATA per cluster con grossi rilasci di carica
339  * perche` salva molte volte lo stesso cluster  * perche` salva molte volte lo stesso cluster
340  * (salvo il cluster rispetto al massimo e basta...)  * (salvo il cluster rispetto al primo massimo e basta...)
341  *******************************************************  *******************************************************
342  c$$$c-----------------------------------------  c$$$c-----------------------------------------
343  c$$$c     after a cluster seed as been found,  c$$$c     after a cluster seed as been found,
# Line 300  c$$$     $              /sigma(iv,nvk(it Line 378  c$$$     $              /sigma(iv,nvk(it
378  c$$$                  itemp=itemp+1  c$$$                  itemp=itemp+1
379  c$$$                  if(itemp.eq.last) goto 230 !stops if reaches last strip  c$$$                  if(itemp.eq.last) goto 230 !stops if reaches last strip
380  c$$$               enddo            ! of the ladder  c$$$               enddo            ! of the ladder
381                 do while(value(itemp).le.value(itemp+1))                 do while(
382         $                   value(itemp).le.value(itemp+1)
383         $              .and.value(itemp+1).gt.clseedcut(itemp+1))
384                    itemp=itemp+1                    itemp=itemp+1
385                    if(itemp.eq.last) goto 230 !stops if reaches last strip                    if(itemp.eq.last) goto 230 !stops if reaches last strip
386                 enddo            ! of the ladder                 enddo            ! of the ladder

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6

  ViewVC Help
Powered by ViewVC 1.1.23