Back to home page

EIC code displayed by LXR

 
 

    


Warning, /eic.github.io/_software/milou.md is written in an unsupported language. File is not indexed.

0001 ---
0002 title: MILOU
0003 name: milou
0004 category: milou
0005 layout: default
0006 ---
0007 
0008 {% include layouts/title.md %}
0009 
0010 * TOC
0011 {:toc}
0012 
0013 
0014 #### About
0015 
0016 MILOU is a Monte Carlo generator for deeply virtual Compton scattering (DVCS),
0017 ep → eYγ, developed by E. Perez, L. Schoeffel and L. Favart[^1]. It is based on
0018 generalized parton distributions (GPDs) evolved to next-to-leading order.
0019 
0020 
0021 Currently hosted on [GitLab](https://gitlab.com/eic/mceg/milou)
0022 
0023 Contact (for this version)
0024 * Kolja Kauder <kkauder@bnl.gov>
0025 
0026 
0027 #### Overview
0028 
0029 The MILOU code is written in Fortran. GPDs, evolved to next-to-leading order,
0030 provide the real and imaginary parts of Compton form factors (CFFs),
0031 which are used to calculate cross sections for DVCS and DVCS-BH interference.
0032 The package BASES/SPRING[^2] is used to generate events from these cross sections.
0033 First, the differential cross sections are integrated by the numerical integration
0034 package BASES to yield probability distributions.
0035 These distributions are used by the event generation package SPRING to generate
0036 the DVCS events. Proton dissociation (ep → eYγ) can be included, with hadronization
0037 of the system Y performed by [PYTHIA](pythia6.html).
0038 
0039 #### Running MILOU
0040 
0041 A 32-bit installation of MILOU can be found in the EIC cmvfs region at
0042 ```sh
0043 $EICDIRECTORY/PACKAGES/milou
0044 ```
0045 
0046 Note: At JLab, the 32-bit fortran libraries are unavailable. The
0047 simplest solution is to use
0048 [singularity](eicsmear_generators_singularity.md):
0049 ```sh
0050 module load singularity
0051 export EIC_LEVEL=dev
0052 source /cvmfs/eic.opensciencegrid.org/x8664_sl7/MCEG/releases/etc/eic_bash.sh
0053 ```
0054 
0055 The generator options are set via a "steering card" dvcs.steer. The options are described in the manual[^1].
0056 
0057 Note that the executables expect the .dat files and the dvcs.steer file
0058 in the directory of execution. Easiest way to achieve this is a softlink (adapt to your location)
0059 ```sh
0060 cp $EICDIRECTORY/PACKAGES/milou/dvcs.steer .
0061 ln -s $EICDIRECTORY/PACKAGES/milou/*.dat .
0062 ```
0063 
0064 You can then run with:
0065 ```sh
0066 $EICDIRECTORY/bin/milou
0067 ```
0068 
0069 The generated events are saved to a PAW ntuple, as well as to an ascii file compatible
0070 with [eicsmear](eicsmear.html). The output file names are hard-coded to
0071 `15x50_dvcs.ntp` and `asc_15x50_dvcs.out`, respectively.
0072 
0073 The program `h2root` can be used to produce a [ROOT](https://root.cern.ch/) ntuple from the PAW ntuple:
0074 
0075 ```sh
0076 h2root 15x50_dvcs.ntp <rootFileName>
0077 ```
0078 
0079 #### Output file structure
0080 The ascii output, `asc_15x50_dvcs.out`, has the following structure:
0081 
0082 * 1st line: "generator name" (i.e. MILOU32); "name of the person generating the sample"; "Name of the Istitution".
0083 Currently hard-coded to ```"MILOU32     S. Fazio        BNL"```
0084 * 2nd line: MILOU EVENT FILE
0085 * 3rd line: "============================================"
0086 * 4th line: Information on event wise variables stored in the file
0087 
0088 | I:                                                                                                            | 0 \(line index\)                                                                                                    |
0089 |---------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------|
0090 | ievent:                                                                                                       | eventnumber running from 1 to XXX                                                                                   |
0091 | linesnum:                                                                                                     | numbers of particles in the event \(max value of line index\); =5 if no radiative corrections applied, =6 otherwise |
0092 | weight:                                                                                                       | applied weight, default is 1\.00000000                                                                              |
0093 | genprocess:                                                                                                   | generated process \(1=BH, 2=DVCS, 3=Interaction\(btw BH and DVCS\), 4=BH\+DVCS\+Interaction, 5=SSA without TW3\)    |
0094 | radcorr:                                                                                                      | radiative corrections \(0= NO correction; 1= Initial State Radiation\(ISR\) \)                                      |
0095 | truex, trueQ2, truey, truet, truephi:                                                                         | are the kinematic variables of the event\.                                                                          |
0096 | phibelgen:                                                                                                    | azimuthal angle between the production and the scattering plane\.                                                   |
0097 | phibelres:                                                                                                    | azimuthal angle \(see above\) resolution\.                                                                          |
0098 | phibelrec:                                                                                                    | reconstructedazimuthal angle between the production and the scattering plane\.                                      |
0099 | | If radiative corrections are turned on they are different from what is calculated from the scattered lepton\. |
0100 | | If radiative corrections are turned off they are the same as what is calculated from the scattered lepton     |
0101 {:.table-bordered}
0102 {:.table-striped}
0103 <br />
0104 
0105 * 5th line: "============================================"
0106 * 6th line: Information on track wise variables stored in the file
0107 
0108 | I:      | line index, runs from 1 to number of particles                                                           |
0109 | ------- | -------------------------------------------------------------------------------------------------------- |
0110 | K(I,1): | status code KS (1: stable particles 11: particles which decay 55; radiative photon)                      |
0111 | K(I,2): | particle KF code (211: pion, 2112:n, ....)                                                               |
0112 | K(I,3): | line number of parent particle                                                                           |
0113 | K(I,4): | normally the line number of the first daughter; it is 0 for an undecayed particle or unfragmented parton |
0114 | K(I,5): | normally the line number of the last daughter; it is 0 for an undecayed particle or unfragmented parton. |
0115 | P(I,1): | px of particle                                                                                           |
0116 | P(I,2): | py of particle                                                                                           |
0117 | P(I,3): | pz of particle                                                                                           |
0118 | P(I,4): | Energy of particle                                                                                       |
0119 | P(I,5): | mass of particle                                                                                         |
0120 | V(I,1): | x vertex information                                                                                     |
0121 | V(I,2): | y vertex information                                                                                     |
0122 | V(I,3): | z vertex information                                                                             |
0123 {:.table-bordered}
0124 {:.table-striped}
0125 <br />
0126 
0127 * 7th line: "============================================"
0128 * 8th line: event information for first event
0129 * 9th line: "============================================"
0130 * 10th to X-1 line: track-wise info of 1st event
0131 * Xth line "=============== Event finished ==============="
0132 
0133 **The information from line 8 to X-1 repeats for each event.**
0134 
0135 #### Known Issues
0136 Cannot currently be built with 64 bits. This is most likely fixable (it does compile, but the output contains NaNs).
0137 
0138 #### References
0139 [^1]: "MILOU: a Monte-Carlo for Deeply Virtual Compton Scattering", E. Perez, L. Schoeffel and L. Favart, (hep-ph/0411389v1)[http://arxiv.org/abs/hep-ph/0411389v1].
0140 [^2]: "A New Monte Carlo Generator for High Energy Physics", S. Kawabata, Comp. Phys. Comm. 41, 127 (1986).