I'm trying to figure out why $C$ is a matrix and not a vector in the Roothaan Equations. Below, I have a derivation which I have taken from this PDF in which, to me, $C$ appears to be a vector. But when I look at other derivations (for example this derivation) $C$ is a matrix, although I can't figure out why $C$ is a matrix, I feel it is poorly explained.

So this is my derivation where $C$ is a vector:

Here is the basis function for 1 electron: $$ \Psi_a = \sum_{i=1}^n c_{ia}\phi_i $$

This is the Fock operator for this electron $a$:

$$ f_a = h_a + \sum_{J=1}^{N/2}(2J_j(a)-K_j(a)) $$ Above, I'm using $a$ to represent a particular electron, so $J(a)$ and $K(a)$ are, with a loose notation, Coulomb and exchange operators for electron $a$.

So we now have an equation: $$ f_a \Psi_a = \epsilon_a \Psi_a \\ f_a \sum_{i=1}^n c_{ia}\phi_i = \epsilon_a \sum_{i=1}^n c_{ia}\phi_i \\ $$

This is $1$ equation for $n$ unknown coefficients, so to get $n$ equations we can left multiply each side by each of the $n$ $\phi_i$ and integrate over all space with respect to electron $a$'s location. This would give us $n$ equations:

$$ \int \phi_j f_a \sum_{i=1}^n c_{ia}\phi_i = \int \phi_j\epsilon_a \sum_{i=1}^n c_{ia}\phi_i \\ \sum_{i=1}^n c_{ia} \int \phi_j f_a \phi_i = \sum_{i=1}^n c_{ia} \int \phi_j\epsilon_a \phi_i \\ \sum_{i=1}^n c_{ia} F_{ji} = \epsilon_a \sum_{i=1}^n c_{ia} S_{ji} $$

Where $F$ and $S$ form two $nxn$ matrices, and the matrix equation becomes $FC=SC \epsilon_a$

$$ F = \begin{bmatrix} F_{11} & F_{12} & \dots \\ \vdots & \ddots & \\ F_{n1} & & F_{nn} \end{bmatrix} \qquad S = \begin{bmatrix} S_{11} & \dots & S_{1n}\\ \vdots & \ddots & \vdots\\ S_{n1} & \dots & S_{nn} \end{bmatrix} C = \begin{bmatrix} C_{1a}\\ \vdots\\ C_{na} \end{bmatrix} $$

In this case, $C$ is a vector, and I believe we are solving for only 1 electron $a$ and it's energy $\epsilon_a$. Keep in mind I believe this is wrong. Above, $\epsilon_a$ would be a constant. The left side has dimensions $(n\times n) \times (n \times 1) = (n \times 1)$ and the right side of the equation has dimension $(n\times n) \times (n \times 1) \times (1 \times 1) = (n \times 1)$

So if we wanted to solve for two electrons, $a$ and $b$, I believe we would just solve one set of these matrix equations for each electron. The Fock matrix and coefficient matrix would be functions of the electron: $F(a)C(a) = S(a)C(a)\epsilon_a$ and $F(b)C(b) = S(b)C(b)\epsilon_b$

Edit: Shown below, I tried to form one matrix equation for the case of two electrons by concatenating the $C$ vector and Fock matrix but I can't make the dimensions work:

$$ F = \left(\begin{array}{@{}c|c@{}} \begin{matrix} F_{11a} & \dots & F_{12a} \\ F_{n1a} & \dots & F_{nna} \end{matrix} & 0 \\ \hline 0 & \begin{matrix} F_{11b} & \dots & F_{12b} \\ F_{n1b} & \dots & F_{nnb} \end{matrix} \end{array}\right) C = \begin{bmatrix} C_{1a}\\ \vdots\\ C_{na}\\ C_{1b}\\ \vdots\\ C_{nb} \end{bmatrix} $$


So in this scenario $C$ is still a vector but I could not figure out how to work in the energy while keeping the dimensions correct because now the energy is a $2 \times 1$ vector $[\epsilon_a, \epsilon_b]$.

Anyway I clearly have a major assumption wrong. Could someone please show me how to properly form these equations with $C$ as a matrix?


