Skip to content

Commit

Permalink
include revisions of paper
Browse files Browse the repository at this point in the history
  • Loading branch information
hema-ted committed Feb 28, 2020
1 parent 8992e99 commit ff0442e
Showing 1 changed file with 27 additions and 29 deletions.
56 changes: 27 additions & 29 deletions paper/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,44 +28,42 @@ bibliography: paper.bib
---

# Summary
Electron spins in molecules and materials may be manipulated and used to store information, and hence they are interesting resources for quantum technologies.
A way to understand the physical properties of electron spins is to probe their interaction with electromagnetic fields.
Such interaction can be described by using a so-called spin Hamiltonian, with parameters derived from either experiments or calculations.
For a single electron spin (e.g. associated to a point-defect in a semiconductor or insulator), the leading terms in the spin Hamiltonian are
$$ H=\mu_B \mathbf{B}\cdot\mathbf{g}\cdot\mathbf{S} + \mathbf{S} \cdot \mathbf{D} \cdot \mathbf{S} $$
where $\mu_B$ is the Bohr magneton, $\mathbf{S}$ is the electron spin operator, $\mathbf{B}$ is an external magnetic field, $\mathbf{g}$ and $\mathbf{D}$ are rank-2 tensors that characterize the strength of the Zeeman interaction, and the zero-field splitting (ZFS).
Experimentally, the spin Hamiltonian parameters $\mathbf{g}$ and $\mathbf{D}$ may be obtained by electron paramagnetic resonance (EPR).
The ZFS tensor describes the lifting of degeneracy of spin sublevels in the absence of external magnetic fields, and is an important property of open-shell molecules and spin defects in semiconductors with spin quantum number $S \geq 1$.
The ZFS tensor can be predicted from first-principles calculations, thus complementing experiments and providing valuable insight into the design of novel molecules and materials with desired spin properties.
Furthermore, the comparison of computed and measured ZFS tensors may provide important information on the atomistic structure and charge state of defects in solids, thus helping to identify the defect configuration present in experimental samples.
Electron spins in molecules and materials may be manipulated and used to store information, and hence they are interesting resources for quantum technologies.
A way to understand the physical properties of electron spins is to probe their interactions with electromagnetic fields.
Such interactions can be described by using a so-called spin Hamiltonian, with parameters derived from either experiments or calculations.
For a single electron spin (e.g. associated to a point-defect in a semiconductor or insulator), the leading terms in the spin Hamiltonian are
$$ H=\mu_B \mathbf{B}\cdot\mathbf{g}\cdot\mathbf{S} + \mathbf{S} \cdot \mathbf{D} \cdot \mathbf{S} $$
where $\mu_B$ is the Bohr magneton, $\mathbf{S}$ is the electron spin operator, $\mathbf{B}$ is an external magnetic field, $\mathbf{g}$ and $\mathbf{D}$ are rank-2 tensors that characterize the strength of the Zeeman interaction, and the zero-field splitting (ZFS), respectively.
Experimentally, the spin Hamiltonian parameters $\mathbf{g}$ and $\mathbf{D}$ may be obtained by electron paramagnetic resonance (EPR).
The ZFS tensor describes the lifting of degeneracy of spin sublevels in the absence of external magnetic fields, and is an important property of open-shell molecules and spin defects in semiconductors with spin quantum number $S \geq 1$.
The ZFS tensor can be predicted from first-principles calculations, thus complementing experiments and providing valuable insight into the design of novel molecules and materials with desired spin properties.
Furthermore, the comparison of computed and measured ZFS tensors may provide important information on the atomistic structure and charge state of defects in solids, thus helping to identify the defect configuration present in experimental samples.
Therefore, the development of robust methods for the calculation of the ZFS tensor is an interesting topic in molecular chemistry and materials science.


In this work we describe the code ``PyZFS`` for the calculation of the ZFS tensor $\mathbf{D}$ of molecules and solids, based on wave-functions obtained from density functional theory (DFT) calculations.
For systems without heavy elements, i.e. where spin-orbit coupling is negligible, the ZFS is usually dominated by magnetic spin-spin interactions.
The spin-spin ZFS tensor evaluated using the DFT Kohn-Sham wavefunctions, is given by:
In this work we describe the code `PyZFS` for the calculation of the ZFS tensor $\mathbf{D}$ of molecules and solids, based on wave-functions obtained from density functional theory (DFT) calculations.
For systems without heavy elements, i.e. where spin-orbit coupling is negligible, magnetic spin-spin interactions are the dominant ones in the determination of the ZFS tensor.
For molecules and materials with magnetic permeability close to the vacuum permeability $\mu_0$, the spin-spin ZFS tensor evaluated using the DFT Kohn-Sham wavefunctions, is given by:
$$ D_{ab} = \frac{1}{2S(2S-1)} \frac{\mu_0}{4\pi} (\gamma_\mathrm{e} \hbar)^2 \ \sum_{i < j}^{\mathrm{occ.}} \chi_{ij} \langle \Phi_{ij}| \ \frac{ r^2\delta_{ab} - 3r_a r_b }{ r^5 } \ |\Phi_{ij} \rangle $$
where $a, b = x, y, z$ are Cartesian indices; $\gamma_e$ is the gyromagnetic ratio of electrons; the summation runs over all pairs of occupied Kohn-Sham orbitals; $\chi_{ij} = \pm 1$ for parallel and antiparallel spins, respectively; $\Phi_{ij}(\textbf{r},\textbf{r}')$ are $2 \times 2$ determinants formed from Kohn-Sham orbitals $\phi_{i}$ and $\phi_{j}$, $\Phi_{ij}(\textbf{r},\textbf{r}')=\frac{1}{\sqrt{2}}\Big[\phi_{i}(\textbf{r})\phi_{j}(\textbf{r}') - \phi_{i}(\textbf{r}')\phi_{j}(\textbf{r})]$.
We assumed the magnetic permeability of the system is close to the vacuum permeability $\mu_0$, which holds true for most molecules and semiconductors.
where $a, b = x, y, z$ are Cartesian indices; $\gamma_e$ is the gyromagnetic ratio of electrons; the summation runs over all pairs of occupied Kohn-Sham orbitals; $\chi_{ij} = \pm 1$ for parallel and antiparallel spins, respectively; $\Phi_{ij}(\textbf{r},\textbf{r}')$ are $2 \times 2$ determinants formed from Kohn-Sham orbitals $\phi_{i}$ and $\phi_{j}$, $\Phi_{ij}(\textbf{r},\textbf{r}')=\frac{1}{\sqrt{2}}\Big[\phi_{i}(\textbf{r})\phi_{j}(\textbf{r}') - \phi_{i}(\textbf{r}')\phi_{j}(\textbf{r})]$.

