Project

General

Profile

Software » History » Version 4

Alexandre Camsonne, 06/18/2019 02:14 PM

1 1 Joshua Hoskins
h1. Software
2
3
h1. EIC Compton Electron Detector Simulation Analysis Software
4
5
All software is available from my github account (instructions below). Please forward all desired functionality and bug reports to me by filing an issue on github.
6
A great reference to get you started using git can be found here: http://rogerdudler.github.io/git-guide/
7
<pre>
8
Cloning a repository
9
     git clone <repository address>
10
</pre>
11
**Compton Generator**
12 3 Alexandre Camsonne
     Required libraries: ROOT (https://root.cern.ch/) tested with ROOT 5.34 and gcc 4.8.3
13 1 Joshua Hoskins
     Repository:
14
     https://github.com/jrhosk/EIC-Compton-Generator.git
15
16
<pre>
17
./generator <options>
18
19
--filename <string>      Sets the name of the output file.
20
--polarization <double>  Sets the polarization of the events to be generated. Values range from -1 to 1.
21
--energy <double>        Sets the energy of the incoming electrons.
22
--sigmax <double>        Sets the beam size in the x-direction (cm). 
23
--sigmay <double>        Sets the beam size in the y-direction (cm).
24
--events <int>           The number of events to be generated. 
25
</pre>
26
27
The only required option is __--events__ The default energy is 5 GeV. The generator is built using Make
28
<pre>
29
     make generator
30
</pre>
31
32 4 Alexandre Camsonne
./generator --events 50000 --compton 1 --halo 0 --energy 11 --filename 11GeV-no-halo.txt
33
34
35 1 Joshua Hoskins
**Compton Asymmetry Fit**
36
     Required libraries: BOOST C++ libraries (http://www.boost.org/doc/libs/1_48_0/index.html), ROOT (https://root.cern.ch/)
37
     Repository:
38
     https://github.com/jrhosk/comptonfit.git
39
<pre>
40
Configuration Files
41
42
The fitting runs using parameters from external configuration files found in config/. You will need to provide at least four config files
43
all of which must end in '.config'. Two magnet files are required for the EIC chicane setup. The files needed and an explanation of
44
what each parameter is can be found below.
45
46
  parameter.config
47
   beam : beam is the beam energy given in GeV
48
   laser: laser energy given in GeV
49
50
  detector
51
   width  : strip width in meters
52
   spacing: strip spacing in meters
53
   theta  : detector tilts in radians
54
   x : detector x position in meters
55
   y : detector y position in meters
56
   z : detector z position in meters
57
58
  magnet
59
   theta : dipole angular tilt in radians
60
   length: dipole length (full) in meters
61
   dipole: dipole strength in T
62
   x : magnet x position in meters
63
   y : magnet y position in meters
64
   z : magnet z position in meters
65
</pre>
66
67
+Installation+
68
Simply unzip the code in your favorite directory and make sure the ROOT and BOOST environment variables are set properly. The current
69
default is /usr/lib64/ and /usr/include/. If your libraries are in a different place you will need to either make a symbolic link
70
or change the directories in the Makefile.
71
72
    make clean && make
73
74
Running the code
75
<pre>
76
   ./comptonfit <options>
77
78
   --graphics                                Enables graphical output.
79
   --residuals                               Calculate and plot residuals of asymmetry fit.
80
   --fit_range     <first strip:last strip>  Define the range of strips over which the fit will be done.
81
   --pol_range     <minimum:max>             Define the range of polarization over which the fit will be done.
82
   --compton_range <minimum:max>             Define the range of compton edge over which the fit will be done.
83
</pre>
84
85
**Compton Analysis**
86
     Required libraries: BOOST C++ libraries (http://www.boost.org/doc/libs/1_48_0/index.html), ROOT (https://root.cern.ch/)
87
     Repository:
88
     https://github.com/jrhosk/eic_compton_analysis.git
89
90
+Installation+
91
Simply unzip the code in your favorite directory and make sure the ROOT and BOOST environment variables are set properly. The current
92
default is /usr/lib64/ and /usr/include/. If your libraries are in a different place you will need to either make a symbolic link
93
or change the directories in the Makefile.
94
95
    make analysis
96
97
Running the code
98
<pre>
99
   ./analysis <options>
100
101
         --graphics                      Graphical output flag.
102
         --file <file name>              Defines input root file.
103
         --output-file  <file name>      Defines output root file.
104
         --compton-weight                Weighting flag.
105
         --halo-weight                   Weighting flag.
106
         --background-weight             Weighting flag.
107
         --polarization  <polarization>  Beam polarization.
108
         --energy        <energy GeV>    Beam energy.
109
         --aperture-size <size cm>       Beam energy.
110
</pre>