Difference between revisions of "SRC-CT Software"

From GlueXWiki
Jump to: navigation, search
(GCF Generator)
(SRC GlueX Analysis)
Line 26: Line 26:
 
Hall D software requires particle information to be provided in "HDDM" format to be used in propagation and reconstruction; these files must be converted to a compatible ASCII format by the use of the "resampler" program described in the following section.
 
Hall D software requires particle information to be provided in "HDDM" format to be used in propagation and reconstruction; these files must be converted to a compatible ASCII format by the use of the "resampler" program described in the following section.
  
== ''' SRC GlueX Analysis ''' ==
+
== SRC GlueX Analysis ==
  
=== '''Repository: ''' ===
+
=== Repository: ''' ===
  
 
[https://github.com/JacksonPybus/GlueX_SRC_analysis/ https://github.com/JacksonPybus/GlueX_SRC_analysis/]
 
[https://github.com/JacksonPybus/GlueX_SRC_analysis/ https://github.com/JacksonPybus/GlueX_SRC_analysis/]
Line 34: Line 34:
 
This is currently a private repository. If you do not have access, contact Jackson Pybus ([mailto:jrpybus@mit.edu jrpybus@mit.edu]) and request to be added as a collaborator
 
This is currently a private repository. If you do not have access, contact Jackson Pybus ([mailto:jrpybus@mit.edu jrpybus@mit.edu]) and request to be added as a collaborator
  
=== '''How to Compile:''' ===
+
=== How to Compile: ===
  
 
Navigate to a build directory of your choice (e.g. GlueX_SRC_analysis/build)
 
Navigate to a build directory of your choice (e.g. GlueX_SRC_analysis/build)
Line 41: Line 41:
 
  make
 
  make
  
=== '''Programs''' ===
+
=== Programs ===
  
 
''resampler'': This program is used to convert ROOT files from our event generators to the ASCII format required by Geant. It serves three functions:
 
''resampler'': This program is used to convert ROOT files from our event generators to the ASCII format required by Geant. It serves three functions:

Revision as of 14:32, 11 May 2021

GCF Generator

Repository:

https://github.com/JacksonPybus/GCF_Generator_Suite/

This is currently a private repository. If you do not have access, contact Jackson Pybus (jrpybus@mit.edu) and request to be added as a collaborator

How to run

Compile

Navigate to a build directory of your choice (i.e. GCF_Generator Suite/build)

ccmake [path to]/GCF_Generator/src
make

Run

Navigate to build/programs/genPhoto

./genPhoto [Z] [N] [outputFile.root] [# of prescribed events]

The output file will be a ROOT file with a tree of particle momentum, particle ID codes in PDG format, and event weights in units of nanobarns. Note that to determine the absolute cross section, it is necessary to divide by the prescribed number of events, rather than the written number of events.

Hall D software requires particle information to be provided in "HDDM" format to be used in propagation and reconstruction; these files must be converted to a compatible ASCII format by the use of the "resampler" program described in the following section.

SRC GlueX Analysis

Repository:

https://github.com/JacksonPybus/GlueX_SRC_analysis/

This is currently a private repository. If you do not have access, contact Jackson Pybus (jrpybus@mit.edu) and request to be added as a collaborator

How to Compile:

Navigate to a build directory of your choice (e.g. GlueX_SRC_analysis/build)

ccmake [path to]/GlueX_SRC_analysis/src
make

Programs

resampler: This program is used to convert ROOT files from our event generators to the ASCII format required by Geant. It serves three functions:

  • Formatting: The output file is in the appropriate ASCII format to be converted to an HDDM file.
  • Resampling: The input ROOT file contains weighted events; by sampling from these events with probabilities according to their weights, the program writes events in the output ASCII file which are unweighted. For this resampling to function properly, the ROOT file must include many more events (factor of ~1000) than the desired ASCII file.
  • Decay: The decay of off-shell or short-lived resonances is performed in this program in order to provide Geant with appropriate particles for propagation.

The usage is:

./resampler <input.root> <output.txt> <# of events in the output file>

The program will also give the "sum of weights of the events" (in nanobarns); in order to convert this to the cross section of sampled events, divide this by the prescribed number of events for the original ROOT file.

Hall D Software

Installation

GlueX Software Page

https://halldweb.jlab.org/wiki/index.php/GlueX_Offline_Software


Repositories:

  • Reconstruction:
https://github.com/jeffersonlab/halld_recon
  • Simulation:
https://github.com/jeffersonlab/halld_sim
  • Geant Geometry
https://github.com/jeffersonlab/hdds

To install software:

git clone https://github.com/jeffersonlab/halld_recon
[...]

Usage:

Convert ASCII file to the hddm format (Gluex Simulation format)

genr8_2_hddm input_file.txt

will create an output file input_file.hddm

You can copy genr8_2_hddm.cc from the directory below to your libs and recompile

/work/halld2/home/somov/SRC/src_lib/halld_sim/src/programs/Simulation/genr8_2_hddm

(or use the program from

/w/halld-scifs17exp/halld2/home/somov/SRC/src_lib/halld_sim/Linux_CentOS7.7-x86_64-gcc4.8.5/bin/genr8_2_hddm)

Note that the standard genr8_2_hddm program is incompatible with ASCII files in which the beam energy has been preselected event-by-event; this version contains specific changes necessary for such files to be converted.

Process simulated events through Geant

  1. Copy files setenv.csh and control.in from /work/halld2/home/somov/SRC/src_geant to your dir
  2. Update directories in 'setenv.csh'
  3. source setenv.csh
  4. Geant is handled using control.in file. Update parameters (name of INPUT/OUTPUT files, number of events you want to process) in this file.
  5. hdgeant

(OUTPUT_smeared.hddm file will be created after processing events through Geant)

Reconstruct data/pseudodata

  1. Example of the reconstruction code in /work/halld2/home/somov/SRC/src_recon
  2. Copy to your directory, update setenv.csh
  3. source setenv.csh
  4. Compile scons -j16 install
  5. Run, see run file

Location of GlueX Data

List of runs:

https://halldweb.jlab.org/rcdb

on ifarms:

/cache/halld/RunPeriod-2019-01/rawdata/Run061914/hd_rawdata_061914_*.evio

Data on tape:

ls /mss/halld/RunPeriod-2019-01/rawdata/

Retrieve file from tape:

jcache get /mss/halld/RunPeriod-2019-01/rawdata/Run_number/*.evio