Coverage for gpaw/test/test_fixmom.py: 100%

14 statements  

« prev     ^ index     » next       coverage.py v7.7.1, created at 2025-07-09 00:21 +0000

1import pytest 

2from ase import Atoms 

3from gpaw import GPAW, FermiDirac 

4from gpaw.mixer import MixerSum 

5 

6 

7def test_fixmom(): 

8 a = 2.87 

9 bulk = Atoms('Fe2', 

10 scaled_positions=[(0, 0, 0), (0.5, 0.5, 0.5)], 

11 magmoms=[2.20, 2.20], 

12 cell=(a, a, a), 

13 pbc=True) 

14 mom0 = sum(bulk.get_initial_magnetic_moments()) 

15 conv = {'eigenstates': 0.1, 'density': 0.001, 'energy': 0.01} 

16 calc = GPAW(mode='pw', 

17 mixer=MixerSum(0.1, 3), 

18 nbands=11, 

19 kpts=(3, 3, 3), 

20 convergence=conv, 

21 occupations=FermiDirac(0.1, fixmagmom=True)) 

22 bulk.calc = calc 

23 bulk.get_potential_energy() 

24 mom = bulk.get_magnetic_moment() 

25 assert mom == pytest.approx(mom0, abs=0.05)