Responding to PAEP's answer, while I do know the correct form, I just don't get why that is the form. Thus the need for a derivation.

For example if I multiply out the correct form which you supplied:

$$ FC = \begin{bmatrix} (F_{1,\bullet} \times C_{\bullet, 1}) & (F_{1,\bullet} \times C_{\bullet, 2}) & \dots \\ \vdots & \ddots & \\ (F_{n,\bullet} \times C_{\bullet, n}) & & (F_{n,\bullet} \times C_{\bullet, n}) \end{bmatrix} $$

Where $(F_{i,\bullet} \times C_{\bullet, i})$ is the dot product of row $i$ of $F$ times column $i$ of $C$


$$ SC = \begin{bmatrix} (S_{1,\bullet} \times C_{\bullet, 1}) & (S_{1,\bullet} \times C_{\bullet, 2}) & \dots \\ \vdots & \ddots & \\ (S_{N,\bullet} \times C_{\bullet, n}) & & (S_{n,\bullet} \times C_{\bullet, n}) \end{bmatrix} $$


$$ SC\epsilon = \begin{bmatrix} (S_{1,\bullet} \times C_{\bullet, 1})\epsilon_{11} & & & & \\ & (S_{2,\bullet} \times C_{\bullet, 2})\epsilon_{22} & & & \\ & \ddots & & \\ & & & (S_{n,\bullet} \times C_{\bullet, n})\epsilon_{nn} \\ \end{bmatrix} $$

Can you derive for me $F_{i, j}$ in this case? If you look at my original derivation of $F$ it was built from 1 electron only. But this $F$ looks to be built from all electrons yet it has no additional terms.

  • 5
    $\begingroup$ I don't think it's more complicated than that $c_{ia}$ defines a matrix that transforms from the basis $\{\phi_i\}$ to $\{\Psi_a\}$. Since the latter are vectors $c_{ia}$ has to be a matrix. $\endgroup$
    – Buck Thorn
    Commented Feb 10, 2023 at 17:38
  • 9
    $\begingroup$ Matter modelling is not theoretical chemistry. It is matter modelling. Why on earth can't we have questions on basic theoretical chemistry techniques like Hartree-Fock on the chemistry site? $\endgroup$
    – Ian Bush
    Commented Feb 10, 2023 at 18:00
  • 2
    $\begingroup$ @user1271772 This is definitely more appropriate here, than it is on MM SE. We've had questions like this way before there was the other site and it fits right in here with our canon of existing ones. $\endgroup$ Commented Feb 15, 2023 at 0:12
  • 2
    $\begingroup$ @user1271772 This is neither the place nor the time to have a discussion about what is on topic where. The question was posted here, it is on topic here, there is no reason to confuse a new contributor with a comment like the one you have posted. I have asked you this before: If you advertise the Matter Modeling site, which is fine, then please do it in a way that it is unambiguous about question still being on topic here, that cross-posting is as much avoided as possible, and that makes your own intentions clear. $\endgroup$ Commented Feb 15, 2023 at 18:52
  • 1
    $\begingroup$ I think the problem lies within the Fock "Operator", it is dependent on its own solutions, which is the reason the HF-Equations have to be solved iterative. As such it is not a one-electron operator. But I'm not sure how to answer the question as I am currently not really understanding the whole argument. I have to brain about this. It would probably help if you defined all things you used there, $J$ and $K$ and $h$ and the lot… $\endgroup$ Commented Feb 16, 2023 at 20:05

3 Answers 3


@Frank, I would try to give you a more detailed answer. This answer is inspired in Lewars book which I strongly recommend you consult.

It is important that you take into account than when you applied the Hartre-Fock self consistent method you are optimizing a single electron spin-orbital but you are considering the rest of the electrons of the atom or molecule you are studying. And as @Martin mentioned, the Fock operators $\hat{F}$ are pseudooperators in the sense that in order to obtain the optimized spin-orbitals you have to modify the orbitals that appear in the operators as part of the optimization process.

Lets start with the Hartree-Fock equations

$$\widehat {\rm{F}}{\kern 1pt} {\psi _i} = {\varepsilon _{\rm{i}}}{\kern 1pt} {\psi _i} $$

Expressing $\psi _i$ as a linear combination of a set of orbitals

