Agendas for 12GeV software meetings
Next JLab Software Review will be Nov 25 and 26th.
Call in using phone number 866-740-1260 with code 1150811.
Login into www.readytalk.com to view presentations.
Biweekly meetings are held at 10am in L210.
The next meeting is on Nov 4th
Oct 7th 2013
- Ahmed presented his work on the HMS Cerenkov. The main difference in the raw data is with events that have no hit in one of the PMTS. Slides of presentation
- Vardan discussed that in the ENGINE the "plus" and "minus" designation of the shower PMTs is opposite of how it is done in HCANA. In HCANA the "plus" and "minus" line up with the +Y direction in the focal plane which is the preferred way.
- Steve said that Ole was planning on a Hall A software workshop in December in conjunction with the Hall A meeting. We decided to make it a joint workshop.
- The Nov 25 and 26th software review will have a short 15 minute presentation in the morning ( most likely by Mark Jones) and then an afternoon breakout session. The format of the breakout session is not finalized, but the reviewers are interested in user's response to the software. Have contacted Eric Christy, Gabi Niculescu, Ahmad Zafar and Ed Brash about being part of group that the reviewers could question. Maybe Gabi could make a short presentation giving details about the progress of HCANA. There will be another meeting with Rolf to firm up the agenda.
- The next meeting will be Nov 4th.
Sept 23rd 2013
Sept 9th 2013
- Mark Jones made comparisons between HCANA and ENGINE for drift chamber focal plane quantities.
- Mark Jones updated the "mkj" branch of the ENGINE git repository so a row wise ntuple of the drift chamber quantities is written. Easy to add more DC variables or other detectors. See wiki page Analyzer/Comparisons for more info.
- Vardan made progress with the shower and tracking
- Ed Brash add EVIO 4 to PODD. Needs to discuss with Ole to make it official.
Hall C Summer Workshop 2013
Aug 6th 2013
- Vardan presented comparisons of ENGINE to HCANA for run 52949.
- Ed Brash is starting to look into updating PODD to use EVIO v4.0 .
- Mark set up git repositories for the ENGINE and replay to help make ENGINE and HCANA comparisons. See the Analyzer/Comparisons wiki page
July 23th 2013
This meeting was cancelled. saw notes that some tracking code has been ported from the ENGINE into hcana. Drift chamber stubs are linked to make tracks. The code is mostly untested, but Mark has done some bug fixing. The ability to replicate the histograms in the ENGINE needs to be added. The focal plane rays from the tracking fit (x, y, xp, yp) is calculated and can be seen in 2d histograms by running "tracking.C" after analyzing a run with "hodtest.C". All the new code is in the develop branch.
July 9th 2013
- Vardan has been working on the calo energy sum. Overall agreement with ENGINE but not precise. He is investigating.
- Steve has made progress with HMS tracking. One can checkout the latest version of the develop branch.
- Ole has started working on having PODD do parallel processing.
- Ed Brash has worked using SCONS instead of the makefile as the build system for the code. One advantage is it uses Python for the script which makes it easier to read the scripts. Also integrates well with application frameworks like Eclipse.
June 25th 2013
Cancelled
June 11th 2013
- Vardan stated that he had gotten agreement for the HMS calorimeter between the ENGINE and HCANA for the hit maps and the energy sum histograms.
- Steve has updated the develop branch with his latest drift chamber code. So those interest in checking it should pull it from the repository.
May 28th 2013
May 7th 2013
Notes about port of drift chamber code to hcana. saw has ported part of the HMS tracking code to C++. The code finds space points, essentially implementing all of h_pattern_recognition. This effort is mostly done to try to figure out the best class/object structure to use. No histogramming for the space points has been done yet.
The classes involved in the drift chamber tracking are:
- THcDC
- Class for the whole drift chamber package. This is what is passed to AddDetector in a driver script. This class instantiates the 12 planes, then instantiates two chambers. Each chamber is passed pointers to the plane objects that belong to it.
- THcDriftChamber
- A single drift chamber (6 planes). Concatenates the lists of hits from each plane into one big list. The space point finding is done here using the chamber wide hit list.
- THcDriftChamberPlane
- Class for a single plane. The hits for a plane are gathered here. The object gathers its plane specific geometry parameters by asking THcDC
- THcDCHit
- Drift chamber hit class. Holds rawtime, corrected time, does time to distance conversion
- THcDCWire
- Wire class. One for each wire, holds wire number, position, time offset, pointer to time to distance function
- THcDCTimeToDistConv
- Generic time to distance conversion
- ThcDCLookupTTDConv
- Specific implementation of time to distance using lookup table
- THcRawDCHit
- Raw TDC hits. Filled by decoder. THcDriftChamberPlane sorts through these hits.
Some questions. Is THcDriftChamber the right place to find space points? Should the hits be decoded in THcDriftChamber instead of THcDriftChamberPlane? Putting of stubs together to make tracks will done in THcDC. How do we pass the space points or the stubs from the chamber class to the package class?
Apr 16th 2013
- Notes from Gabi: hcana focal plane times and start time update.
- After further (quite a lot, unfortunately :() debugging I finally got Engine and hcana to agree! as you can see below (details below the figures):
hcana and engine comparison for HMS Hodoscope focal plane times (fptime)
hcana and engine comparison for HMS Hodoscope focal plane times (fptime)
- The main problems found and fixed between the fptimes shown 2 weeks ago and the ones shown above were:
- adding an extra layer of indices (indexes?) to go between the list of hits in an event and the actual paddle # in a plane. Steve had one in his pedestal calculation but I did not pay enough attention!
- the old counting from 0 (zero) versus counting from 1 (one) problem. For backward-compatibility reasons there are places in hcana where we were counting (still) from 1. Those are no longer there, not in the hodoscope part of the code.
- Both of these are fixed and the code is committed to the repository.
- Outstanding issues/future plans:
- I did event by event comparisons of fp and start times and the engine and hcana calculations agree to at least six significant figures.
- The reason for which the histograms above do not match 100% with one another is that engine and hcana disagree on which events ought to be analyzed:
- engine skips all events b4 the first scalar event (to have a good charge integration one would think). If there is a similar capability in podd I was not able to find it yet.
- engine takes a broader view of the events to be analyzed (i.e. both hms singles and coincidence in this case), whereas hcana for now wants to treat them separate. This and the previous point are (easily) fix-able once we flesh out the THcAnalyzer class.
- because hcana calculates fptimes separately for each plane (as it should, one would argue) the mechanism of rejecting "out-of-time" hits based on average hit times does not work as well. There is no easy fix for this but I do not anticipate this to be a problem. One can get a similar result by implementing a method of rejecting fptimes (as opposed to individual time hits) in the THcHodoscope class. This is on my "to-do" list.
- Also on the "to-do" list are computing beta_notrack (for cosmic ray rejection) - this should be straightforward, and implementing the "actual" beta calculation (most likely in the "FineProcess" method) for the hits that actually match a reconstructed track.
- The main problems found and fixed between the fptimes shown 2 weeks ago and the ones shown above were:
Apr 2nd 2013
- Ole made upgrades to the Hall A code related to the database.
- Steve has been working on the drift chamber code.
- Notes from Gabi
- Modified code to read hhodo plane names from a file as per Steve's instructions
- verified that both engine and hcana use the same hhodo.param file (which they did not two weeks ago but now they do)
- talked (this is important) Ioana into agreeing to be the "test pilot" for engine/hcana comparisons.
- The focal plane times look different (quite a bit different) between the engine run and the hcana run on the same data, w/ the same parameters.
- what we call start time is the average of these focal plane times so we need to get these to agree before the start time becomes meaningful.
- the hcana also shows more entries - I have the nagging feeling that it counts non-physics events in there
- I'm in the process of going line-by-line to see where the two calculations diverge. Hopefully it is just a typo on my part that needs fixing. (looking at the s1xfptime one can argue that probably I added/subtracted a correction term whereas I was really supposed to subtract/add).
Mar 19th 2013
- Gabi is investigating the Hstart time. Not the same distribution between the ENGINE and HCANA.
- The latest commit in the hcana develop branch will compute DC drift time and distances. The start time from the hodoscope and drift maps from the parameter file are used.
Mar 5th 2013
Feb 19th 2013
- Gabi is almost finished with the conversion of h_trans_scin.f to get a start time for wire chambers. Hope to push to Steve by end of week.
Feb 4th 2013
- Gabi has been working on the scintillator code.
- Steve encouraged Gabi to commit his code, so that Steve can continue on with DC.
Jan 22nd 2013
Jan 8th 2013
- Steve will look into merging latest Shower code into main git repo
- Contact Gabi about putting scintillator code in the git repo
- Steve will make outline of Fortran tracking code
Dec 18th
- Quick hodoscope coding work update in hcana
- code correctly reads all hodoscope constants from hhodo.pos and hhodo.param (see hhodo.pos - link does not work at the moment, sorry!).
- AFAIK tell there are 4 types of variables: singular variables (one per hodoscope), simple doubles and ints (one per plane), arrays (indexed with the # of paddles), "padded arrays" (i.e. 4x16)
- singular vars and "padded arrays" went in THcHodoscope, the others went into THcScintillatorPlane
- because h_reconstruction.f and h_tof.f explicitly depend on tracking (see links...) this is as far as I can push this without rewriting a (substantial portion) of the Fortran code.
- We really need to get the tracking going as most/all other detectors depend on tracking being done first! I suggest I start doing some of that.
- To get started with tracking need to better understand the flow and interaction between the drift chamber track and other detectors in the Fortran analyzer. Gabi and Mark will work on this.
- Steve is work on creating a param file which has parameters which are hardcoded in the Fortran analyzer but can be in a database for HCANA.
- Gabi found a bug in the reading of arrays from param files in HCANA. When an parameter array is listed twice, the Fortran Analyzer would overwrite the array. But in HCANA the array is expanded to include the new elements. Steve will look into changing HCANA so it behaves like the Fortran Analyzer.
Dec 12th
Hall A & C data analysis workshop
Nov 27th 2012
Nov 13th 2012
Oct 16th 2012
- Steve Wood working on aerogel. To see what Steve is up to check his branch at https://hallcweb.jlab.org/git/?p=hcana.git;a=shortlog;h=refs/heads/sawwork
- Ole made a minor change to the Makefile for the hcana. To see change go to https://hallcweb.jlab.org/git/?p=hcana.git;a=summary
- Ole talked about setting up a configuration builder to handle different platforms like Macs. Discussed whether it was useful to use CMAKE or AUTOCONF , but decided that a simpler approach that is used for building ROOT could be used.
- Discussed static analysis code analyzers for C++. If anyone has experience with these programs let Steve or Mark know what you prefer. Found the program cppcheck at http://cppcheck.sourceforge.net/ which seems useful.
- On Dec 12th Hall A is having a software workshop. Planning to turn it into a joint A/C software workshop. If you have ideas for talks or topics to be discussed send them to Steve (saw@jlab.org) or Ole (ole@jlab.org).
Oct 2nd 2012
- Summary of the meeting.
Sept 18th 2012
- Final report of the 12 GeV Software review.
Sept 3, 2012
- Discussed DBRequest class
Aug 21, 2012
Tentative Agenda
- Gabriel Niculescu/Keith Thrasher: Hodoscope documentation work and plans
- S. Wood: Recent hcana updates. (DC hitmap, Annoted hodtest.C example script changes)
- Simon Zhamkochyan: Shower counter code update
- Brad Sawatzky: Git hosting status?
Aug 7, 2012
Summary of meeting.
July 10, 2012
Discussed software issues. When looking in detail , a discrepancy between the ENGINE and the new C++ code for number of raw scintillator and calorimeter.
June 26, 2012
Presentation by Simon Zhamkochyan on his work on the shower detector in the C++ analyzer.
June 12, 2012
Short set of slides to introduce GIT , a version control software.
May 29, 2012
Summary of meeting
May 15, 2012
HMS calorimeter software documentation
May 1, 2012
- Summary of meeting
April 17, 2012
- File:Hms calo coding.pdf Vardan Tadevosyan's overview of HMS calorimeter software documentation.
April 3, 2012
- Slides on the Analysis workflow by John Arrington for the 12 GeV software review.
- Draft of a Research Management Plan for the Hall C 12 GeV Detector Software.
- Summary of meeting
March 20, 2012
- First draft of milestones for the JLab Software Review. Send comments and corrections to Mark Jones (jones@jlab.org).
- File:Software Decoding.pdf. Discussion of building hit lists in Root analyzer by Steve Wood.
- Presentation by Gabi Niculescu. Slides 3-5 are outline for talk at the JLab Software Review. Beginning with slide 7 is a discussion of strategy for developing the Hall C C++ analyzer with some specific examples.
- Summary of meeting