def build(self, xcfunc, lmax, basis, filter=None): if basis is None: basis = self.create_basis_functions() return PseudoPotential(self, basis)
def build(self, xcfunc, lmax, basis, filter=None): if basis is None: basis = self.create_basis_functions() setup = PseudoPotential(self, basis) setup.fingerprint = hashlib.md5(str(self.hghdata).encode()).hexdigest() return setup
from gpaw.upf import UPFSetupData, upfplot from gpaw.pseudopotential import pseudoplot, PseudoPotential from gpaw.eigensolvers.davidson import Davidson def get(fname): s = UPFSetupData(fname) return s s = get('O.pz-hgh.UPF') #upfplot(s.data, show=True) bfs = s.create_basis_functions() pp = PseudoPotential(s, bfs) import numpy as np x = np.linspace(0.0, 5.0, 1000) dr = x[1] - x[0] psi = pp.phit_j[0].map(x) p = pp.pt_j[0].map(x) from gpaw.atom.atompaw import AtomPAW if 0: f = 1.0 #1e-12 c = AtomPAW( 'H', [[[2.0], [4.0]]], #charge=1 - f, h=0.04,
def build(self, xcfunc, lmax, basis, filter=None): if basis is None: basis = self.create_basis_functions() setup = PseudoPotential(self, basis) setup.fingerprint = md5_new(str(self.hghdata)).hexdigest() return setup
def build(self, xcfunc, lmax, basis, filter=None): # XXX better to create basis functions after filtering? # Although basis functions are not meant for same grid if basis is None: basis = self.create_basis_functions() return PseudoPotential(self, basis, filter)