Gaussian Basis Ordering#

Gaussian Basis Functions#

Real Cartesian Gaussian basis functions are defined as,

\[\phi_{p} (\vec r_1 ; \vec r_{p}, \{ < c_{p}^{K}, \alpha_{p}^{K} > \}, \vec l^p \equiv <l_x^p, l_y^p, l_z^p> ) \equiv x_{1p}^{l_{x}^{p}} y_{1p}^{l_{y}^{p}} z_{1p}^{l_{z}^{p}} \sum_{K} c_{p}^{K} \exp(-\alpha_{p}^{K} r_{1p}^2)\]

where:

  • \(\vec r_{1} \in \mathbb{R}^3\) is the spatial coordinate,

  • \(\vec r_{p}\) is the Gaussian center (usually an atomic center),

  • \(\{ < c_{p}^{K}, \alpha_{p}^{K} > \}\) are the contraction coefficients and Gaussian exponents, respectively, and

  • \(\vec l^{p} \in \mathbb{Z}_{3}^{+} : \| \vec l^{p} \|_1 = l\) is the Cartesian angular momentum index vector of total angular momentum \(l\).

The set of all \(\vec l^p : \| \vec l^p \|_1 = l\) is denoted a Cartesian shell, and has a definite order defined below. The contraction coefficients and Gaussian exponents are the same for all basis functions in a given shell.

Real solid harmonic Gaussian basis functions (also referred to as spherical harmonic or pure) are defined similarly,

\[\phi_{p} (\vec r_1 ; \vec r_{p}, \{ < c_{p}^{K}, \alpha_{p}^{K} > \}, < l^p, m^p > ) \equiv S_{l^{p} m^{p}} (\vec r_{1p}) \sum_{K} c_{p}^{K} \exp(-\alpha_{p}^{K} r_{1p}^2)\]

Here \(S_{lm} (\vec r) \equiv \sqrt{(4 \pi) / (2l + 1)} r^{l} Y_{lm} (\Omega)\) is a real solid harmonic (with Racah normalization and without Condon-Shortley phase).

Here and throughout \(\vec r_{ab} \equiv \vec r_{a} - \vec r_{b}\).

CCA Gaussian Basis Ordering#

We use a variant of the Common Component’s Architecture (CCA) order of Kenny, Janssen, Valeev, and Windus. [1]

NVIDIA CCA TL;DR: For a Gaussian shell with total angular momentum quantum number l:

  1. Single leading normalization coefficient across the shell (built into the contraction coefficients \(\{ c_{p}^{K} \}\) which are isotropic for all basis functions within a shell).

  2. Cartesians [\((l+1)(l+2)/2\) functions per shell] are ordered lexically, e.g., \(\{ 1 \}, \{ x, y, z \}, \{ xx, xy, xz, yy, yz, zz \}\ldots\)

  3. Solid harmonics [\((2l + 1)\) functions per shell] are real, ordered by magnetic quantum number as \(0\), \(1\mathrm{c}\), \(1\mathrm{s}\), \(2\mathrm{c}\), \(2\mathrm{s}\ldots\) [2].

A few notes about this order:

  1. \(P\) is \(\{ x, y, z \}\) in Cartesian, \(\{ z, x, y \}\) in solid harmonics.

  2. Only the “superdiagonal” functions like \(xx\) or \(xxx\) are normalized in Cartesian. The other functions have well-defined fractional normalizations that are typically accounted for automatically in the orthonormalization of the basis within the SCF code.

Solid Harmonic Gaussian Shells#

We always add solid harmonic Gaussians in shells with all \(m \in [-l, \ldots 0, \ldots, +l]\) for a given \(l\).

There are always \((2l + 1)\) solid harmonic Gaussian functions in each shell.

The \(m\) ordering of solid harmonic Gaussians is \(0, +1, -1, +2, -2, \ldots\) which is equivalent to \(0, 1\mathrm{c}, 1\mathrm{s}, 2\mathrm{c}, 2\mathrm{s}, \ldots\)

Due to self-overlap integrals discussed below, all solid harmonic Gaussians in an \(l\) shell are simultaneously normalizable.

Table 5 Solid Harmonic Gaussian shells in the CCA convention.#

\(m*\)

0

1c

1s

2c

2s

l / \(\mathrm{l}_{\mathrm{ind}}\)

0

1

2

3

4

0

1

1

\(z\)

\(x\)

\(y\)

2

\(\frac{1}{2} (3z^2 - r^2)\)

\(\sqrt{3}xz\)

\(\sqrt{3}yz\)

