Cartesius Library
orbitals Module Reference

This module exists because the recursive functionality needed to be implemented without breaking backwards compatibility. More...

Data Types

interface  operator(*)
 

Functions/Subroutines

real function overlap (orbital1, orbital2)
 Calculates the overlap integral \( \left<1|2\right> \). More...
 
real function rk_element (orbital1, orbital2, k)
 Function to calculate the integral \( \left<1\left|r^{k}\right|2\right> \). More...
 
real function overlap_sto (orbital1, orbital2)
 Calculates overlap integral for STO primitives. More...
 
real function rk_element_sto (arg, orbital1, orbital2)
 Calculates the integral \( \left<1\left|r^{k}\right|2\right> \) for STO primitives. More...
 
real function rk_element_sto_generic (k, e1, n1, e2, n2)
 Computes matrix element \( \left<1\left|r^{k}\right|2\right> \) from n and \(\zeta\). More...
 

Detailed Description

This module exists because the recursive functionality needed to be implemented without breaking backwards compatibility.

Author
D. Raenko

Function/Subroutine Documentation

◆ overlap()

real function orbitals::overlap ( type(orbital), intent(in)  orbital1,
type(orbital), intent(in)  orbital2 
)

Calculates the overlap integral \( \left<1|2\right> \).

◆ overlap_sto()

real function orbitals::overlap_sto ( type(orbital), intent(inout)  orbital1,
type(orbital), intent(inout)  orbital2 
)

Calculates overlap integral for STO primitives.

Warning
Select local or laboratory frame calculation with operator_local.
See also
Note for atomicSlaterOverlapLocal. In the "local" system, the second atom's orbital is reflected through the xy-plane. Therefore, orbitals asymmetric about the z-axis pick up an extra negative sign.

◆ rk_element()

real function orbitals::rk_element ( type(orbital), intent(inout)  orbital1,
type(orbital), intent(inout)  orbital2,
integer, intent(in)  k 
)

Function to calculate the integral \( \left<1\left|r^{k}\right|2\right> \).

Warning
Currently works only for orbitals on one center.
Here is the call graph for this function:

◆ rk_element_sto()

real function orbitals::rk_element_sto ( class(*), intent(inout), pointer  arg,
type(orbital), intent(inout)  orbital1,
type(orbital), intent(inout)  orbital2 
)

Calculates the integral \( \left<1\left|r^{k}\right|2\right> \) for STO primitives.

Todo:
Add matrix element for different centers.
Warning
Select local or laboratory frame calculation with operator_local.
Here is the call graph for this function:

◆ rk_element_sto_generic()

real function orbitals::rk_element_sto_generic ( integer, intent(in)  k,
real, intent(in)  e1,
integer, intent(in)  n1,
real, intent(in)  e2,
integer, intent(in)  n2 
)

Computes matrix element \( \left<1\left|r^{k}\right|2\right> \) from n and \(\zeta\).

Warning
Assumes checks for equality of l1 l2 and m1 m2 have been carried out