arpes.utilities.conversion.api.convert_to_kspace#

arpes.utilities.conversion.api.convert_to_kspace(arr, *, bounds=None, resolution=None, calibration=None, coords=None, allow_chunks=False, **kwargs)[source]#

Converts volumetric the data to momentum space (“backwards”). Typically what you want.

Works in general by regridding the data into the new coordinate space and then interpolating back into the original data.

For forward conversion, see sibling methods. Forward conversion works by totally unchanged by the conversion (if we do not apply a Jacobian correction), but the converting the coordinates, rather than by interpolating the data. As a result, the data will be coordinates will no longer have equal spacing.

This is only really useful for zero and one dimensional data because for two dimensional data, the coordinates must become two dimensional in order to fully specify every data point (this is true in generality, in 3D the coordinates must become 3D as well).

The only exception to this is if the extra axes do not need to be k-space converted. As is the case where one of the dimensions is cycle or delay, for instance.

You can request a particular resolution for the new data with the resolution= parameter, or a specific set of bounds with the bounds=

Examples

Convert a 2D cut with automatically inferred range and resolution.

>>> convert_to_kspace(arpes.io.load_example_data())

xr.DataArray(…)

Convert a 3D map with a specified momentum window

>>> convert_to_kspace(
        fermi_surface_map,
        kx=np.linspace(-1, 1, 200),
        ky=np.linspace(-1, 1, 350),
    )
xr.DataArray(...)
Parameters:
  • arr (xr.DataArray) – ARPES data

  • bounds (dict[MOMENTUM, tuple[float, float]], optional) – The key is the axis name. The value is the bounds. Defaults to {}. If not set this arg, set coords.

  • resolution (dict[Momentum, float], optional) – dict for the energy/angular resolution.

  • calibration (DetectorCalibration, optional) – DetectorCalibration object. Defaults to None.

  • coords (KspaceCoords, optional) – Coordinate of k-space. Defaults to {}.

  • allow_chunks (bool) – [description]. Defaults to False.

  • **kwargs – treated as coords.

Raises:
  • NotImplementedError – [description]

  • AnalysisError – [description]

  • ValueError – [description]

Returns:

Converted ARPES (k-space) data.

Return type:

xr.DataArray