Photon-energy annotations

Use this guide to mark constant-photon-energy curves on converted \(k_\parallel\)-\(k_z\) intensity. Start with an \(h\nu\)–dependent scan that follows ARPES data conventions. Complete Converting hν–dependent scans before you add the curves.

Python

Calculate the \(k_z\) positions at the binding energy shown in the figure:

photon_energies = [30, 45, 60]
binding_energy = -0.3
kz_values = converted.kspace.hv_to_kz(photon_energies).qsel(
    eV=binding_energy,
)

Plot one curve for each photon energy:

import matplotlib.pyplot as plt

import erlab.plotting as eplt

fig, ax = plt.subplots(figsize=(3.4, 3.0), layout="compressed")
eplt.plot_array(
    converted.qsel(eV=binding_energy).T,
    ax=ax,
    cmap="viridis",
    aspect="equal",
)
for index in range(kz_values.sizes["hv"]):
    kz = kz_values.isel(hv=index)
    ax.plot(kz.kx, kz, label=rf"$h\nu={float(kz.hv):g}$ eV")
ax.legend()

(Source code)

Converted constant energy surface with calculated kz values for three photon energies

The curves use the stored geometry, work function, and inner potential. They do not show measured intensity at a new photon energy.

Figure Composer

  1. Add converted in Sources.

  2. Use one axes in Layout.

  3. Add a Slice Plot step for converted. Set Dimension to eV, enter the required binding energy, and set Axis to image. Enable Transpose so that \(k_\parallel\) is horizontal and \(k_z\) is vertical.

  4. Add a Photon Energy Overlay step after the image. Select converted as Overlay data and target the same axes.

  5. Under , enter the photon energies and the same Binding energy used for the image.

  6. Under Style, enable Legend. Adjust the line and label controls only when the curves obscure the data.

See hv_to_kz for the coordinate calculation and Recipe steps for Figure Composer step types.