CFEL - ASG Software Suite  2.5.0
CASS
SACLA-online.ini
Go to the documentation of this file.
1 ;/** @example SACLA-online.ini */
2 ;;
3 ;; Example of how to use the sacla online input
4 ;; using a typical sfx experiment
5 ;;
6 
7 
8 ; ---------------------the processors--------------------------
9 
10 ; The diffraction detector image
11 [Processor]
12 MPCCDRaw/ID = 109
13 MPCCDRaw/CASSID = 20
14 MPCCDRaw/nCols = 512
15 MPCCDRaw/nRows = 8192
16 MPCCDRaw/Hide = true
17 
18 
19 ;------ create the offset, noise and bad pixel map-----
20 
21 [Processor]
22 ;-- only collect dark images when told so by the viewer
23 MPCCDDarkCal/ID = 330
24 MPCCDDarkCal/RawImage = MPCCDRaw
25 MPCCDDarkCal/ConditionName = DefaultTrueHist
26 MPCCDDarkCal/Train = false
27 MPCCDDarkCal/WriteCal = true
28 MPCCDDarkCal/NbrTrainingImages = 100
29 MPCCDDarkCal/SNR = 4
30 MPCCDDarkCal/SNRNoiseAutoBoundaries = 4
31 MPCCDDarkCal/SNRNoiseAutoBoundariesStat = 4
32 MPCCDDarkCal/SNROffsetAutoBoundaries = 4
33 MPCCDDarkCal/SNROffsetAutoBoundariesStat = 4
34 MPCCDDarkCal/MinNbrPixels = 90
35 MPCCDDarkCal/ResetBadPixels = false
36 MPCCDDarkCal/UpdateCalibration = false
37 MPCCDDarkCal/UpdateBadPixAndSavePeriod = 800
38 MPCCDDarkCal/Hide = true
39 ;-- get the offset map
40 OffsetMap/ID = 70
41 OffsetMap/HistName = MPCCDDarkCal
42 OffsetMap/XLow = 0
43 OffsetMap/XUp = 511
44 OffsetMap/YLow = 0
45 OffsetMap/YUp = 8191
46 OffsetMap/Hide = false
47 ;-- histogram of the offset values
48 OffsetMapHist/ID = 60
49 OffsetMapHist/HistName = OffsetMap
50 OffsetMapHist/XNbrBins = 10000
51 OffsetMapHist/XLow = -2000
52 OffsetMapHist/XUp = 5000
53 OffsetMapHist/XTitle = OffsetValues [adu]
54 OffsetMapHist/Hide = false
55 ;-- get the noise map
56 NoiseMap/ID = 70
57 NoiseMap/HistName = MPCCDDarkCal
58 NoiseMap/XLow = 0
59 NoiseMap/XUp = 511
60 NoiseMap/YLow = 8192
61 NoiseMap/YUp = 16383
62 NoiseMap/Hide = false
63 ;-- histogram of the noise values
64 NoiseMapHist/ID = 60
65 NoiseMapHist/HistName = NoiseMap
66 NoiseMapHist/XNbrBins = 10000
67 NoiseMapHist/XLow = 0
68 NoiseMapHist/XUp = 200
69 NoiseMapHist/XTitle = NoiseValues [adu]
70 NoiseMapHist/Hide = false
71 ;-- get the bad pixel map
72 BadPixMap/ID = 70
73 BadPixMap/HistName = MPCCDDarkCal
74 BadPixMap/XLow = 0
75 BadPixMap/XUp = 511
76 BadPixMap/YLow = 24576
77 BadPixMap/YUp = 32767
78 BadPixMap/Hide = false
79 
80 
81 
82 
83 
84 
85 
86 ;---- treat the raw image of the MPCCD -----
87 
88 [Processor]
89 ; generate offset corrected image
90 MCCDOffsetCorrected/ID = 1
91 MCCDOffsetCorrected/HistOne = MPCCDRaw
92 MCCDOffsetCorrected/HistTwo = OffsetMap
93 MCCDOffsetCorrected/Operation = "-"
94 MCCDOffsetCorrected/Hide = true
95 ; mask the bad pixels of the detector
96 MPCCD/ID = 41
97 MPCCD/HistName = MCCDOffsetCorrected
98 MPCCD/ThresholdName = BadPixMap
99 MPCCD/UserVal = 0
100 MPCCD/LowerBound = 0.5
101 MPCCD/UpperBound = 1.5
102 MPCCD/Hide = false
103 
104 
105 
106 
107 ;-------- hitfinding------
108 
109 ; find nbr of bragg peaks by taking background with pixels that are free of
110 ; outliers
111 [Processor]
112 BraggPeakTableNoOutliers/ID = 208
113 BraggPeakTableNoOutliers/HistName = MPCCD
114 BraggPeakTableNoOutliers/SectionSizeX = 512
115 BraggPeakTableNoOutliers/SectionSizeY = 1024
116 BraggPeakTableNoOutliers/BoxSizeX = 5
117 BraggPeakTableNoOutliers/BoxSizeY = 5
118 BraggPeakTableNoOutliers/Threshold = 3000
119 BraggPeakTableNoOutliers/MinSignalToNoiseRatio = 3
120 BraggPeakTableNoOutliers/MinNbrPixels = 2
121 BraggPeakTableNoOutliers/Wavelength_A = 1.8068
122 BraggPeakTableNoOutliers/DetectorDistance_m = 10e-3
123 BraggPeakTableNoOutliers/PixelSize_m = 50e-6
124 BraggPeakTableNoOutliers/Hide = true
125 ;--
126 nBraggPeaksNoOutliers/ID = 88
127 nBraggPeaksNoOutliers/HistName = BraggPeakTableNoOutliers
128 nBraggPeaksNoOutliers/AxisParameter = YNbrBins
129 nBraggPeaksNoOutliers/Hide = true
130 ;--
131 BraggPeakNoOutliersHitfinder/ID = 9
132 BraggPeakNoOutliersHitfinder/HistName = nBraggPeaksNoOutliers
133 BraggPeakNoOutliersHitfinder/UpperLimit = 1e20
134 BraggPeakNoOutliersHitfinder/LowerLimit = 10
135 BraggPeakNoOutliersHitfinder/Hide = true
136 [Processor] ; pp for monitoring found peaks
137 SubsetBraggPeakTable/ID = 73
138 SubsetBraggPeakTable/TableName = BraggPeakTableNoOutliers
139 SubsetBraggPeakTable/ColumnIndex = 9
140 SubsetBraggPeakTable/UpperBound = 1e20
141 SubsetBraggPeakTable/LowerBound = 00
142 SubsetBraggPeakTable/Hide = true
143 ;--
144 nSubsetBraggPeaks/ID = 88
145 nSubsetBraggPeaks/HistName = SubsetBraggPeakTable
146 nSubsetBraggPeaks/AxisParameter = YNbrBins
147 nSubsetBraggPeaks/Hide = true
148 ;--
149 SubsetBraggPeakHitfinder/ID = 9
150 SubsetBraggPeakHitfinder/HistName = nSubsetBraggPeaks
151 SubsetBraggPeakHitfinder/UpperLimit = 1e20
152 SubsetBraggPeakHitfinder/LowerLimit = 0
153 SubsetBraggPeakHitfinder/Hide = true
154 ;--
155 InfoImageNotRotated/ID = 205
156 InfoImageNotRotated/ConditionName = SubsetBraggPeakHitfinder
157 InfoImageNotRotated/HistName = MPCCD
158 InfoImageNotRotated/TableName = SubsetBraggPeakTable
159 InfoImageNotRotated/IndexColumn = 5
160 InfoImageNotRotated/Radius = 2
161 InfoImageNotRotated/DrawPixelValue = 160000
162 InfoImageNotRotated/BoxSizeX = 4
163 InfoImageNotRotated/BoxSizeY = 4
164 InfoImageNotRotated/DrawBox = true
165 InfoImageNotRotated/DrawCircle = false
166 InfoImageNotRotated/Hide = false
168 InfoImage/ID = 1602
169 InfoImage/ConditionName = SubsetBraggPeakHitfinder
170 InfoImage/GeometryFilename = /path/to/cspad.geom
171 InfoImage/HistName = InfoImageNotRotated
172 InfoImage/Hide = false
173 ;--
174 MaxADUColumn/ID = 72
175 MaxADUColumn/ConditionName = SubsetBraggPeakHitfinder
176 MaxADUColumn/TableName = SubsetBraggPeakTable
177 MaxADUColumn/ColumnIndex = 12
178 MaxADUColumn/Hide = true
179 MaxADUHistory/ID = 64
180 MaxADUHistory/ConditionName = SubsetBraggPeakHitfinder
181 MaxADUHistory/HistName = MaxADUColumn
182 MaxADUHistory/Size = 6000
183 MaxADUHistory/Hide = false
184 ;--
185 SNRColumn/ID = 72
186 SNRColumn/ConditionName = SubsetBraggPeakHitfinder
187 SNRColumn/TableName = SubsetBraggPeakTable
188 SNRColumn/ColumnIndex = 4
189 SNRColumn/Hide = true
190 SNRHistory/ID = 64
191 SNRHistory/ConditionName = SubsetBraggPeakHitfinder
192 SNRHistory/HistName = SNRColumn
193 SNRHistory/Size = 6000
194 SNRHistory/Hide = false
195 ;--
196 nOutlierColumn/ID = 72
197 nOutlierColumn/ConditionName = SubsetBraggPeakHitfinder
198 nOutlierColumn/TableName = SubsetBraggPeakTable
199 nOutlierColumn/ColumnIndex = 13
200 nOutlierColumn/Hide = true
201 nOutlierHistory/ID = 64
202 nOutlierHistory/ConditionName = SubsetBraggPeakHitfinder
203 nOutlierHistory/HistName = nOutlierColumn
204 nOutlierHistory/Size = 6000
205 nOutlierHistory/Hide = false
206 ;--
207 nPixColumn/ID = 72
208 nPixColumn/ConditionName = SubsetBraggPeakHitfinder
209 nPixColumn/TableName = SubsetBraggPeakTable
210 nPixColumn/ColumnIndex = 3
211 nPixColumn/Hide = true
212 nPixHistory/ID = 64
213 nPixHistory/ConditionName = SubsetBraggPeakHitfinder
214 nPixHistory/HistName = nPixColumn
215 nPixHistory/Size = 6000
216 nPixHistory/Hide = false
217 ;--
218 stdvColumn/ID = 72
219 stdvColumn/ConditionName = SubsetBraggPeakHitfinder
220 stdvColumn/TableName = SubsetBraggPeakTable
221 stdvColumn/ColumnIndex = 9
222 stdvColumn/Hide = true
223 stdvHistory/ID = 64
224 stdvHistory/ConditionName = SubsetBraggPeakHitfinder
225 stdvHistory/HistName = stdvColumn
226 stdvHistory/Size = 6000
227 stdvHistory/Hide = false
228 ;--
229 meanColumn/ID = 72
230 meanColumn/ConditionName = SubsetBraggPeakHitfinder
231 meanColumn/TableName = SubsetBraggPeakTable
232 meanColumn/ColumnIndex = 8
233 meanColumn/Hide = true
234 meanHistory/ID = 64
235 meanHistory/ConditionName = SubsetBraggPeakHitfinder
236 meanHistory/HistName = meanColumn
237 meanHistory/Size = 6000
238 meanHistory/Hide = false
239 
240 
241 ;-- define the hit ----
242 [Processor]
243 IsHit/ID = 1
244 IsHit/HistOne = DefaultTrueHist
245 IsHit/HistTwo = BraggPeakNoOutliersHitfinder
246 IsHit/Operation = "AND"
247 IsHit/Hide = true
248 
249 ; Hitrate
250 [Processor]
251 HitRate/ID = 61
252 HitRate/HistName = IsHit
253 HitRate/NbrOfAverages = 600
254 HitRate/Hide = true
255 ;--
256 HitRateHistory/ID = 64
257 HitRateHistory/HistName = HitRate
258 HitRateHistory/Size = 3000
259 HitRateHistory/Hide = false
260 
261 
262 
263 
264 
265 
266 ;-------checks-------------
267 
269 [Processor]
270 ; generate a sublist of the list with all identified bragg spots
271 ; that contains only entries with saturated pixels
272 SaturatedPeaksTable/ID = 73
273 SaturatedPeaksTable/ConditionName = IsHit
274 SaturatedPeaksTable/TableName = BraggPeakTableNoOutliers
275 SaturatedPeaksTable/ColumnIndex = 12
276 SaturatedPeaksTable/UpperBound = 1e20
277 SaturatedPeaksTable/LowerBound = 200000
278 SaturatedPeaksTable/Hide = true
279 ; how many rows has the list
280 nSaturatedPeaks/ID = 88
281 nSaturatedPeaks/ConditionName = IsHit
282 nSaturatedPeaks/HistName = SaturatedPeaksTable
283 nSaturatedPeaks/AxisParameter = YNbrBins
284 nSaturatedPeaks/Hide = true
285 ; take the ratio to all peak on the list
286 SaturatedRatio/ID = 1
287 SaturatedRatio/ConditionName = IsHit
288 SaturatedRatio/HistOne = nSaturatedPeaks
289 SaturatedRatio/HistTwo = nBraggPeaksNoOutliers
290 SaturatedRatio/Operation = "/"
291 SaturatedRatio/Hide = true
292 ; histogram the ratio
293 SaturatedRatioHist/ID = 60
294 SaturatedRatioHist/ConditionName = IsHit
295 SaturatedRatioHist/HistName = SaturatedRatio
296 SaturatedRatioHist/XNbrBins = 100
297 SaturatedRatioHist/XLow = 0
298 SaturatedRatioHist/XUp = 1
299 SaturatedRatioHist/XTitle = ratio of saturated to all
300 SaturatedRatioHist/Hide = true
301 ; average the histogram
302 SaturatedRatioHistSum/ID = 61
303 SaturatedRatioHistSum/ConditionName = IsHit
304 SaturatedRatioHistSum/HistName = SaturatedRatioHist
305 SaturatedRatioHistSum/NbrAverages = 300
306 SaturatedRatioHistSum/Hide = false
307 
308 
309 
310 
311 
312 
313 
314 
315 
316 
317 ;----------- Things done when there is a hit-------------------------
318 
319 [Processor]
320 ;-- the mpccd image when it is a hit
321 MPCCDIsHit/ID = 13
322 MPCCDIsHit/ConditionName = IsHit
323 MPCCDIsHit/HistName = MPCCD
324 MPCCDIsHit/Hide = false
325 ;-- create image containing the centroided bragg peaks
326 MPCCDCentroidBragg/ID = 207
327 MPCCDCentroidBragg/ConditionName = IsHit
328 MPCCDCentroidBragg/Table = BraggPeakTableNoOutliers
329 MPCCDCentroidBragg/ColumnIndex = 1
330 MPCCDCentroidBragg/RowIndex = 2
331 MPCCDCentroidBragg/ValIndex = 0
332 MPCCDCentroidBragg/XNbrBins = 512
333 MPCCDCentroidBragg/XLow = 0
334 MPCCDCentroidBragg/XUp = 512
335 MPCCDCentroidBragg/XTitle = columns
336 MPCCDCentroidBragg/YNbrBins = 8192
337 MPCCDCentroidBragg/YLow = 0
338 MPCCDCentroidBragg/YUp = 8192
339 MPCCDCentroidBragg/YTitle = rows
340 MPCCDCentroidBragg/Hide = true
341 ;-- sum up the image containing centroided bragg peaks
342 ;MPCCDCentroidBraggSum/ID = 62
343 ;MPCCDCentroidBraggSum/HistName = MPCCDCentroidBragg
344 ;MPCCDCentroidBraggSum/ConditionName = IsHit
345 ;MPCCDCentroidBraggSum/Hide = false
346 ;-- average the image containing centroided bragg peaks
347 MPCCDCentroidBraggAve/ID = 61
348 MPCCDCentroidBraggAve/HistName = MPCCDCentroidBragg
349 MPCCDCentroidBraggAve/ConditionName = IsHit
350 MPCCDCentroidBraggAve/NbrOfAverages = 0
351 MPCCDCentroidBraggAve/Hide = false
352 
353 
354 
355 
356 
357 
358 
359 
360 
361 
362 
363 ;-------------------program control and setup----------------------
364 
365 ; how many threads should retrieve the data
366 [SACLAOnlineInput]
367 
368 ;-- the octal detectors
369 OctalPixelDetectors/size = 1
370 ;-- MPCCD Image
371 OctalPixelDetectors/1/CASSID = 20
372 OctalPixelDetectors/1/Tiles/size = 8
373 OctalPixelDetectors/1/Tiles/1/TileName = "MPCCD-8-2-001-1"
374 OctalPixelDetectors/1/Tiles/2/TileName = "MPCCD-8-2-001-2"
375 OctalPixelDetectors/1/Tiles/2/NormalizeTo = 1
376 OctalPixelDetectors/1/Tiles/3/TileName = "MPCCD-8-2-001-3"
377 OctalPixelDetectors/1/Tiles/3/NormalizeTo = 1
378 OctalPixelDetectors/1/Tiles/4/TileName = "MPCCD-8-2-001-4"
379 OctalPixelDetectors/1/Tiles/4/NormalizeTo = 1
380 OctalPixelDetectors/1/Tiles/5/TileName = "MPCCD-8-2-001-5"
381 OctalPixelDetectors/1/Tiles/5/NormalizeTo = 1
382 OctalPixelDetectors/1/Tiles/6/TileName = "MPCCD-8-2-001-6"
383 OctalPixelDetectors/1/Tiles/6/NormalizeTo = 1
384 OctalPixelDetectors/1/Tiles/7/TileName = "MPCCD-8-2-001-7"
385 OctalPixelDetectors/1/Tiles/7/NormalizeTo = 1
386 OctalPixelDetectors/1/Tiles/8/TileName = "MPCCD-8-2-001-8"
387 OctalPixelDetectors/1/Tiles/8/NormalizeTo = 1
388 
389 
390 
391 ; what output level should be written into the log file
392 [Log]
394 ;MaxLoggingLevel = "VERBOSEINFO"
395 ;MaxLoggingLevel = "DEBUG4"
396 ;Directory = logfiledir
397 ;Filename = logfilename.log
Electrons_ YUp
Definition: hdf5-input.ini:88
FrontPnCCD CorrectionMaps Mask Radius
Electrons_ XUp
Definition: hdf5-input.ini:85
the raw images
sum up the image containing centroided bragg peaks
determine the particle size by the distance between the first minima of the q average[Processor]
hitfinding
Saturation[Processor]
BraggPeakTableNoOutliers Wavelength_A
MPCCDCentroidBraggSum Hide
ETOF_1_vs_Delay_ YTitle
Definition: hdf5-input.ini:209
MPCCDCentroidBraggSum ConditionName
GeneratedMaps HistTwo
Definition: Darkcal.ini:78
find nbr of bragg peaks by taking background with pixels that are free of
BraggPeakTableNoOutliers DetectorDistance_m
true Then one can use the IsHit Processor later on
Processor
true Then one can use the IsHit Processor later by only
BraggPeakTableNoOutliers GeometryFilename
The diffraction detector image[Processor] MPCCDRaw ID
substract the median of the integral from the integral and use
Electrons_ YLow
Definition: hdf5-input.ini:87
simple pixel detectors
Directory
program control and setup
MPCCD Image OctalPixelDetectors CASSID
Things done when there is a hit[Processor]
what output level should be written into the log file[Log] MaxLoggingLevel
generate a sublist of the list with all identified bragg spots
generic ini file for crystal hitfinding on cspad
Definition: CsPadCrystal.ini:2
definitions of when a hit is found
checks
Electrons_ YNbrBins
Definition: hdf5-input.ini:86
the processors
Definition: SACLA-online.ini:5
noise and mask[Processor]
ETOF_1_vs_Delay_ XTitle
Definition: hdf5-input.ini:205
CsPadDarkCal SNRNoiseAutoBoundariesStat
simpleMoreOptions for box hitfinding E SimpleFinder Threshold
Definition: hdf5-input.ini:47
identification for the later Processors by ANDing this with
Example of how to use the sacla online input
Definition: SACLA-online.ini:2
create the noise and bad pixel map[Processor]
the octal detectors OctalPixelDetectors size
treat the raw image of the MPCCD[Processor]
GeneratedMaps HistOne
Definition: Darkcal.ini:77
Electrons_ XNbrBins
Definition: hdf5-input.ini:83
CsPadDarkCal Train
Electron detector
Definition: hdf5-input.ini:62
int16_t pixel
define a pixel
Definition: hlltypes.hpp:27
Electrons_ XLow
Definition: hdf5-input.ini:84
how many threads should retrieve the data[SACLAOnlineInput]
MPCCDCentroidBraggSum HistName
Hitrate[Processor]
T retrieve(std::ifstream &file)
retrieve a variable from a file stream
Definition: cass.h:209
CsPadDarkCal SNRNoiseAutoBoundaries
create the offset
set up how to create the noise