VaspSystemInit Subroutine

subroutine VaspSystemInit(ArrLEN)

Arguments

Type IntentOptional Attributes Name
integer :: ArrLEN

Contents

Source Code


Source Code

subroutine VaspSystemInit(ArrLEN)
    use global_utilities
    use SystemData, only: Symmetry, SymmetrySize, SymmetrySizeB
    use SystemData, only: BasisFN, BasisFNSize, BasisFNSizeB, NullBasisFn
    use vasp_interface
    use SymData, only: nRot, PropBitLen, tAbelian, nProp, KPntSym, tagKPntSym
    use constants, only: dp, sizeof_int, stdout
    use util_mod, only: stop_all
    implicit none
    integer :: ArrLEN
    integer :: i, ik
    character(*), parameter :: this_routine = 'VaspSystemInit'

    ArrLEN = nStates * 2
    nRot = nKP
    PropBitLen = 15
    nProp(:) = KPMsh(:)
    tAbelian = .true.
    write(stdout, *) tAbelian, nProp, PropBitLen, nRot, ArrLEN

    allocate(KPntSym(3, nKP))
    call LogMemAlloc('KPntSym', 3 * nKP, 4, this_routine, tagKPntSym)
    do ik = 1, nKP
        do i = 1, 3
            KPntSym(i, ik) = int(kpnts(i, ik) * real(nProp(i), dp))
        end do
    end do

    write(stdout, *) tAbelian, nProp, PropBitLen, nRot, ArrLEN
    return
end subroutine VaspSystemInit