Orbital

class sisl.Orbital(R, q0=0.0, tag='')

Bases: object

Base class for orbital information.

The orbital class is still in an experimental stage and will probably evolve over some time.

Parameters
  • R (float) – maximum radius

  • q0 (float, optional) – initial charge

  • tag (str, optional) – user defined tag

R

maximum radius (in Ang)

Type

float

q0

initial electronic charge

Type

float

tag

user defined tag

Type

str

Examples

>>> orb = Orbital(1)
>>> orb_tag = Orbital(2, tag='range=2')
>>> orb.R == orb_tag.R / 2
True
>>> orbq = Orbital(2, 1)
>>> orbq.q0
1.

Attributes

R

__doc__

__hash__

__module__

__slots__

q0

tag

Methods

__delattr__

Implement delattr(self, name).

__dir__

Default dir() implementation.

__eq__(other)

Return self==value.

__format__

Default object formatter.

__ge__

Return self>=value.

__getattribute__

Return getattr(self, name).

__getstate__()

Return the state of this object

__gt__

Return self>value.

__init__(R[, q0, tag])

Initialize orbital object

__init_subclass__

This method is called when a class is subclassed.

__le__

Return self<=value.

__lt__

Return self<value.

__ne__

Return self!=value.

__new__

Create and return a new object.

__plot__([harmonics, axes])

Plot the orbital radial/spherical harmonics

__reduce__

Helper for pickle.

__reduce_ex__

Helper for pickle.

__repr__()

Return repr(self).

__setattr__

Implement setattr(self, name, value).

__setstate__(d)

Re-create the state of this object

__sizeof__

Size of object in memory, in bytes.

__str__()

A string representation of the object

__subclasshook__

Abstract classes can override this to customize issubclass().

copy()

Create an exact copy of this object

equal(other[, psi, radial])

Compare two orbitals by comparing their radius, and possibly the radial and psi functions

name([tex])

Return a named specification of the orbital (tag)

psi(r, *args, **kwargs)

Calculate \(\phi(\mathbf R)\) for Cartesian coordinates

psi_spher(r, theta, phi, *args, **kwargs)

Calculate \(\phi(|\mathbf R|, \theta, \phi)\) for spherical coordinates

radial(r, *args, **kwargs)

Calculate the radial part of the wavefunction \(f(\mathbf R)\)

scale(scale)

Scale the orbital by extending R by scale

spher(theta, phi, *args, **kwargs)

Calculate the spherical harmonics of this orbital at a given point (in spherical coordinates)

toGrid([precision, c, R, dtype, Z])

Create a Grid with only this orbital wavefunction on it

toSphere([center])

Return a sphere with radius equal to the orbital size

R
copy()[source]

Create an exact copy of this object

equal(other, psi=False, radial=False)[source]

Compare two orbitals by comparing their radius, and possibly the radial and psi functions

When comparing two orbital radius they are considered equal with a precision of 1e-4 Ang.

Parameters
  • other (Orbital) – comparison orbital

  • psi (bool, optional) – also compare that the full psi are the same

  • radial (bool, optional) – also compare that the radial parts are the same

name(tex=False)[source]

Return a named specification of the orbital (tag)

psi(r, *args, **kwargs)[source]

Calculate \(\phi(\mathbf R)\) for Cartesian coordinates

psi_spher(r, theta, phi, *args, **kwargs)[source]

Calculate \(\phi(|\mathbf R|, \theta, \phi)\) for spherical coordinates

q0
radial(r, *args, **kwargs)[source]

Calculate the radial part of the wavefunction \(f(\mathbf R)\)

scale(scale)[source]

Scale the orbital by extending R by scale

spher(theta, phi, *args, **kwargs)[source]

Calculate the spherical harmonics of this orbital at a given point (in spherical coordinates)

tag
toGrid(precision=0.05, c=1.0, R=None, dtype=<class 'numpy.float64'>, Z=1)[source]

Create a Grid with only this orbital wavefunction on it

Parameters
  • precision (float, optional) – used separation in the Grid between voxels (in Ang)

  • c (float or complex, optional) – coefficient for the orbital

  • R (float, optional) – box size of the grid (default to the orbital range)

  • dtype (numpy.dtype, optional) – the used separation in the Grid between voxels

  • Z (int, optional) – atomic number associated with the grid

toSphere(center=None)[source]

Return a sphere with radius equal to the orbital size

Returns

sphere with a radius equal to the radius of this orbital

Return type

Sphere