def __init__(self, atomlist): atom_data_dic = {} atomtypes = list(set([Zi for (Zi, posi) in atomlist])) atomtypes.sort() for Zi in atomtypes: confined_atom, free_atom = import_pseudo_atom(Zi) atom_data_dic[Zi] = free_atom # list of atomic potentials self.pots = [] for (Zi, posi) in atomlist: pot = AtomicPotential(atom_data_dic[Zi], posi) self.pots.append(pot)
def __init__(self, atomlist, confined=True): atomtypes = list(set([Zi for (Zi, posi) in atomlist])) atomtypes.sort() self.atomlist = atomlist self.atomic_potentials = {} for Zi in atomtypes: # load radial density of pseudo atoms confined_atom, free_atom = import_pseudo_atom(Zi) if confined == True: atom = confined_atom else: atom = free_atom # The effective potential at at r=0 is not correct, so leave it out r = atom.r potI_spline = spline_effective_potential( atom.r[r > 0], atom.effective_potential[r > 0], atom.r0) self.atomic_potentials[Zi] = potI_spline
def __init__(self, atomlist, confined=True): atomtypes = list(set([Zi for (Zi, posi) in atomlist])) atomtypes.sort() self.atomlist = atomlist self.atomic_densities = {} for Zi in atomtypes: # load radial density of pseudo atoms confined_atom, free_atom = import_pseudo_atom(Zi) if confined == True: atom = confined_atom else: atom = free_atom # The density at r=0 is not correct, so leave it out r = atom.r rhoI_spline = spline_radial_density(atom.r[r > 0], atom.radial_density[r > 0]) self.atomic_densities[Zi] = rhoI_spline