Difference between revisions of "NPS Software"

From Cuawiki
Jump to navigation Jump to search
Line 2: Line 2:
 
* [[Meetings#DAQ/ELECTRONICS/ANALYZER|DAQ/Software Meeting Notes]]
 
* [[Meetings#DAQ/ELECTRONICS/ANALYZER|DAQ/Software Meeting Notes]]
  
== Setting up HCANA Instructions ==
+
== Setting up HCANA and NPSlib, nps_replay Instructions ==
 
* Fork a git repo from https://github.com/JeffersonLab/hcana
 
* Fork a git repo from https://github.com/JeffersonLab/hcana
===Starting on the cdaql3 machines===
+
* 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
 +
* module use /apps/modulefiles/
 +
* module load cmake
 +
* source  /apps/root/PRO/bin/thisroot.csh
 +
* git clone https://github.com/markkjones/hcana
 +
* cd 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 pwd/hcana-install/bin:$PATH
 +
* git clone https://github.com/markkjones/NPSlib
 +
* cmake -B NPSlib-build -S NPSlib -DCMAKE_INSTALL_PREFIX=hcana-install
 +
* cmake --build NPSlib-build/
 +
* cmake --install NPSlib-build/
 +
* setenv LD_LIBRARY_PATH /home/cdaq/nps-2023/hcana-install/lib64:$LD_LIBRARY_PATH
 +
* git clone https://github.com/markkjones/nps_replay
 +
 +
 
 +
 
 +
===Starting on the cdaql3 machines (old)===
 
** login into cdaql3 through the gateway
 
** login into cdaql3 through the gateway
 
** cd  /data1/cdaq/eel108
 
** cd  /data1/cdaq/eel108

Revision as of 16:56, 15 August 2023

NPS Software Meetings

Setting up HCANA and NPSlib, nps_replay Instructions

Starting on the cdaqll machine

  • login into cdaql1 through the gateway
  • module use /apps/modulefiles/
  • module load cmake
  • source /apps/root/PRO/bin/thisroot.csh
  • git clone https://github.com/markkjones/hcana
  • cd 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 pwd/hcana-install/bin:$PATH
  • git clone https://github.com/markkjones/NPSlib
  • cmake -B NPSlib-build -S NPSlib -DCMAKE_INSTALL_PREFIX=hcana-install
  • cmake --build NPSlib-build/
  • cmake --install NPSlib-build/
  • setenv LD_LIBRARY_PATH /home/cdaq/nps-2023/hcana-install/lib64:$LD_LIBRARY_PATH
  • git clone https://github.com/markkjones/nps_replay


Starting on the cdaql3 machines (old)

    • login into cdaql3 through the gateway
    • cd /data1/cdaq/eel108
    • mkdir "name" ( make a subdirectory with your "name")
    • cd "name"
    • git clone https://github.com/"githubUserName"/hcana
    • cd hcana
    • git submodule init
    • git submodule update
    • git remote add --track develop upstream https://github.com/JeffersonLab/hcana
    • source /apps/root/PRO/setroot_CUE.csh
    • scons

Starting on the ifarm machines

    • login into ifarm
    • cd /group/nps
    • mkdir "name" ( make a subdirectory with your "name")
    • cd "name"
    • git clone https://github.com/"githubUserName"/hcana
    • cd hcana
    • git submodule init
    • git submodule update
    • git remote add --track develop upstream https://github.com/JeffersonLab/hcana
    • source /apps/root/PRO/setroot_CUE.csh
    • module load scons
    • scons -j8
  • Now you have a working hcana binary.

Setting up NPS replay directory instructions

Starting on the cdaql3 machines:

    • login into cdaql3 through the gateway
    • if you have not set up you own subdirectory:
      • cd /data1/cdaq/eel108
      • mkdir "name" ( make a subdirectory with your "name")
      • cd "name"
    • if you have subdirectory
      • cd /data1/cdaq/eel108/"name"
    • git clone https://github.com/"githubUserName"/nps_replay
    • cd nps_replay
    • git remote add --track main upstream https://github.com/JeffersonLab/nps_replay
    • mkdir /data1/cdaq/eel108/output/ROOTfiles/"name"
    • ln -sf /data1/cdaq/eel108/output/ROOTfiles/"name" ROOTfiles
    • mkdir /data1/cdaq/eel108/output/REPORT_OUTPUT/"name"
    • mkdir /data1/cdaq/eel108/output/REPORT_OUTPUT/"name"/NPS
    • mkdir /data1/cdaq/eel108/output/REPORT_OUTPUT/"name"/NPS/eel108
    • ln -sf /data1/cdaq/eel108/output/REPORT_OUTPUT/"name" REPORT_OUTPUT
    • ln -sf /data1/cdaq/NPS/ cache ( do not have access to cache disk)
    • ln -sf /data1/cdaq/NPS/ raw
    • if you are using you own hcana
      • ln -sf ../hcana/hcana
    • if you want to use the standard hcana
      • ln -sf /data1/cdaq/eel108/mkjones/hcana

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"
    • git clone https://github.com/"githubUserName"/nps_replay
    • cd nps_replay
    • git remote add --track main upstream https://github.com/JeffersonLab/nps_replay
    • 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
    • if using your own hcana binary
      • ln -sf ../hcana/hcana

Analyzing data

  • on cdaql3
    • cd /data1/cdaq/eel108/"name"/nps_replay
  • On ifarm
    • cd /group/nps/"name"/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!)