Batch fitting benchmark – photoemission spectroscopy¶
Outline¶
The aim of the benchmark is to reconstruct the energy dispersion of tungsten diselenide (\(\mathrm{WSe}_2\)) in the solid state from 3D photoemission band mapping (PBM) experiments or from synthetic data of similar nature. Experimental PBM data for \(\mathrm{WSe}_2\) are obtained from either experiment [1] or model-based synthesis [2]. The three dimensions in the dataset include the two momentum components (\(k_x, k_y\)) and the energy (\(E\)) of the photoemitted electrons (photoelectrons). The spectra used in the batch fitting are the intensity profiles (\(I(E)\)) of the photoelectron as a function of momentum (or energy distribution curve), \(I(E, k_x, k_y)\). Example scripts are included under the /benchmarks folder of the package.
01_WSe2_Kpoint.py
(link)
Contains a full script with the option to run on the command line for batch fitting the photoemission data around the \(K\) point of \(\mathrm{WSe}_2\). The following bash scripts contain numerical experiments for tuning the energy shift hyperparameters associated with each energy band.
WSe2_Kpoint_recon_02.sh
(link) – energy shift hyperparameter tuning for reconstructing energy band 1-2 of \(\mathrm{WSe}_2\) within the corresponding energy range (used in [2])WSe2_Kpoint_recon_04.sh
(link) – energy shift hyperparameter tuning for reconstructing energy band 3-4 of \(\mathrm{WSe}_2\) within the corresponding energy range (used in [2])WSe2_Kpoint_recon_08.sh
(link) – energy shift hyperparameter tuning for reconstructing energy band 5-8 of \(\mathrm{WSe}_2\) within the corresponding energy range (used in [2])WSe2_Kpoint_recon_14.sh
(link) – energy shift hyperparameter tuning for reconstructing energy band 9-14 of \(\mathrm{WSe}_2\) within the corresponding energy range (used in [2])PES_scaling_benchmark.sh
(link) – Computational scaling benchmark for an increasing number of spectral components or energy bands (used in [3])WSe2_computing_params_tuning.sh
(link) – Tuning the task distribution parameters in parallelization (used in [3])
02_WSe2_Mpoint.py
(link)
Contains a full script with the option to run on the command line for batch fitting the photoemission data around the \(M\) point of \(\mathrm{WSe}_2\).
03_WSe2_hsymline.py
(link)
Contains a full script with the option to run on the command line for batch fitting the photoemission data around the high-symmetry line (HSL) of \(\mathrm{WSe}_2\). The following bash scripts contain numerical experiments for tuning the energy shift hyperparameters associated with each energy band.
WSe2_hsymline_recon_02.sh
(link) – hyperparameter tuning for reconstructing energy band 1-2 of \(\mathrm{WSe}_2\) within the corresponding energy range (used in [2])WSe2_hsymline_recon_04.sh
(link) – hyperparameter tuning for reconstructing energy band 3-4 of \(\mathrm{WSe}_2\) within the corresponding energy range (used in [2])WSe2_hsymline_recon_08.sh
(link) – hyperparameter tuning for reconstructing energy band 5-8 of \(\mathrm{WSe}_2\) within the corresponding energy range (used in [2])WSe2_hsymline_recon_14.sh
(link) – hyperparameter tuning for reconstructing energy band 9-14 of \(\mathrm{WSe}_2\) within the corresponding energy range (used in [2])
Usage¶
To execute the script on a local computer, one needs to download the data from the repository pesarxiv. After updating the file address within the Python scripts, they can be executed directly on the command line. For the bash scripts, one needs to change the PYTHONPATH
global parameter to the corresponding address on the local computer before execution.