3
0
mirror of https://github.com/triqs/dft_tools synced 2024-06-28 16:12:36 +02:00
dft_tools/python/vasp/test/_vaspio/test_kpoints.py
Oleg E. Peil dda331b986 Fixed 'vaspio' tests
Added 'rpath.py' module to determine the current directory.

Also fixed the test example for EIGENVAL: VASP 5.4 uses a format
with Fermi weights output (unlike previous versions).
2015-10-16 11:52:33 +02:00

62 lines
1.7 KiB
Python

r"""
Tests for class 'Ibzkpt' from module 'vaspio'
"""
import os
import rpath
_rpath = os.path.dirname(rpath.__file__) + '/'
import mytest
import numpy as np
from vaspio import Kpoints
################################################################################
#
# TestIbzkpt
#
################################################################################
class TestIbzkpt(mytest.MyTestCase):
"""
Function:
def read_plocar(filename)
Scenarios:
- full IBZKPT file with tetrahedra
- partial IBZKPT file with k-points only
"""
# Scenario 1
def test_example(self):
ibz_file = 'IBZKPT.example'
kpoints = Kpoints()
kpoints.from_file(vasp_dir=_rpath, ibz_filename=ibz_file)
testout = _rpath + 'IBZKPT.example.out.test'
with open(testout, 'w') as f:
writeline = lambda s: f.write(s + '\n')
writeline("nktot = %s"%(kpoints.nktot))
writeline("ntet = %s"%(kpoints.ntet))
writeline("volt = %s"%(kpoints.volt))
writeline("kpts:\n%s"%(kpoints.kpts))
writeline("tets:\n%s"%(kpoints.itet))
expected = _rpath + 'IBZKPT.example.out'
self.assertFileEqual(testout, expected)
# Scenario 2
def test_notet(self):
ibz_file = 'IBZKPT.notet'
kpoints = Kpoints()
kpoints.from_file(vasp_dir=_rpath, ibz_filename=ibz_file)
testout = _rpath + 'IBZKPT.notet.out.test'
with open(testout, 'w') as f:
writeline = lambda s: f.write(s + '\n')
writeline("nktot = %s"%(kpoints.nktot))
writeline("kpts:\n%s"%(kpoints.kpts))
expected = _rpath + 'IBZKPT.notet.out'
self.assertFileEqual(testout, expected)