Coverage for gpaw/test/test_kpt_refine.py: 94%
16 statements
« prev ^ index » next coverage.py v7.7.1, created at 2025-07-20 00:19 +0000
« prev ^ index » next coverage.py v7.7.1, created at 2025-07-20 00:19 +0000
1import pytest
2from ase.lattice.hexagonal import Graphene
3from ase.parallel import parprint
5from gpaw import GPAW, PW, FermiDirac
8def test_kpt_refine(gpaw_new):
9 if gpaw_new:
10 pytest.skip('Not implemented')
11 system = Graphene(symbol='C',
12 latticeconstant={'a': 2.467710, 'c': 1.0},
13 size=(1, 1, 1))
14 system.pbc = (1, 1, 0)
15 system.center(axis=2, vacuum=4.0)
17 kpt_refine = {
18 'center': [1 / 3, 1 / 3, 0],
19 'size': [3, 3, 1],
20 'reduce_symmetry': False}
21 # kpt_refine={"center":[[1./3,1./3,0.],[-1./3,-1./3,0.]], "size":[3,3,1],
22 # "reduce_symmetry":True}
24 calc = GPAW(mode=PW(ecut=400),
25 xc=dict(name='PBE', stencil=1),
26 kpts={'size': [9, 9, 1], 'gamma': True},
27 experimental={'kpt_refine': kpt_refine},
28 occupations=FermiDirac(0.026))
30 system.calc = calc
31 energy = system.get_potential_energy()
33 parprint('Energy', energy)
35 assert abs(energy - -18.27) < 0.02