Versions Compared

Key

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

...

A few things to note about the different detectors / pyana modules:

Common configuration parameters

A few

...

parameters are common to all modules, and their default values are set to be the same, but can also be set individually for each module. They are the following:

Code Block
none
none

# parameter name   default value   comment
  plot_every_n      = 

...

100         # If 0, 

...

plot 

...

only 

...

at the end

...

. Else, display every N events
  fignum            = 1           #

...

 

...

matplotlib figure 

...

number

pyana_plotter

...

This module is added to the end of the job, after other modules. It does nothing (yet) than control the display mode. Default is SlideShow mode. There's also a handle to allow you to use ipython at the end of the job (or after each plot) to investigate your plottet arrays further. This is not functional yet.

Code Block
none
none

  display_mode      = 2           #  Interactive (1) or SlideShow (2) or NoDisplay (0)
  ipython           = False       #  Drop into ipython after each 

...

plot (to allow further investigation of data)

pyana_bld

This module collects data from the BeamLine Detectors (Bld) and plots them in separate windows. In SlideMode, the plots accumulate from one plot to the next.
To run this module by itself with pyana:

pyana -m XtcExplorer/src/pyana_waveform.py <xtc files>

...

Code Block
none
none

 do_ebeam           = False       #  Plot data from EBeam object
 do_gasdetector     = False       #  Plot data from GasDetector
 do_phasecavity     = False       #  Plot data from PhaseCavity
 do_ipimb           = False       #  Plot data from SharedIpimb

Image Modified Image Modified Beam energy and position. Gas detector energy measurements

pyana_waveform

...

Plots waveform data from Acqiris digitizers. Takes a list of addresses, currently will make one plot for each channel of each device.
To run this module by itself with pyana:

pyana -m XtcExplorer/src/pyana_waveform.py <xtc files>

Configurable options:

Code Block
none
none

  sources           =             # string, space-separated list of addresses (Detector-Id|Device-ID)

Image Modified

pyana_cspad

...

CsPad data is reconstructed in pyana_cspad.py. The image plot value limits are adjusted automatically, but if
you want to change them, click on the color bar (left-click for low limit, right-click for high limit).
The successive events will be plotted with the new limits. Revert to the original by middle-clicking.
To run this module by itself with pyana:

pyana -m XtcExplorer/src/pyana_cspad.py <xtc files>

Options must be specified in a configuration file, or the default values will be used, e.g.:. Only the img_sources parameter is required.

code
Code Block
none
none
  imageimg_sourcesources       =             # string, Address of Detector-Id|Device-ID
  dark_img_file     =             # filename, Dark image file to be loaded, if any
  out_img_file      =             # filename (If collecting: write the average image to this file)
  plot_vrange       =             # range=vmin-,vmax of values for plotting (pixel intensity)
  threshold         =             # lower threshold for image intensity in active threshold area of the plot
  thr_area          =             # active threshold area (range=xmin,xmax,ymin,ymax defining threshold area). None == whole image. 

Image display of the CSPad detector, background subtracted. This is currently the only display that has interactive features. A filter allows you to select events within requested intensity range.

pyana_image.py

This module processes generic camera frames, e.g from Pulnix TM6740 device. It allows any number of images, given as a space-separated list of addresses in the

...

configuration file.

  • You can set ranges to define good images and dark images. If both are set, you have the option to display good images background subtracted, where background subtraction is based on the average of background images so far collected.
  • Each image can be separately rotated, shifted and scaled (zoomed in/out).
  • Nicknames can be given to the input images. Defaults are Im1, Im2... etc. These names will be used if you plot differences, or other manipulations of the original images.
  • The images are subtracted and differences displayed as well as fourier transform of differences. Examples of what may be displayed. To display other things, at this stage you have to edit pyana_image.py to change this behaviour.
    Code Block
    none
    none
    
     image_addresses     # address string of Detector-Id|Device-ID
     good_range          # threshold values selecting images of interest (Format: low
    --
    ,high)
     dark_range          # threshold values selecting dark images (Format: low
    --
    ,high)
     image_rotations     # rotation angle, in degrees, to be applied to image(s)
     image_shifts        # npixel shifts, format (nx,ny), to be applied to image(s)
     image_scales        # scale factor (float) to be applied to images
     image_nicknames     # nicknames for plot titles
     image_manipulations # String containing keywords: Diff, FFT
     output_file         # filename. Valid extensions are .hdf5, .txt (ascii) or .npy (numpy binary)
     n_hdf5              # if output file is hdf5, combine n events in each output file.
    

    Image Modified

    Displays of three different Pulnix TM6740 images of YAG screens, after rotation/translation. Also shown, differences between images and FFT of differences.

pyana_ipimb

Code Block
none
none

ipimb_addresses     # list of IPIMB addresses

Image Modified

pyana_epics

Code Block
none
none

pv                  # Name(s) of the EPICS PV(s) to dump

pyana_scan

...

This module is different from the others. It does a "motor scan", displays certain values as a function of scan step of a motor scan. The motor name is given in the xtc file as the Control PV. There may be more than one control PV. It currently takes two scalar type inputs to evaluate the scan:

Code Block
none
none

input_epics         # Name(s) of other scalars to correlate in scan
input_scalars       # Name(s) of other scalars to correlate in scan

Image Modified

xtcscanner

This tool also belongs to the XtcExplorer package, and is used by the GUI. But the tool can also be run directly from the command line:

...