GET library
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
GETDocExamples.hh
Go to the documentation of this file.
1
//======================================================================
2
/*! \file GETDocExamples.hh
3
*
4
* Documentation page defining examples pages.
5
*/
6
//======================================================================
7
8
//======================================================================
9
/*! \page get_page_examples Examples for use of the GET library
10
*
11
* The files presented in this section are located in the \b examples
12
* directory of the package.
13
*
14
*
15
* \section get_examples_programs C++ program examples
16
*
17
* - These are very simple C++ programs showing how to define a GET
18
* system and read events from a run file: one for a
19
* Reduced-CoBo system \ref ReadEvent_RCoBo.cxx
20
* and on for a TPC demonstrator system \ref ReadEvent_Demonstrator.cxx
21
*
22
* - Reading of the XML configuration files: \ref ReadConfig.cxx
23
*
24
* \section get_examples_root ROOT session examples
25
*
26
* In order to use the GET library in a ROOT session, it must be
27
* loaded, either in the ROOT login macro, either during the session
28
* itself:
29
* \code
30
* gROOT->Macro ( (getenv("GET_BASE")+string("/root/GETRootLibs.C")).c_str() );
31
* \endcode
32
*
33
* - ROOT example for GET channel processing of signal:
34
* \ref TestChannel.C
35
*
36
* - ROOT example to read events from a GET system in a ROOT macro:
37
* \ref ReadRCoBo.C
38
*
39
* - Reduced-CoBo run file average / RMS (with GETRoot library):
40
* \ref RCoBo_ChannelMeanRMS.C
41
*
42
* - TPC demonstrator run file average / RMS: 2 examples showing
43
* the access to channels output signal in one case
44
* (\ref Demonstrator_RMS1.C),
45
* and using the GETRoot library functions in the other case
46
* (\ref Demonstrator_RMS2.C)
47
*
48
* - TPC demonstrator noise for all
49
* channels ( \ref Demonstrator_Noise.C)
50
*
51
*
52
* \section get_splitting_programs Programs for splitting and merging CoBo frames
53
*
54
* Two small programs are included in the library in order to extract
55
* data frames (CoBo) from a run file and/or to merge them.
56
*
57
*
58
* \par Splitting CoBo frames
59
*
60
* It happens, when running CoBo modules without MuTAnT, or for any reason,
61
* that the CoBo frames are somewhat mixed in the run file.
62
* The program \b GETCoboFramesSplit allows to read the file, and write
63
* separately the header frames and the frames for every single AsAd
64
* board.
65
*
66
* To print the program help, enter the command with no argument:
67
* \code
68
* [shell] GETCoboFramesSplit
69
* \endcode
70
*
71
* For example, to split frames from a file <run_file.dat> (in current
72
* directory), where 2 CoBo modules wher used:
73
* \code
74
* [shell] GETCoboFramesSplit 2 <run_file.dat> "."
75
* \endcode
76
*
77
* A sub-directory is created for each CoBo/AsAd and for header with a
78
* file <run_file.dat> containing only the corresponding frame.
79
*
80
* In addition, an input file \b <run_file.dat>.merge is created for the
81
* program that can remerge the frames.
82
*
83
*
84
* \par Merging CoBo frames
85
*
86
* The program \b GETCoboFramesMerge reads separated CoBo/AsAd frame
87
* files and write them in one single file, ordered according to the
88
* time stamp (to be tested) or the event number (default).
89
*
90
* To print the program help and the supported options, enter the command
91
* with no argument:
92
* \code
93
* [shell] GETCoboFramesMerge
94
* \endcode
95
*
96
* The program needs an input file such as the one created by the
97
* frames splitting program:
98
* \include "run_file.dat.merge"
99
*
100
* The merging can be achieved with:
101
* \code
102
* [shell] GETCoboFramesMerge <run_file.dat>.merge
103
* \endcode
104
*
105
*/
106
107
//======================================================================
108
/*! \example ReadConfig.cxx
109
*
110
* WARNING: THE USE OF EFFECTIVE CONFIGRATION FILES IS NOT
111
* YET IMPLEMENTED IN AN EFFECTIVE WAY...
112
*
113
*/
114
115
//----------------------------------------------------------------------
116
117
/*! \example ReadEvent_RCoBo.cxx
118
*
119
* The Reduced-CoBo is a GET system with 1 CoBo module and 1 single
120
* AsAd board.
121
*
122
*/
123
124
/*! \example ReadEvent_Demonstrator.cxx
125
*
126
* The demonstrator is a GET system with 2 CoBo modules and 8
127
* AsAd boards.
128
*
129
*/
130
131
//======================================================================
132
/*! \example TestChannel.C
133
*
134
* The following ROOT macro plots the input, output
135
* and reconstructed signals of a single GET channel:
136
* - the input sample has 2 Gauss component
137
* - some input noise is added to the signal (GETNoise class)
138
* - the response function is analystical (GETResponseFctAget class)
139
* - some noise is added to the output signal (GETNoise class)
140
* - the reconstruction is performed with filtering (GETFilterAgetGaus class)
141
*
142
* The \ref TestChannel.C example requires the functions defined in the
143
* \ref TestCore.C.
144
* In this example, it is necessary to compile the ROOT macro files,
145
* because they use function pointers, that are not supported in the
146
* ROOT command interpreter.
147
*
148
* \image html "TestChannelSignal100.png"
149
* \image rtf "TestChannelSignal100.png"
150
*
151
* \image html "TestChannelPower100.png"
152
* \image rtf "TestChannelPower100.png"
153
*
154
*/
155
156
/*! \example TestCore.C
157
*
158
* Functions definition for the TestChannel.C example:
159
*
160
* Header file:
161
* \include TestCore.H
162
*
163
* Source file:
164
*
165
*/
166
167
//----------------------------------------------------------------------
168
/*! \example ReadRCoBo.C
169
*
170
* Example file to read 1 event and plot the content of a full AGET
171
* chip.
172
*
173
* It can be executed in a ROOT session with:
174
* \code
175
* [ROOT] .L ReadRCoBo.C
176
* [ROOT] RCoBoPlotAGet ( "../../data/RCoBo/CoBo_baseline.graw", 1, 17 );
177
* \endcode
178
*
179
*/
180
181
//----------------------------------------------------------------------
182
/*! \example RCoBo_ChannelMeanRMS.C
183
*
184
* Example macro file that reads a reduced-CoBo file to build the average
185
* and the RMS for each channel (only one is displayed).
186
*
187
* \image html "RCoBo_ChannelMeanRMS.png"
188
* \image rtf "RCoBo_ChannelMeanRMS.png"
189
*
190
* This example uses the functions from the GETRoot library.
191
* It can be executed in a ROOT session with:
192
* \code
193
* [ROOT] .L RCoBo_ChannelMeanRMS.C
194
* [ROOT] PlotRCoBo_ChannelMeanRMS ( "../../data/RCoBo/CoBo_baseline.graw", 1, 17 );
195
* \endcode
196
*
197
*/
198
199
//----------------------------------------------------------------------
200
/*! \example Demonstrator_RMS1.C
201
*
202
* Example of a ROOT macro that computes the average samples and the RMS
203
* for all channels, from aTPC demonstrator run file.
204
*
205
* \image html "Demonstrator_RMS1.png"
206
* \image rtf "Demonstrator_RMS1.png"
207
*
208
* \code
209
* [ROOT] .L Demonstrator_RMS1.C
210
* [ROOT] PlotDemonstrator_RMS1 ( "../../data/Demonstrator/run_baseline.dat", 0, 0, 1, 17 );
211
* \endcode
212
*
213
* The processing is done in the macro itself, from channels output
214
* content.
215
*/
216
217
//----------------------------------------------------------------------
218
/*! \example Demonstrator_RMS2.C
219
*
220
* Example of a ROOT macro that computes the average samples and the RMS
221
* for all channels, from aTPC demonstrator run file.
222
*
223
* \image html "Demonstrator_RMS2.png"
224
* \image rtf "Demonstrator_RMS2.png"
225
*
226
* \code
227
* [ROOT] .L Demonstrator_RMS2.C
228
* [ROOT] PlotDemonstrator_RMS2 ( "../../data/Demonstrator/run_baseline.dat", 0, 0, 1, 17 );
229
* \endcode
230
*
231
* The processing is done by the functions from the GETRoot library.
232
*/
233
234
//----------------------------------------------------------------------
235
/*! \example Demonstrator_Noise.C
236
*
237
* Example of a ROOT macro that computes the average fluctuations over
238
* time buckets, for all channels.
239
*
240
* \image html "Demonstrator_Noise.png"
241
* \image rtf "Demonstrator_Noise.png"
242
*
243
* \code
244
* [ROOT] .L Demonstrator_Noise.C
245
* [ROOT] PlotDemonstrator_Noise ( "../../data/Demonstrator/run_baseline.dat", 0, 0, 1, 17 );
246
* \endcode
247
*
248
* The processing is done by the functions from the GETRoot library for
249
* the channels mean and RMS samples, and then by the macro for averaging
250
* the RMS over time buckets.
251
*/
252
253
//======================================================================
src
docs
GETDocExamples.hh
Generated on Tue Dec 5 2017 19:37:31 for GET library by
1.8.5