Several quantum chemistry codes (for example ORCA[@Neese:2012]) include the implementation of ZFS tensor calculations for molecules, where electronic wavefunctions are represented using Gaussian basis sets.
However, so far few open-source codes are reported to perform ZFS calculations using plane-wave basis sets, which are usually the basis sets of choice to study condensed systems.
In ``PyZFS`` we implement the evaluation of spin-spin ZFS tensors using plane-wave basis sets.
Several quantum chemistry codes (for example ORCA[@Neese:2012]) include the implementation of ZFS tensor calculations for molecules, where electronic wavefunctions are represented using Gaussian basis sets.
However, few open-source codes are available to compute ZFS tensors using plane-wave basis sets, which are usually the basis sets of choice to study condensed systems.
In `PyZFS` we implement the evaluation of spin-spin ZFS tensors using plane-wave basis sets.
The double integration in real space is reduced to a single summation over reciprocal lattice vectors through the use of Fast Fourier Transforms [@Rayson:2008].

We note that a large-scale DFT calculations can yield wavefunction files occupying tens of GB.
Therefore, proper distribution and management of data is critical.
In ``PyZFS``, the summation over pairs of Kohn-Sham orbitals is distributed into a square grid of processors through the use of the Message Passing Interface (MPI), which significantly reduces the CPU time and memory cost per processor.
We note that a large-scale DFT calculations can yield wavefunction files occupying tens of GB.
Therefore, proper distribution and management of data is critical.
In `PyZFS`, the summation over pairs of Kohn-Sham orbitals is distributed into a square grid of processors through the use of the Message Passing Interface (MPI), which significantly reduces the CPU time and memory cost per processor.

``PyZFS`` can use wavefunctions generated by various plane-wave DFT codes as input.
For instance, it can directly read wavefunctions from Quantum Espresso [@Giannozzi:2009] in the HDF5 format and from Qbox [@Gygi:2008] in the XML format.
The standard cube file format is also supported.
``PyZFS`` features a modular design and utilizes abstract classes for extensibility.
`PyZFS` can use wavefunctions generated by various plane-wave DFT codes as input.
For instance, it can directly read wavefunctions from Quantum Espresso [@Giannozzi:2009] in the HDF5 format and from Qbox [@Gygi:2008] in the XML format.
The standard cube file format is also supported.
`PyZFS` features a modular design and utilizes abstract classes for extensibility.
Support for new wavefunction format may be easily implemented by defining subclasses of the relevant abstract class and overriding corresponding abstract methods.

Since its development, ``PyZFS`` has been adopted to predict ZFS tensors for spin defects in semiconductors, and facilitated the discovery of novel spin defects [@Seo:2017] and the study of spin-phonon interactions in solids [@Whiteley:2019].
``PyZFS`` has also been adopted to generate benchmark data for the development of methods to compute the ZFS tensor using all electron calculations on finite element basis sets [@Ghosh:2019].
Thanks to the parallel design of the code, ``PyZFS`` can perform calculations for defects embedded in large supercells.
Since its development, `PyZFS` has been adopted to predict ZFS tensors for spin defects in semiconductors, and facilitated the discovery of novel spin defects [@Seo:2017] and the study of spin-phonon interactions in solids [@Whiteley:2019].
`PyZFS` has also been adopted to generate benchmark data for the development of methods to compute the ZFS tensor using all electron calculations on finite element basis sets [@Ghosh:2019].
Thanks to the parallel design of the code, `PyZFS` can perform calculations for defects embedded in large supercells.
For example, the calculations performed in [@Whiteley:2019] used supercells that contain more than 3000 valence electrons, and are among the largest first-principles calculations of ZFS tensors reported by the time this document was written.

# Acknowledgements
Expand Down

0 comments on commit ff0442e

Please sign in to comment.