mod_lattice3d Module

Generates the lattice vectors of direct and reciprocal space from basic translation vectors for a 3D system


Uses


Subroutines

public subroutine lattice3d(alat, bravais, recbv, ngmax, nrmax, nshlg, nshlr, nsg, nsr, gn, rm, rmax, gmax, iprint, nmaxd, ishld)

Author
V. Popescu
License
Creative Commons License
Category
geometry, k-points, electrostatics, KKRhost

G e n e r a t e s

t h e

l a t t i c e

v e c t o r s

o f

d i r e c t

a n d

r e c i p r o c a l

s p a c e

f r o m

b a s i c

t r a n s l a t i o n

v e c t o r s

f o r

a

3 D

s y s t e m

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: alat

Lattice constant in a.u.

real(kind=dp), intent(in), dimension (3, 3) :: bravais

Bravais lattice vectors

real(kind=dp), intent(in), dimension (3, 3) :: recbv

Reciprocal basis vectors

integer, intent(out) :: ngmax

Number of reciprocal space vectors

integer, intent(out) :: nrmax

Number of real space vectors rr

integer, intent(out) :: nshlg

Shells in reciprocal space

integer, intent(out) :: nshlr

Shells in real space

integer, intent(inout), dimension (ishld) :: nsg
integer, intent(inout), dimension (ishld) :: nsr
real(kind=dp), intent(inout), dimension (3, nmaxd) :: gn

x,y,z of

real(kind=dp), intent(inout), dimension (3, nmaxd) :: rm

x,y,z of

real(kind=dp), intent(inout) :: rmax

Ewald summation cutoff parameter for real space summation

real(kind=dp), intent(inout) :: gmax

Ewald summation cutoff parameter for reciprocal space summation

integer, intent(in) :: iprint

Printing index control

integer, intent(in) :: nmaxd

Paremeters for the Ewald summations

integer, intent(in) :: ishld

Paremeters for the Ewald summations