CFEL - ASG Software Suite  2.5.0
CASS
SACLA-online.ini
;/** @example SACLA-online.ini */
;;
;; Example of how to use the sacla online input
;; using a typical sfx experiment
;;
; ---------------------the processors--------------------------
; The diffraction detector image
MPCCDRaw/ID = 109
MPCCDRaw/CASSID = 20
MPCCDRaw/nCols = 512
MPCCDRaw/nRows = 8192
MPCCDRaw/Hide = true
;------ create the offset, noise and bad pixel map-----
;-- only collect dark images when told so by the viewer
MPCCDDarkCal/ID = 330
MPCCDDarkCal/RawImage = MPCCDRaw
MPCCDDarkCal/ConditionName = DefaultTrueHist
MPCCDDarkCal/Train = false
MPCCDDarkCal/WriteCal = true
MPCCDDarkCal/NbrTrainingImages = 100
MPCCDDarkCal/SNR = 4
MPCCDDarkCal/SNRNoiseAutoBoundaries = 4
MPCCDDarkCal/SNROffsetAutoBoundaries = 4
MPCCDDarkCal/SNROffsetAutoBoundariesStat = 4
MPCCDDarkCal/MinNbrPixels = 90
MPCCDDarkCal/ResetBadPixels = false
MPCCDDarkCal/UpdateCalibration = false
MPCCDDarkCal/UpdateBadPixAndSavePeriod = 800
MPCCDDarkCal/Hide = true
;-- get the offset map
OffsetMap/ID = 70
OffsetMap/HistName = MPCCDDarkCal
OffsetMap/XLow = 0
OffsetMap/XUp = 511
OffsetMap/YLow = 0
OffsetMap/YUp = 8191
OffsetMap/Hide = false
;-- histogram of the offset values
OffsetMapHist/ID = 60
OffsetMapHist/HistName = OffsetMap
OffsetMapHist/XNbrBins = 10000
OffsetMapHist/XLow = -2000
OffsetMapHist/XUp = 5000
OffsetMapHist/XTitle = OffsetValues [adu]
OffsetMapHist/Hide = false
;-- get the noise map
NoiseMap/ID = 70
NoiseMap/HistName = MPCCDDarkCal
NoiseMap/XLow = 0
NoiseMap/XUp = 511
NoiseMap/YLow = 8192
NoiseMap/YUp = 16383
NoiseMap/Hide = false
;-- histogram of the noise values
NoiseMapHist/ID = 60
NoiseMapHist/HistName = NoiseMap
NoiseMapHist/XNbrBins = 10000
NoiseMapHist/XLow = 0
NoiseMapHist/XUp = 200
NoiseMapHist/XTitle = NoiseValues [adu]
NoiseMapHist/Hide = false
;-- get the bad pixel map
BadPixMap/ID = 70
BadPixMap/HistName = MPCCDDarkCal
BadPixMap/XLow = 0
BadPixMap/XUp = 511
BadPixMap/YLow = 24576
BadPixMap/YUp = 32767
BadPixMap/Hide = false
;---- treat the raw image of the MPCCD -----
; generate offset corrected image
MCCDOffsetCorrected/ID = 1
MCCDOffsetCorrected/HistOne = MPCCDRaw
MCCDOffsetCorrected/HistTwo = OffsetMap
MCCDOffsetCorrected/Operation = "-"
MCCDOffsetCorrected/Hide = true
; mask the bad pixels of the detector
MPCCD/ID = 41
MPCCD/HistName = MCCDOffsetCorrected
MPCCD/ThresholdName = BadPixMap
MPCCD/UserVal = 0
MPCCD/LowerBound = 0.5
MPCCD/UpperBound = 1.5
MPCCD/Hide = false
;-------- hitfinding------
; find nbr of bragg peaks by taking background with pixels that are free of
; outliers
BraggPeakTableNoOutliers/ID = 208
BraggPeakTableNoOutliers/HistName = MPCCD
BraggPeakTableNoOutliers/SectionSizeX = 512
BraggPeakTableNoOutliers/SectionSizeY = 1024
BraggPeakTableNoOutliers/BoxSizeX = 5
BraggPeakTableNoOutliers/BoxSizeY = 5
BraggPeakTableNoOutliers/Threshold = 3000
BraggPeakTableNoOutliers/MinSignalToNoiseRatio = 3
BraggPeakTableNoOutliers/MinNbrPixels = 2
BraggPeakTableNoOutliers/Wavelength_A = 1.8068
BraggPeakTableNoOutliers/DetectorDistance_m = 10e-3
BraggPeakTableNoOutliers/PixelSize_m = 50e-6
BraggPeakTableNoOutliers/Hide = true
;--
nBraggPeaksNoOutliers/ID = 88
nBraggPeaksNoOutliers/HistName = BraggPeakTableNoOutliers
nBraggPeaksNoOutliers/AxisParameter = YNbrBins
nBraggPeaksNoOutliers/Hide = true
;--
BraggPeakNoOutliersHitfinder/ID = 9
BraggPeakNoOutliersHitfinder/HistName = nBraggPeaksNoOutliers
BraggPeakNoOutliersHitfinder/UpperLimit = 1e20
BraggPeakNoOutliersHitfinder/LowerLimit = 10
BraggPeakNoOutliersHitfinder/Hide = true
SubsetBraggPeakTable/ID = 73
SubsetBraggPeakTable/TableName = BraggPeakTableNoOutliers
SubsetBraggPeakTable/ColumnIndex = 9
SubsetBraggPeakTable/UpperBound = 1e20
SubsetBraggPeakTable/LowerBound = 00
SubsetBraggPeakTable/Hide = true
;--
nSubsetBraggPeaks/ID = 88
nSubsetBraggPeaks/HistName = SubsetBraggPeakTable
nSubsetBraggPeaks/AxisParameter = YNbrBins
nSubsetBraggPeaks/Hide = true
;--
SubsetBraggPeakHitfinder/ID = 9
SubsetBraggPeakHitfinder/HistName = nSubsetBraggPeaks
SubsetBraggPeakHitfinder/UpperLimit = 1e20
SubsetBraggPeakHitfinder/LowerLimit = 0
SubsetBraggPeakHitfinder/Hide = true
;--
InfoImageNotRotated/ID = 205
InfoImageNotRotated/ConditionName = SubsetBraggPeakHitfinder
InfoImageNotRotated/HistName = MPCCD
InfoImageNotRotated/TableName = SubsetBraggPeakTable
InfoImageNotRotated/IndexColumn = 5
InfoImageNotRotated/Radius = 2
InfoImageNotRotated/DrawPixelValue = 160000
InfoImageNotRotated/BoxSizeX = 4
InfoImageNotRotated/BoxSizeY = 4
InfoImageNotRotated/DrawBox = true
InfoImageNotRotated/DrawCircle = false
InfoImageNotRotated/Hide = false
InfoImage/ID = 1602
InfoImage/ConditionName = SubsetBraggPeakHitfinder
InfoImage/GeometryFilename = /path/to/cspad.geom
InfoImage/HistName = InfoImageNotRotated
InfoImage/Hide = false
;--
MaxADUColumn/ID = 72
MaxADUColumn/ConditionName = SubsetBraggPeakHitfinder
MaxADUColumn/TableName = SubsetBraggPeakTable
MaxADUColumn/ColumnIndex = 12
MaxADUColumn/Hide = true
MaxADUHistory/ID = 64
MaxADUHistory/ConditionName = SubsetBraggPeakHitfinder
MaxADUHistory/HistName = MaxADUColumn
MaxADUHistory/Size = 6000
MaxADUHistory/Hide = false
;--
SNRColumn/ID = 72
SNRColumn/ConditionName = SubsetBraggPeakHitfinder
SNRColumn/TableName = SubsetBraggPeakTable
SNRColumn/ColumnIndex = 4
SNRColumn/Hide = true
SNRHistory/ID = 64
SNRHistory/ConditionName = SubsetBraggPeakHitfinder
SNRHistory/HistName = SNRColumn
SNRHistory/Size = 6000
SNRHistory/Hide = false
;--
nOutlierColumn/ID = 72
nOutlierColumn/ConditionName = SubsetBraggPeakHitfinder
nOutlierColumn/TableName = SubsetBraggPeakTable
nOutlierColumn/ColumnIndex = 13
nOutlierColumn/Hide = true
nOutlierHistory/ID = 64
nOutlierHistory/ConditionName = SubsetBraggPeakHitfinder
nOutlierHistory/HistName = nOutlierColumn
nOutlierHistory/Size = 6000
nOutlierHistory/Hide = false
;--
nPixColumn/ID = 72
nPixColumn/ConditionName = SubsetBraggPeakHitfinder
nPixColumn/TableName = SubsetBraggPeakTable
nPixColumn/ColumnIndex = 3
nPixColumn/Hide = true
nPixHistory/ID = 64
nPixHistory/ConditionName = SubsetBraggPeakHitfinder
nPixHistory/HistName = nPixColumn
nPixHistory/Size = 6000
nPixHistory/Hide = false
;--
stdvColumn/ID = 72
stdvColumn/ConditionName = SubsetBraggPeakHitfinder
stdvColumn/TableName = SubsetBraggPeakTable
stdvColumn/ColumnIndex = 9
stdvColumn/Hide = true
stdvHistory/ID = 64
stdvHistory/ConditionName = SubsetBraggPeakHitfinder
stdvHistory/HistName = stdvColumn
stdvHistory/Size = 6000
stdvHistory/Hide = false
;--
meanColumn/ID = 72
meanColumn/ConditionName = SubsetBraggPeakHitfinder
meanColumn/TableName = SubsetBraggPeakTable
meanColumn/ColumnIndex = 8
meanColumn/Hide = true
meanHistory/ID = 64
meanHistory/ConditionName = SubsetBraggPeakHitfinder
meanHistory/HistName = meanColumn
meanHistory/Size = 6000
meanHistory/Hide = false
;-- define the hit ----
IsHit/ID = 1
IsHit/HistOne = DefaultTrueHist
IsHit/HistTwo = BraggPeakNoOutliersHitfinder
IsHit/Operation = "AND"
IsHit/Hide = true
HitRate/ID = 61
HitRate/HistName = IsHit
HitRate/NbrOfAverages = 600
HitRate/Hide = true
;--
HitRateHistory/ID = 64
HitRateHistory/HistName = HitRate
HitRateHistory/Size = 3000
HitRateHistory/Hide = false
;-------checks-------------
; generate a sublist of the list with all identified bragg spots
; that contains only entries with saturated pixels
SaturatedPeaksTable/ID = 73
SaturatedPeaksTable/ConditionName = IsHit
SaturatedPeaksTable/TableName = BraggPeakTableNoOutliers
SaturatedPeaksTable/ColumnIndex = 12
SaturatedPeaksTable/UpperBound = 1e20
SaturatedPeaksTable/LowerBound = 200000
SaturatedPeaksTable/Hide = true
; how many rows has the list
nSaturatedPeaks/ID = 88
nSaturatedPeaks/ConditionName = IsHit
nSaturatedPeaks/HistName = SaturatedPeaksTable
nSaturatedPeaks/AxisParameter = YNbrBins
nSaturatedPeaks/Hide = true
; take the ratio to all peak on the list
SaturatedRatio/ID = 1
SaturatedRatio/ConditionName = IsHit
SaturatedRatio/HistOne = nSaturatedPeaks
SaturatedRatio/HistTwo = nBraggPeaksNoOutliers
SaturatedRatio/Operation = "/"
SaturatedRatio/Hide = true
; histogram the ratio
SaturatedRatioHist/ID = 60
SaturatedRatioHist/ConditionName = IsHit
SaturatedRatioHist/HistName = SaturatedRatio
SaturatedRatioHist/XNbrBins = 100
SaturatedRatioHist/XLow = 0
SaturatedRatioHist/XUp = 1
SaturatedRatioHist/XTitle = ratio of saturated to all
SaturatedRatioHist/Hide = true
; average the histogram
SaturatedRatioHistSum/ID = 61
SaturatedRatioHistSum/ConditionName = IsHit
SaturatedRatioHistSum/HistName = SaturatedRatioHist
SaturatedRatioHistSum/NbrAverages = 300
SaturatedRatioHistSum/Hide = false
;----------- Things done when there is a hit-------------------------
;-- the mpccd image when it is a hit
MPCCDIsHit/ID = 13
MPCCDIsHit/ConditionName = IsHit
MPCCDIsHit/HistName = MPCCD
MPCCDIsHit/Hide = false
;-- create image containing the centroided bragg peaks
MPCCDCentroidBragg/ID = 207
MPCCDCentroidBragg/ConditionName = IsHit
MPCCDCentroidBragg/Table = BraggPeakTableNoOutliers
MPCCDCentroidBragg/ColumnIndex = 1
MPCCDCentroidBragg/RowIndex = 2
MPCCDCentroidBragg/ValIndex = 0
MPCCDCentroidBragg/XNbrBins = 512
MPCCDCentroidBragg/XLow = 0
MPCCDCentroidBragg/XUp = 512
MPCCDCentroidBragg/XTitle = columns
MPCCDCentroidBragg/YNbrBins = 8192
MPCCDCentroidBragg/YLow = 0
MPCCDCentroidBragg/YUp = 8192
MPCCDCentroidBragg/YTitle = rows
MPCCDCentroidBragg/Hide = true
;-- sum up the image containing centroided bragg peaks
;MPCCDCentroidBraggSum/ID = 62
;MPCCDCentroidBraggSum/HistName = MPCCDCentroidBragg
;MPCCDCentroidBraggSum/ConditionName = IsHit
;MPCCDCentroidBraggSum/Hide = false
;-- average the image containing centroided bragg peaks
MPCCDCentroidBraggAve/ID = 61
MPCCDCentroidBraggAve/HistName = MPCCDCentroidBragg
MPCCDCentroidBraggAve/ConditionName = IsHit
MPCCDCentroidBraggAve/NbrOfAverages = 0
MPCCDCentroidBraggAve/Hide = false
;-------------------program control and setup----------------------
; how many threads should retrieve the data
[SACLAOnlineInput]
;-- the octal detectors
OctalPixelDetectors/size = 1
;-- MPCCD Image
OctalPixelDetectors/1/CASSID = 20
OctalPixelDetectors/1/Tiles/size = 8
OctalPixelDetectors/1/Tiles/1/TileName = "MPCCD-8-2-001-1"
OctalPixelDetectors/1/Tiles/2/TileName = "MPCCD-8-2-001-2"
OctalPixelDetectors/1/Tiles/2/NormalizeTo = 1
OctalPixelDetectors/1/Tiles/3/TileName = "MPCCD-8-2-001-3"
OctalPixelDetectors/1/Tiles/3/NormalizeTo = 1
OctalPixelDetectors/1/Tiles/4/TileName = "MPCCD-8-2-001-4"
OctalPixelDetectors/1/Tiles/4/NormalizeTo = 1
OctalPixelDetectors/1/Tiles/5/TileName = "MPCCD-8-2-001-5"
OctalPixelDetectors/1/Tiles/5/NormalizeTo = 1
OctalPixelDetectors/1/Tiles/6/TileName = "MPCCD-8-2-001-6"
OctalPixelDetectors/1/Tiles/6/NormalizeTo = 1
OctalPixelDetectors/1/Tiles/7/TileName = "MPCCD-8-2-001-7"
OctalPixelDetectors/1/Tiles/7/NormalizeTo = 1
OctalPixelDetectors/1/Tiles/8/TileName = "MPCCD-8-2-001-8"
OctalPixelDetectors/1/Tiles/8/NormalizeTo = 1
; what output level should be written into the log file
[Log]
;MaxLoggingLevel = "VERBOSEINFO"
;MaxLoggingLevel = "DEBUG4"
;Directory = logfiledir
;Filename = logfilename.log