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:
- baseOrbitial()¶
- Returns:
The base orbital used for generating this split orbital.
- Return type:
- 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
The radius \(r^{\text{split}}\) is determined by specifying the split_norm
(\(\Delta N\)) of the base_orbital
, which is defined by
Further information about the basis functions can be found in LCAO basis set.