{ "cells": [ { "cell_type": "markdown", "id": "3d63629e", "metadata": {}, "source": [ "# Basis Sets and Gaussian Functions\n", "\n", "GaInt supports Cartesian Gaussian Type Orbitals (GTOs), which are atomic orbitals used in linear combinations to form molecular orbitals. Cartesian GTOs are defined by an angular part that is a homogeneous polynomial in the components x, y, and z of the position vector $\\mathbf{r}$. The mathematical definition is:\n", "\n", "$$\n", "G_{ijk}(r_A,\\alpha) = x^i_A y^j_A z^k_A e^{-\\alpha r^2_A}\n", "$$\n", "\n", "Where:\n", "- $r_A = r - A$ is the atom-centered function\n", "- $\\alpha > 0$ is the real orbital exponent\n", "- $i+j+k = n$ is the total angular momentum quantum number\n", "\n", "Most mainstrem quantum chemistry packages use the same basis set input file format as NWChem, one can download them from the EMSL Basis Set Exchange website (https://bse.pnl.gov/bse/portal).\n", "\n", "As an example, here is the STO-3G EMSL basis set for hydrogen and oxygen:" ] }, { "cell_type": "markdown", "id": "ae5c13c1", "metadata": {}, "source": [ " # STO-3G EMSL Basis Set Exchange Library 8/21/18 3:24 AM\n", " # Elements References\n", " # -------- ----------\n", " # H - Ne: W.J. Hehre, R.F. Stewart and J.A. Pople, J. Chem. Phys. 2657 (1969).\n", " # Na - Ar: W.J. Hehre, R. Ditchfield, R.F. Stewart, J.A. Pople,\n", " # J. Chem. Phys. 2769 (1970).\n", " # K,Ca - : W.J. Pietro, B.A. Levy, W.J. Hehre and R.F. Stewart,\n", " # Ga - Kr: J. Am. Chem. Soc. 19, 2225 (1980).\n", " # Sc - Zn: W.J. Pietro and W.J. Hehre, J. Comp. Chem. 4, 241 (1983) + Gaussian.\n", " # Y - Cd: W.J. Pietro and W.J. Hehre, J. Comp. Chem. 4, 241 (1983). + Gaussian\n", " # \n", "\n", "\n", " BASIS \"ao basis\" PRINT\n", " #BASIS SET: (3s) -> [1s]\n", " H S\n", " 3.42525091 0.15432897 \n", " 0.62391373 0.53532814 \n", " 0.16885540 0.44463454 \n", " #BASIS SET: (6s,3p) -> [2s,1p]\n", " O S\n", " 130.7093200 0.15432897 \n", " 23.8088610 0.53532814 \n", " 6.4436083 0.44463454 \n", " O SP\n", " 5.0331513 -0.09996723 0.15591627 \n", " 1.1695961 0.39951283 0.60768372 \n", " 0.3803890 0.70011547 0.39195739 \n", " END" ] }, { "cell_type": "markdown", "id": "1bc81583", "metadata": {}, "source": [ "## Primitive Gaussian Type Orbital \n", "Most quantum chemistry packages support Contracted Gaussian Type Orbitals (CGTOs), which are atomic orbitals formed by linear combinations of Primitive Gaussian Type Orbitals (PGTOs). In this notebook, we focus on integrals over primitive Gaussian type orbitals, which are defined by an angular part that is a homogeneous polynomial in the components x, y, and z of the position vector $\\mathbf{r}$. The mathematical definition is:\n", "\n", "$$\n", "G_{ijk}(r_A,a) = x^i_A y^j_A z^k_A e^{-a r^2_A}\n", "$$\n", "\n", "- a>0 is the orbital exponent. \n", "- $r_A = r − A$ is the electronic coordinate.\n", "- i ≥ 0, j ≥ 0, k ≥ 0 is the quantum number.\n", "- Total angular-momentum quantum number l = i + j + k ≥ 0\n", "\n", "Cartesian Gaussians can be factorized into three Cartesian directions:\n", "\n", "$$\n", "G_{ijk}(r_A,a) = G_i(r_A,a)G_j(r_A,a)G_k(r_A,a)\n", "$$\n", "\n", "where\n", "\n", "$$\n", "G_i(r_A,a)= x^i_A e^{-a x^2_A}\n", "$$\n", "\n", "Gaussians satisfy a simple recurrence relation:\n", "\n", "$$\n", "x_A G_i(a, x_A ) = G_{i+1}(a, x_A )\n", "$$\n", "\n", "The differentiation of a Gaussian yields a linear combination of two Gaussians\n", "\n", "$$\n", "\\frac{\\partial G_i(a, x_A )}{\\partial A_x}\n", "= -\\frac{\\partial G_i(a, x_A)}{\\partial x}\n", "= 2aG_{i+1}(a, x_A) − iG_{i−1}(a, x_A)\n", "$$\n", "\n", "An important property of Gaussians is the Gaussian product rule. The product of two Gaussians is another Gaussian centered somewhere on the line connecting the original Gaussians; its exponent is the sum of the original exponents:\n", "\n", "$$\n", "e^{-a x^2_A} e^{-b x^2_B} = e^{-\\mu X_{AB}^2} e^{-p x^2_P}\n", "$$\n", "\n", "while the centre-of-charge $P_x$ and the relative coordinate or Gaussian separation $X_{AB}$ are given by\n", "\n", "$$\n", "\\begin{aligned}\n", "p &= a+b\\\\\n", "\\mu &= \\frac{ab}{a+b}\\\\\n", "P_x &= \\frac{aA_x+bB_x}{a+b}\\\\\n", "X_{AB} &= A_x - B_x\n", "\\end{aligned}\n", "$$\n", "\n" ] } ], "metadata": { "kernelspec": { "display_name": "base", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.12" } }, "nbformat": 4, "nbformat_minor": 5 }