Difference between revisions of "DEEPGen event generator"

From Hall A Wiki
Jump to: navigation, search
(Phase space factor)
Line 11: Line 11:
  
 
== Principle ==
 
== Principle ==
 +
 +
The framework of this event generator has been primarly developed to perform systematic studies and simulations for exclusive reactions. Its goal is to provide numerous of weights (among other information) for each events in order to study physics impact of a potential reaction measurement. Spin options allow for predicting spin asymmetries, target options allow for studying the target impact in the relative flux (real and quasi-real) in case of photoproduction reactions.
 +
 +
The event generator itself provides phase-space distributions as a function of invariants (Xbj, Q²...) and angular variables. It is possible to generate unweighted events for any kinematic range in the fix target mode. The weighted mode kinematics has been optimized for 4π acceptance experiments in the JLab@12 GeV area. Close enough kinematics can be generated (model approximations) with minor modifications.
 +
 +
== Event weighting (physics mode) ==
 +
 +
In the event weighted mode, each event is weighted by a n-differential cross section (see normalization section), to allow to generate physics distributions and get expected counting rates for a specific experiment. Weights are saved in grids, processed independently, and N-dimensionnal linear interpolations allow for % level precision results in comparison to the original model. This method allow for any model to be plug into the generator and for fast event generation compared to direct calculations for each event.
 +
 +
Each event is weighted by several results:
 +
 +
W_tot_unpol corresponds to the total differential cross section for a given reaction, including all diagrams for interfering processes,
 +
 +
W_BH, W_TCS... correspond to cross sections if only one of the processes where giving this final state,
 +
 +
W_tot_pol_beam, W_tot_pol_target, W_tot_pol... are weights for polarized beam and/or target cross sections, including spin dilution factors,
 +
 +
BSA, TSA, BTSA are approximated spin asymmetries for given kinematics,
 +
 +
cross_tot_unpol... are the differential cross section for photoproduction reactions (TCS...) in case they were actually generated from a lepton beam (and the photon is bremsstrahlung in the target or quasi-real). In case of real photoproduction, W_xxx = cross_xxx.
  
 
== Reactions and model ==
 
== Reactions and model ==

Revision as of 19:48, 9 December 2018

Deep Exclusive Electro- and Photo-production Generator

This event generator is intended to study some exclusive processes at kinematics of JLab current and future experiments. The current version (4.0) supports deep exclusive photo- and electro- production of lepton pairs and photons. These reactions involve Deeply Virtual Compton Scattering (DVCS), Timelike Compton Scattering (TCS) and Double Deeply Virtual Compton Scattering (DDVCS).

For more details and history, look at the "old" webpage of the event generator (2015-2018) DDVCS and TCS event generator

Content of the generator

Principle

The framework of this event generator has been primarly developed to perform systematic studies and simulations for exclusive reactions. Its goal is to provide numerous of weights (among other information) for each events in order to study physics impact of a potential reaction measurement. Spin options allow for predicting spin asymmetries, target options allow for studying the target impact in the relative flux (real and quasi-real) in case of photoproduction reactions.

The event generator itself provides phase-space distributions as a function of invariants (Xbj, Q²...) and angular variables. It is possible to generate unweighted events for any kinematic range in the fix target mode. The weighted mode kinematics has been optimized for 4π acceptance experiments in the JLab@12 GeV area. Close enough kinematics can be generated (model approximations) with minor modifications.

Event weighting (physics mode)

In the event weighted mode, each event is weighted by a n-differential cross section (see normalization section), to allow to generate physics distributions and get expected counting rates for a specific experiment. Weights are saved in grids, processed independently, and N-dimensionnal linear interpolations allow for % level precision results in comparison to the original model. This method allow for any model to be plug into the generator and for fast event generation compared to direct calculations for each event.

Each event is weighted by several results:

W_tot_unpol corresponds to the total differential cross section for a given reaction, including all diagrams for interfering processes,

W_BH, W_TCS... correspond to cross sections if only one of the processes where giving this final state,

W_tot_pol_beam, W_tot_pol_target, W_tot_pol... are weights for polarized beam and/or target cross sections, including spin dilution factors,

BSA, TSA, BTSA are approximated spin asymmetries for given kinematics,

cross_tot_unpol... are the differential cross section for photoproduction reactions (TCS...) in case they were actually generated from a lepton beam (and the photon is bremsstrahlung in the target or quasi-real). In case of real photoproduction, W_xxx = cross_xxx.

Reactions and model

How to run

Generate events

Go to the directory where you copied the generator binary files, then:

1) ./set.csh

2) modify parameters in (process).input file

3) ./DEEPGen (process) (index) (seed)

- just do: ./DEEPGen to see the available options

- (process) = dvcs, tcs, ddvcs, ps_eeel_fix, ps_eephoto_fix, ps_vcs_fix (...) see input options - (index) = run number index of the output file - (seed) = random seed, only needed in batch mode

