arpes.analysis.tarpes.build_crosscorrelation#

arpes.analysis.tarpes.build_crosscorrelation(datalist, delayline_dim='position', delayline_origin=0, *, convert_position_to_time=<function position_mm_to_delaytime_fs>)[source]#

Constructs a multidimensional data array from cross-correlation measurements.

This function processes a series of cross-correlation data arrays by assigning delay times based on the specified delay line dimension. It supports conversion from position units (e.g., mm) to time units if requested.

Parameters:
  • datalist (Sequence[xr.DataArray]) – Data series from the cross-correlation experiments. Each data element should contain the delay line value in attrs[delayline_dim], not in coolrds.

  • delayline_dim (str, optional) – The key in data.attrs representing the delay line value (default: “position”). When this is “position”, the unit is assumed to be mm.

  • delayline_origin (float, optional) – The value corresponding to the delay zero position. Defaults to 0.

  • convert_position_to_time (Callable[[float], float] | None) – Function to convert the delay line values from position to time units. Default to position_mm_to_delaytime_fs, which convert to the delayline position in mm to delay time in fs. For example, when you need convert to delay time in ps, another conversion function is required. If None, the delay line values are used as-is.

Returns: xr.DataArray

A stacked data array with an additional “delay” dimension.