3
0
mirror of https://github.com/triqs/dft_tools synced 2024-11-08 23:23:49 +01:00
dft_tools/python/converters/vasp/test/_vaspio/test_kpoints.py

58 lines
1.6 KiB
Python
Raw Normal View History

r"""
Tests for class 'Ibzkpt' from module 'vaspio'
"""
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='./', ibz_filename=ibz_file)
testout = '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 = 'IBZKPT.example.out'
self.assertFileEqual(testout, expected)
# Scenario 2
def test_notet(self):
ibz_file = 'IBZKPT.notet'
kpoints = Kpoints()
kpoints.from_file(vasp_dir='./', ibz_filename=ibz_file)
testout = '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 = 'IBZKPT.notet.out'
self.assertFileEqual(testout, expected)