FASERCAL code to simulate and analyse events in the FASERCAL detector
This project follows a structured workflow for simulating and processing neutrino interactions within the FASERCAL experiment using GEANT4. The process begins with the FASERMC official Monte Carlo (MC) simulation. These interactions are converted into the TPOEvent class format by ConvertFASERMC. Next, the FASERG4 module uses GEANT4 to simulate events from the TPOEvent class, generating TcalEvent objects. These simulated events can be visualized using the EvDisplay module or processed through the BatchReco module for batch reconstruction, providing a comprehensive analysis pipeline for neutrino interaction events.
Basic code to read FASERCAL GEANT4 output and batch reconstruct events, filling histograms, ...
Usage: ./batchreco.exe [maxevent] [mask] Run number maxevent Maximum number of events to process (def=-1) mask To process only specific events (def=none): nueCC, numuCC, nutauCC, nuNC or nuES
EvDisplay - basic Interactive Event Display of FASERCAL GEANT4 output
Usage: ./evDisplay.exe [mask] Run number mask To process only specific events (def=none): nueCC, numuCC, nutauCC, or nuNC
-
run the event display
to display nueCC events
$ ./evDisplay.exe 200026 nueCC
to display numuCC events
$ ./evDisplay.exe 200025 numuCC
to display nutauCC events
$ ./evDisplay.exe 200035 nutauCC
Very simple app to read and dump all hits from events
Usage: ./dumphits.exe [maxevent] [mask] Run number maxevent Maximum number of events to process (def=-1) mask To process only specific events (def=none): nueCC, numuCC, nutauCC, nuNC or nuES
for example to get all the hits of nueCC events from the kaon decay flux:
$ ./dumphits.exe 200026 10 nueCC > dump.log
Convert official FASER MC files into FASERCAL PO files (generator level)
A generator level tau search analysis code
- t.C : code to convert FASER ntuple into event summary tuples
- s.C : analyse event summary tuples for each tau decay channel and create sig/background tuples
- a.C : read sig/bkg tuples for each decay channel and perform BDT analysis
-
Get the source code:
$ git clone https://github.com/rubbiaa/FASER.git
-
Set up ROOT and GEANT4 environment in the setup.sh file:
setup.sh: source /bin/thisroot.sh source /bin/geant4.sh
$ source setup.sh
-
On lxplus use the following command instead:
$ source lxplus_setup.csh
-
move to the evDisplay directory and compile with "make"
$ cd evDiplay $ make
-
if compilation and linking was successful, the executable is "evDisplay.eve"
-
make sure G4 FASERCAL simulated files are linked at the "input" subdirectory
$ ln -fs </path_to_g4_simulated_data> input
-
on lxplus.cern.ch, there is data available
$ ln -fs /eos/home-r/rubbiaa/FASERCALDATA_v2.0 input
For this to work, you need to be able to access my CERNBOX - please send me an email and I will give you access.
-
event masks are used to select only a type of events when running a job
-
the currently available event masks are:
nueCC - nue charged currents
numuCC - numu charged currents
nutauCC - nutau charged currents
nuNC - all neutrinos neutral currents
nuES - elastic scattering off target electrons
-
run numbers are taken from the official FASER conventions
200025 flux from pion decay (i.e. basically numu)
200026 flux from kaon decay (i.e. mainly numu and nue)
200035 flux from charm decay (i.e. numu, nue and some nutau)
Please check the directory Python_io