NPS Software
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
- 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.
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