Coverage for gpaw/test/corehole/test_S2p.py: 100%
18 statements
« prev ^ index » next coverage.py v7.7.1, created at 2025-07-14 00:18 +0000
« prev ^ index » next coverage.py v7.7.1, created at 2025-07-14 00:18 +0000
1import pytest
2from ase.build import molecule
3from ase.units import Bohr
4from gpaw import GPAW
5from gpaw.test import gen
8@pytest.mark.old_gpaw_only
9def test_S2p():
10 """Compare number of electrons for different channels with 2p corehole"""
11 atoms = molecule('SH2')
12 atoms.center(vacuum=2)
14 setup = gen('S', name='fch2p', corehole=(2, 1, 1))
16 grf = 1
17 calc = GPAW(mode='fd', h=0.3, spinpol=True,
18 setups={'S': setup})
19 atoms.calc = calc
20 atoms.get_potential_energy()
22 for spin, nelectrons in zip([0, 1], [8, 9]):
23 n_g = calc.get_all_electron_density(spin=spin, gridrefinement=grf)
24 ne = calc.density.gd.integrate(
25 n_g, global_integral=False) * (Bohr / grf)**3
26 assert ne == pytest.approx(nelectrons, abs=1e-5)