DAQ Meeting/20180803

From PREX Wiki
Revision as of 15:57, 3 August 2018 by Cameronc (talk | contribs)
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Back to Main Page >> DAQ Documentation Portal >> DAQ Meetings

previous meeting << >> following meeting

Logistic information

BlueJeans calling instructions:
Toll-Free Number (U.S.& Canada): 888-240-2560
International toll number:     408-740-7256
Bluejeans CODE:         475 839 391
Bluejeans link: https://bluejeans.com/475839391

Agenda

  • Bob : Editing Prex_ts_banks.crl to work and compile
  • Ciprian : revive panguin and other online analysis features
  • Brad Sawatzky : Github ideas and CODA Networking
  • Simona Malace : Understand and test the moller polarimeter DAQ

Minutes

Thinking about Online Analysis with Ciprian and Cameron

  • Last known working Panguin and Pan duo
    • Live in apar@adaq3~/PREX/pan/ and pan/panguin/
    • online.c and online.h is the online monitor
    • int main is the main program which creates a root TApp and creates pages based on a config file given as a command line argument
    • config file example: prex.cfg
  • Functioning Japan lives in ~apar/ciprian/japan/ and in ~a-onl/pking/japan
    • ~/ciprian/japan/Parity/prminput/prexin.conf is the functioning configuration for the injector that is being used right now
      • Looks at a .map file to map out the detectors in the .crl similar to old PAN control.db
      • There are multiple files now that contain different segments, for modularity
      • Label names in the .map file come out as the branch names in the JAPAN output
    • Then you get a MPS_tree (MPS = one pulse per event, see Meeting notes
      • A lot of the variables currently placed into the JAPAN output files are not necessary for online analysis purposes
    • PANGUIN functionality is to put the root file directly into RAM memory
      • So we should use a truncated output root file to speed up online data lookup - trimmed down analysis outputs exist
    • Startrun script ~/scripts/startAnalyzer_prex is required to run the online analysis (paired down version of regular analysis - runs fast and gives lots of updates)
      • ~/PREX/feedback/panFFB is the fast feedback code - this script reads last N events from the ET directly (rather than the memory resident root file), so it is susceptible to hanging - this feeds data into PANGUIN for online plotting - fast event rates will be a problem and needs to be updated (wont work for MOLLER unless paralleled to death with GPUs etc.)
        • These fast feedback executables will sometimes choose to block the ET whenever sequential events are unable to be read
        • This is so that you can make accurate helicity correlated beam corrections, etc. and not get back results due to pileup
        • We absolutely need to turn it off during production online analysis
        • There is a control.db for fast feedback that you can set to change beam, etc. parameters so that you can study beam quality, etc. in your raw data output
      • Prompt analysis is another analysis which is done automatically at the end of a run and reads the data written to disk (adaqfs)
      • WAC analysis is a third type of analysis is some sort of corrective post-analysis done by hand by Weekly Analysis Coordinators (WAC)
    • There are also some scripts that manage the Green Monster and EPICs to produce non-clean data runs that will be used as automated scans of parameters for beam tests, etc.
  • Memory resident root files are not currently functioning as intended
    • We need to write a script that puts files into memory and see if we can then use ROOT to access them
    • online.C inside ../pan/panguin serves as an example
      • GetDrawCommand() function parses a config file
    • How does a root file get stored in RAM memory, and how does root know where is lives in order to access it?
      • fConfig->GetRootFile() finds the root file
      • fConfig is defined in the initialization where it reads the config file


Testing

Today's testing