$${\psi _i} = \sum\limits_{\nu = 1}^K {{c_{\nu i}}{\phi _\nu }}$$

you would obtain

$$\begin{array}{l}\widehat {\rm{F}}{\kern 1pt} \sum\limits_{\nu = 1}^K {{c_{\nu i}}{\phi _\nu }} = {\varepsilon _{\rm{i}}}{\kern 1pt} \sum\limits_{\nu = 1}^K {{c_{\nu i}}{\phi _\nu }} \\ \sum\limits_{\nu = 1}^K {{c_{\nu i}}} \widehat {\mathop{\rm F}\nolimits} (1){\phi _\nu } = {\varepsilon _i}\sum\limits_{\nu = 1}^K {{c_{\nu i}}} {\kern 1pt} {\kern 1pt} {\phi _\nu }\end{array} $$

Considering that you work with K orbitals you will have

$$\begin{array}{c} \sum\limits_{\nu = 1}^K {{c_{\nu 1}}} \widehat {\mathop{\rm F}\nolimits} (1){\phi _\nu } = {\varepsilon _1}\sum\limits_{\nu = 1}^K {{c_{\nu 1}}} {\kern 1pt} {\kern 1pt} {\phi _\nu }\\ \sum\limits_{\nu = 1}^K {{c_{\nu 2}}} \widehat {\mathop{\rm F}\nolimits} (1){\phi _\nu } = {\varepsilon _2}\sum\limits_{\nu = 1}^K {{c_{\nu 2}}} {\kern 1pt} {\kern 1pt} {\phi _\nu }\\ \vdots \\ \sum\limits_{\nu = 1}^K {{c_{\nu K}}} \widehat {\mathop{\rm F}\nolimits} (1){\phi _\nu } = {\varepsilon _K}\sum\limits_{\nu = 1}^K {{c_{\nu K}}} {\kern 1pt} {\kern 1pt} {\phi _\nu } \end{array} $$

where $K \ge N$, K is the number of orbitals in the base and N is the total number of electrons.

Multiplying both members on the left by $\phi_1^*$ and integrating over the whole space,

$$ \begin{array}{c} \sum\limits_{\nu = 1}^K {{c_{\nu 1}}} {F_{1\nu }} = {\varepsilon _1}\sum\limits_{\nu = 1}^K {{c_{\nu 1}}} {\kern 1pt} {\kern 1pt} {S_{1\nu }}\\ \sum\limits_{\nu = 1}^K {{c_{\nu 2}}} {F_{1\nu }} = {\varepsilon _2}\sum\limits_{\nu = 1}^K {{c_{\nu 2}}} {\kern 1pt} {\kern 1pt} {\kern 1pt} {S_{1\nu }}\\ \vdots \\ \sum\limits_{\nu = 1}^K {{c_{\nu K}}} {F_{1\nu }} = {\varepsilon _K}\sum\limits_{\nu = 1}^K {{c_{\nu K}}} {\kern 1pt} {S_{1\nu }} \end{array} $$

Repiting this operation for $\phi_2^*$ , $\ldots$, $\phi_K^*$

$$ \begin{array}{c} \sum\limits_{\nu = 1}^K {{c_{\nu 1}}} {F_{2\nu }} = {\varepsilon _1}\sum\limits_{\nu = 1}^K {{c_{\nu 1}}} {\kern 1pt} {\kern 1pt} {S_{2\nu }}\\ \sum\limits_{\nu = 1}^K {{c_{\nu 2}}} {F_{2\nu }} = {\varepsilon _2}\sum\limits_{\nu = 1}^K {{c_{\nu 2}}} {\kern 1pt} {\kern 1pt} {\kern 1pt} {S_{2\nu }}\\ \vdots \\ \sum\limits_{\nu = 1}^K {{c_{\nu K}}} {F_{2\nu }} = {\varepsilon _K}\sum\limits_{\nu = 1}^K {{c_{\nu K}}} {\kern 1pt} {S_{2\nu }}\end{array} $$

$$ \ldots $$

