Difference between revisions of "NPS Software"
Jump to navigation
Jump to search
(9 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
== NPS Software Meetings == | == NPS Software Meetings == | ||
* [[Meetings#DAQ/ELECTRONICS/ANALYZER|DAQ/Software Meeting Notes]] | * [[Meetings#DAQ/ELECTRONICS/ANALYZER|DAQ/Software Meeting Notes]] | ||
+ | |||
+ | == NPS Software Meetings == | ||
+ | * [[NPS Tree variables]] | ||
== Setting up HCANA and NPSlib, nps_replay Instructions == | == Setting up HCANA and NPSlib, nps_replay Instructions == | ||
Line 10: | Line 13: | ||
===Starting on the cdaqll machine=== | ===Starting on the cdaqll machine=== | ||
* login into cdaql1 through the gateway | * login into cdaql1 through the gateway | ||
− | * if you want to use the standard replay type " | + | * if you want to use the standard replay type "go_analysis_nps" |
* if you do not have a directory and want to do independent analysis | * if you do not have a directory and want to do independent analysis | ||
* Create a directory /home/cdaq/Dirname | * Create a directory /home/cdaq/Dirname | ||
Line 29: | Line 32: | ||
** cmake --build hcana-build -j12 | ** cmake --build hcana-build -j12 | ||
** cmake --install hcana-build/ | ** cmake --install hcana-build/ | ||
− | ** setenv PATH /home/cdaq/Dirname/hcana-install/bin:$PATH | + | ** setenv PATH /home/cdaq/Dirname/nps-2023/hcana-install/bin:$PATH |
+ | ** If one needs to recompile after making changes in hcana/src | ||
+ | *** cd hcana-build | ||
+ | *** make install | ||
* Setup NPSlib | * Setup NPSlib | ||
** git clone https://github.com/GithubUserName/NPSlib | ** git clone https://github.com/GithubUserName/NPSlib | ||
+ | ** cd NPSlib | ||
+ | ** git remote add --track main upstream https://github.com/JeffersonLab/NPSlib | ||
+ | ** cd .. | ||
** cmake -B NPSlib-build -S NPSlib -DCMAKE_INSTALL_PREFIX=hcana-install | ** cmake -B NPSlib-build -S NPSlib -DCMAKE_INSTALL_PREFIX=hcana-install | ||
** cmake --build NPSlib-build/ | ** cmake --build NPSlib-build/ | ||
** cmake --install NPSlib-build/ | ** cmake --install NPSlib-build/ | ||
+ | ** If one needs to recompile after making changes in NPSlib/src | ||
+ | *** cd NPSlib-build | ||
+ | *** make install | ||
** setenv LD_LIBRARY_PATH /home/cdaq/Dirname/nps-2023/hcana-install/lib64:$LD_LIBRARY_PATH | ** setenv LD_LIBRARY_PATH /home/cdaq/Dirname/nps-2023/hcana-install/lib64:$LD_LIBRARY_PATH | ||
+ | * Setup nps_replay | ||
** git clone https://github.com/GithubUserName/nps_replay | ** git clone https://github.com/GithubUserName/nps_replay | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
** cd nps_replay | ** cd nps_replay | ||
** git remote add --track main upstream https://github.com/JeffersonLab/nps_replay | ** git remote add --track main upstream https://github.com/JeffersonLab/nps_replay | ||
− | ** mkdir / | + | ** mkdir /net/cdaq/cdaql1data/cdaq/"name"/ROOTfiles |
− | ** ln -sf / | + | ** ln -sf /net/cdaq/cdaql1data/cdaq/"name"/ROOTfiles ROOTfiles |
− | ** mkdir / | + | ** mkdir /net/cdaq/cdaql1data/cdaq/"name"/REPORT_OUTPUT |
− | ** mkdir / | + | ** mkdir /net/cdaq/cdaql1data/cdaq/"name"/REPORT_OUTPUT/NPS |
− | ** mkdir / | + | ** mkdir /net/cdaq/cdaql1data/cdaq/"name"/REPORT_OUTPUT/NPS/eel108 |
− | ** ln -sf / | + | ** ln -sf /net/cdaq/cdaql1data/cdaq/"name"/REPORT_OUTPUT |
− | ** ln -sf / | + | ** ln -sf /cache/mss/hallc/c-nps/raw cache |
− | ** ln -sf / | + | ** ln -sf /net/cdaq/cdaql1data/coda/data/raw raw |
− | ** | + | ** If not setup already and will have to done for every new login |
− | *** | + | *** setenv PATH /home/cdaq/Dirname/nps-2023/hcana-install/bin:$PATH |
− | ** | + | *** setenv LD_LIBRARY_PATH /home/cdaq/Dirname/nps-2023/hcana-install/lib64:$LD_LIBRARY_PATH |
− | *** | + | *** source /apps/root/PRO/bin/thisroot.csh |
+ | ** Replay scripts are under the SCRIPTS | ||
+ | |||
===Starting on the ifarm machines=== | ===Starting on the ifarm machines=== | ||
− | + | * if you are not in the c-nps group then email jones@jlab.org | |
− | + | ** to see what groups you are in type:"groups" when on the CUE machines. | |
− | + | * if you have not set up you own subdirectory: | |
− | + | **cd /group/nps | |
− | + | **mkdir "name" ( make a subdirectory with your "name") | |
− | + | **cd "name" | |
− | + | * if you have subdirectory | |
− | + | ** cd /group/nps/"name" | |
− | ** | + | * Following above directions for the cdaq machines to install hcana,NPSlib and nps_replay |
− | ** | + | * Setup ROOT, cmake |
− | ** | + | ** module use /group/halla/modulefiles |
+ | ** module load cmake | ||
+ | ** module load root | ||
+ | * When setting up the nps_replay use volatile disk instead of /net/cdaq/cdaql1data/cdaq | ||
** mkdir /volatile/hallc/nps/"name" | ** mkdir /volatile/hallc/nps/"name" | ||
** mkdir /volatile/hallc/nps/"name"/ROOTfiles | ** mkdir /volatile/hallc/nps/"name"/ROOTfiles | ||
Line 109: | Line 88: | ||
** mkdir /volatile/hallc/nps/"name"/REPORT_OUTPUT/NPS/eel108 | ** mkdir /volatile/hallc/nps/"name"/REPORT_OUTPUT/NPS/eel108 | ||
** ln -sf /volatile/hallc/nps/"name"/REPORT_OUTPUT REPORT_OUTPUT | ** ln -sf /volatile/hallc/nps/"name"/REPORT_OUTPUT REPORT_OUTPUT | ||
− | ** ln -sf /cache/mss/hallc/c-nps/raw raw | + | ** ln -sf /cache/mss/hallc/c-nps/raw raw |
− | |||
− | |||
== Analyzing data == | == Analyzing data == | ||
− | *on | + | *on cdaql1 |
− | ** cd / | + | ** cd //"name"/nps_replay |
* On ifarm | * On ifarm | ||
− | ** cd /group/nps/"name"/nps_replay | + | ** cd /group/nps/"name"/nps-2023/nps_replay |
− | * | + | [[Offline Analysis]] |
+ | * hcana | ||
* At the analyzer prompt | * At the analyzer prompt | ||
** .x SCRIPTS/NPS/eel108_replay.C(nrun,nevents) | ** .x SCRIPTS/NPS/eel108_replay.C(nrun,nevents) | ||
Line 124: | Line 102: | ||
** It is slow because we are reading sample data for all FADc channels for each event | ** It is slow because we are reading sample data for all FADc channels for each event | ||
* Root file is output to the ROOTfiles directory. | * Root file is output to the ROOTfiles directory. | ||
+ | |||
+ | == Notable Software Changes == | ||
+ | |||
+ | Add a running list of major changes and when they were implemented on cdaq and the farm. | ||
+ | NPSlib | ||
+ | hcana | ||
+ | Podd | ||
+ | nps_replay | ||
+ | |||
+ | == Location of Replays == | ||
+ | Path to individual segment replays. | ||
+ | Path to skim replays. | ||
+ | location of report files. | ||
+ | Archives of report files and how to put them on your work disk. | ||
+ | History of updates for farm jobs with run ranges. | ||
== Analysis info== | == Analysis info== |
Latest revision as of 09:16, 7 June 2024
NPS Software Meetings
NPS Software Meetings
Setting up HCANA and NPSlib, nps_replay Instructions
Git repos
- Setup a github.com account
- Fork a git repo from https://github.com/JeffersonLab/hcana
- Fork a git repo from https://github.com/JeffersonLab/NPSlib
- Fork a git repo from https://github.com/JeffersonLab/nps_replay
Starting on the cdaqll machine
- login into cdaql1 through the gateway
- if you want to use the standard replay type "go_analysis_nps"
- if you do not have a directory and want to do independent analysis
- Create a directory /home/cdaq/Dirname
- Create a directory /home/cdaq/Dirname/nps-2023
- cd /home/cdaq/Dirname/nps-2023
- Setup cmake and ROOT
- module use /apps/modulefiles/
- module load cmake
- source /apps/root/PRO/bin/thisroot.csh
- Setup hcana
- git clone https://github.com/GithubUserName/hcana
- cd hcana
- git remote add --track develop upstream https://github.com/JeffersonLab/hcana
- git submodule init
- git submodule update
- cd ..
- cmake -B hcana-build -S hcana -DCMAKE_INSTALL_PREFIX=hcana-install
- cmake --build hcana-build -j12
- cmake --install hcana-build/
- setenv PATH /home/cdaq/Dirname/nps-2023/hcana-install/bin:$PATH
- If one needs to recompile after making changes in hcana/src
- cd hcana-build
- make install
- Setup NPSlib
- git clone https://github.com/GithubUserName/NPSlib
- cd NPSlib
- git remote add --track main upstream https://github.com/JeffersonLab/NPSlib
- cd ..
- cmake -B NPSlib-build -S NPSlib -DCMAKE_INSTALL_PREFIX=hcana-install
- cmake --build NPSlib-build/
- cmake --install NPSlib-build/
- If one needs to recompile after making changes in NPSlib/src
- cd NPSlib-build
- make install
- setenv LD_LIBRARY_PATH /home/cdaq/Dirname/nps-2023/hcana-install/lib64:$LD_LIBRARY_PATH
- Setup nps_replay
- git clone https://github.com/GithubUserName/nps_replay
- cd nps_replay
- git remote add --track main upstream https://github.com/JeffersonLab/nps_replay
- mkdir /net/cdaq/cdaql1data/cdaq/"name"/ROOTfiles
- ln -sf /net/cdaq/cdaql1data/cdaq/"name"/ROOTfiles ROOTfiles
- mkdir /net/cdaq/cdaql1data/cdaq/"name"/REPORT_OUTPUT
- mkdir /net/cdaq/cdaql1data/cdaq/"name"/REPORT_OUTPUT/NPS
- mkdir /net/cdaq/cdaql1data/cdaq/"name"/REPORT_OUTPUT/NPS/eel108
- ln -sf /net/cdaq/cdaql1data/cdaq/"name"/REPORT_OUTPUT
- ln -sf /cache/mss/hallc/c-nps/raw cache
- ln -sf /net/cdaq/cdaql1data/coda/data/raw raw
- If not setup already and will have to done for every new login
- setenv PATH /home/cdaq/Dirname/nps-2023/hcana-install/bin:$PATH
- setenv LD_LIBRARY_PATH /home/cdaq/Dirname/nps-2023/hcana-install/lib64:$LD_LIBRARY_PATH
- source /apps/root/PRO/bin/thisroot.csh
- Replay scripts are under the SCRIPTS
Starting on the ifarm machines
- if you are not in the c-nps group then email jones@jlab.org
- to see what groups you are in type:"groups" when on the CUE machines.
- if you have not set up you own subdirectory:
- cd /group/nps
- mkdir "name" ( make a subdirectory with your "name")
- cd "name"
- if you have subdirectory
- cd /group/nps/"name"
- Following above directions for the cdaq machines to install hcana,NPSlib and nps_replay
- Setup ROOT, cmake
- module use /group/halla/modulefiles
- module load cmake
- module load root
- When setting up the nps_replay use volatile disk instead of /net/cdaq/cdaql1data/cdaq
- mkdir /volatile/hallc/nps/"name"
- mkdir /volatile/hallc/nps/"name"/ROOTfiles
- ln -sf /volatile/hallc/nps/"name"/ROOTfiles ROOTfiles
- mkdir /volatile/hallc/nps/"name"/REPORT_OUTPUT
- mkdir /volatile/hallc/nps/"name"/REPORT_OUTPUT/NPS
- mkdir /volatile/hallc/nps/"name"/REPORT_OUTPUT/NPS/eel108
- ln -sf /volatile/hallc/nps/"name"/REPORT_OUTPUT REPORT_OUTPUT
- ln -sf /cache/mss/hallc/c-nps/raw raw
Analyzing data
- on cdaql1
- cd //"name"/nps_replay
- On ifarm
- cd /group/nps/"name"/nps-2023/nps_replay
- hcana
- At the analyzer prompt
- .x SCRIPTS/NPS/eel108_replay.C(nrun,nevents)
- If events = -1 , then replay all events.
- It is slow because we are reading sample data for all FADc channels for each event
- Root file is output to the ROOTfiles directory.
Notable Software Changes
Add a running list of major changes and when they were implemented on cdaq and the farm. NPSlib hcana Podd nps_replay
Location of Replays
Path to individual segment replays. Path to skim replays. location of report files. Archives of report files and how to put them on your work disk. History of updates for farm jobs with run ranges.
Analysis info
Run spreadsheet EEL108
Git workflow
- Slides on Git with the suggested workflow'
Miscellaneous Support Repos
Please post supporting scripts, online displays, debugging code, etc below. (Github repo links please!)
- Pramita's SHMS Preshower macros
- ADD NEW REPOS HERE