TriDAS + JANA2 (+ERSAP)
This is information related to beam tests done in support of the TriDAS/JANA2/ERSAP SRO tests in Spring 2023 in Hall-D.
Overview
The goal of this test is to read out a small matrix of scintillator bars using VTP modules in Streaming ReadOut (SRO) mode. The bars have dimensions 2x2x20 cm and are side by side and closely packed (no space between them). The matrix will be positioned so the long dimension will be aligned with the beam direction. Cosmic rays will therefore be largely perpendicular to that.
The initial phase will focus on a 3x3 matrix while a 5x5 matrix will be used for the beam test. The beam test will take place in March, but development using cosmic rays will occur in the months leading up to that.
Meetings
Timetable of Activities
Activity | start date | end date | responsible | |
---|---|---|---|---|
step 1: | Build existing software against current TriDAS and JANA2 | 2/6 | 2/8 | EPSCI (David) |
step 2: | Run TriDAS w/ JANA2 for 3x3 prototype in Hall-B CH | 2/9 | 2/14 | INFN(Stefano, Carmello), Sergey B., EPSCI(David, Nathan, Cissie) |
step 3: | Install 5x5 calorimeter in Hall-D | 2/14 | 2/27 | INFN |
step 4: | Run TriDAS w/ JANA2 for 5x5 prototype using cosmic and beam triggers | 2/27 | 3/5 | INFN(Stefano, Carmello), Sergey B., EPSCI(David, Nathan, Cissie) |
step 5: | Integrate AI-based real-time processing via JANA2 plugin | 3/6 | 3/13 | Cristiano, Cissie |
step 6: | TriDAS -> ERSAP -> JANA2 stack processing | 3/13 | 3/15 | INFN(Stefano, Carmello), Sergey B., EPSCI(Vardan, Carl, David) |
step 7: | Collect final data | 3/15 | 3/20 |
Capability Focus | start date | end date |
---|---|---|
JANA2 plugins - TriDAS | 2/6 | 2/10 |
JANA2 plugins - CDAQ | 2/13 | 2/17 |
CDAQ + JANA2 | 2/20 | 2/24 |
TriDAS + JANA2 | 2/27 | 3/3 |
ERSAP + TriDAS | 3/6 | 3/10 |
ERSAP + CDAQ | 3/13 | 3/17 |
Accelerator Down | 3/20 |
Project Phases
Phase 1: mid-Feb.
- Cosmic rays (3x3)
- VTP readout with TriDAS
- JANA2 Cosmic Ray trigger
Phase 2: end-Feb.
- Cosmic rays (5x5)
- VTP readout with TriDAS
- JANA2 Cosmic Ray trigger
Phase 3: mid-Mar.
- Beam Test (5x5)
- VTP readout with TriDAS
- JANA2 Beam trigger and Cosmic Ray trigger
Phase 4: end-Mar.
- Beam Test (5x5)
- VTP readout with ERSAP (+ TriDAS?)
- ERSAP iterface to JANA2
- JANA2 Beam trigger and Cosmic Ray trigger
Instructions for Starting TriDAS DAQ in Hall-B
On terminal - ssh clasrun@clondaq5, - run 'runcontrol -rocs' Local - Launch VNC - Connect on VNC with localhost:5901 On VNC - Click 'Connect' - Click 'Configure', and choose configuration 'TEST2_OLD_DUMMY' - Click 'Download', and choose trigger file STREAMING/test2_streaming_tridas.trg New terminal - connect on streamdaq - ./tscsh --socket /var/run/user/10350/tsc.sock On TSC - init tridas/run/datacard_repo/tridas_datacard2022-M3EICv4.json - configure - start On VNC - Click 'Prestart', connection should be established from test2vtp-s2 to clondaq5 port 7002 - Click 'Go' - data should be streaming to clondaq5 port 7002 End Run On TSC - Stop - Reset On VNC - stop - Reset
Software
Work is being done using the streamdaq account on clondaq5.
NOTE: The .bashrc file for the streamdaq account has been updated to point to the current software versions. The following is not really needed anymore. Commands used to build most of the packages are recorded in the /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS/README file.
source /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS/setenv.sh
Some software built specifically for this test can be found in the /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS directory. Not all of it is placed there though.
Some notes describing how these pieces fit together from 2020 when this was first set up can be seen here:
https://github.com/andrea-celentano/jtridas/blob/master/README.JANA
Compiler
- 9.3.1 (from devtoolset-9)
- C++17 standard
TriDAS
This is the TriDAS source and is checked out on the latest master. It was needed since TriggerInterface.h (and possibly other files) needed by the jtridas plugin were not present in the binary distribution that was installed.
- /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS/tridas-core
jtridas
This is the TriDAS plugin that interfaces to JANA2. TriDAS will load this plugin and, in turn, this will instantiate a JANA2 JApplication that will then load all of the JANA2 plugins. It is responsible for interfacing TriDAS and JANA2.
- /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS/jtridas
streamingReco
This has a number of things specific to this project, but mainly houses the JANA2 plugins. Configuration files for using the cmake build system have been added for this test. The older scons scripts are still there, but moving forward, cmake will be the preferred build system. This is primarily due to cmake being much more prevalent now and interfacing better with modern IDEs.
- /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS/streamingReco
ROOT
ROOT was built specifically for this test using the above compiler and C++ standard
- /usr/clas12/streaming/root/root-6.26.10
CCDB
CCDB is the JLab Calibrations Constants Database. Version 1.06.09 from github is checked out here.
- /usr/clas12/streaming/ccdb_versions/v1.06.09
JANA2
The latest tagged version of JANA2 v2.0.8 was built for this test. Note that the install directory is given below, but the full source can be found one directory up.
- /usr/clas12/streaming/JANA2-v2.0.8/install
git
The tridas-core CMakeLists.txt runs git internally with the -C option which is only available in newer versions of git. Thus, the latest version (2.39.1 as of now) was built here.
- /usr/clas12/streaming/git/git-2.39.1
cmake
The tridas-core CMakeLists.txt requires version 3.20 or higher of cmake. A precompiled version was downloaded and installed here.
- /usr/clas12/streaming/cmake-3.26.0-rc1-linux-x86_64
libssh2
TriDAS requires Libssh2 version 1.9. A previous build of this from 2020 exists in /usr/clas12/streaming/libssh2-1.9.0 but was apparently built as a static library which caused complaints when linking that we need to rebuild it with -fPIC. This was done and the shared library version placed here. (The older build with the static library was left alone).
- /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS/libssh2
VSCode
VSCode is an IDE for software development. A version was installed here in case it is useful. The setenv.sh script above will setup an alias to it so you only need to type "code" to start it up. Using VSCode is not required, but may help in some cases.
- /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS/VSCode-linux-x64
- Important directories
- /usr/clas12/streaming/work/2022.12.15.JANA2_TriDAS
Useful links
- New data format (better suited for VTP)
- streamingReco GitHub repository
- jtridas GitHub Repository
- Data located at: /data/tridas/EIC*