Coverage for gpaw/test/pseudopotential/test_upf_h2o.py: 25%
20 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 gpaw.upf import UPFSetupData
5def get(fname):
6 s = UPFSetupData(fname)
7 return s
10@pytest.mark.skip(reason='TODO')
11def test_psp_upf_h2o():
12 s = get('O.pz-hgh.UPF')
13 # upfplot(s.data, show=True)
15 # dr = x[1] - x[0]
17 from gpaw.atom.atompaw import AtomPAW
19 if 0:
20 # f = 1.0 # 1e-12
21 c = AtomPAW('H', [[[2.0], [4.0]]],
22 # charge=1 - f,
23 h=0.04,
24 # setups='paw',
25 # setups='hgh',
26 setups={'H': s}
27 )
29 import matplotlib.pyplot as plt
30 plt.plot(c.wfs.gd.r_g, c.hamiltonian.vt_sg[0])
31 plt.show()
32 raise SystemExit
34 # print 'test v201 Au.pz-d-hgh.UPF'
35 # s = UPFSetupData('Au.pz-d-hgh.UPF')
36 # print 'v201 ok'
38 # print 'test horrible version O.pz-mt.UPF'
39 # s = UPFSetupData('O.pz-mt.UPF')
40 # print 'horrible version ok, relatively speaking'
42 if 1:
43 from gpaw import GPAW, PoissonSolver
44 from gpaw.utilities import h2gpts
45 from ase.build import molecule
47 # s = UPFSetupData('/home/askhl/parse-upf/h_lda_v1.uspp.F.UPF')
49 upfsetups = {'H': UPFSetupData('H.pz-hgh.UPF'),
50 'O': UPFSetupData('O.pz-hgh.UPF')}
52 system = molecule('H2O')
53 system.center(vacuum=3.5)
54 calc = GPAW(mode='fd',
55 txt='-',
56 nbands=6,
57 setups=upfsetups,
58 # setups='paw',
59 # hund=True,
60 # mixer=MixerSum(0.1, 5, 20.0),
61 # eigensolver='cg',
62 # occupations=FermiDirac(0.1),
63 # charge=1-1e-12,
64 # eigensolver='rmm-diis',
65 gpts=h2gpts(0.12, system.get_cell(), idiv=8),
66 poissonsolver=PoissonSolver(relax='GS', eps=1e-7),
67 xc='oldLDA',
68 # nbands=4
69 )
71 system.calc = calc
72 system.get_potential_energy()