"Don't forget to add 1 to the resulting energy: during derivation, the repulsion of the H cores (which is normalised to $1$ Hartree) has been left out."
"Don't forget to add 1 to the resulting energy: during derivation, the repulsion of the H cores ( $\\frac{1}{|R_A-R_B|}=1$ Hartree in the Hamiltonian) has been dropped."
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"## Drawbacks"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"* The Born-Oppenheimer approximation neglects nuclei, although this doesn't factor too strongly into the examples we have used.\n",
"\n",
"* The choice of a too small basis and/or one consisting of too simple functions (here GTOs) can be insufficient to describe the system accurately. Bigger sets (STO-6G) and/or more elaborate functions get computationally expensive quickly.\n",
"\n",
"* The wave function is approximated by a single Slater determinant. Each electron sees the average density of all other electrons (compare: mean field theory), which doesn't factor in electron correlation.\n",
"\n",
"The last point is addressed extensively in \"post-Hartree-Fock\" methods (e.g. using a sum of \"excited\" Slater determinants)."
]
]
},
},
{
{
...
...
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
# Hartree-Fock for Electron Ground States of Atoms and Molecules
# Hartree-Fock for Electron Ground States of Atoms and Molecules
%% Cell type:code id: tags:
%% Cell type:code id: tags:
``` python
``` python
importnumpyasnp
importnumpyasnp
importscipy.linalgasla
importscipy.linalgasla
fromnumpyimportdot,pi,exp,sqrt
fromnumpyimportdot,pi,exp,sqrt
fromscipy.specialimporterf
fromscipy.specialimporterf
# interactive plots
# interactive plots
#%matplotlib notebook
#%matplotlib notebook
# nice inline plots
# nice inline plots
%matplotlibinline
%matplotlibinline
importmatplotlib.pyplotasplt
importmatplotlib.pyplotasplt
plt.rcParams['figure.figsize']=16,9
plt.rcParams['figure.figsize']=16,9
```
```
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
## H Atom
## H Atom
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
We approximate the single Slater-type orbital with Gaussian functions, using pre-calculated exponents. This is called the STO-nG basis set (with $n=4$ in our case).
We approximate the single Slater-type orbital with Gaussian functions, using pre-calculated exponents. This is called the STO-nG basis set (with $n=4$ in our case).
%% Cell type:code id: tags:
%% Cell type:code id: tags:
``` python
``` python
alpha=[13.00773,1.962079,0.444529,0.1219492]
alpha=[13.00773,1.962079,0.444529,0.1219492]
dim=len(alpha)
dim=len(alpha)
```
```
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
Set up and solve the generalised eigenvalue problem $\sum H_{i,j} d_j = \epsilon \sum S_{i,j} d_j$ as derived in the script / exercise session.
Set up and solve the generalised eigenvalue problem $\sum H_{i,j} d_j = \epsilon \sum S_{i,j} d_j$ as derived in the script / exercise session.
print('Ground state energy [Hartree]:',energies[0])
print('Ground state energy [Hartree]:',energies[0])
```
```
%% Output
%% Output
Ground state energy [Hartree]: -0.499278405667
Ground state energy [Hartree]: -0.499278405667
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
The ground state for the 1s electron of the H atom is known to be $-0.5 E_h$ ($\simeq 13.6 eV$), which makes the approximation using four Gaussian-type-orbitals decent.
The ground state for the 1s electron of the H atom is known to be $-0.5 E_h$ ($\simeq 13.6 eV$), which makes the approximation using four Gaussian-type-orbitals decent.
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
## He Atom
## He Atom
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
Again we refer to a published set of GTO basis function exponential coefficients for the He atom (e.g. from https://bse.pnl.gov).
Again we refer to a published set of GTO basis function exponential coefficients for the He atom (e.g. from https://bse.pnl.gov).
%% Cell type:code id: tags:
%% Cell type:code id: tags:
``` python
``` python
alpha=[0.297104,1.236745,5.749982,38.216677]
alpha=[0.297104,1.236745,5.749982,38.216677]
dim=len(alpha)
dim=len(alpha)
```
```
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
Build equation (9) from the exercise sheet, derived as shown in the exercise session.
Build equation (9) from the exercise sheet, derived as shown in the exercise session.
Note how in the derivation, we have seen terms of $d$ in the Fock matrix $f$.
Note how in the derivation, we have seen terms of $d$ in the Fock matrix $f$.
Since our equation is not a real generalised eigenvalue problem anymore, we need to emulate one through a self-consistency iteration. Convergence depends heavily on the choice of basis, for which STO-4G is known to behave nicely.
Since our equation is not a real generalised eigenvalue problem anymore, we need to emulate one through a self-consistency iteration. Convergence depends heavily on the choice of basis, for which STO-4G is known to behave nicely.
Don't forget to add 1 to the resulting energy: during derivation, the repulsion of the H cores (which is normalised to $1$ Hartree) has been left out.
Don't forget to add 1 to the resulting energy: during derivation, the repulsion of the H cores ( $\frac{1}{|R_A-R_B|}=1$ Hartree in the Hamiltonian) has been dropped.
%% Cell type:markdown id: tags:
## Drawbacks
%% Cell type:markdown id: tags:
* The Born-Oppenheimer approximation neglects nuclei, although this doesn't factor too strongly into the examples we have used.
* The choice of a too small basis and/or one consisting of too simple functions (here GTOs) can be insufficient to describe the system accurately. Bigger sets (STO-6G) and/or more elaborate functions get computationally expensive quickly.
* The wave function is approximated by a single Slater determinant. Each electron sees the average density of all other electrons (compare: mean field theory), which doesn't factor in electron correlation.
The last point is addressed extensively in "post-Hartree-Fock" methods (e.g. using a sum of "excited" Slater determinants).