$$ \begin{array}{c} \sum\limits_{\nu = 1}^K {{c_{\nu 1}}} {F_{K\nu }} = {\varepsilon _1}\sum\limits_{\nu = 1}^K {{c_{\nu 1}}} {\kern 1pt} {\kern 1pt} {S_{K\nu }}\\ \sum\limits_{\nu = 1}^K {{c_{\nu 2}}} {F_{2\nu }} = {\varepsilon _2}\sum\limits_{\nu = 1}^K {{c_{\nu 2}}} {\kern 1pt} {\kern 1pt} {\kern 1pt} {S_{K\nu }}\\ \vdots \\ \sum\limits_{\nu = 1}^K {{c_{\nu K}}} {F_{K\nu }} = {\varepsilon _K}\sum\limits_{\nu = 1}^K {{c_{\nu K}}} {\kern 1pt} {S_{K\nu }} \end{array} $$

where ${F_{\mu \nu }} = \left\langle {{\phi _\mu }(1)\left| {\widehat F(1)} \right|} \right.\left. {{\phi _\nu }(1)} \right\rangle$ and ${S_{\mu \nu }} = \left\langle {{\phi _\mu }(1)} \right.\left| {{\phi _\nu }(1)} \right\rangle$

This operation yields a set of K x K equations known as the Roothaan-Hall equations.

You can write this equation in compact form

$$ \sum\limits_{\nu = 1}^K {{c_{\nu i}}} {F_{\mu \nu }} = {\varepsilon _i}\sum\limits_{\nu = 1}^K {{c_{\nu i}}} {\kern 1pt} {S_{\mu \nu }}\quad \mu = 1,2,3, \ldots ,K $$

where %$\psi_i (i = 1, 2, \ldots , K)$, so

$${F_{11}}{\kern 1pt} {c_{11}} + {F_{12}}{c_{21}} + \cdots + {F_{1K}}{c_{K1}} = {\varepsilon _1}\left( {{S_{11}}{\kern 1pt} {c_{11}} + {S_{12}}{\kern 1pt} {c_{21}} + \cdots {S_{1K}}{\kern 1pt} {c_{K1}}} \right) $$ $$ \ldots $$ $${F_{K1}}{\kern 1pt} {c_{1K}} + {F_{K2}}{c_{2K}} + \cdots + {F_{KK}}{c_{KK}} = {\varepsilon _K}\left( {{S_{K1}}{\kern 1pt} {c_{1K}} + {S_{K2}}{\kern 1pt} {c_{2K}} + \cdots {S_{KK}}{\kern 1pt} {c_{KK}}} \right) $$

In matrix form you will get

$${\mathbf{FC}} = {\mathbf{SCE}}$$

Addendum: The Fock operator

The Fock operator $\widehat {\rm{F}}$ that appears in the Hartree-Fock equations

$$\widehat {\rm{F}}{\kern 1pt} {\psi _i} = {\varepsilon _{\rm{i}}}{\kern 1pt} {\psi _i}$$

is a one-electron operator.

This operator can be written as

$$\begin{array}{c}\widehat F(1) = - \frac{1}{2}\nabla _1^2 - \sum\limits_\mu {\frac{{{Z_\mu }}}{{{r_{\mu 1}}}}} + \sum\limits_{j = 1}^N {(2{{\widehat {\mathop{\rm J}\nolimits} }_j} - {{\widehat K}_j})} \\ = \widehat h(1) + \sum\limits_{j = 1}^N {(2{{\widehat J}_j} - {{\widehat K}_j})} \end{array}$$

where "(1)" just reminds as that the operator is a single electron operator.

The operator $\widehat {\rm{h}}(1)$

$$\widehat {\rm{h}}(1) = - \frac{1}{2}\nabla _1^2 - \sum\limits_\mu {\frac{{{Z_\mu }}}{{{r_{\mu 1}}}}} $$

is also called the core-hamitonian since it represents the energy of an electron that occupies orbital $\phi _i$ under the attraction of a nuclear core (i.e. ignoring the interaction with other electrons).

${\widehat {\mathop{\rm J}\nolimits} _j}(1)$ corresponds to the Coulomb operator that accounts for the classical Coulomb electron-electron respulsion

$${\widehat {\mathop{\rm J}\nolimits} _j}(1){\kern 1pt} \,{\phi_i}(1) = {\phi_i}(1){\kern 1pt} \int {{{\left| {{\phi _j}(2)} \right|}^2}\frac{1}{{{r_{12}}}}d{\tau _2}}$$

