Atom¶
-
class
sisl.
Atom
(Z, orbital=None, mass=None, tag=None, **kwargs)[source]¶ Atomic information, mass, name number of orbitals and ranges
Object to handle atomic mass, name, number of orbitals and orbital range.
The
Atom
object handles the atomic species with information such asatomic number
mass
number of orbitals
radius of each orbital
The
Atom
object ispickle
-able.- Parameters
- Zint or str
key lookup for the atomic specie, Atom[key]
- orbitallist of Orbital or float, optional
all orbitals associated with this atom. Default to one orbital.
- massfloat, optional
the atomic mass, if not specified uses the mass from
PeriodicTable
- tagstr, optional
arbitrary designation for user handling similar atoms with different settings (defaults to the label of the atom)
- Attributes
Attributes
Orbital radius
Number of orbitals on this atom
Orbital initial charges
Return short atomic name (Au==79).
Methods
__init__
(self, Z[, orbital, mass, tag])Initialize self.
copy
(self[, Z, orbital, mass, tag])Return copy of this object
equal
(self, other[, R, psi])True if other is the same as this atomic specie
index
(self, orbital)Return the index of the orbital in the atom object
iter
(self[, group])Loop on all orbitals in this atom
maxR
(self)Return the maximum range of orbitals.
radius
(self[, method])Return the atomic radii of the atom (in Ang)
remove
(self, orbitals)Return the same atom without a specific set of orbitals
scale
(self, scale)Scale the atomic radii and return an equivalent atom.
sub
(self, orbitals)Return the same atom with only a subset of the orbitals present
toSphere
(self[, center])Return a sphere with the maximum orbital radius equal
-
property
R
¶ Orbital radius
-
equal
(self, other, R=True, psi=False)[source]¶ True if other is the same as this atomic specie
- Parameters
- otherAtom
the other object to check againts
- Rbool, optional
if True the equality check also checks the orbital radii, else they are not compared
- psibool, optional
if True, also check the wave-function component of the orbitals, see
Orbital.psi
-
iter
(self, group=False)[source]¶ Loop on all orbitals in this atom
- Parameters
- groupbool, optional
if two orbitals share the same radius one may be able to group two orbitals together
- Returns
- Orbital
current orbital, if group is
True
this is a list of orbitals, otherwise a single orbital is returned
-
property
no
¶ Number of orbitals on this atom
-
property
q0
¶ Orbital initial charges
-
radius
(self, method='calc')[source]¶ Return the atomic radii of the atom (in Ang)
See
PeriodicTable.radius
for details on the argument.
-
remove
(self, orbitals)[source]¶ Return the same atom without a specific set of orbitals
- Parameters
- orbitalsarray_like
indices of the orbitals to remove
- Returns
- Atom
without the specified orbitals
See also
sub
retain a selected set of orbitals
-
scale
(self, scale)[source]¶ Scale the atomic radii and return an equivalent atom.
- Parameters
- scalefloat
the scale factor for the atomic radii
-
sub
(self, orbitals)[source]¶ Return the same atom with only a subset of the orbitals present
- Parameters
- orbitalsarray_like
indices of the orbitals to retain
- Returns
- Atom
with only the subset of orbitals
- Raises
- ValueErrorif the number of orbitals removed is too large or some indices are outside the allowed range
-
property
symbol
¶ Return short atomic name (Au==79).