Coverage for gpaw/test/eigen/test_keep_htpsit.py: 100%
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
1from gpaw import GPAW
2from gpaw.eigensolvers.rmmdiis import RMMDIIS
3from ase import Atoms
4import pytest
7def test_eigen_keep_htpsit():
8 atoms = Atoms('H')
9 atoms.center(3.0)
11 convergence = {'eigenstates': 1e-2, 'density': 1e-2}
12 base_params = dict(
13 mode='fd',
14 nbands=2,
15 convergence=convergence,
16 maxiter=20)
17 # Keep htpsit
18 calc = GPAW(**base_params, eigensolver=RMMDIIS(keep_htpsit=True))
19 atoms.calc = calc
20 e0 = atoms.get_potential_energy()
22 # Do not keep htpsit
23 calc = GPAW(**base_params, eigensolver=RMMDIIS(keep_htpsit=False))
24 atoms.calc = calc
25 e1 = atoms.get_potential_energy()
27 assert e0 == pytest.approx(e1, abs=1e-12)