\(\frac{1}{2}\sqrt{3}(x^2 - y^2)\)

\(\sqrt{3}xy\)

_images/spherical.svg

Fig. 5 Solid harmonic Gaussian shells in the CCA convention.#

Note

For brevity, only shells with angular momentum values <= 2 are shown above. See a standard quantum chemistry textbook for definitions of additional shells.

Cartesian Gaussian Shells#

We always add Cartesian Gaussians in shells with all \(\{ i_{x} + i_{y} + i_{z} = l \}\) for a given \(l\).

There are always \((l + 1) (l + 2) / 2\) Cartesian Gaussian functions in each shell.

The ordering of Cartesian exponents \(\vec i \equiv <i_x, i_y, i_z>\) in a given \(l\) shell is,

for (int i = 0, index = 0; i <= l; i++) {
    int ix = l - i;
    for (int j = 0; j <= i; j++, index++) {
        int iy = i - j;
        int iz = j;
    }
}

In English, this first adds angular momentum to \(i_x\), then to \(i_y\), then to \(i_z\).

Due to self-overlap integrals discussed below, usually only the \(<l, 0, 0>\), \(<0, l, 0>\), and \(<0, 0, l>\) functions in an \(l\) Cartesian Gaussian shell are simultaneously normalizable.

Table 6 Cartesian Gaussian shell ordering in the CCA convention.#

\(l/l_{ind}\)

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

0

1

1

\(x\)

\(y\)

\(z\)

2

\(x^2\)

\(xy\)

\(xz\)

\(y^2\)

\(yz\)

\(z^2\)

3

\(x^3\)

\(x^2y\)

\(x^2z\)

\(xy^2\)

\(xyz\)

\(xz^2\)

\(y^3\)

\(y^2z\)

\(yz^2\)

\(z^3\)

4

\(x^4\)

\(x^3y\)

\(x^3z\)

\(x^2y^2\)

\(x^2yz\)

\(x^2z^2\)

\(xy^3\)

\(xy^2z\)

\(xyz^2\)

\(yz^3\)

\(y^4\)

\(y^3z\)

\(y^2z^2\)

\(yz^3\)

\(z^4\)

_images/cartesian.svg

Fig. 6 Cartesian Gaussian shells in the CCA convention.#

Cartesian-to-Solid-Harmonic Transformation#

The solid harmonic Gaussians always lie within the linear span of Cartesian Gaussians for a given \(l\) shell, for held-constant atomic center \(\vec r_{A}\) and set of contracted Gaussians \(\{ <c_{K}, \alpha_{K} > \}\). Therefore, if we happen to have a quantity expressed in a basis of Cartesian Gausians, we can exactly determine the equivalent quantity in a basis of solid harmonic Gaussians, through the following linear transformation,

\[\phantom{}^{l} Q_{m}^{\mathrm{solid-harmonics}} = \sum_{\vec i} \phantom{}^{l} T_{lm}^{\vec i} \phantom{}^{l} Q_{\vec i}^{\mathrm{Cartesian}}\]

Here \(\phantom{}^{l} T_{lm}^{\vec i}\) is the \((2l + 1) \times (l + 1) (l + 2) / 2\) matrix of cartesian-to-solid-Harmonic transformation coefficients, which are quantities determined wholly by \(l\) through the definition of the solid harmonics. These transform coefficients can be readily generated through inspection of the solid harmonic recurrence relations, and are constant throughout the lifetime of computation.

Note that inversion from solid harmonic Gaussian quantities to Cartesian Gaussian quantities is not possible for \(l > 1\) without additional effort. This is because the dimension of the solid harmonic basis is smaller than that of the Cartesian basis for \(l > 1\), through inspection: \((2l + 1) \leq (l + 1) (l + 2) / 2\).

The genesis for this difference in dimension is that the Cartesian products are contaminated by contributions from spherical harmonics with lower \(l\). E.g., for \(l=2\), the linear combination of Cartesian products \(x^2 + y^2 + z^2 = r^2 \propto Y_{00} (\Omega) f (r)\) transforms as \(l' = 0\). The degree of contamination increases as \(C \equiv (l + 1) (l + 2) / 2 - (2l + 1)\) (e.g., all spherical harmonics with same parity of lower order). This gives rise to the infamous question of “how many \(D\) functions are there?”

Table 7 Numbers of Cartesian and solid harmonic functions for a given angular momentum \(l\)#

\(l\)

\((l+1)(l+2)/2\)

\((2l+1)\)

0

1

1

1

3

3

2

6

5

3

10

7

4

15

9

5

21

11