Problem with Co 2p XPS simulation
asked by Sayari Ghatak (2025/09/03 10:03)
Hello everyone,
I am trying to simulate Co³⁺ (3d⁶) 2p XPS spectra for LaCoO₃ using Quanty (v0.81 beta, running under Ubuntu/WSL).
My goal is to compare experimental Co 2p spectra at different temperatures with CTM-style multiplet calculations (LS, IS, HS states).
I tried constructing my Hamiltonian with:
Udd = NewOperator("U", NF, NB, {2,2}, {F0dd, F2dd, F4dd}) Upd = NewOperator("U", NF, NB, {1,2}, {F0pd, G1pd, G3pd}) OpSOC_3d = NewOperator("ldots", NF, NB, {2}, {zeta_3d}) OpSOC_2p = NewOperator("ldots", NF, NB, {1}, {zeta_2p}) CF = NewOperator("CF", NF, NB, {2}, {tenDq})
But I keep getting the error: bad argument #2 to 'NewOperator' (table expected, got number) I’m confused about the correct argument structure for NewOperator(“U”, …) and NewOperator(“CF”, …) in the current Quanty build.
For “U”: should it be NewOperator(“U”, NF, NB, {l,l}, {F0,F2,F4}) ?
For “CF”: is it NewOperator(“CF”, NF, NB, {l}, {10Dq}) ?
If anyone has a working Co 2p XPS example script (with Udd, Upd, SOC, and 10Dq) that runs in Quanty v0.81, that would be extremely helpful.
Ultimately I’d like to reproduce Co 2p spectra in LaCoO₃ to identify whether intermediate spin states are present.
Thanks a lot in advance!
— Sayari Ghatak, PhD student (Materials Science)
Answers
Dear Sayari,
I would suggest to start with the example you find here https://git.quanty.org:4443/Haverkort/tutorials/-/tree/main/08_Materials/NiO/02%20NiO%20Ligand%20field%20theory/17%20cPES%20L23?ref_type=heads and modify it to get the 2p XPS for Co.
You will need to modify the following set of parameters
for the other parameters see Phys. Rev. Lett. 97, 176405. The Hartree Fock values of the Slater integrals you can find on page 156 of https://kups.ub.uni-koeln.de/1455/ or https://arxiv.org/abs/cond-mat/0505214.
If you want to understand how this example works you can also look at the examples found here https://git.quanty.org:4443/Haverkort/tutorials/-/tree/main/08_Materials/NiO/02%20NiO%20Ligand%20field%20theory?ref_type=heads
best wishes, Maurits
Dear Sayari,
you can find the documentation of the operators
Coulomb repulsion operator (U)
Crystal Field
Maurits
Dear Sir,
First of all, I would like to sincerely thank you for your prompt response and guidance. I also apologize for my delayed reply. External LinkExternal Link Over the past few weeks, I have gone through the Quanty documentation carefully and tried to understand the basics of its implementation. As an initial step, I reproduced the NiO example successfully, which gave me confidence to proceed.
After that, I moved on to Co 2p XPS simulations for LaCoO₃ in different spin states. Alongside the PRL paper you kindly suggested, I referred to two other works for c parameters and guidance: Vankó et al., Phys. Rev. B 73, 024424 (2006) ,Takegami et al., Phys. Rev. X 13, 011037 (2023).
My initial aim was to simulate the high-spin (HS) Co³⁺ spectrum so that I could compare it with my experimental 623 K Co 2p data and tune the parameters accordingly. Once optimized, I planned to vary 10Dq (and possibly Δ) to simulate the intermediate-spin (IS) and low-spin (LS) spectra, to systematically compare them with experiment.
So far, I have attempted three different trials:
Trial 1: Used Slater integrals (F, G) and SOC values directly from the NiO example, and other parameters from your suggested paper.
Trial 2 & 3: Used 90% of Hartree–Fock values for Slater integrals and atomic values for SOC, as in https://kups.ub.uni-koeln.de/1455/.
However, I remain stuck at the HS simulation stage. In each case, the main challenge is that the simulated spectra do not reproduce the experimental separation between multiplet structures and satellite s (~10 eV from the main line). To address this, I tried systematically increasing zeta_p, Veg, and Δ. Unfortunately, the splitting and multiplet features remain very weak in the simulations.
In my experimental Co 2p spectra, there is also an emergent feature at ~786 eV with increasing temperature, which is often considered a hallmark of the spin-state transition. My simulated HS spectra, however, do not capture this behavior.
I have been using the isotropic average transition operator (no polarization), consistent with my laboratory setup where the detector is placed at 90°.The charge-transfer multiplet (CTM) model employed a ground-state basis set of 3𝑑6+3𝑑7𝐿‾+3𝑑8𝐿‾23d6.
To give you a clearer picture, I am attaching:One of my Quanty scripts from a trial, Three slides summarizing parameter sets used in different attempts. I would be truly grateful for your advice on which parameter set or modeling adjustment I should focus on to correctly reproduce the spin–orbit splitting and satellite features in the HS spectrum.
Thank you again for your time and guidance.
With best regards, Sayari Ghatak