Skip to content

Commit

Permalink
deploy: 5ee4185
Browse files Browse the repository at this point in the history
  • Loading branch information
atztogo committed Jan 9, 2025
1 parent 7b36b84 commit ab11932
Show file tree
Hide file tree
Showing 8 changed files with 378 additions and 143 deletions.
2 changes: 1 addition & 1 deletion .buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 82d066813d69bfad1160a3767f01c846
config: a03f79a83b3c3629fd7740ebadfdbc93
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file modified .doctrees/environment.pickle
Binary file not shown.
Binary file modified .doctrees/velph-subcommands.doctree
Binary file not shown.
223 changes: 169 additions & 54 deletions _sources/velph-subcommands.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,20 @@ The following subcommands must be executed in the directory containing the
properly organized relative to the current directory where `velph.toml` is
located.

A typical workflow of velph subcommands for transport property calculation is illustrated below.

```{mermaid}
graph LR
A[velph-init] --> B[velph-relax]
B --> C[velph-init]
C --> D[velph-nac]
C --> E[velph-el_bands]
F[velph-phelel]
D --> F
E --> F
F --> G[velph-transport]
```

In the following example, two `velph init` command operations generate two
different directories. The first operation performs crystal structure relaxation
in the `relax` directory. The second operation, using the relaxed crystal
Expand Down Expand Up @@ -60,6 +74,105 @@ VASP input files will be generated by "velph phelel generate".
...
```

## `velph init`

See {ref}`velph_init`.

## `velph hints`

See {ref}`velph_hints`.

## `velph relax`

It is recommended to create a project directory secific for relaxation
calculation, e.g., as

```bash
% ls
POSCAR-unitcell POTCAR velph-tmpl.toml
% velph init --template-toml velph-tmpl.toml POSCAR-unitcell relax
...
% cd relax
% ls
POTCAR velph.toml
% velph relax generate
...
```
### `velph relax generate`

This subcommand generates VASP input files and a job script for crystal
structure relaxation. Initially, these files are created in the `iter1`
directory. The process supports multiple relaxation steps, where the `CONTCAR`
file from the previous iteration is used as the `POSCAR` for the next step once
the preceding VASP calculation is complete. Each subsequent set of input files
is generated in directories named `iter2`, `iter3`, and so on.

```bash
% ls
POTCAR velph.toml
% velph relax generate
VASP input files were made in "relax/iter1".
...
# Run VASP calculation in relax/iter1
...
% ls
POTCAR relax/ velph.toml
% velph relax generate
"relax/iter1" exists.
"relax/iter1/CONTCAR" will be as new "POSCAR".
VASP input files were made in "relax/iter2".
...
```

(velph_nac_subcommand)=
## `velph nac`

This subcommand is used to prepare VASP input files for calculating the
dielectric constant and Born effective charges. These quantities are required
for the non-analytical term correction in phonon calculations and for handling
the long-range terms in electron-phonon interaction calculations.

### `velph nac generate`

After the VASP calculation is complete, the dielectric constant and Born
effective charges are extracted from the `vasprun.xml` file during the execution
of `velph phelel init`, `velph phono3py init`, or `velph phonopy init`. The
extracted values are then written to `phelel_disp.yaml`, `phono3py_disp.yaml`,
or `phonopy_disp.yaml`, respectively.

```bash
% velph nac generate
VASP input files were made in "nac".
```

## `velph el_bands`

This subcommand is used to prepare VASP input files for electronic band
structure and density of states calculations, and to plot the resulting data.

### `velph el_bands generate`

The VASP input files have been prepared so that the calculation results will be
stored in `vaspout.h5`.

```bash
% velph el_bands generate
VASP input files were made in "el_bands/bands".
VASP input files were made in "el_bands/dos".
```

### `velph el_bands plot`

The electronic band structure and density of states are plotted and saved in the
`el_bands.pdf` file. The energy range must be specified using the `--windows`
option, with the first and second arguments representing the range below and
above the Fermi energy in eV, respectively.

```bash
% velph el_bands plot --window -5 9
Electronic band structure plot was saved in "el_bands/el_bands.pdf".
```

## `velph phelel`

This subcommand calculates the derivatives of local potentials and PAW strengths
Expand Down Expand Up @@ -121,6 +234,14 @@ Running finufft (eps=1.000e-06)...
(velph_phelel_phonopy_subcommand)=
### `velph phelel phonopy`

```{note}
This subcommand is similar to `velph ph_bands`, but the phonon band structure is
calculated using the phonopy code. While the phonon calculation routines of VASP
and phonopy are expected to yield similar results, they are not entirely
equivalent. However, for electron-phonon calculations, the VASP routine is
utilized.
```

`phonopy_params.yaml` that contains information necessary for phonon calculation
by the phonopy code is generated from `phelel_disp.yaml` and the results of the
VASP inputs generated by `velph phelel generate`.
Expand All @@ -133,82 +254,76 @@ VASP inputs generated by `velph phelel generate`.

## `velph transport`

This subcommand is used to prepare VASP input files for calculating transport
properties based on electron-phonon interactions.

### `velph transport generate`

The VASP input files are prepared for transport property calculations. Users
should review the generated `INCAR` tags and modify them as necessary for the
target material. If results from `el_bands/dos` calculations are available, the
maximum band index for the self-energy calculation is estimated and written into
the `INCAR` file.

```bash
% velph transport generate
Found "el_bands/dos" directory. Estimate elph_selfen_band_stop.
"elph_selfen_band_stop=5" in INCAR is set.
VASP input files were generated in "transport".
```

### `velph transport plot`

## `velph relax`
The following command opens a graphical window that contains plots of transport
properties in `vaspout.h5`.

It is recommended to create a project directory secific for relaxation
calculation, e.g., as
```bash
% velph transport plot transport
```

The following command opens a graphical window that displays eigenvalues in the
Brillouin zone with non-zero and non-one occupations. The eigenvalues are
obtained from `vaspout.h5`, and their occupations are calculated based on the
temperature and Fermi level specified through the command options.

```bash
% ls
POSCAR-unitcell POTCAR velph-tmpl.toml
% velph init --template-toml velph-tmpl.toml POSCAR-unitcell relax
...
% cd relax
% ls
POTCAR velph.toml
% velph relax generate
...
% velph transport plot eigenvalues
mu: 4.837002 eV
temperature: 300.000000 K
No eigenvalues to plot.
% velph transport plot eigenvalues --mu 4
```
### `velph relax generate`

This subcommand generates VASP input files and a job script for crystal
structure relaxation. Initially, these files are created in the `iter1`
directory. The process supports multiple relaxation steps, where the `CONTCAR`
file from the previous iteration is used as the `POSCAR` for the next step once
the preceding VASP calculation is complete. Each subsequent set of input files
is generated in directories named `iter2`, `iter3`, and so on.
The following command opens a graphical window that displays Fan self-energies.

```bash
% ls
POTCAR velph.toml
% velph relax generate
VASP input files were made in "relax/iter1".
...
# Run VASP calculation in relax/iter1
...
% ls
POTCAR relax/ velph.toml
% velph relax generate
"relax/iter1" exists.
"relax/iter1/CONTCAR" will be as new "POSCAR".
VASP input files were made in "relax/iter2".
...
% velph transport plot selfenergy
```

(velph_nac_subcommand)=
## `velph nac`
## `velph ph_bands`

This subcommand is used to calculate dielectric constant and Born effective
charges that are used for non-analytical term correction of phonon calculation
and treatment of long range term of electron-phonon interaction calculation.
This subcommand is used to prepare VASP input files for phonon band structure
calculation using the supercell force constants stored in `phelel_params.hdf5`,
and to plot the resulting data.

### `velph nac generate`
### `velph ph_bands generate`

After the VASP calculation is complete, the dielectric constant and Born
effective charges are extracted from the `vasprun.xml` file during the execution
of `velph phelel init`, `velph phono3py init`, or `velph phonopy init`. The
extracted values are then written to `phelel_disp.yaml`, `phono3py_disp.yaml`,
or `phonopy_disp.yaml`, respectively.
The VASP input files including `QPOINTS` are prepared so that the
calculation results will be stored in `vaspout.h5`.

```bash
% velph nac generate
VASP input files were made in "nac".
% velph ph_bands generate
VASP input files were made in "ph_bands/bands".
```

## `velph el_bands`

### `velph el_bands generate`
### `velph el_bands plot`
### `velph ph_bands plot`

## `velph ph_bands`
The phonon band structure is plotted and saved in the `ph_bands.pdf` file.

### `velph ph_bands generate`

### `velph ph_bands plot`
```bash
% velph ph_bands plot
Phonon band structure plot was saved in "ph_bands/ph_bands.pdf".
```

## `velph phono3py`

Expand Down
8 changes: 8 additions & 0 deletions genindex.html
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,14 @@
<script src="_static/doctools.js?v=9bcbadda"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="_static/scripts/sphinx-book-theme.js?v=887ef09a"></script>
<script type="module" src="https://cdn.jsdelivr.net/npm/[email protected]/dist/mermaid.esm.min.mjs"></script>
<script type="module" src="https://cdn.jsdelivr.net/npm/@mermaid-js/[email protected]/dist/mermaid-layout-elk.esm.min.mjs"></script>
<script type="module">import mermaid from "https://cdn.jsdelivr.net/npm/[email protected]/dist/mermaid.esm.min.mjs";import elkLayouts from "https://cdn.jsdelivr.net/npm/@mermaid-js/[email protected]/dist/mermaid-layout-elk.esm.min.mjs";mermaid.registerLayoutLoaders(elkLayouts);mermaid.initialize({startOnLoad:false});</script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/d3.min.js"></script>
<script type="module">
import mermaid from "https://cdn.jsdelivr.net/npm/[email protected]/dist/mermaid.esm.min.mjs";
window.addEventListener("load", () => mermaid.run());
</script>
<script>DOCUMENTATION_OPTIONS.pagename = 'genindex';</script>
<link rel="index" title="Index" href="#" />
<link rel="search" title="Search" href="search.html" />
Expand Down
8 changes: 8 additions & 0 deletions search.html
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,14 @@
<script src="_static/doctools.js?v=9bcbadda"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="_static/scripts/sphinx-book-theme.js?v=887ef09a"></script>
<script type="module" src="https://cdn.jsdelivr.net/npm/[email protected]/dist/mermaid.esm.min.mjs"></script>
<script type="module" src="https://cdn.jsdelivr.net/npm/@mermaid-js/[email protected]/dist/mermaid-layout-elk.esm.min.mjs"></script>
<script type="module">import mermaid from "https://cdn.jsdelivr.net/npm/[email protected]/dist/mermaid.esm.min.mjs";import elkLayouts from "https://cdn.jsdelivr.net/npm/@mermaid-js/[email protected]/dist/mermaid-layout-elk.esm.min.mjs";mermaid.registerLayoutLoaders(elkLayouts);mermaid.initialize({startOnLoad:false});</script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/d3.min.js"></script>
<script type="module">
import mermaid from "https://cdn.jsdelivr.net/npm/[email protected]/dist/mermaid.esm.min.mjs";
window.addEventListener("load", () => mermaid.run());
</script>
<script>DOCUMENTATION_OPTIONS.pagename = 'search';</script>
<script src="_static/searchtools.js"></script>
<script src="_static/language_data.js"></script>
Expand Down
2 changes: 1 addition & 1 deletion searchindex.js

Large diffs are not rendered by default.

Loading

0 comments on commit ab11932

Please sign in to comment.