Analysis code for the SOLARIS project.
Go to file
2024-07-10 16:18:46 -04:00
.vscode finished SimChecker.C, added ClassSimPlotter.h for better memory management. 2024-07-05 21:45:15 -04:00
Armory MonAnalyser.C basically done. Need to link to ChainMonitors.C, need RDTCutCreator, need Calibrations stuffs. 2024-07-10 16:18:46 -04:00
Cleopatra Coding Monitor.C for multiple arrays. Should have a new class for plotter? 2024-07-06 17:48:31 -04:00
WebSimHelper Move EventBuilder to the DAQ code. in progress of the Webbase Simulation code 2024-03-20 18:56:49 -04:00
working MonAnalyser.C basically done. Need to link to ChainMonitors.C, need RDTCutCreator, need Calibrations stuffs. 2024-07-10 16:18:46 -04:00
.gitignore MonAnalyzer: finished array. need to do RDT 2024-07-09 17:13:28 -04:00
README.md SimTransfer: add AllExList and ExID_ReactID_List in output root 2024-07-04 22:39:02 -04:00
SetupNewExp another improvement on SetupNewExp 2023-04-14 13:06:03 -04:00
SOLARIS.sh replace SimTransfer2 to SimTransfer. Already able to use N-arrays and reactions 2024-07-04 13:06:26 -04:00

Introduction

This is the analysis package for the SOLARIS DAQ. It is supposed to be the analysis path for the SOLARIS DAQ.

The folder struture is

Analysis
├── README.md
├── SetupNewExp // bash script to create new branch and raw data folder
├── SOLARIS.sh // bash script to define some env variable and functions
├── Armory // analysis codes, independent from experiment.
├── Cleopatra // Swaper for DWBA code Ptolomey and simulation
├── data_raw // should be the symbolic link to the raw data, created by SetUpNewExp
├── root_data // symbolic link to converted root file, created by SetUpNewExp
└── working // working directory, depends on experiment.

SOLARIS.sh

this batch shell script adds few enviroment variables and functions. Add the Armory and Cleopatra into the system PATH.

>source SOLARIS.sh

Event Builder

Please download the SOLARIS_DAQ, under the Aux directory, make, and link the EventBuilder to Armory.

The reason for having EventBuilder in the DAQ code is the Hit.h is original from the DAQ code.

ROOT issue

We are still using TProof for parallel calculation. TProof is not pre-compiled since 6.32+. And 6.30 only precompiled for Ubuntu 22.04. So, for system using Ubuntu 24.04, user must precompiled to root in order to work.

Compilation

We can manual download the git repository of the root following the instruction. in the cmake

root_install="/opt/root_v6.32.00_compiled"
root_src="root_src"
root_build="root_build"
cmake -DCMAKE_INSTALL_PREFIX=$root_install $root_src -Dproof=ON -Dmathmore=ON
sudo cmake --build . --target install -j <number_of_threads>

Analysis & Simulation

The Armory/AnalysisLib.h constains many small but handy functions.

All class headers are started with Class*.h

The classes DetGeo** and ReactionConfig are fundamental for loading the detectorGeo.txt and reactionConfig.txt.

Both txt file support empty lines, can have multiple settings. The reason for that is for many-array configuration.

The TransferReaction class is only use one of the reaction from the reactionConfig.txt. This class generates the TLorentzVector for ligh and heavy recoils.

  TransferReaction::SetReactionFromFile("reactionConfig.txt", ID); // ID = 0 or 1

Same for the Helios class, Helios class use the detectorGeo.txt. It takes TLorentzVector and calculate does it be detected by the array or recoil detector.

  HELIOS::SetDetectorGeometry("detectorGeo.txt", ID); // ID = 0 or 1

Simulation

Simply run

>SimTransfer

it will digest the detectorGeo.txt, reactionConfig.txt, if DWBA.root exist, find the reactions.

  • it does not have TargetScattering (yet)
  • for multiple reactions, it will randomly use any and disregard the total Xsec of different reactions. The Xsec only takes effect within same reaction.
  • the decay of heavy recoil only have isotropic decay.