Skip to content

Commit

Permalink
Small fixes in README.
Browse files Browse the repository at this point in the history
  • Loading branch information
irukoa committed Feb 16, 2024
1 parent 354f8f5 commit db8e67c
Showing 1 changed file with 13 additions and 13 deletions.
26 changes: 13 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ type, public :: crystal
is defined.

## `type(crystal) :: Cr`
### Constructor.
### Constructor

A crystal is initialized by calling (first way)

Expand Down Expand Up @@ -73,7 +73,7 @@ $$
- `real(dp), optional, intent(in) :: fermi_energy` represents the crystal's Fermi energy in $\text{eV}$.
- `character(len=*), intent(in) :: from_file` is the path of a WANNIER90 format tight-binding file, relative to the program's execution directory. The Bravais lattice basis, the number of bands, the number of Bravais lattice points, their coordinates and the matrix elements of the Hamiltonian and Berry connection will be read from file.

### Handles.
### Handles

These routines retrieve crystal's properties.

Expand Down Expand Up @@ -167,7 +167,7 @@ deg_rpts = Cr%deg_rpts()

where `integer :: deg_rpts(Cr%nrpts())` is the set degeneracies for each of $\textbf{R}$ points that are included in the sums $\sum_{\textbf{R}}$. For crystals constructed from input, the array is a constant 1, but for real materials constructed from file, it stores the number of sites that are equivalent.

#### Hamiltonian matrix elements.
#### Hamiltonian matrix elements

Is called as,

Expand All @@ -177,7 +177,7 @@ hamiltonian_elements = Cr%get_real_space_hamiltonian_elements()

where `complex(dp) :: hamiltonian_elements(Cr%nrpts(), Cr%num_bands(), Cr%num_bands())` is $H_{nm}(\textbf{R})$ in $\text{eV}$.

#### Berry connection matrix elements.
#### Berry connection matrix elements

Is called as,

Expand All @@ -187,7 +187,7 @@ berry_conn = Cr%get_real_space_position_elements()

where `complex(dp) :: berry_conn(Cr%nrpts(), Cr%num_bands(), Cr%num_bands(), 3)` is $A^j_{nm}(\textbf{R})$ in $\text{A}$.

#### Fermi energy.
#### Initialization query

Is called as,

Expand All @@ -197,7 +197,7 @@ initialized = Cr%initialized()

where `logical :: initialized` is `.true.` if the crystal has been initialized and `.false.` otherwise.

#### Initialization query.
#### Fermi energy

Is called as,

Expand All @@ -207,7 +207,7 @@ fermi_energy = Cr%fermi_energy()

where `real(dp) :: fermi_energy` is the Fermi energy in $\text{eV}$.

### Hamiltonian.
### Hamiltonian

Implements

Expand All @@ -231,7 +231,7 @@ where
- If `derivative = n` is present and `all` is present and `true`, `H` is MAC's `complex_dp` `type(container), allocatable :: H(:)` and stores, in each index, the Hamiltonians $n$ th derivative $H_{nm}^{lp\cdots }(\textbf{k})$. Each container `H(i)` represents an array with shape `(Cr%num_bands(), Cr%num_bands(), 3, ..., 3)` where the number of indices is $n + 2$. The Hamiltonian (no derivative) is stored in `H(1)`.
- If `derivative = n` is present and `all` is present and `false`, `H` is MAC's `complex_dp` `type(container), allocatable :: H(:)` and stores, in the first index if the container, the Hamiltonians $n$ th derivative.

### Berry connection.
### Berry connection

Implements

Expand All @@ -255,7 +255,7 @@ where
- If `derivative = n` is present and `all` is present and `true`, `A` is MAC's `complex_dp` `type(container), allocatable :: A(:)` and stores, in each index, the Berry connection's $n$ th derivative $A_{nm}^{j \ lp\cdots }(\textbf{k})$. Each container `A(i)` represents an array with shape `(Cr%num_bands(), Cr%num_bands(), 3, 3, ..., 3)` where the number of indices is $n + 3$. The Berry connection (no derivative) is stored in `A(1)`.
- If `derivative = n` is present and `all` is present and `false`, `A` is MAC's `complex_dp` `type(container), allocatable :: A(:)` and stores, in the first index if the container, the Berry connection's $n$ th derivative.

## Dirac delta utility.
## Dirac delta utility

The library includes an approximation of a Dirac delta as a narrow Gaussian,

Expand All @@ -282,7 +282,7 @@ where
- `real(dp), intent(in) :: degen_thr` is a degeneracy threshold $\lambda$ such that two eigenvalues $i, j$ obeying $|\varepsilon_i- \varepsilon_j| < \lambda$ will be considered degenerate.
- `integer :: dl(n)` is a list of $n$ numbers expressing the dimensionality of each subspace. If `dl(i) = M`, then $\varepsilon_i = \varepsilon_{i+1} = \cdots = \varepsilon_{i + M - 1}$ up to $\lambda$. If $i < j < i + M - 1$, then `dl(j) = 0`. If the value is nondegenerate, then `dl(j) = 1`.

## Diagonalization utility.
## Diagonalization utility

The library includes a wrapper of `dsyev` and `zheev` routines from LAPACK. It can be called by

Expand All @@ -296,7 +296,7 @@ where
- `real/complex(dp), optional, intent(out) :: D(n, n)` is the diagonal form $D$ of `matrix`.
- `real(dp), optional, intent(out) :: eig(n)` are the eigenvalues of `matrix`.

## Schur decomposition utility.
## Schur decomposition utility

The library includes a wrapper of `zgees` routine from LAPACK. It can be called by

Expand All @@ -310,7 +310,7 @@ where
- `complex(dp), optional, intent(out) :: S(n, n)` is the upper-triangular form $S$ of `matrix`.
- `complex(dp), optional, intent(out) :: T(n)` are the diagonal entries of `S`.

## Singular value decomposition utility.
## Singular value decomposition utility

The library includes a wrapper of `zgesvd` routine from LAPACK. It can be called by

Expand All @@ -324,7 +324,7 @@ where
- `real/complex(dp), optional, intent(out) :: sigma(m, n)` is the diagonal form $\Sigma$ of `matrix`.
- `real(dp), optional, intent(out) :: eig(n)` are the diagonal entries of `sigma`.

## Matrix exponential and logarithm utilities.
## Matrix exponential and logarithm utilities

The library includes tools to compute the exponential of a skew-Hermitian matrix and the logarithm of a unitary matrix, `expsh` and `logu`, respectively. These can be called by

Expand Down

0 comments on commit db8e67c

Please sign in to comment.