Skip to content

Commit

Permalink
Documentation update
Browse files Browse the repository at this point in the history
  • Loading branch information
zhubonan committed Jun 15, 2023
1 parent 72393c4 commit ea262c9
Show file tree
Hide file tree
Showing 7 changed files with 37 additions and 9 deletions.
12 changes: 9 additions & 3 deletions docs/guide.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Guide

Main goal of this tool is to make the unfolding process easier.
To generate a unfolded band structure, one typically needs to perform the following step:

Expand All @@ -13,8 +14,9 @@ In both cases, its symmetry is lowered when compared to the perfect primitive ce
Hence, for a given kpoint path in the primitive cell, additional kpoints may need to be sampled, and the extracted spectral weights need to be averaged in the end to obtained the effective band structure (EBS).


At the moment, only VASP calculations are supported, although in principle other PW code can be supported easily if the wavefunction can be read in.
Use of VASP is assumed for the guide below.
At the moment, two plane wave DFT codes, VASP[^vasp] and CASTEP[^castep], are supported. In principle, other PW code can be supported easily if the wavefunction can be read in.

Below is a guide for performing unfolding when using VASP.

## Step 1 - Generate the kpoints path of the primitive cell

Expand Down Expand Up @@ -138,4 +140,8 @@ easyunfold unfold plot
```

to generate a plot of the spectral function.
It is possible to further customise the plot though command line arguments - see the help with `easyunfold unfold plot --help`.
It is possible to further customise the plot though command line arguments - see the help with `easyunfold unfold plot --help`.


[^vasp]: https://www.vasp.at
[^castep]: http://www.castep.org
4 changes: 3 additions & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ We'll add papers that use `easyunfold` to this list as they come out!

## DFT code support

At the moment, easyunfold supports VASP and CASTEP, but most of the routines are abstracted from the code specific details.
At the moment, easyunfold supports [VASP](https://www.vasp.at) and [CASTEP](http://www.castep.org), but most of the routines are abstracted from the code specific details.
In principle, support for other plane wave DFT code can be added by:

- Implementing a subclass of `WaveFunction` that handles reading the wave function output.
Expand Down Expand Up @@ -106,6 +106,8 @@ installation.md
guide.md
examples.md
theory.md
references.md
publications.md
cli.rst
apidocs/index
```
7 changes: 7 additions & 0 deletions docs/publications.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Publications

* Nicolson, A.; Breternitz, J.; Kavanagh, S. R.; Tomm, Y.; Morita, K.; Squires, A. G.; Tovar, M.; Walsh, A.; Schorr, S.; Scanlon, D. O. Interplay of Static and Dynamic Disorder in the Mixed-Metal Chalcohalide Sn2SbS2I3. J. Am. Chem. Soc. 2023. https://doi.org/10.1021/jacs.2c13336.

* Huang, Y.-T.; Kavanagh, S. R.; Righetto, M.; Rusu, M.; Levine, I.; Unold, T.; Zelewski, S. J.; Sneyd, A. J.; Zhang, K.; Dai, L.; Britton, A. J.; Ye, J.; Julin, J.; Napari, M.; Zhang, Z.; Xiao, J.; Laitinen, M.; Torrente-Murciano, L.; Stranks, S. D.; Rao, A.; Herz, L. M.; Scanlon, D. O.; Walsh, A.; Hoye, R. L. Z. Strong Absorption and Ultrafast Localisation in NaBiS2 Nanocrystals with Slow Charge-Carrier Recombination. Nat Commun 2022, 13 (1), 4960. https://doi.org/10.1038/s41467-022-32669-3.

* Wang, Y.; Kavanagh, S. R.; Burgués-Ceballos, I.; Walsh, A.; Scanlon, D. O.; Konstantatos, G. Cation Disorder Engineering Yields AgBiS2 Nanocrystals with Enhanced Optical Absorption for Efficient Ultrathin Solar Cells. Nat. Photon. 2022, 16 (3), 235–241. https://doi.org/10.1038/s41566-021-00950-4.
7 changes: 7 additions & 0 deletions docs/references.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# References

These works provide theoretical background of band structure unfolding:

* Popescu, V.; Zunger, A. Effective Band Structure of Random Alloys. Phys. Rev. Lett. 2010, 104 (23), 236403. https://doi.org/10.1103/PhysRevLett.104.236403.

* Popescu, V.; Zunger, A. Extracting $E$ versus $\vec{k}$ Effective Band Structure from Supercell Calculations on Alloys and Impurities. Phys. Rev. B 2012, 85 (8), 085201. https://doi.org/10.1103/PhysRevB.85.085201.
8 changes: 7 additions & 1 deletion docs/theory.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
# Theory of unfolding

Theoretical background of the methodology used in this package is available in the literature[^1][^2].
Here, only a brief summary is given for brevity.

Notation: $\vec{k}$ is the kpoint of the supercell and $\vec{k}$ is that of the primitive cell.

Reference: [https://link.aps.org/doi/10.1103/PhysRevB.85.085201](https://link.aps.org/doi/10.1103/PhysRevB.85.085201)

Each $k$ in the primitive cell can be mapped to that in the supercell where:
Expand Down Expand Up @@ -59,4 +62,7 @@ However, the supercell to be unfolded does not necessarily contain the same poin
The broken symmetry means that previously equivalent $\vec{k}$ are no longer equivalent.

We address this by first expanding each $\vec{k}$ based on the symmetry operations of the primitive cell, followed by a reduction using the symmetry of the supercell.
The spectral weight at each $\vec{k}$ is then a weighted combination of that from a set of $\vec{k_s^\prime}$ points that are inequivalent under the symmetry of the supercell.
The spectral weight at each $\vec{k}$ is then a weighted combination of that from a set of $\vec{k_s^\prime}$ points that are inequivalent under the symmetry of the supercell.

[^1]: Popescu, V.; Zunger, A. Effective Band Structure of Random Alloys. Phys. Rev. Lett. 2010, 104 (23), 236403. https://doi.org/10.1103/PhysRevLett.104.236403.
[^2]: Popescu, V.; Zunger, A. Extracting $E$ versus $\vec{k}$ Effective Band Structure from Supercell Calculations on Alloys and Impurities. Phys. Rev. B 2012, 85 (8), 085201. https://doi.org/10.1103/PhysRevB.85.085201.
6 changes: 3 additions & 3 deletions paper/figure1.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion paper/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ A key feature of `easyunfold` is to provide data serialization complying the FAI
Both the input settings and calculated spectral weights are stored as a single JSON file.
This enables the unfolded band structure to be re-plotted and further analysed without reprocessing the wave function data.
In addition, multi-file wave function support allows DFT calculations to be performed in a flexible way,
which is essential for improving parallel efficiency using resource-hungry hybrid functionals.
which is essential for improving parallel efficiency using resource-hungry hybrid functional.

We chose Python as the programming language due to its low entry-barrier, flexibility and popularity in the materials modelling field.
An object-oriented approach is used when designing the package to allow abstractions when reading and process wave function data.
Expand Down

0 comments on commit ea262c9

Please sign in to comment.