AnalyticalSplit

class AnalyticalSplit(base_orbital=None, split_norm=None, base_orbitial=None)

Class for representing the analytical split of a confined or polarization orbital,

Parameters:
  • base_orbital (ConfinedOrbital | PolarizationOrbital) – The basis orbital from which this orbital should be split.

  • split_norm (float between 0 and 1) – The input orbital will be split at the radius where the input orbital has this given norm (1 - split_norm).

  • base_orbitial

angularMomentum()
Returns:

The angular momentum.

Return type:

int

baseOrbital()
Returns:

The base orbital used for generating this split orbital.

Return type:

ConfinedOrbital | PolarizationOrbital

baseOrbitial()
Returns:

The base orbital used for generating this split orbital.

Return type:

ConfinedOrbital | PolarizationOrbital

splitNorm()
Returns:

The split norm.

Return type:

float

uniqueString()

Return a unique string representing the state of the object.

Usage Examples

Define a BasisSet for Hydrogen:

hydrogen_1s = ConfinedOrbital(
    principal_quantum_number=1,
    angular_momentum=0,
    radial_cutoff_radius=5.28603678847*Bohr,
    confinement_start_radius=0.8 * 5.28603678847*Bohr,
    additional_charge=0.0,
    confinement_strength=20.000*Hartree*Bohr,
    radial_step_size=0.001*Bohr,
    )

hydrogen_1s_split = AnalyticalSplit(hydrogen_1s, split_norm=0.40)

my_hydrogen_basis = BasisSet(
    element=Hydrogen,
    orbitals=[Hydrogen_1s, hydrogen_1s_split],
    occupations=[0.7 , 0.3],
    pseudopotential=NormConservingPseudoPotential('normconserving/H.LDAPZ.zip'),
    )

Notes

The AnalyticalSplit orbital (\(\phi_{l}^\text{split}\)) is obtained by constructing an analytical orbital that matches the base_orbital (\(\phi_{l}^\text{base}\)) smoothly at the radius \(r^{\text{split}}\). The functional form used for the AnalyticalSplit orbital is

\[\begin{split} \phi_{l}^\text{split}(r) = \begin{cases} r^l(a_l-b_l r^2) &\text{if} \, \, r < r^{\text{split}} \\ \phi_{l}^\text{base}(r) &\text{if} \, \, r \ge r^{\text{split}} \end{cases}\end{split}\]

The radius \(r^{\text{split}}\) is determined by specifying the split_norm (\(\Delta N\)) of the base_orbital, which is defined by

\[\Delta N = \int_{r^{\text{split}}}^{r^c} r^2 |\phi_{l}^\text{base}(r)|^2 dr\]

Further information about the basis functions can be found in LCAO basis set.