A quick walk-through of the tools that exist for analysis of xtc files with python.
The main focus is on pyana, and the examples are from and for XPP primarily,
but may be useful examples to other experiments too.
The Basics
Python
http://docs.python.org/tutorial/
Pyana
Analysis Workbook. Python-based Analysis
Exploring an xtc file
pyxtcreader
pyxtcreader -h usage: pyxtcreader [options] xtc-files ... options: -h, --help show this help message and exit -v, --verbose -l L1_OFFSET, --l1-offset=L1_OFFSET
Loops through the xtc datagrams and dumps info to screen. I recommend piping it to 'less'.
xtcscanner
xtcscanner -h usage: xtcscanner [options] xtc-files ... options: -h, --help show this help message and exit -n NDATAGRAMS, --ndatagrams=NDATAGRAMS -v, --verbose -l L1_OFFSET, --l1-offset=L1_OFFSET -e, --epics
Similar to pyxtcreader in that it loops throug xtc datagrams, but doesn't print to screen. Internally counts the datatypes it finds, and at the end dumps a summary only. Optinally prints out epics information (default no).
Example output:
xtcscanner -n 200 /reg/d/psdm/AMO/amo01509/xtc/e8-r0094-s0* Scanning.... Start parsing files: ['/reg/d/psdm/AMO/amo01509/xtc/e8-r0094-s00-c00.xtc', '/reg/d/psdm/AMO/amo01509/xtc/e8-r0094-s01-c00.xtc'] 201 datagrams read in 0.070000 s . . . . . . . ------------------------------------------------------------- XtcScanner information: - 1 calibration cycles. - Events per calib cycle: [197] Information from 0 control channels found: Information from 9 devices found BldInfo:EBeam: EBeamBld (197) BldInfo:FEEGasDetEnergy: FEEGasDetEnergy (197) DetInfo:AmoETof-0|Acqiris-0: (5 ch) AcqConfig_V1 (1) AcqWaveform_V1 (197) DetInfo:AmoGasdet-0|Acqiris-0: (2 ch) AcqConfig_V1 (1) AcqWaveform_V1 (197) DetInfo:AmoITof-0|Acqiris-0: (1 ch) AcqConfig_V1 (1) AcqWaveform_V1 (197) DetInfo:AmoMbes-0|Acqiris-0: (1 ch) AcqConfig_V1 (1) AcqWaveform_V1 (197) DetInfo:EpicsArch-0|NoDevice-0: Epics_V1 (688) DetInfo:NoDetector-0|Evr-0: EvrConfig_V2 (1) ProcInfo:: RunControlConfig_V1 (11) XtcScanner is done! -------------------------------------------------------------
xtcexplorer
XTC Explorer - GUI interface that builds pyana modules for you.
Extracting the data with pyana, some examples
Point detector delay scan
Image peak finding
CSPad images and tile arangements
Saving data arrays
Plotting with MatPlotLib
Interactive analysis with iPython
Non-interactive batch analysis
Overview
Content Tools