ucesb status
play

ucesb status Bastian Lher March 2017 TU Darmstadt G S I H e - PowerPoint PPT Presentation

ucesb status Bastian Lher March 2017 TU Darmstadt G S I H e l m h o l t z z e n t r u m f r S c h w e r i o n e n f o r s c h u n g G m b H Last workshop (July 2015) Unpackers for each


  1. ucesb status Bastian Löher March 2017 TU Darmstadt G S I H e l m h o l t z z e n t r u m f ü r S c h w e r i o n e n f o r s c h u n g G m b H

  2. Last workshop (July 2015) ● Unpackers for each detector written by hand ● Channel mapping (UNPACK → MAPPED/RAW) implemented individually ● Maybe remember R3BTofUnpack class

  3. Last workshop (July 2015) ● Data fmow without ucesb R³BROOT Live Display online Unpack DAQ & Map Reconstruction LMD ROOT Calib tools Calib Params DAQ WG R³BROOT WG User

  4. ucesb overview ● Internal data fmow

  5. ucesb overview ● Internal data fmow ● Use input, unpacking and mapping stages

  6. ucesb overview ● Internal data fmow ● Use input, unpacking and mapping stages ● Write output to fjle or via network external hbook ucesb writer writer ntuple writer struct writer

  7. Last workshop (July 2015) ● Data fmow without ucesb R³BROOT Live Display online Unpack DAQ & Map Reconstruction LMD ROOT Calib tools Calib Params DAQ WG R³BROOT WG User

  8. Today ● Data fmow with ucesb Live R³BROOT Unpack Display online & Map DAQ (ucesb) Reconstruction LMD Calib tools ROOT Calib Params DAQ WG R³BROOT WG User

  9. Advantages ● Unpacker has to be written for proper DAQ operation – Why not reuse? ● Mapping has to be defjned somewhere – Why not do it in a consistent manner? ● Ucesb does extensive checking by default – Why reinvent the wheel? ● DAQ WG does most of this work → Less R3BROOT code

  10. R3BROOT + ucesb ● Data fmow external struct external p i p e e t h e r n e t ucesb R3BROOT writer writer client ● Implementation (in R3BRoot/r3bsource): – R3BUcesbSource: Start unpacker and establish connection via ext_data_client – R3BReader: Base class for extracting data from ucesb event – R3BPtofReader: Derived detector specifjc reader class

  11. The reader class ● Needs data structure ( ext_str_h101_<det>.h ): – Generated via ucesb: ucesb –ntuple=DET,STRUCT_HH,ext_str_h101_<det>.h – Needs to be modifjed (currently by hand), see existing structures in r3bsource directory ● Methods: – Init() : Calls EXT_STR_h101_<det>_ITEMS_INFO – Read() : Copies data from ucesb structure into R3Broot data containers

  12. In a Macro See: https://github.com/R3BRootGroup/R3BRoot/blob/dev/macros/r3b/unpack/ucesb/run_empty.C ● Defjne full data structure: struct { EXT_STR_h101_det1 det1; EXT_STR_h101_det2 det2; } EXT_STR_h101; ● Create an instance in run() function: EXT_STR_h101 event;

  13. In a Macro See: https://github.com/R3BRootGroup/R3BRoot/blob/dev/macros/r3b/unpack/ucesb/run_empty.C ● R3BUcesbSource Instantiation: source = new R3BUcesbSource(file, options, ucesb, &event, sizeof(event)); – file : Input fjle name (may use wildcards) – options : additional options to –ntuple option – ucesb : path to unpacker (use $UCESB_DIR variable) – event : full event structure

  14. In a Macro See: https://github.com/R3BRootGroup/R3BRoot/blob/dev/macros/r3b/unpack/ucesb/run_empty.C ● Reader Instantiation: det2 = new Det2Reader(&event.det2, offsetof(EXT_STR_h101, det2)); source AddReader(det2); → – Adress of detector data structure inside full event → destination address – Offset of this address with respect to beginning of structure → source address

  15. Which reader classes exist today? From: https://github.com/R3BRootGroup/R3BRoot/tree/dev/r3bsource ● Fiber4 ● Los, rolu ● Neuland (Tacquila & Tamex) ● Psp, Pspx ● Strawtubes ● Tofd ● Unpack (event number + trigger)

  16. Which detectors could use ucesb?

  17. Which detectors could use ucesb?

  18. Example used in this workshop ● Proton ToF detector (Ptof) ● ucesb unpacker: upexps/jun16/jun16_ptof – Get it here: git clone /u/land/bloeher/s438b/upexps – Check out: git checkout for_r3broot_workshop ● data: jun2016/run160*.lmd (time-stitched, Carbon run) – Get it here: /SAT/nyx/land/jun2016/stitched/… – Or cached: /d/land2/bloeher/nyx_cache/jun2016/… – Contains data from Tofd detector → similar format for Ptof

  19. Avoiding Pitfalls ● $UCESB_DIR must be exported when compiling R3BRoot ● ucesb and R3Broot must be compiled with same version of root ● Check that the used ext_str_101_<det>.h matches output of ucesb ● Double check the arguments when instantiating Reader class

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend