[Shms_users] Hall C 12 GeV software update (mailing list & request for additional info)

Brad Sawatzky brads at jlab.org
Mon Aug 22 17:30:24 EDT 2011


Dear all,

 -------- Mailing List for Software Development --------

During the software discussions at the SHMS Detector Working group and
Hall C Summer Workshop I suggested starting a mailing list to provide
a public development forum.

Mark Jones pointed out that there is already a Hall C Software mailing
list in place.  I took a look at the archives and it has seen 3 messages
since July 2009.  Rather than generating a new "12 GeV" list, I
recommend just using that one.  Those interested in development of
online/offline analysis software should sign up using this page:
  https://mailman.jlab.org/mailman/listinfo/hallcsw

I also note that a call for software volunteers in the June 2011 SHMS
Users newsletter points to this wiki page:
  https://hallcweb.jlab.org/wiki/index.php/Hall_c_soft_main
This would also serve as a good reference/documentation center.  Gabi
and John Arrington were tagged as primary contacts for the Software
working group.


 -------- Hall C Analyzer Resources --------

These are a few items that were discussed over the last few days.  I
would like to encourage "folks in the know" to make a post to the
hallcsw at jlab.org mailing list if they can answer/comment on any of these
topics.  Updates to the above wiki would be great too!

  - Documentation for FORTRAN analyzer?
    https://hallcweb.jlab.org/analysis_documentation/
    - Is there anything more current?  Does the build procedure
      indicated here work with the present RHEL5/64bit mix at JLab?
      - Anyone try it with RHEL6 (which is the standard for new builds
        now)?

  - General Documentation for Hall A analyzer can be found here:
    http://hallaweb.jlab.org/podd/
    https://hallaweb.jlab.org/wiki/index.php/Analysis_resources_for_d2n#Hall_A_Analyzer_Documentation
    - Note that this will _not_ decode Hall C data streams by default.

  - Hall C analyzer based on PODD (Hall A analyzer framework)?
    - A written note that gave a general status update would be very
      much appreciated.  I'm not really clear on where things are at.
    - Gabi:  Do you have a CVS or other source tree for your modified
      Hall A analyzer?


 -------- Notes/Suggested Outline for Future Progress --------

Many of these items were discussed at the recent meetings and I thought
it might be of value to put them down for general reference.  Note that
I don't think we really reached a clear consensus at last week's
meetings, so please consider this my "2 cents" and take it for what it's
worth :-)

  Define a few canonical reference CODA runs/dataset that we can use as
  a baseline for development.  Ideally these should be runs from a
  quasi-recent HMS+SOS experiment at a stage where the DAQ was running
  smoothly.
  - e+P elastic data would be best(?) so we know what we should expect
  - reasonable statistics preferred
  - A bundle of 'reference' histograms generated by the FORTRAN analyzer
    would also be great.
  - Some associated documentation on the meta-data needed for decoding
    will also be needed.  This includes crate, slot, module information
    along with ADC and TDC channel map data.  A pointer to the FORTRAN
    engine's input/config files, along with a little documentation on
    the config file format would be sufficient.
  - At some point we'll want to push any new analyzer a little harder
    with some more difficult-to-analyze runs (ie. high luminosity, large
    tracking multiplicity, whatever).  Let's start simple though.


  FORTRAN Engine:
  - Rebuild analyzer on one of the RHEL5/64bit ifarm nodes, replay the
    above reference runs and sanity check the output.
    - It would be great to add a software switch (or just hack up a
      "test" version of the code) to output an event-by-event list of
      tracking information (in particular).  This would allow for a
      quantitative comparison of tracking accuracy and efficiency
      between the 'stock' code and any new software.
  - Update FORTRAN analyzer to support baseline FADC readout.
    - non-blocking, non-pipelined mode; FADCs behave as drop-in
      replacement of FB 1881 ADCs
    - code should also make provision for TDC data arriving in the
      same data block
      - note that, just like conventional F1s and CAEN VME TDCs, this
        will require a 'reference time' correction to be extracted
        from a conventional TDC and applied to the raw data
    - can talk to Brad S. and/or DAQ group for format specs, example
      code, and CODA files with FADC data


  C++ Analyzer:
  - Adapt Hall A raw-decode stage to parse Hall C CODA files.  (DAQ
    folks should know what I mean here.)  
    - I had the impression that this may already be complete?  If so, a
      link to the code would be great!
  - Incorporate the ADC and TDC channel map config files.
    - Simplest approach would be to write a quick translation script to
      convert the Hall C legacy config files to Hall A's DB setup.
    - Adding "proper" parsers to the Hall A code that understand the
      Hall C format wouldn't be too difficult either.
    - NOTE:  The 'database' backend in the Hall A analyzer has be
        long-recognized as a big weakness.  Multiple hacks have been
        implemented to address this -- none are very satisfying.  A
        proper solution would greatly benefit both Halls.  This would be
        a clean, well-defined project for a good student to take on.
  - Start comparing low-level output of the C++ analyzer to the
    legacy FORTRAN results
    - start with raw ADC/TDC comparisons (crate, card, channel), then
      "work up" to calibrated output (Energy, Coincidence timing, etc)
    - compare track reconstruction event-by-event
      - It would be disconcerting if there are significant differences
        between what the "Hall A" tracking algorithms generate and what
        the FORTRAN analyzer ends up with.  I would like to think there
        is minimal special case "magic" in either tracking codes.
    - compare aggregate tracking output
      - efficiencies, momentum distributions, resolutions, etc

-- Brad

-- 
Brad Sawatzky, PhD <brads at jlab.org>  -<>-  Jefferson Lab / Hall C / C111
Ph: 757-269-5947  -<>-  Fax: 757-269-5235  -<>- Pager: brads-page at jlab.org
The most exciting phrase to hear in science, the one that heralds new
  discoveries, is not "Eureka!" but "That's funny..."   -- Isaac Asimov


More information about the Shms_users mailing list