Difference between revisions of "Instructions for Generating Simulations"

From GlueXWiki
Jump to: navigation, search
Line 15: Line 15:
 
To actually accomplish all of this one may create their own production mechanism(s) or one may turn to [https://github.com/JeffersonLab/gluex_MCwrapper MCwrapper] to handle much of the nuance of each step automatically.
 
To actually accomplish all of this one may create their own production mechanism(s) or one may turn to [https://github.com/JeffersonLab/gluex_MCwrapper MCwrapper] to handle much of the nuance of each step automatically.
  
 +
 +
----
 +
If one wants/is able to use the online submit form follow these steps to ensure you pick the right software stack to best match data:
 +
1) go to the analysis launch page linked to from [https://halldweb.jlab.org/wiki-private/index.php/Main_Page here] and find the analysis launch version that contains your reaction and note both this number and the underlying reconstruction launch version
 +
2) go to the submission form
 +
3) in the halld_recon box place the reconstruction launch version number
 +
4) the system will then populate the other drop downs with versions that are build against this halld_recon AND should be on the OSG.  Select the largest version number for halld_sim.  This will ensure that you get the latest version with all the bug fixes
 +
5) Next select the highest version set version (often there is only one).  This should give you the latest HDgeant4 etc to use
 +
6) once you have filled in a reaction you should be able to select the analysis version set you noted from step 1.  If it doesn't exist contact Alex Austregesilo as this combination has not and should be added to the correlations table
 +
 +
 +
In this way reconstruction will have exactly the same underlying software versions used to reconstruct data to reconstruct your MC sample.  Additionally, you will benefit from any bug fixes to the production of the monte carlo (e.g. new smearing).  Further, when MCwrapper analyzes your dana_rest files for your reaction(s) it will use the same analysis code used on reconstructed data.
 
An overview of this process can also be found in [https://halldweb.jlab.org/doc-public/DocDB/ShowDocument?docid=2252 this presentation].
 
An overview of this process can also be found in [https://halldweb.jlab.org/doc-public/DocDB/ShowDocument?docid=2252 this presentation].

Revision as of 07:50, 2 April 2020

It is useful to think about the production of MC as broken into 4 distinct but related parts: 1) Generation 2) Geant 3) Smearing 4) Reconstruction

The Generation step is devoted to producing the four-vectors of the desired channel. There are many generators with varying degrees of complexity; Some, such as genr8, use only mono-energetic beam photons with uniform distributions with minimal constraints (e.g. E conservation). Others, such as gen_2pi_amp, have the ability to put in amplitudes of the reaction and use a coherent bremsstrahlung distribution for the energy of the beam photon. At the end of the day generators start by taking in the desired decay(s) and other parameters needed and generates sets of four-vectors defining the kinematics of the reaction in hddm format for input into Geant.

Geant then takes in these four vectors and pushes them through the actual detector. It is in this step that the geometry of the hall is needed. Geant calculates the interactions of the particles generated and attempts to measure the detector response (e.g. hits are determined and recorded). Currently, hdgeant and hdgeant4 exist to handle this task and are based on geant3 and geant4 respectively. In either case an hddm format file is produced for input either into smearing or reconstruction.

The Smearing step is technically optional and functions to make the pristine hits from Geant and make them look like real data. In a perfect world completion of this step would yield output that was indistinguishable from data; in reality this step tunes the output from geant to better approximate the data. Mcsmear exists to handle this step. The output of this step is hddm and can be used for reconstruction.

Finally, Reconstruction is performed. Reconstruction takes the lower level objects present in Geant/mcsmear output and forms higher level objects for analysis. hd_root exists to handle this step and uses a plugin system to process the input. These plugins can have arbitrary output (more or less) and some, such as danarest, strip out the low level hit information in favour of leaving only high level objects (e.g. tracks). Other examples include DReaction plugins which can produce trees and histograms of your reaction.

To actually accomplish all of this one may create their own production mechanism(s) or one may turn to MCwrapper to handle much of the nuance of each step automatically.



If one wants/is able to use the online submit form follow these steps to ensure you pick the right software stack to best match data: 1) go to the analysis launch page linked to from here and find the analysis launch version that contains your reaction and note both this number and the underlying reconstruction launch version 2) go to the submission form 3) in the halld_recon box place the reconstruction launch version number 4) the system will then populate the other drop downs with versions that are build against this halld_recon AND should be on the OSG. Select the largest version number for halld_sim. This will ensure that you get the latest version with all the bug fixes 5) Next select the highest version set version (often there is only one). This should give you the latest HDgeant4 etc to use 6) once you have filled in a reaction you should be able to select the analysis version set you noted from step 1. If it doesn't exist contact Alex Austregesilo as this combination has not and should be added to the correlations table


In this way reconstruction will have exactly the same underlying software versions used to reconstruct data to reconstruct your MC sample. Additionally, you will benefit from any bug fixes to the production of the monte carlo (e.g. new smearing). Further, when MCwrapper analyzes your dana_rest files for your reaction(s) it will use the same analysis code used on reconstructed data. An overview of this process can also be found in this presentation.