whose matrix element $J_{ij}$ is the Coulomb integral

$${J_{ij}} = \left\langle {{\phi_i}(1)\left| {{{\widehat J}_j}(1)} \right|} \right.\left. {{\phi_i}(1)} \right\rangle$$

$${J_{ij}} = \int {\phi_i^*(1)\,\phi_j^*(2)\frac{1}{{{r_{12}}}}{\phi _i}(1)\,{\phi _j}(2)\,d{\tau _1}d{\tau _2}} $$

Finally, the exchange operator ${\widehat {\mathop{\rm K}\nolimits}_j}(1)$ is given by

$${\widehat K_j}\left( 1 \right){\phi_i}(1) = {\kern 1pt} \,{\phi _j}(1)\int {\phi _j^*(2)\frac{1}{{{r_{12}}}}{\phi_i}(2){\kern 1pt} d{\tau _2}} $$

and its matrix element $K_{ij}$ is the exchange integral (which has no classical counterpart and it is a result that appears when you use a Slater determinant to write the electronic wavefunction)

$${K_{ij}} = \left\langle {{\phi_i}(1)} \right.\left| {{{\widehat K}_j}(1)} \right|\left. {{\phi_i}(1)} \right\rangle $$

$${K_{ij}} = \int {\phi_i^*(1)\,\phi _j^*(2)\frac{1}{{{r_{12}}}}{\phi _j}(1)\,{\phi _i}(2)\,d{\tau _1}d{\tau _2}}$$

  • 2
    $\begingroup$ This is dry, but in the nice way. I think I've learned it differently, but I also think I understood this one. Bravo! $\endgroup$ Commented Feb 19, 2023 at 23:24
  • 1
    $\begingroup$ You have explained a lot, but why is it always $F(1)$? Where is $F(2)...F(K)$? Is $F$ a $(K \times K \times K)$ tensor? I will award bounty since it is about to expire! but I really want to know the answer! Either way thank you I think I am closer to understanding! $\endgroup$
    – Frank
    Commented Feb 20, 2023 at 14:48
  • 1
    $\begingroup$ Maybe my fundamental understanding of what we are doing was wrong. Is the reason there is no $F(2)$ is because we are only creating a function to approximate the probability electron 1 is at $r_1$? And if we want electron 2, then we have to resolve with $F(2)$? $\endgroup$
    – Frank
    Commented Feb 20, 2023 at 15:21
  • 1
    $\begingroup$ @Frank The Fock operator is a single electron operator, and we use $\widehat {\rm{F})}(1)$ to mark the fact. It adds no meaning to use $\widehat {\rm{F})}(2)$, etc. It will make the notation far more confusing. I will edit my answer and include more details of the Fock operator expression. $\endgroup$
    – PAEP
    Commented Feb 26, 2023 at 22:41
  • $\begingroup$ What are the dimensions of the matrices if $K > N$? I believe matrices would be $N \times K$ but that's not square so maybe you can't solve in this case? $\endgroup$
    – Frank
    Commented Mar 1, 2023 at 16:03

I think that there is a mistake in the the Roothan-Hall equations.

The matrix equation should read

$$ \mathbf{FC = SC \epsilon}$$ where

$$ \mathbf{F} = \begin{bmatrix} F_{11} & F_{12} & \dots \\ \vdots & \ddots & \\ F_{n1} & & F_{nn} \end{bmatrix} \quad \mathbf{S} = \begin{bmatrix} S_{11} & \dots & S_{1n}\\ \vdots & \ddots & \vdots\\ S_{n1} & \dots & S_{nn} \end{bmatrix} $$ $$ \mathbf{C} = \begin{bmatrix} c_{11} & \dots & c_{1n}\\ \vdots & \ddots & \vdots\\ c_{n1} & \dots & c_{nn} \end{bmatrix} \quad \mathbf{\epsilon} = \begin{bmatrix} \epsilon_{11} & 0 & \dots & 0\\ 0 & \epsilon_{22} & \dots & 0\\ \vdots & \vdots &\ddots & \vdots\\ 0 & 0 & \dots & \epsilon_{nn}\\ \end{bmatrix} $$