Process options

1. tcs = generation of TCS+BH 5 or 6-fold (un)polarized differential cross section for p and n weights in dt.dQ'2.dphi.dtheta

2. ddvcs = generation of DDVCS+BH 7-fold unpolarized differential proton cross section weights in dxbj.dt.dQ2.dQ'2.dphiL.dphi.dtheta

3. dvcs = generation of DVCS+BH 4- or 5-fold (un)polarized differential proton cross section for p and n weights in dxbj.dt.dQ2.dphiL

4. vcs = generation of VCS+BH (in progress, generated BH now)


11. ps_ee_photo_fix = phase space generation for dilepton pair photoproduction (real photon) in fix target experiment

12. ps_eeel_fix = phase space generation for dilepton pair electroproduction in fix target experiment

13. ps_vcs_fix = phase space generation for gamma electroproduction in fix target experiment


21., 22., 23. = collider mode (in progress)

Normalization

For each generated file, save the "TrueEventNumber" of the last generated event. It is the number of event which ideally where thrown in a N-D hypercube, if there where no kinematic cuts from correlations affecting the distributions.

The weights (W_tot_unpol...) are polarized or unpolarized cross sections. They have to be multiplied by the luminosity and the dimension of the phase space to get the number of counts in a specific experiment. Beam energy is generated flat for TCS from a photon beam and is fixed for DVCS and DDVCS. To get the proper energy distribution for TCS, rescale the flat distribution by a bremsstrahlung or any other profile normalized function.

For asymmetries (BSA...): no normalization needed, just divide by the number of events in the bin to get an average.

Phase space factor

Definition ΔA = A(max) - A(min) from user input file

  • TCS (electron or photon)

event weights: dσ/(dt dQ'² dθ dφ)

phase space factor: luminosity*Δ(t)*Δ(Q'²)*Δ(θ)*Δ(φ) / Σ(TrueEventNumber of last event of each files)

NB: compared to past versions, sin(θ) factor to convert cross section in dcos(θ) → dθ is already included in the weights

  • DVCS:

event weights: dσ/(dt dQ² dxbj d_φ)

phase space factor: luminosity*Δ(t)*Δ(Q²)*Δ(Xbj)*Δ(φ_L) / Σ(TrueEventNumber of last event of each files)

  • DDVCS:

event weights: dσ/(dxbj dt dQ² dQ'² dθ dφ dφ_L)

phase space factor: luminosity*Δ(t)*Δ(Q²)*Δ(Xbj)*Δ(Q'²)*Δ(θ)*Δ(φ)*Δ(φ_L) / Σ(TrueEventNumber of last event of each files)

NB: compared to past versions, sin(θ) factor to convert cross section in dcos(θ) → dθ is already included in the weights

Files

Input

TCS mode

DVCS mode

DDVCS mode

Output

Name: DEEPGen_(xxx).root = root file DEEPGen_hep_(xxx).root = HEP file (text) DEEPGen_kin_(xxx).root = relevant information to read associated to the HEP file (text)

Generic output root files contain 2 Trees:

"SIM_Tree" contain all generated events important information such as 4-vectors for incoming and outgoing particles, kinematic invariants, event weights, event number, polarization information. We detail below the content for each supported process. Note that depending polarization option and event weighting options (phase space or full generation), some of the Tree Branch may not be present.

"Dump_Tree" contain additional information such as 4-vectors in different reference frames, initial options... Only the first 50 events are printed.

HEP files (see standard HEP format). Associated files can be related by the line numbers.

TCS mode

ALV_minus_lab = 4-vector or outgoing lepton- in lab frame (all 4-vector "ALV_xxx" are arrays containing: E, px, py, pz) ALV_plus_lab = outgoing lepton+ in lab frame ALV_gamma_in = incoming photon in lab frame ALV_el_in = incoming electron in lab frame (case of quasi-real beam) ALV_Recoil_lab = recoil proton in lab frame

DVCS mode

DDVCS mode

Get output files

Depending options, the event output is a ROOT and/or HEP file. We advice to generate Root files in order to save as much information as possible in a more efficient way. If a specific input format is needed to plug the files to Geant (or other) simulation framework, the generated events can then be easily printed through a loop in any format needed, with any weighting option.

Public version

Binaries

The generator binary files are available to users of the JLab ifarm. Copy the whole directory to a place on your home directory. For test purpose, also see examples that where generated with specific options.

- Binaries for the generator are in: /work/halla/solid/mboer/public/Generator_publicversion/version4

- Example files (root file + used input file) are in: /work/halla/solid/mboer/public/Generator_publicversion/examples/version4 look at directories for the different processes.

Old versions and history of the generator

The "old" webpage of the event generator (2015-2018), for versions 1.0 to 3.1, is available DDVCS and TCS event generator

Contact

For all questions such as how to use the generator, new versions and example files, please contact Marie Boër, mboer@jlab.org