| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public, | allocatable | :: | k_to_sym(:,:,:) | |||
| integer, | public, | allocatable | :: | sym_to_k(:,:) | |||
| integer, | public, | allocatable | :: | mult_table(:,:) | |||
| integer, | public, | allocatable | :: | inv_table(:) | |||
| integer, | private | :: | length(2) | = | -1 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this | ||||
| integer, | intent(in) | :: | ind |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | ind |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | ind |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | ind |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | spinorb |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | spinorb |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this | ||||
| integer, | intent(in) | :: | k_1(3) | |||
| integer, | intent(in) | :: | k_2(3) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | k(3) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this | ||||
| integer, | intent(in) | :: | orb |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this | ||||
| integer, | intent(in) | :: | orb |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this | ||||
| integer, | intent(in) | :: | k_in(3) | |||
| integer, | intent(in), | optional | :: | spin |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lattice) | :: | this | ||||
| integer, | intent(out), | optional | :: | r_min(3) | ||
| integer, | intent(out), | optional | :: | r_max(3) |
Base function for setting up a the basis vector array for rectangular lattices (extracted from the previous init_basis_vecs_rect)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle), | intent(inout) | :: | this | |||
| integer, | intent(in) | :: | l |
Maximal number of unit vectors to be combined into a basis vector |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle), | intent(in) | :: | this | |||
| integer, | intent(in), | optional | :: | dimen |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle), | intent(in) | :: | this | |||
| integer, | intent(in), | optional | :: | dimen |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle) | :: | this | ||||
| integer, | intent(in) | :: | k_vec(3) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle) | :: | this | ||||
| integer, | intent(in) | :: | length_x | |||
| integer, | intent(in) | :: | length_y | |||
| integer, | intent(in), | optional | :: | length_z |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle) | :: | this | ||||
| integer, | intent(in) | :: | length_x | |||
| integer, | intent(in) | :: | length_y | |||
| integer, | intent(in), | optional | :: | length_z |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rectangle) | :: | this | ||||
| integer, | intent(in) | :: | k_vec(3) | |||
| integer, | intent(in) | :: | r_vec(3) |
type, extends(lattice) :: rectangle private ! how to encode the length? integer :: length(2) = -1 contains private procedure :: init_basis_vecs_rect_base procedure, public :: get_length => get_length_rect procedure, public :: is_periodic => is_periodic_rect procedure, public :: dispersion_rel => dispersion_rel_rect procedure :: set_length => set_length_rect procedure :: calc_nsites => calc_nsites_rect procedure :: initialize_sites => init_sites_rect procedure :: init_basis_vecs => init_basis_vecs_rect procedure, public :: dot_prod => dot_prod_rect end type rectangle