Versions Compared

Key

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

The timetool camera measures the time difference between laser and FEL in one of two methods:

  1. spatial encoding (also called "reflection" mode), where the X-rays change the reflectivity of a material and the laser probesthat change by the incident angle of its wavefront; or
  2. spectral encoding (also called "transmission" mode), where the X-rays change the transmission of a material and the chirped laser probes it by a change in the spectral components of the transmitted laser.

Both modes can be analyzed with this software, but in "transmission" mode one can typically use the default values for the filter weights (described below).  This is because most experiments use a similar setup in this mode.  In "reflection" mode, the filter weights must typically be tuned per-experiment, which is a non-trivial task.

TimeTool results can be computed by the DAQ while data is being recorded and written directly into the .xtc files, or after data has been recorded. In AMO/XPP the time tool analysis is done by the DAQ while data is being recorded. Results can be accessed using the following epics-variables names: TTSPEC:AMPL , TTSPEC:AMPLNXT, TTSPEC:FLTPOS, TTSPEC:FLTPOSFWHM, TTSPEC:FLTPOS_PS, TTSPEC:REFAMPL or by getting the appropriate Psana.TimeTool.DataV* object from the event (either V1 or V2) from the opal camera source.

...

This document covers how to run the TimeTool after data has been recorded. Starting with ana-0.16.9, a Python wrapper to the TimeTool is provided which is the preferred way to run the TimeTool algorithms. Previous to ana-0.16.9 one would use Psana modules. One would loadi load the C++ TimeTool.Analyze module via a psana config file.

...

Next one needs to write a Psana Module (not a standard Python script) that adds these variables into the event. A good reference for Psana Modules is psana - User Manual. Note - this link is different then the links that discuss writing Python scripts, such as  psana - Python Script Analysis Manual. The Psana module will have to add the variables for every event - once you specify a value for beam_on_off_key, or laser_on_off_key, those keys need to be present for all events. An example Psana Module written in Python might be

...