Skip to content

Commit

Permalink
chore: image filters for better dark mode contrast
Browse files Browse the repository at this point in the history
  • Loading branch information
pranabdas committed Nov 26, 2024
1 parent b6879be commit 2a72970
Show file tree
Hide file tree
Showing 18 changed files with 92 additions and 87 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/deploy-gh-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ jobs:
- name: Install NPM packages
run: npm install

- name: Apply customizations
run: sed -i 's/rgba(239,\s*83,\s*80,\s*0.56)/rgba(239, 83, 80, 0.9)/gI' node_modules/prism-react-renderer/dist/index.js

- name: Build website
run: npm run build

Expand Down
4 changes: 2 additions & 2 deletions docs/hands-on/Bi2Se3.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ spin-orbit calculation without spin magnetization. It assumes that time reversal
symmetry holds and it does not calculate the magnetization. The states are
still two-component spinors but the total magnetization is zero.

![Bi2Se3-bands](../../static/img/Bi2Se3-bands.webp)
<img src={require("../../static/img/Bi2Se3-bands.webp").default} class="inv-hue-rot-180" alt="Bi2Se3-bands"/>

Notice that for the Dirac surface states the gap did not completely close at the
Fermi energy. This is possibly due to finite size effect. We could repeat the
Expand All @@ -55,7 +55,7 @@ In order to sample the $\Gamma$ point for our DOS calculation, an odd k-grid
mesh (25✕25✕5) was used. The signature of Dirac cone is evident from the DOS
figure.

![Bi2Se3-dos](../../static/img/Bi2Se3-dos.webp)
<img src={require("../../static/img/Bi2Se3-dos.webp").default} class="inv-hue-rot-180" alt="Bi2Se3-dos"/>

## Resources
- [https://docs.quantumatk.com/tutorials/topological_insulator_bi2se3/](
Expand Down
2 changes: 1 addition & 1 deletion docs/hands-on/GaAs.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ bands.x < pp.bands.GaAs.in > pp.bands.GaAs.out
```
If everything goes well, you will get the bandstructure as below:

![GaAs-bands](../../static/img/GaAs-bands.webp)
<img src={require("../../static/img/GaAs-bands.webp").default} class="inv-hue-rot-180" alt="GaAs-bands"/>

:::caution Warning

Expand Down
6 changes: 3 additions & 3 deletions docs/hands-on/aluminum.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ dos.x < al_dos.in > al_dos.out
Note from our `al_nscf.out` that our Fermi energy is at 7.9421 eV. We plot our
density of states:

![al-dos](../../static/img/al-dos.webp)
<img src={require("../../static/img/al-dos.webp").default} class="inv-hue-rot-180" alt="al-dos"/>

## Bandstructure calculation

Expand All @@ -93,7 +93,7 @@ bands.x < al_bands_pp.in > al_bands_pp.out
```
We obtain the following bandstructure:

![al-bands](../../static/img/al-bands.webp)
<img src={require("../../static/img/al-bands.webp").default} class="inv-hue-rot-180" alt="al-bands"/>

## Importance of smearing in convergence

Expand All @@ -115,7 +115,7 @@ Marzari-Vanderbilt), and for various smearing values.
pwtk al.degauss.pwtk
```

![al-smearing](../../static/img/al-smearing.webp)
<img src={require("../../static/img/al-smearing.webp").default} class="inv-hue-rot-180" alt="al-smearing"/>

We see that the `m-v` and `m-p` broadening allow for faster and smother
convergence while depending less on `degauss` value than Gaussian broadening.
Expand Down
2 changes: 1 addition & 1 deletion docs/hands-on/bands.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ plt.text(2.3, 5.6, 'Fermi energy', fontsize= small)
plt.show()
```

![silicon-bands](../../static/img/silicon-bands.webp)
<img src={require("../../static/img/silicon-bands.webp").default} class="inv-hue-rot-180" alt="silicon-bands"/>

:::info

