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()
The curves use the stored geometry, work function, and inner potential. They do not show measured intensity at a new photon energy.
Figure Composer¶
Add
convertedin Sources.Use one axes in Layout.
Add a Slice Plot step for
converted. Set Dimension toeV, enter the required binding energy, and set Axis to image. Enable Transpose so that \(k_\parallel\) is horizontal and \(k_z\) is vertical.Add a Photon Energy Overlay step after the image. Select
convertedas Overlay data and target the same axes.Under hν, enter the photon energies and the same Binding energy used for the image.
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.