Paul Hockett
National Research Council of Canada
Web: femtolab.ca
Books: phockett.github.io/Quantum-Metrology-with-Photoelectrons-Vol3
Seminar: Photoelectron Metrology
In this seminar I will give an overview of recent work in photoelectron metrology (a.k.a. quantitative photoelectron spectroscopy), in which the main aim is the retrieval of photoionization matrix elements from experimental measurements. The work is enabled by various tools on both the theory and experimental side; recent work has focussed on the development of a suite of open-source python tools - the Photoelectron Metrology Toolkit - and application to various problems, and this will form the main topic of the talk. On the experimental side, time- and angle-resolved photoionization studies of aligned molecules forms the main methodology [1]. New results will be presented, including valence photoionization studies of OCS [2] and N2O. In a similar vein, electronic wavepacket reconstruction has also recently been explored, and will be discussed if time permits [3,4].
For a more comprehensive introduction and review, please see Quantum Metrology with Photoelectrons Vol. 3 (https://phockett.github.io/Quantum-Metrology-with-Photoelectrons-Vol3), an open-source book which introduces and explores the topic, including the code-base and full computational examples.
[1] Hockett, P. and Makhija, V. (2023) ‘Topical Review: Extracting molecular frame photoionization dynamics from experimental data’, Journal of Physics B: Atomic, Molecular and Optical Physics, 56(11), p. 112001. Available at: https://doi.org/10.1088/1361-6455/acd03e. [2] Woodhouse, J. et al. (2024) ‘Quantitative analysis of aligned molecule photoelectron angular distributions’, In press, Phys. Rev. A. (Data available at https://figshare.com/projects/OCS_alignment_and_photoionization_project_/194090) [3] Gregory, M. et al. (2022) ‘A laboratory frame density matrix for ultrafast quantum molecular dynamics’, The Journal of Chemical Physics, 157(16), p. 164301. Available at: https://doi.org/10.1063/5.0109607. [4] Morrigan, L. et al. (2023) ‘Ultrafast Molecular Frame Quantum Tomography’, Physical Review Letters, 131(19), p. 193001. Available at: https://doi.org/10.1103/PhysRevLett.131.193001.
Vol. 3 now available open source, HTML version https://phockett.github.io/Quantum-Metrology-with-Photoelectrons-Vol3
→ Quantitative photoelectron spectroscopy, full reconstruction of the ionization continuum (including phases).
→ Full reconstruction of the ionization continuum + wavepacket properties.
→ Reconstruct density matrix, correlation & coherence functions etc. (As well as the underlying physics of course.)
Photoionization is an interferometric process, in which multiple paths can contribute to the final continuum photoelectron wavefunction.
At the simplest level, interferences between different final angular momentum states are manifest in the energy and angle resolved photoelectron spectra: metrology schemes making use of these interferograms are thus phase-sensitive, and provide a powerful route to detailed understanding of photoionization. In these cases, the continuum wavefunction (and underlying scattering dynamics) can be characterised.
At a more complex level, such measurements can also provide a powerful probe for other processes of interest, leading to a more general class of quantum metrology built on phase-sensitive photoelectron imaging.
Conceptual diagram for matrix retrieval using time and angle-resolved photoelectron measurements with impulsive molecular alignment.
For further introductory materials...
The tools are built in python, and available on Github or via Pypi. Docker builds including the Quantum Metrology with Photoelectrons Vol. 3 source are also available via Docker Hub.
ePSproc: https://github.com/phockett/ePSproc
Examples are available online as part of the package documentation and QM3.
These demonstrate some of the basic functionality, often making use of:
dev
branch for this).(Note that the computational slides following may not be formatted correctly in the HTML version, please see the source Jupyter notebook or links given above instead.)
# Load base class
from epsproc.classes.base import ePSbase
# Instantiate class object.
# Minimally this needs just the dataPath, if verbose = 1 is set then some useful output will also be printed.
dataPath = '/home/jovyan/github/ePSproc/data/photoionization/n2_multiorb'
data = ePSbase(dataPath, verbose = 1)
# ScanFiles() - this will look for data files on the path provided, and read from them.
data.scanFiles()
OMP: Info #276: omp_set_nested routine deprecated, please use omp_set_max_active_levels instead.
* sparse not found, sparse matrix forms not available. * natsort not found, some sorting functions not available.
* Setting plotter defaults with epsproc.basicPlotters.setPlotters(). Run directly to modify, or change options in local env.
* Set Holoviews with bokeh. * pyevtk not found, VTK export not available. *** Job orb6 details Key: orb6 Dir /home/jovyan/github/ePSproc/data/photoionization/n2_multiorb, 1 file(s). { 'batch': 'ePS n2, batch n2_1pu_0.1-50.1eV, orbital A2', 'event': ' N2 A-state (1piu-1)', 'orbE': -17.09691397835426, 'orbLabel': '1piu-1'} *** Job orb5 details Key: orb5 Dir /home/jovyan/github/ePSproc/data/photoionization/n2_multiorb, 1 file(s). { 'batch': 'ePS n2, batch n2_3sg_0.1-50.1eV, orbital A2', 'event': ' N2 X-state (3sg-1)', 'orbE': -17.34181645456815, 'orbLabel': '3sg-1'}
# Molecular info
# Note that this is currently assumed to be the same for all jobs in the data dir.
data.molSummary()
*** Molecular structure
*** Molecular orbital list (from ePS output file) EH = Energy (Hartrees), E = Energy (eV), NOrbGrp, OrbGrp, GrpDegen = degeneracies and corresponding orbital numbering by group in ePS, NormInt = single centre expansion convergence (should be ~1.0).
props | Sym | EH | Occ | E | NOrbGrp | OrbGrp | GrpDegen | NormInt |
---|---|---|---|---|---|---|---|---|
orb | ||||||||
1 | SG | -15.6719 | 2.0 | -426.454124 | 1.0 | 1.0 | 1.0 | 0.999532 |
2 | SU | -15.6676 | 2.0 | -426.337115 | 1.0 | 2.0 | 1.0 | 0.999458 |
3 | SG | -1.4948 | 2.0 | -40.675580 | 1.0 | 3.0 | 1.0 | 0.999979 |
4 | SU | -0.7687 | 2.0 | -20.917393 | 1.0 | 4.0 | 1.0 | 0.999979 |
5 | SG | -0.6373 | 2.0 | -17.341816 | 1.0 | 5.0 | 1.0 | 1.000000 |
6 | PU | -0.6283 | 2.0 | -17.096914 | 1.0 | 6.0 | 2.0 | 1.000000 |
7 | PU | -0.6283 | 2.0 | -17.096914 | 2.0 | 6.0 | 2.0 | 1.000000 |
# Basic plot of ePS cross-section results (from GetCro command)
data.plotGetCroComp()
# Compute MF-BLM from matrix elements (default options, all data)
data.MFBLM()
Calculating MF-BLMs for job key: orb6 Calculating MF-BLMs for job key: orb5
# Plot BLMs using Holoviews
# Note plotter defaults are set for AFBLM case
data.BLMplot(dataType='MFBLM',
thres = 1e-2, # Passing a threshold value here will remove any spurious BLM parameters.
backend='hv', hvType = 'line',
width=800, renderPlot=False)
BLMplot set data and plots to self.plots['BLMplot'] Formatted BLMplot added to self.plots['BLMplot']['hvPlotOut']
True
# For slide rendering (cell outputs only)
data.plots['BLMplot']['hvPlotOut']
# Plot some MF-PADs
# Use Plotly backend for interactive plots
data.padPlot(keys = 'orb5', Erange = [5, 10, 4], dataType='MFBLM',
backend='pl')
Using default sph betas. Summing over dims: set() Plotting from self.data[orb5][MFBLM], facetDims=['Eke', 'Labels'], pType=a with backend=pl. *** WARNING: plot dataset has min value < 0, min = (-2.9550010004271866e-06-1.8947143685522024e-18j). This may be unphysical and/or result in plotting issues.
*** WARNING: plot dataset has min value < 0, min = (-1.432562167896377e-05+6.4676612278544425e-18j). This may be unphysical and/or result in plotting issues.
(Simplified version, see here for full expansions.)
E.g. Mašín, Z. et al. (2019) ‘UKRmol+: A suite for modelling electronic processes in molecules interacting with electrons, positrons and photons using the R-matrix method’, Computer Physics Communications, p. 107092. Available at: https://doi.org/10.1016/j.cpc.2019.107092.
Recent theory + experimental work.
Manuscript in press: Woodhouse, J.; Benda, J.; Chapman, R. T.; Hockett, P.; Makhija, V.; Masin, Z.; Minns, R. S.; Reid, K.; Springate, E.; Thompson, J. O. F.; Wyatt, A. S.; Zhang, Y. Quantitative Analysis of Aligned Molecule Photoelectron Angular Distributions. In Press, Phys. Rev. A. 2024
Comparison of theory results - ePS and R-matrix at different levels of theory (Zdeněk Mašín and Jakub Benda) - and literature results (Carlson, Thomas A., Manfred O. Krause, and Frederick A. Grimm. 1982. “Angle Resolved Photoelectron Spectroscopy of CS2 and COS Measured as a Function of Photon Energy from 21 to 70 eV.” The Journal of Chemical Physics 77 (4): 1701–9. https://doi.org/10.1063/1.444067).
ePolyScat vs. bond length extensions (OCS X-state).
Literature results: Carlson, Thomas A., Manfred O. Krause, and Frederick A. Grimm. 1982. “Angle Resolved Photoelectron Spectroscopy of CS2 and COS Measured as a Function of Photon Energy from 21 to 70 eV.” The Journal of Chemical Physics 77 (4): 1701–9. https://doi.org/10.1063/1.444067
OCS matrix element retrieval - initial work in QM3.
Experimental retrieval in progress!
ePS + ePSproc aligned-frame PADs ($\phi$-summed).
ePS + ePSproc aligned-frame PADs
Also tested AF theory results for polarization dependence, since it was not clear how clean polarization rotation would be experimentally (potentially up to ~20% ellipticity expected).
Experimental images
Experimental tomographic scan - rotated polarization and record VMI images.