Expand Down
6 changes: 3 additions & 3 deletions docs/hands-on/convergence.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ plt.legend(frameon=False)
plt.show()
```

![etot-vs-ecutwfc](../../static/img/etot-vs-ecutwfc.webp)
<img src={require("../../static/img/etot-vs-ecutwfc.webp").default} class="inv-hue-rot-180" alt="etot-vs-ecutwfc"/>

## Convergence test using UNIX shell script

Expand Down Expand Up @@ -106,7 +106,7 @@ plt.legend(frameon=False)
plt.show()
```

![etot-vs-kpoints](../../static/img/etot-vs-kpoints.webp)
<img src={require("../../static/img/etot-vs-kpoints.webp").default} class="inv-hue-rot-180" alt="etot-vs-kpoints"/>

## Convergence against lattice constant

Expand All @@ -131,7 +131,7 @@ plt.legend(frameon=False)
plt.show()
```

![etot-vs-alat](../../static/img/etot-vs-alat.webp)
<img src={require("../../static/img/etot-vs-alat.webp").default} class="inv-hue-rot-180" alt="etot-vs-alat"/>


## Note on CPU time
Expand Down
4 changes: 2 additions & 2 deletions docs/hands-on/dft-u.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ pw.x -in feo_nscf.in > feo_nscf.out
projwfc.x -in feo_projwfc.in > feo_projwfc.out
```

![feo-pdos-dft](../../static/img/feo-pdos-dft.webp)
<img src={require("../../static/img/feo-pdos-dft.webp").default} class="inv-hue-rot-180" alt="feo-pdos-dft"/>

This gives us metallic density of states. In practice we get insulating FeO.

Expand Down Expand Up @@ -144,7 +144,7 @@ Hubbard_U(2) = 4.6
We repeat the above calculation and plot the results. Now we find insulating
ground state.

![feo-pdos-dft-u](../../static/img/feo-pdos-dft-u.webp)
<img src={require("../../static/img/feo-pdos-dft-u.webp").default} class="inv-hue-rot-180" alt="feo-pdos-dft-u"/>

:::info

Expand Down
2 changes: 1 addition & 1 deletion docs/hands-on/dos.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ plt.text(6, 1.7, 'Fermi energy', fontsize= med, rotation=90)
plt.show()
```

![silicon-dos](../../static/img/silicon-dos.webp)
<img src={require("../../static/img/silicon-dos.webp").default} class="inv-hue-rot-180" alt="silicon-dos"/>

:::info Important

Expand Down
3 changes: 1 addition & 2 deletions docs/hands-on/epsilon.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,7 @@ plt.ylabel("$\\epsilon_1~/~\\epsilon_2$")
plt.legend(frameon=False)
plt.show()
```

![silicon-epsilon](../../static/img/silicon-epsilon.webp)
<img src={require("../../static/img/silicon-epsilon.webp").default} class="inv-hue-rot-180" alt="silicon-epsilon"/>

:::warning

Expand Down
6 changes: 3 additions & 3 deletions docs/hands-on/fe.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ Run the script:
pwtk fe_ecut.pwtk
```

![fe-convergence](../../static/img/fe-convergence.webp)
<img src={require("../../static/img/fe-convergence.webp").default} class="inv-hue-rot-180" alt="fe-convergence"/>

## Density of states calculation

Expand All @@ -80,9 +80,9 @@ import fe_dos_pwtk from '!!raw-loader!/src/fe/fe_dos.pwtk';

Below is the plots of total and projected density of states.

![fe-dos](../../static/img/fe-dos.webp)
<img src={require("../../static/img/fe-dos.webp").default} class="inv-hue-rot-180" alt="fe-dos"/>

![fe-pdos](../../static/img/fe-pdos.webp)
<img src={require("../../static/img/fe-pdos.webp").default} class="inv-hue-rot-180" alt="fe-pdos"/>

Also see bandstructure of Fe with and without [SOC](
soc#bandstructure-of-fe-with-soc).
Expand Down
4 changes: 2 additions & 2 deletions docs/hands-on/graphene.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ pw.x -i graphene_nscf.in > graphene_nscf.out
dos.x -i graphene_dos.in > graphene_dos.out
```

