You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 68 Next »

Draft, in work.

Unable to render {include} The included page could not be found.

iPython has several features useful for inspecting Python objects and object hierarchies, in particular Tab completion/expansion of attributes, very handy in this case for inspecting the structure of Xtc data.

Once you've cloned the LCLS2 PSDM repository and built the executables therein, generate sample Xtc data files and inspect with iPython and psana. These notes are current as of tag Ric-180309c.

Setting Up

Switch to PSDM conda Environment

Return to the PSDM conda environment, if necessary.

# At the top of the PSDM lcls2 git repo
user@host> bash
user@host-BASH> source ./setup_env.sh
(ps-0.1.2) [user@host-BASH]$

Generate a Sample Data File

Generate a file of simple Xtc-formatted dummy data.

# Usage: xtcwriter [-f <filename> -t -h]
(ps-0.1.2) [user@host-BASH]$ xtcwriter -f test.xtc

Create a Basic psana Data Import Script

We need a simple script, let's call it quick.py, to execute in the iPython session.

quick.py
from psana import DataSource

ds = DataSource('test.xtc')

for evt in ds.events():
	pass

Inspecting Xtc Data in iPython

Start iPython and Run Import Script

  1. Start iPython.

    (ps-0.1.2) [user@host-BASH]$ ipython
    
    Python 3.6.6 |Anaconda, Inc.| (default, Jun 28 2018, 17:14:51) 
    Type 'copyright', 'credits' or 'license' for more information
    IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.
    
    In [1]:
  2. Run quick.py.

    # In iPython session
    In [1]: run quick.py
  3. asdasd


     

  • No labels