Пример #1
0
    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)
Пример #2
0
 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
Пример #3
0
 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