![graphene-dos](../../static/img/graphene-dos.webp)
<img src={require("../../static/img/graphene-dos.webp").default} class="inv-hue-rot-180" alt="graphene-dos"/>

## Bandstructure calculation

Expand Down Expand Up @@ -65,4 +65,4 @@ plt.ylabel("Energy (eV)")
plt.show()
```

![graphene-bands](../../static/img/graphene-bands.webp)
<img src={require("../../static/img/graphene-bands.webp").default} class="inv-hue-rot-180" alt="graphene-bands"/>
2 changes: 1 addition & 1 deletion docs/hands-on/ni.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,4 @@ mpirun -np 8 bands.x -i bands_ni_up.in > bands_ni_up.out

Similarly, we process the spin down bands `spin_component=2` and plot them.

![ni-spin-bands](../../static/img/ni-spin-bands.webp)
<img src={require("../../static/img/ni-spin-bands.webp").default} class="inv-hue-rot-180" alt="ni-spin-bands"/>
2 changes: 1 addition & 1 deletion docs/hands-on/pdos.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ plt.show()

Here is how our projected density of states plot looks like:

![al-pdos](../../static/img/al-pdos.webp)
<img src={require("../../static/img/al-pdos.webp").default} class="inv-hue-rot-180" alt="al-pdos"/>

We can perform sums of specific atom or orbital contributions using
**sumpdos.x** code if there are multiple $s$ or $p$ orbitals:
Expand Down
4 changes: 2 additions & 2 deletions docs/hands-on/phonon.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ plt.ylim(0, )
plt.show()
```

![GaAs-phonon](../../static/img/GaAs-phonon.webp)
<img src={require("../../static/img/GaAs-phonon.webp").default} class="inv-hue-rot-180" alt="GaAs-phonon"/>

:::tip

Expand Down Expand Up @@ -136,7 +136,7 @@ plt.xlim(freq[0], freq[-1])
plt.show()
```

![GaAs-phonon-dos](../../static/img/GaAs-phonon-dos.webp)
<img src={require("../../static/img/GaAs-phonon-dos.webp").default} class="inv-hue-rot-180" alt="GaAs-phonon-dos"/>

## Resources

Expand Down
4 changes: 2 additions & 2 deletions docs/hands-on/soc.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ the file `fe.noncolin.data.3`. All values in this case are either +1/2 or -1/2.
mpirun -np 8 bands.x -i pp.bands.fe_soc.in > pp.bands.fe_soc.out
```

![fe-soc-bands](../../static/img/fe-soc-bands.webp)
<img src={require("../../static/img/fe-soc-bands.webp").default} class="inv-hue-rot-180" alt="fe-soc-bands"/>

## SOC calculation for GaAs

