new brat version, new bdst version

From: Djamel Ouerdane (ouerdane@nbi.dk)
Date: Mon Mar 03 2003 - 13:43:37 EST

  • Next message: Djamel Ouerdane: "Commitment to CVS"
    Hi all,
    
    As I warned more or less clearly earlier, I have updated brat quite a lot 
    in order to improve some TOF pid efficiency. The version is now 2.7.8, the 
    tag is BRAT-2-7-8. The bdst package has also been updated to contain some 
    missing information, the version is now 1.0.3, the tag is BDST-1-0-3 
    (configure will abort if the version of brat is older).
    
    Now that this is done, my task on improving the soft is OVER for the next
    two months (I spent two weeks doing data analyses, checks, bug fixes and
    so on) so unless I introduced stupid bugs, in which case, I'll be glad to
    fixe them, I now want to focus on the end of my PhD stuff (thesis). Peter
    and I are gonna rebuild quickly the DSTs (some calibrations need to be
    redone but with the tools mentioned below, it's gonna be fast) with a
    priority on the FFS data (the y ~ 2 stuff is still shaky).
    
    If you use this version of brat and bdst and notice some weird stuff 
    despite the indications I give, tell me asap. I haven't noticed any weird 
    behaviour (I recompiled from scratch, applied some checks up to DSTs but 
    who knows).
    
    Ciao
    Djam
    
    ---------------------------------------------
    
    Changes to brat :
    -----------------
    
    * data/calib  : BrTofCalibration
      enabled ADC gap for TOF1, TOF2 and TOFW
    
    * data/params : BrDetectorParamsTof
      added a lot of methods dealing with the geometry
      of a 3D line crossing a slat. This is mostly relevant
      for H1 and H2 which have a more subtle configuration
      than I naively thought.
    
    * data/track : BrDetectorTrack
      added non persistent member fTmpPos (vector3D) to ease
      corrections. I use it a lot for T2 since it affects the
      track-tof matching for the first slats. 
    
    * data/track : BrSpectrometerTracks
      added a member in BrFsTrack (partial path) and
      modified the pointed slat information. The pointed
      slat member can now contain 2 slat candidates
      GetPointedSlat() or GetBestPointedSlat() returns the best
      GetSecondPointedSlat() returns the 2nd
      (internally, there was no need to add a new member)
    
    * scripts/calib/tof : added OfflineTofCal.C
      I had this macro lying around for quite some time but I thought
      I'd share it with others. Usually, a tof calibration job takes some time
      especially if one starts from local tracking up to calibration
      histograms. This macro is for the impatient like me : I usually have 
      a set of shell scripts generating LSF scripts for each sequence of 
      a run. Using the farm this way is really cool (if you don't drown it
      with 1000s of jobs). At the end, I merge all histogram files and I use
      this macro for "offline" calibration. Load it in bratroot. Then methods 
      are : 
             adcGap(<...>)
             adcGain0(<...>)
             timeOffset(<...>)
             deltaDelay(<...>)
      depending on your histogram file of course, you should pick up the right 
      method. You end up with an ascii file loadable for commitment 
      (standard procedure). In some cases, you also have a display of the 
      results but this is not finished for all cal.
    
      The slewing is not included since the procedure is not histogram based.
      (Trick : I wrote a histo merging program, based of the bm stuff and
      root macro tutorial, called mergeHistFile. You can pick it up from
      brahms_app/do_app/track. It also handles ntuples but _not_ complicated 
      trees like e.g. DSTs)
    
    
    * modules/calib/tof :
    
      adc gain  : changed histogramming and simplified the peak finder
    
      adc gap   : added Event & Finish methods. Works fine provided
      that you go through a LOT of data (20 runs at least)
    
      tdc delay : since all slats are made of the same material and
      since I saw that H1 and H2 showed the same effective
      speed of light average, I allow the delay calibration to use
      a constant speed of light. If you set the min and max cscint                  
      before module initialization to the same value, this value will be used
      as is for calibrating the delay between the bottom and top tubes 
      The value I use for H1 and H2 is 11.5 cm/ns. Since T5 and T2
      agreed, I assumed that this value was right.
    
      time offset & slewing & delay :
      I am more strict with the hit selection. I remove
      multiple hits found by the matching module and I 
      set a default max energy loss of 2 de_MIP (mostly relevant for the
      time offset and delay) 
    
    * modules/pid : BrTofPidModule
      added some more stuff in the ntuple, corrected some forgotten
      check of the time 0 type (mrs counter)
    
    * modules/rdo : BrTofRdoModule
      added ntuple for track-tof matchings,
      added SetUseAdcGap(<bool>)
      (H1 and H2 calibrations are in the DB, use it safely
       TOFW is not yet)
    
    * modules/track/tpc :
      added detectorTrack->SetTmpPos when copied from TpcTrack
    
    * modules/track/combine :
      BrModuleMatchTrack : fixed a missing if (HistOn())
    
      BrFfsTrackingModule: added a TSpline3 member for
      T2 position correction. You can use it by configuring
      it like that : ffsModule->UseT2XCorrection();
      It will pick up some data from an ascii file in
      <install>/share/brat/params called dxT2T3.dat
      I also changed the TOF pointing. It is now more reliable.
    
      BrBfsTrackingModule : same thing for the TOF stuff
      BrFsTrakingModule   : keep track of new TOF stuff
    
      BrDcEnhancement : apparently, nobody tried this module
      without histos booked...fixed it.
    
      BrMrsTrackingModule : save the intersection with the TOF
      panels in the local coordinate frame (was global before,
      which was a bit annoying...). Note that the mrs track has
      a pointed panel member if in doubt.
    
    * modules/util : added 2 new modules (did not remove the old
      yet, I'll give some time for people to try the new modules),
      namely BrFfsTof1MatchingModule
             BrFsTof2MatchingModule.
      They are based on the new track-TOF pointing (read comments at
      top of implementation file). Added ntuples too.
    
      BrMrsTofMatchingModule : updated according to mrs tracking module
      tof pointing. 
    	
    * modules/vertex : BrBbVertexModule
      In some cases, left tube # 1 returned a NaN tof. A bit weird...
      so I ignore tubes returning such odd thing in the time
      average loop.
    
    
    -----------
    
    Changes to bdst
    ---------------
      Basically, I add more information. Now the TOF hit position is
      added, the track intersection with the TOF slats is added (and not the 
      difference dx and dy like before). I also save the top and bottom energy
      of a tof hit and the multiple tof-track matchings.
    
      Drawback : this version of bdst (1.0.3) is no more compatible with
      the user's macros and classes (BdstFsAna, BdstMrsAna, Claus's DST reader
      and other user's code unknown to me). If you use DST 1.0.3, you'd better
      modify the DST reader you use and subsequent cut variables, etc.
      To make it not so painful, open a DST, and use T1->MakeClass("whatever")
      you'll get the latest branches and leaves in order.
    
    ------------------------------------------------------------------------
    
    
    -- 
    Djamel Ouerdane ------------------------------------------o
    |  Niels Bohr Institute      |  Home:                     |
    |  Blegdamsvej 17, DK-2100 Ø |  Jagtvej 141 2D,           |
    |  Fax: +45 35 32 50 16      |  DK-2200 Copenhagen N      |
    |  Tel: +45 35 32 52 69      |  +45 35 86 19 74           |
    |                  http://www.nbi.dk/~ouerdane            |
    |                  ouerdane@nbi.dk                        |
    o---------------------------------------------------------o
    


    This archive was generated by hypermail 2.1.5 : Mon Mar 03 2003 - 13:44:16 EST