Page History
Table of Contents maxLevel 2
NOTE: if you want to run ami2 ami on LCLS1 data, you can do it by generating an h5 file with the LCLS1 MPIDataSource.
To get the ami2 ami environment on the psana cluster:
Code Block | ||
---|---|---|
| ||
ssh psana
source /reg/g/psdm/sw/conda2/manage/bin/psconda.sh
conda activate ps-3.0.14 |
Run the appropriate command from the "examples" sections below and do (for example) the following:
...
For examples that load a predefined graph (.fc file, for "flow chart") you should see a window like this, while examples with no .fc file will have an empty area in the upper right:
Loading Data in AMI
There are three different ways to load data in AMI, either through using the gui, providing a json file, or by passing command line arguments. The different methods are described below.
Loading Data through the GUI
The first option is to run ami-local without any flags. Once the main window appears, click the Configure button and the window in the image above will appear. From there hdf5 files or xtc2 files can be loaded by clicking on Add. Only one type of file may be loaded at a time, either hdf5 or xtc2, but multiple files can be loaded. AMI will loop through all the events in each file in the order they are loaded. The different options are explained below.
Note: If a source is configured through the gui configuration window, the source configuration will be saved with the graph and can be automatically reloaded by running ami-local -l <graph.fc>
JSON Configuration File
...
Code Block |
---|
{ "interval": 0.01, "init_time": 0.5, "repeat": true, "files": ["run22.h5"] } |
Additionally a JSON file containing a source configuration may be provided. A URI to the file where the prefix contains the source type must be passed to AMI. For example to load the above file run ami-local hdf5:///worker.json to use the psana source run ami-local psana:///worker.json.
Command Line Configuration
Given a psana experiment and run number the xtc2 files can be loaded using the following syntax:
Code Block |
---|
ami-local psana://exp=tstx00417:run=82 |
Configuration Flags
Flag | Description |
---|---|
interval | Time in seconds to sleep between events |
init_time | Time in seconds to sleep before emitting the first event |
repeat | Loop over files/events after reaching end |
files | Comma separated list of files to load (either xtc2 or hdf5) |
These flags can be passed to the source using any of the three methods above, the gui configuration window, a json file, or using the -f command line flag. To specify multiple flags using the command line pass -f multiple times ex: ami-local -f interval=0.1 -f init_time=0.5 -f files=run22.h5,run23.h5 hdf5://
TMO Examples
Example includes:
- waveform viewing, ROI, integration and normalization of peak area
- waveform peak finding, histogramming, and scaling of axes using a polynomial "calibration"
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/tmo/run43.fc hdf5:///reg/g/psdm/tutorials/ami2/tmo/run43.json |
Cookiebox example
Code Block |
---|
ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amoi0314_run167.json ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amoi0314_run171.json ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amoi0314_run172.json ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amo86815_run37.json ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amo86815_run70.json ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amo86815_run71.json ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amo86815_run72.json |
Quadanode example
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/tmo/amox27716-r0100.fc ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amox27716_run78.json ami-local hdf5:///reg/g/psdm/tutorials/ami2/tmo/amox27716_run100.json |
POP example
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/tmo/pop.fc |
Peakfinder example
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/tmo/amox27716_run100.fc |
XTCAV example
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/tmo/amox23616_run137.fc |
Timetool example
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/tmo/amo64913_run185.fc |
HSD example
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/tmo/hsd.fc -f repeat=true psana://exp=tstx00417:run=82 |
RIX Examples
Example includes:
- photon centroid finding on vertically binned Andor camera
- linearity check of normalization (andor camera intensity vs. acqiris waveform intensity) with pearson-R calculation as a function of time
...
Code Block |
---|
ami-local -e ami -l /reg/g/psdm/tutorials/ami2/neh2.2/sxrlq7615_run176.fc pvlist localhost:5075 pvget ami:ana:graph:data:peak_area |
XPP Example
Code Block |
---|
ami-local hdf5:///reg/g/psdm/tutorials/ami2/xpp/xpp.json |
Random Data Examples
Calculator example
Example includes:
- calculator executing based on conditional logic
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/random/calculator.fc random:///reg/g/psdm/tutorials/ami2/random/worker.json |
Complex example
Example includes:
- binning based on conditional logic
Code Block |
---|
ami-local -l /reg/g/psdm/tutorials/ami2/random/complex_example.fc random:///reg/g/psdm/tutorials/ami2/random/worker.json |
...