Probably you can find a detailed outline of the solution of the Roothan-Hall equations in many Quantum Chemistry/Computational Chemistry books. You could try section 5.2.3. The Hartree-Fock Equations of E. G. Lewars, Computational Chemistry 2nd ed., Springer (2011).

  • 1
    $\begingroup$ I know the correct form I just don't get why it is the correct form. Can you derive $F_{i,j}$? I also edited my post above. $\endgroup$
    – Frank
    Commented Feb 16, 2023 at 16:37
  • $\begingroup$ I tried to answer your request in a second answer. It is a bit dry but I hope it helps. $\endgroup$
    – PAEP
    Commented Feb 18, 2023 at 23:57
  • 1
    $\begingroup$ Why two separate answers by the same person? $\endgroup$ Commented Feb 21, 2023 at 5:30
  • $\begingroup$ I think it is a case of a bit of clumsiness of my part. I did not know how to express that my second answer was a response to one of the comments. $\endgroup$
    – PAEP
    Commented Feb 21, 2023 at 10:08

I think you should try a divide-and-conquer approach. Lets begin with a top-down view to avoid getting tangled up in details.

The Roothaan-Hall equations can be stated in the following form

$$ \mathbf{ FC = SC E } $$ where $\bf F$ is the Fock-matrix which we obtain by expanding the Fock Operator in a discrete basis set of functions. $ \bf C$ is the coefficient matrix that contains the eigenvector coefficients with respect to this basis. $\bf S$ is the overlap matrix of the basis set and $\bf E$ a diagonal matrix with the eigenvalues.

First, lets assume that our basis is orthogonal such that $\bf S$ can be dropped since it becomes a unit matrix, as this is irrelevant to your question of the dimensionality of $\bf C$.

The form of the equation* becomes then that of a regular eigenvalue problem $$ \bf FC = CE $$ and the question how the dimensionality of F and C are connected is the same question as if applied to any other eigenvalue equation.

Eigenvalue problems are often given with a single column vector, like this $$ M\vec v = \lambda_v \vec v $$ Now if $M$ is quadratic and diagonalizable, with dimension $N \times N$, then we know that we have $N$ eigenvectors. Lets say $N=2$, then we can write the whole system of equations down in a form like this $$ M(\vec v, \vec w) = (M\vec v, M\vec w) = (\lambda_v\vec v,\lambda_w\vec w,)=(\vec v,\vec w)\left( \begin{matrix}\lambda_v & 0 \\ 0 & \lambda_w \end{matrix}\right) =\left( \begin{matrix}v_1 & w_1 \\ v_2 & w_2 \end{matrix}\right)\left( \begin{matrix}\lambda_v & 0 \\ 0 & \lambda_w \end{matrix}\right) $$

It is clear that we can denote the whole system of equations using a coefficient matrix, instead of using a label for each individual eigenvector. $$\begin{align} MC &= C\Lambda \\ (M \left(\begin{matrix}C_{11} \\ C_{21} \end{matrix}\right), M \left(\begin{matrix}C_{12} \\ C_{22} \end{matrix}\right))&= (\lambda_1 \left(\begin{matrix}C_{11} \\ C_{21} \end{matrix}\right), \ \lambda_2 \left(\begin{matrix}C_{12} \\ C_{22} \end{matrix}\right))\\ &=\left( \begin{matrix}C_{11} & C_{12} \\ C_{21} & C_{22} \end{matrix}\right)\left( \begin{matrix}\lambda_{1} & 0 \\ 0 & \lambda_{2} \end{matrix}\right)={C\Lambda} \end{align}$$

Note that all matrices involved have the dimension of $N\times N$. The overlap matrix would also have the same dimension. You get $N$ eigenvectors and each eigenvector has $N$ coefficients. "Putting" does eigenvectors side-by-side into a matrix yields the coefficient matrix with dimension $N \times N$. The details how the matrix elements are obtained are irrelevant to any of these points.

* It only looks like a linear eigenvalue equation, but the problem is nonlinear since the matrix elements of the Fock operator are functions of the coefficient matrix elements, which is why we have to solve the problem iteratively until self-consistency is reached.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.