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).