Difference between revisions of "Software"

From GlueXWiki
Jump to: navigation, search
m
 
(114 intermediate revisions by 8 users not shown)
Line 1: Line 1:
This provides a very brief overview of the data to paper processing pipeline.  
+
This page provides a very brief overview of the GlueX-specific software used between recording data and publishing results.
 +
In time, it should become populated with links to more detailed documentation..
  
  
'''Raw data – halld_recon'''
+
'''Databases and other tables''' are described [[HallD Databases|'''''here''''']]. ([mailto:nsj@cmu.edu Naomi], [mailto:sdobbs@fsu.edu Sean], [mailto:davidl@jlab.org David L.])
*Raw data is taken in EVIO file format and processed using programs in halld_recon. (Mark)
+
*Calibration databases are [https://github.com/JeffersonLab/rcdb/wiki RCDB] and [https://github.com/JeffersonLab/ccdb/wiki/ CCDB].
+
*hd_root is used with plugins for event reconstruction, monitoring, calibration and to make REST files (Mark)
+
*REST files are in HDDM format (physics quantities, no detector hit information). (Richard)
+
  
  
'''Simulated data - halld_sim'''
+
'''Raw and reconstructed data – '''[https://github.com/JeffersonLab/halld_recon/wiki '''halld_recon''']
*Simulated data are in HDDM format. (Richard)
+
* <span style="color:orange; font-size:2em">&#9679;</span> Raw data are saved by the [https://coda.jlab.org/drupal/ '''''DAQ system'''''] in the [https://www.jlab.org/evio '''''EVIO'''''] file format (more details [https://coda.jlab.org/drupal/content/event-io-evio '''''here''''']) and processed using programs in [https://github.com/JeffersonLab/halld_recon/wiki '''''halld_recon''''']. (Mark)
*Event generators generates simulated physics data (particle, momentum, track angle) (Simon & Malte)
+
* <span style="color:orange; font-size:2em">&#9679;</span> hd_root is used to analyse '''EVIO''' (see above) and '''REST''' (<span style="color:red">'''THIS NEEDS LINK'''</span>) data with plugins for monitoring, [[Calibrations|'''''Calibrations''''']], and event reconstruction ([mailto:sdobbs@fsu.edu Sean] [calibrations] - & Mark)
*hdgeant4 models the measurements (detector hits) produced by those tracks (Richard)
+
* <span style="color:red; font-size:2em">&#9679;</span> '''REST''' files are in [https://halldweb.jlab.org/wiki/index.php/HDDM_Programmer%27s_Interface '''''HDDM format'''''] which stores reconstructed physics objects (no detector hit information) ([mailto:richard.t.jones@uconn.edu Richard])
*mcsmear models the detector resolution which makes the measurements less exact. (Richard)
+
 
*MCWrapper runs the above on demand. (Sean)
+
 
 +
'''Simulated data  - halld_sim''' ([[Simulation_Software|Overview]])
 +
* <span style="color:green; font-size:2em">&#9679;</span> [[Event generators|'''''Event generators''''']] generate simulated physics data (particle, momentum, track angle) in [[HDDM_Programmer%27s_Interface |'''''HDDM format''''']]. ([mailto:staylor@jlab.org Simon] & [mailto:malte@jlab.org Malte]; [mailto:richard.t.jones@uconn.edu Richard])
 +
* <span style="color:red; font-size:2em">&#9679;</span> [https://github.com/JeffersonLab/HDGeant4 '''''hdgeant4'''''] models the measurements (detector hits) produced by those tracks ([mailto:richard.t.jones@uconn.edu Richard])
 +
* <span style="color:red; font-size:2em">&#9679;</span> mcsmear models the detector resolution to match the MC simulation results with actual measurements. ([mailto:richard.t.jones@uconn.edu Richard])
 +
* <span style="color:orange; font-size:2em">&#9679;</span> [[MCWrapper |'''''MCWrapper''''']] runs all of the above on demand. ([mailto:sdobbs@fsu.edu Sean], [mailto:ppauli@jlab.org Peter])
  
  
 
'''Reaction channel analysis'''
 
'''Reaction channel analysis'''
*ReactionFilter plugin is used to find the events corresponding to a particular reaction to make Analysis Trees. (Beni)
+
* <span style="color:orange; font-size:2em">&#9679;</span>  ReactionFilter plugin is used to find the events corresponding to a particular reaction to make Analysis Trees. The basic ideas and steps are outlined [https://halldweb.jlab.org/wiki/index.php/ReactionFilter '''''here''''']([mailto:ijaegle@jlab.org Igal], [mailto:zihlmann@jlab.org Beni])
*Requests for analysis trees are bundled together into launches, to generates the trees together. (Alex A)
+
* <span style="color:green; font-size:2em">&#9679;</span> Requests for analysis trees are collected via a [https://halldweb.jlab.org/analysis/SubmitReaction.html '''''webpage'''''], and launched bundled together on the JLab farm. Lists for already existing trees are kept on the [https://halldweb.jlab.org/wiki-private/index.php/Main_Page Private wiki] under "Run Period Info" and "Analysis Launches", for example [https://halldweb.jlab.org/wiki-private/index.php/Spring_2017_Analysis_Launch '''''here''''']. ([mailto:aaustreg@jlab.org Alex A])
  
  
 
'''Analysis Tree analysis'''
 
'''Analysis Tree analysis'''
*DSelectors are used to apply filters to the data and generate histograms of invariant mass etc. (Beni)
+
* <span style="color:orange; font-size:2em">&#9679;</span>  DSelectors are used to analyze "Analysis Trees" (see reaction filter above) to generate histograms of invariant masses, angular distributions and more. It can also generate highly reduced output trees for further analysis reducing the I/O. See [[Analyze Analysis Trees |'''''Analyze an Analysis Tree''''']] for more details. ([mailto:zihlmann@jlab.org Beni])
*[https://halldweb.jlab.org/wiki/index.php/FSRoot FSRoot] is an alternative to DSelectors that uses flat trees.
+
* <span style="color:red">'''Other Analyses approaches like python code on flat trees?'''</span>  (Jon.Z, others)
*AmpTools is used for partial wave analysis (Malte)
+
* <span style="color:green; font-size:2em">&#9679;</span> [[FSRoot|'''''FSRoot''''']] is an alternative to DSelectors that uses flat trees. ([mailto:remitche@indiana.edu Ryan])
 +
* <span style="color:green; font-size:2em">&#9679;</span> AmpTools ([https://github.com/mashephe/AmpTools '''''GitHub'''''], [https://github.com/mashephe/AmpTools/blob/master/AmpTools_User_Guide.pdf '''''User Guide''''']) is used for partial wave analysis. GlueX specifics are documented [https://halldweb.jlab.org/wiki-private/index.php/AmpTools_Fits_Best_Practices '''''here (PRIVATE)''''']  ([mailto:malte@jlab.org Malte])
 +
* <span style="color:green; font-size:2em">&#9679;</span> [https://pypwa.jlab.org/ '''''PyPWA'''''] is an alternative software package to perform an amplituded analysis based on python. Documentation details can be found [https://pypwa.readthedocs.io/ '''''here'''''] ([mailto:ppauli@jlab.org Peter], Carlos, Maj)

Latest revision as of 03:44, 17 April 2023

This page provides a very brief overview of the GlueX-specific software used between recording data and publishing results. In time, it should become populated with links to more detailed documentation..


Databases and other tables are described here. (Naomi, Sean, David L.)


Raw and reconstructed data – halld_recon

  • Raw data are saved by the DAQ system in the EVIO file format (more details here) and processed using programs in halld_recon. (Mark)
  • hd_root is used to analyse EVIO (see above) and REST (THIS NEEDS LINK) data with plugins for monitoring, Calibrations, and event reconstruction (Sean [calibrations] - & Mark)
  • REST files are in HDDM format which stores reconstructed physics objects (no detector hit information) (Richard)


Simulated data - halld_sim (Overview)


Reaction channel analysis

  • ReactionFilter plugin is used to find the events corresponding to a particular reaction to make Analysis Trees. The basic ideas and steps are outlined here(Igal, Beni)
  • Requests for analysis trees are collected via a webpage, and launched bundled together on the JLab farm. Lists for already existing trees are kept on the Private wiki under "Run Period Info" and "Analysis Launches", for example here. (Alex A)


Analysis Tree analysis

  • DSelectors are used to analyze "Analysis Trees" (see reaction filter above) to generate histograms of invariant masses, angular distributions and more. It can also generate highly reduced output trees for further analysis reducing the I/O. See Analyze an Analysis Tree for more details. (Beni)
  • Other Analyses approaches like python code on flat trees? (Jon.Z, others)
  • FSRoot is an alternative to DSelectors that uses flat trees. (Ryan)
  • AmpTools (GitHub, User Guide) is used for partial wave analysis. GlueX specifics are documented here (PRIVATE) (Malte)
  • PyPWA is an alternative software package to perform an amplituded analysis based on python. Documentation details can be found here (Peter, Carlos, Maj)