Software » History » Version 5
Alexandre Camsonne, 06/18/2019 02:15 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 | 5 | Alexandre Camsonne | example |
| 33 | |||
| 34 | ./generator --events 50000 --compton 1 --halo 0 --energy 11 --filename 11GeV-no-halo.txt |
||
| 35 | 4 | Alexandre Camsonne | |
| 36 | |||
| 37 | 1 | Joshua Hoskins | **Compton Asymmetry Fit** |
| 38 | Required libraries: BOOST C++ libraries (http://www.boost.org/doc/libs/1_48_0/index.html), ROOT (https://root.cern.ch/) |
||
| 39 | Repository: |
||
| 40 | https://github.com/jrhosk/comptonfit.git |
||
| 41 | <pre> |
||
| 42 | Configuration Files |
||
| 43 | |||
| 44 | The fitting runs using parameters from external configuration files found in config/. You will need to provide at least four config files |
||
| 45 | all of which must end in '.config'. Two magnet files are required for the EIC chicane setup. The files needed and an explanation of |
||
| 46 | what each parameter is can be found below. |
||
| 47 | |||
| 48 | parameter.config |
||
| 49 | beam : beam is the beam energy given in GeV |
||
| 50 | laser: laser energy given in GeV |
||
| 51 | |||
| 52 | detector |
||
| 53 | width : strip width in meters |
||
| 54 | spacing: strip spacing in meters |
||
| 55 | theta : detector tilts in radians |
||
| 56 | x : detector x position in meters |
||
| 57 | y : detector y position in meters |
||
| 58 | z : detector z position in meters |
||
| 59 | |||
| 60 | magnet |
||
| 61 | theta : dipole angular tilt in radians |
||
| 62 | length: dipole length (full) in meters |
||
| 63 | dipole: dipole strength in T |
||
| 64 | x : magnet x position in meters |
||
| 65 | y : magnet y position in meters |
||
| 66 | z : magnet z position in meters |
||
| 67 | </pre> |
||
| 68 | |||
| 69 | +Installation+ |
||
| 70 | Simply unzip the code in your favorite directory and make sure the ROOT and BOOST environment variables are set properly. The current |
||
| 71 | default is /usr/lib64/ and /usr/include/. If your libraries are in a different place you will need to either make a symbolic link |
||
| 72 | or change the directories in the Makefile. |
||
| 73 | |||
| 74 | make clean && make |
||
| 75 | |||
| 76 | Running the code |
||
| 77 | <pre> |
||
| 78 | ./comptonfit <options> |
||
| 79 | |||
| 80 | --graphics Enables graphical output. |
||
| 81 | --residuals Calculate and plot residuals of asymmetry fit. |
||
| 82 | --fit_range <first strip:last strip> Define the range of strips over which the fit will be done. |
||
| 83 | --pol_range <minimum:max> Define the range of polarization over which the fit will be done. |
||
| 84 | --compton_range <minimum:max> Define the range of compton edge over which the fit will be done. |
||
| 85 | </pre> |
||
| 86 | |||
| 87 | **Compton Analysis** |
||
| 88 | Required libraries: BOOST C++ libraries (http://www.boost.org/doc/libs/1_48_0/index.html), ROOT (https://root.cern.ch/) |
||
| 89 | Repository: |
||
| 90 | https://github.com/jrhosk/eic_compton_analysis.git |
||
| 91 | |||
| 92 | +Installation+ |
||
| 93 | Simply unzip the code in your favorite directory and make sure the ROOT and BOOST environment variables are set properly. The current |
||
| 94 | default is /usr/lib64/ and /usr/include/. If your libraries are in a different place you will need to either make a symbolic link |
||
| 95 | or change the directories in the Makefile. |
||
| 96 | |||
| 97 | make analysis |
||
| 98 | |||
| 99 | Running the code |
||
| 100 | <pre> |
||
| 101 | ./analysis <options> |
||
| 102 | |||
| 103 | --graphics Graphical output flag. |
||
| 104 | --file <file name> Defines input root file. |
||
| 105 | --output-file <file name> Defines output root file. |
||
| 106 | --compton-weight Weighting flag. |
||
| 107 | --halo-weight Weighting flag. |
||
| 108 | --background-weight Weighting flag. |
||
| 109 | --polarization <polarization> Beam polarization. |
||
| 110 | --energy <energy GeV> Beam energy. |
||
| 111 | --aperture-size <size cm> Beam energy. |
||
| 112 | </pre> |