Expand All @@ -152,4 +152,4 @@ mpirun -np 8 pw.x -i pw.bands.GaAs_soc.in > pw.bands.GaAs_soc.out
mpirun -np 8 bands.x -i pp.bands.GaAs_soc.in > pp.bands.GaAs_soc.out
```

![GaAs-soc-bands](../../static/img/GaAs-soc-bands.webp)
<img src={require("../../static/img/GaAs-soc-bands.webp").default} class="inv-hue-rot-180" alt="GaAs-soc-bands"/>
120 changes: 60 additions & 60 deletions docs/hands-on/wannier.mdx
Original file line number Diff line number Diff line change
@@ -1,60 +1,60 @@
---
title: Wannier method
---

## Obtain bandstructure of Silicon

1. Perform `scf` calculation using Quantum Espresso `pw.x`

```bash
QE_PATH="/workspaces/q-e-qe-7.2/bin"
mpirun -np 4 ${QE_PATH}/pw.x -i pw.scf.silicon.in > pw.scf.silicon.out
```

2. Perform `nscf` calculation using `pw.x`. Instead of automatic k-grid, we need
to provide explicit list of k-points. Such explicit list of k-points can be
generated using perl script included in the Wannier package under utility.

```bash
WANNIER_PATH="/workspaces/wannier90-3.1.0"
# directly append the k-points to the input file
${WANNIER_PATH}/utility/kmesh.pl 4 4 4 >> pw.nscf.silicon.in
```

Run `nscf` calculation:

```bash
mpirun -np 4 ${QE_PATH}/pw.x -i pw.nscf.silicon.in > pw.nscf.silicon.out
```

3. Prepare input file for wannier90 (`silicon.win`). Here we need the k-points
list without the weights:

```bash
${WANNIER_PATH}/utility/kmesh.pl 4 4 4 wan
```

4. Generate nnkp input:

```bash
# we can just provide the seedname or seedname.win
${WANNIER_PATH}/wannier90.x -pp silicon
```

5. Create input file for `pw2wan`, and generate initial projections:

```bash
mpirun -np 4 ${WANNIER_PATH}/pw2wannier90.x -i pw2wan.silicon.in > pw2wan.silicon.out
```

6. Run wannier calculation:

```bash
mpirun -np 4 ${WANNIER_PATH}/wannier90.x silicon
```

![silicon-wannier-bands](../../static/img/silicon-wannier-bands.webp)

## Resources

- https://sites.google.com/view/hubbard-koopmans/program
---
title: Wannier method
---

## Obtain bandstructure of Silicon

1. Perform `scf` calculation using Quantum Espresso `pw.x`

```bash
QE_PATH="/workspaces/q-e-qe-7.2/bin"
mpirun -np 4 ${QE_PATH}/pw.x -i pw.scf.silicon.in > pw.scf.silicon.out
```

2. Perform `nscf` calculation using `pw.x`. Instead of automatic k-grid, we need
to provide explicit list of k-points. Such explicit list of k-points can be
generated using perl script included in the Wannier package under utility.

```bash
WANNIER_PATH="/workspaces/wannier90-3.1.0"
# directly append the k-points to the input file
${WANNIER_PATH}/utility/kmesh.pl 4 4 4 >> pw.nscf.silicon.in
```

Run `nscf` calculation:

```bash
mpirun -np 4 ${QE_PATH}/pw.x -i pw.nscf.silicon.in > pw.nscf.silicon.out
```

3. Prepare input file for wannier90 (`silicon.win`). Here we need the k-points
list without the weights:

```bash
${WANNIER_PATH}/utility/kmesh.pl 4 4 4 wan
```

4. Generate nnkp input:

```bash
# we can just provide the seedname or seedname.win
${WANNIER_PATH}/wannier90.x -pp silicon
```

5. Create input file for `pw2wan`, and generate initial projections:

```bash
mpirun -np 4 ${WANNIER_PATH}/pw2wannier90.x -i pw2wan.silicon.in > pw2wan.silicon.out
```

6. Run wannier calculation:

```bash
mpirun -np 4 ${WANNIER_PATH}/wannier90.x silicon
```

<img src={require("../../static/img/silicon-wannier-bands.webp").default} class="inv-hue-rot-180" alt="silicon-wannier-bands"/>

## Resources

- https://sites.google.com/view/hubbard-koopmans/program
2 changes: 1 addition & 1 deletion docs/setup/hpc.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ For my case, the link line was:
-L${MKLROOT}/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm -ldl
```

<img src={require("../../static/img/intel-link-line-adviser.webp").default} alt="intel-link-line-adviser" width="600px" />
<img src={require("../../static/img/intel-link-line-adviser.webp").default} class="inv-hue-rot-180" alt="intel-link-line-adviser" width="600px" />

We need to insert the link for `BLAS_LIBS`, `LAPACK_LIBS`, and `SCALAPACK_LIBS`.
We also need to find out where is the FFTW lib located. In NUS HPC, we can use
Expand Down
3 changes: 3 additions & 0 deletions src/css/common.css
Original file line number Diff line number Diff line change
Expand Up @@ -281,4 +281,7 @@ html[data-theme="dark"] {
.footer {
background-color: var(--ifm-background-surface-color);
}
.inv-hue-rot-180 {
filter: invert(1) hue-rotate(180deg);
}
}

0 comments on commit 2a72970

Please sign in to comment.