I have just started writing a program using Hartree-Fock approximation. I have constructed my Hamiltonian (4 by 4 matrix, number of states=4) and found eigenvalues and eigenvectors(4 eigenvectors with length 4, and 4 corresponding energies).

Then I found the eigenvectors related to the last 3 min energy (Number of particles=3) to replace the previous guessed eigenvectors with (so that I can construct the new hamiltonian and find the new min energy and see if it is converging).

My question is how should I calculate the min total energy (in each step of SCF method)? Should it be the average of 3 min energies I am getting in each iteration? Or should I just save the smallest energy among those 3 min energies I am getting in each Iteration?

If my question is not clear let me write it in this way and tell you what I have done and what my question is:

1- NOS=4 (Number of states)

2- NOP=3 (Number of particles)

3- Basis Function is built (4 * 1 vector)

4- Coefficient matrix (3 * 4 Matrix)

5- Hamiltonian(4 * 4 MAtrix)

6- Eigenvectors=(I have got four vectors (4*1 length)) & Eigenvalues: (4 numbers)

7-Choosing the 3 eigenvector related to the 3 minimum energy (and constructing the 3*4 matrix to put instead of number 4(coefficient matrix)), and recalculate the Hamiltonian...(SCF method)

???8-saving the min energy? (I don't know what should I do here? cause I have 3 values for energy related to the chosen eigenvectors. Should I save the meanvalue of them as the total minimum energy?)

  • $\begingroup$ You need to evaluate the expectation value of the exact Hamiltonian for your MB wave function at each level of oterstion. $\endgroup$ – Lewis Miller Jun 22 '17 at 14:32
  • $\begingroup$ I am using mathematica, and just using the Command Eigensys[Hamiltoniam] gives me the eigenvalues and eigenvectors. Now to the iteration, I need to construct my new wavefunctions to construct the new hamiltonian. To do that I am choosing the 3 eigenvectors corresponding to 3 minimun eigenenergies I am getting. $\endgroup$ – Delaram Nematollahi Jun 22 '17 at 18:22
  • $\begingroup$ I also need to save the minimum energy to compare with the minimum energy I am getting from the next iteration. How should I calculate the minimum energy? should I take an average of the 3 eigen energies I am choosing in each Iteration? $\endgroup$ – Delaram Nematollahi Jun 22 '17 at 18:44

I have just figured out my answer. I should add up the 3 minimum energies I am finding in each iteration to get an estimation about the total minimum energy of the system. (Etotal= Emin(particle 1)+ Emin(Particle 2)+ Emin (Particle 3))

In HF Approximation we consider each particle interacting with the average field of other particles, so in the beginning we make a guess over the possible wave function. If I have 3 particles and 4 states, my guessed wavefunction would be Sum over the product of the guessed coefficient(which is a 4 by 3 matrix// consist of 3 rows related to each particle,each row has 4 columns related to 4 states) and the basis function(which is a 4 by 1 vector of Sin functions in my case)...

Solving the HF, I will end up constructing a (4 by 4) Hamiltonian which will result in 4 eigenvectors and the corresponding 4 Energies.

Then I need to construct the new wavefunction out of the 3 eigenvectors that have the minimum energy. and I can use this in the next iteration to construct the Hamiltonian.

I should also add those 3 minimum energy together and save them as Etotal, so that I can compare Etotal in each step with its previous step, and do the iteration untill it doesn't change significantly.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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