Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This is a filter module which implements skipping for the events which have too low signal in CsPad. filtering algorithm can be controlled trough the module parameter and/or parameters in calibration file. The name of the calibration file is "filter" and it will be searched in the standard calibration directories of the experiment.

Module configuration parameters:

...

parameter

default value

description

inputKey

''

string key used to locate uncalibrated data objects in event

source

...

"DetInfo(:Cspad)"

...

data source address

skipIfNoData

...

"yes"

...

when set to "yes" if the module does not find CsPad data in an event then it skips event

mode

...

-1

...

filtering mode, see below

parameters

...

all 0

...

list of parameters for filtering algorithm, up to 16 floating numbers

Parameter mode defines where the filter get its parameters and how it works. If set to -1 (default) then it reads parameters and actual mode value from a calibration text file which should contain one integer number for mode and up to 16 floating point parameters. If parameter is set to 0 or if the value read from file is 0 then no filtering is done, all events are passed through. If mode is set to 1 (from parameter or file) then filter calculates the number of pixels above certain threshold. Filter expects two values in parameter array: threshold for pixel value and minimum number of pixels above threshold. If second parameter is negative then it's assumed to be a percentage of the full number of pixels.

...

This module demonstrates of how to use the PixCoords2x1, PixCoordsQuad, and PixCoordsCSPad classes
in order to pre-calculate pixel coordinates, taking into account the calibration parameters.
Relevant images are produced in combination of the pixel coordinates with event data and saved in text files.

Module configuration parameters:

...

parameter

default value

description

calibDir

"/reg/d/psdm/CXI/cxi35711/calib"

...

directory with calibration

...

file

typeGroupName

...

"CsPad::CalibV1"

...

data type and group names

...

source

...

"CxiDs1.0:Cspad.0"

...

source of data

...

runNumber

...

32

run number for calibration file

...

events

...

32

number of events before stop a job

...

filter

...

false

on/off for potential selection filter

...

Module CSPadPixCoords::CSPadImageProducer

...

  • gets the pixel coordinates from PixCoords2x1, PixCoordsQuad, and PixCoordsCSPad classes,
  • gets data from the event,
  • produces the ndarray<double,2> or Image2D<double> object with CSPad image for each event,
  • adds the image object in the event for processing in other modules.
    Time consumed to fill the CSPad image array (currently 1750x1750) is measured to be about 40 msec/event on psana0105.

Module configuration parameters:

...

parameter

default value

description

calibDir

 

directory with calibration files, by default it is set to .../<experiment>/calib

typeGroupName

...

"CsPad::CalibV1"

...

calibration type and group names

...

source

...

"CxiDs1.0:Cspad.0"

...

source of data

...

key

...

 

key for data processing stage

...

imgkey

...

"image"

...

output key for image saved in event

...

tiltIsApplied

...

true

on/off for tilt angle of 2x1-sections and quads.

print_bits

...

0

verbosity:

  • =0 - print nothing,
  • +1 - input pars,
  • +2 - calib pars,
  • +4 - consumed time per event,
  • +8 - information about image saved in event.

Remarks:

  • By default the key corresponds to raw data.
  • If the imgkey is defined as "Image2D", the image is saved in the event as a CSPadPixCoords::Image2D<double> object, otherwise (by default) as a ndarray<double,2> object.

...