Versions Compared

Key

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

...

This is a description and documentation of a GUI tool to explore the XTC data (see Analysis Workbook. Data Formats). The executable is named xtcexplorer, and the software package is named XtcExplorer. The GUI is written in Python/PyQt, while the data is extracted using the LCLS framework pyana (we're currently in process of switching to using psana for this). Visualization of data is obtaned with the plotting package matplotlib, while much of the data algorithms in python relies on NumPy / SciPy libraries.

...

For a similar tool to explore the HDF5 data format, look at HDF5 Explorer - Old.

How to get started

  1. Set up your release work directory:
    You should always run this code from your own release working directory.
    See Account Setup for more details on how to set up the analysis environment:
    Code Block
    none
    none
    [user@pslogin ~] newrel ana-current myrelease
    [user@pslogin ~] cd myrelease
    [user@pslogin myrelease] sit_setup
    

  2. Check out the XtcExplorer package from the SVN software repository:
    This step is optional. But without it, you will not be able to edit/customize any source files.
    You need an afs token to check out the package, which on pslogin is automatic (I think), but if you're on psananeh/psanafeh, issue a kinit command first:
    Code Block
    none
    none
    [user@pslogin myrelease] kinit
    Password for user@SLAC.STANFORD.EDU:
    
    Now you're ready to check out the package and "compile":
    Code Block
    none
    none
    [user@pslogin myrelease] addpkg XtcExplorer
    [user@pslogin myrelease] scons
    
    Note! You can also do 'addpkg XtcExplorer VXX-XX-XX' to get a specific version of the package, or 'addpkg XtcExplorer HEAD' to get the very latest version.

  3. Run the program:
    Launch the GUI with the command 'xtcexplorer' and optionaly give the input xtc files that you want to read
    as arguments. You can also browse to find files after launching the browser.

    To have access to the xtc files, you need to login to psananeh/psanafeh for this:
    Code Block
    [user@psanaXXX myrelease] sit_setup
    [user@psanaXXX myrelease] xtcexplorer /reg/d/psdm/CXI/cxi22010/xtc/e60-r0465-s0*
    

...

More information on how to run pyana by itself (see 'pyana -h' for more help, or the pyana section of confluence).

The pyana modules

...

Code Block
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

Example:

none
Code Block
none
titlextcscanner -n 200 /reg/d/psdm/AMO/amo01509/xtc/e8-r0094-s0*
none
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!
-------------------------------------------------------------

...