¿Cómo encontrar realmente un estado fundamental de Hartree-Fock?

Estoy interesado en encontrar el estado fundamental de Hartree-Fock para un sistema de fermiones que interactúan (con dispersión totalmente local, por lo que es un potencial de interacción de función delta). He leído algunos libros de texto y estoy seguro de que extremar (con suerte minimizar) la energía de la conjetura variacional significa que debemos cumplir con la ecuación de Hartree-Fock:

F ^ | x a = ϵ a | x a
dónde F ^ es el operador de Fock (en el espacio de Hilbert formado por el conjunto de funciones de onda de una sola partícula, no el espacio de Fock completo) y el ϵ a , | x a son los valores propios y las funciones propias que resuelven este problema (con suerte, el estado fundamental si tenemos una buena suposición inicial en nuestro método iterativo).

Es a partir de aquí que estoy bastante confundido. En la mayoría de los libros/recursos puedo encontrar handwave que "encontramos la solución mediante métodos iterativos", pero en realidad quiero implementar esto para un sistema simple. He oído hablar de un método en el que adivinas las funciones de onda, construyes el campo medio, usas un método numérico para resolver las funciones propias de la ecuación de Hartree-Fock asumiendo un campo fijo y luego repites hasta que el campo es el mismo. -coherente.

  • ¿Por qué este método necesariamente convergería?

  • ¿Qué tipo de método numérico usaría para resolver la ecuación de Hartree-Fock para un campo fijo (supongo que equivale a resolver la ecuación de Schrödinger independiente del tiempo)? Nunca he hecho nada como esto antes.

Respuestas (2)

Implementar tal método no es una tarea trivial. Solo para su información, hay varios programas creados específicamente para realizar cálculos de Hartree-Fock.

En términos de una buena introducción a la teoría de los cálculos de Hartree-Fock, encontré este pdf extremadamente útil.

En primer lugar, ha proporcionado la expresión para los orbitales moleculares de 1 electrón psuedo-exactos (psuedo, porque hemos hecho la aproximación de Born-Oppenheimer y hemos asumido una forma determinante de Slater para llegar aquí) | x a , que no se conocen.

Formalmente, eso no es un problema. Podemos usar un conjunto completo de estados { | ϕ m } v = 1... como base, y expandir los estados exactos (desconocidos) por | x a = m = 1 C m a | ϕ k en coeficientes desconocidos C m a .

Naturalmente, el requisito de una cantidad infinita de orbitales base no es posible en una computadora, por lo que debemos usar una base lo suficientemente grande como para que el truncamiento no importe dentro de nuestras pautas de precisión.

Siguiendo el análisis en el pdf , finalmente hay 4 matrices que necesitamos.

F m v ( C α k ) = ϕ m | F ^ | ϕ v , la matriz de Fock (Los corchetes se incluyen aquí para representar la dependencia de C !)

S m v = ϕ m | ϕ v , la integral superpuesta de todas sus funciones básicas (esto no cambia a lo largo de la iteración).

C α k , los coeficientes que especifican la expansión de la k la función propia.

ε , una matriz diagonal con entradas correspondientes a las energías propias de 1 electrón de | x a bajo operador Fock F ^ .

La elección de una base "reduce" la ecuación anterior a

F ( C ) C = S C ε

Este tipo de ecuación se conoce como ecuación de valores propios generalizada y se puede resolver con la mayoría de los paquetes de álgebra lineal numérica (p. ej., Eigen, SciPy). O más bien, sería si F no dependía de C .

Hay muchos, muchos algoritmos para lidiar con esto, pero un enfoque común es la "iteración" a la que se refieren muchos autores. En esta configuración, comenzamos con una suposición de la forma de C , obtenga un mejor valor de C y vuelva a sustituir y resuelva nuevamente.

F ( C ( norte ) ) C ( norte + 1 ) = S C ( norte + 1 ) ε

donde los superíndices en el C las matrices se refieren al número de iteración.

¿Por qué el método necesariamente convergería

En general, no lo hace. Básicamente, esperamos que nuestra conjetura inicial esté lo suficientemente cerca de la verdadera solución para que el algoritmo pueda encontrar el mínimo. Esta es la razón por la que es de vital importancia que el conjunto base se elija cuidadosamente para que esté "bastante cerca" de la verdadera función de onda desde el principio: una primera opción natural son las funciones de onda atómicas hidrogenadas, pero estas son computacionalmente costosas de integrar y mejores resultados. se puede lograr con una colección más grande de funciones más simples. Dichos conjuntos básicos se tabulan para los químicos computacionales en sitios como el intercambio de conjuntos básicos .

¿Qué tipo de método numérico usaría para resolver la ecuación de Hartree-Fock?

En última instancia, todo se reduce a seguir este procedimiento:

  1. Elija un conjunto de orbitales base.
  2. Calcular S .
  3. Establecer una conjetura para C ( 0 ) .
  4. Resolver F ( C ( norte ) ) C ( norte + 1 ) = S C ( norte + 1 ) ε
  5. Repita 4. hasta la convergencia.

Una nota sobre esa convergencia: en general, se prueba para ver si las nuevas energías difieren de las energías precedentes en menos de un límite, y así establecer que el algoritmo no se "mueve" mucho en el espacio de estado.

En cuanto a por qué funciona en absoluto: posiblemente, para condiciones suficientemente restringidas, el paso 4) anterior puede definir un mapeo de contracción F : METRO norte × METRO ( C ) METRO norte × METRO ( C ) , C METRO norte × METRO ( C ) , y también la convergencia del teorema del punto fijo de Banach. Sin embargo, en términos generales, estos requisitos no se cumplen.

Extremadamente útil, gracias. De hecho, estoy fuera del mundo de la química: mi sistema son átomos fermiónicos en una trampa armónica 1D, que interactúan mediante la dispersión de ondas s (por lo tanto, una interacción de par de función delta). Como tal, estaba pensando en usar una base de Hermite-Gauss. Entonces, ¿S no sería simplemente la identidad, ya que es una base ortonormal, y lo mismo para cualquier otra base ortonormal?
También estoy tratando de entender las dimensiones de estas matrices. Digamos que el sistema contiene norte fermiones y trunco ​​mi base establecida en norte dimensiones. ¿Estoy en lo cierto al pensar que dimensionalmente, F es norte × norte , C es norte × norte , S es norte × norte , C es norte × norte , y ϵ es norte × norte ¿diagonal?
Perfecto para ambos comentarios. En química, la base casi nunca es ortonormal, pero para los estados de base QHO (una opción muy sensata para su sistema), S es la identidad.
Creo que estoy listo para intentar esto después de solo dos preguntas más. La "ecuación de valores propios generalizada" se debe a la presencia de S, ¿verdad? Así que con S = 1 ^ debido a una base ortonormal, ¿se trata simplemente de un problema de valor propio regular? No estoy muy seguro de cómo resolver numéricamente F C = C ϵ , desde F y C no son matrices cuadradas: solo he encontrado problemas propios de matrices cuadradas. Las rutinas en SciPy, por ejemplo, solo parecen hacer esto para matrices cuadradas. ¿Qué debo buscar para encontrar un solucionador adecuado? (Si hay uno en SciPy que me falta, incluso mejor).
Simplemente vea las columnas de C como que contienen vectores propios y resuelva para ellos una columna a la vez. Entonces el ε matriz es simplemente el valor propio correspondiente.

La respuesta existente por catalogue_number es perfectamente adecuada. Solo señalaré que el esquema iterativo simple de punto fijo dado por sus puntos 1.-5. no se usa realmente en la práctica en esta forma "vainilla". Los programas de química cuántica utilizan los llamados algoritmos de aceleración de convergencia que 1) hacen que la convergencia sea más rápida (se requieren menos iteraciones) y 2) hacen que los algoritmos sean más robustos (la convergencia al mínimo también se logra para conjeturas iniciales deficientes). Por ejemplo ver: Alejandro J Garza, Gustavo E. Scuseria, Comparación de técnicas de aceleración de convergencia de campo autoconsistentes, Journal of Chemical Physics 137, 054110 (2012) https://www.semanticscholar.org/paper/Comparison-of-self -convergencia-de-campo-consistente-Garza-Scuseria/2aebb6f9a09cd83296af1530299a1a44b7a0a2dd

También puedo señalar que se han sugerido otros enfoques para resolver las ecuaciones de Hartree-Fock (o Hartree-Fock-Roothaan). Por ejemplo, Malbouisson y Vianna introdujeron en 1990 un método algebraico [J. quim. Phys., vol. 87 (1990), págs. 2017–2025, Un método algebraico para resolver ecuaciones de Hartree-Fock-Roothaan. Para una aplicación ver, por ejemplo, Malbouisson, Sobrinho, de Andrade, Multiple Hartree-Fock Solutions of Systems Constituted with First Line Atoms: BH and FH moleculas using the Double Zeta Base, http://ojs.rpqsenai.org.br/index .php/rpq_n1/artículo/vista/285 ]

Shiozaki e Hirata han utilizado un enfoque numérico diferente [soluciones numéricas Hartree-Fock basadas en cuadrículas de moléculas poliatómicas, PHYSICAL REVIEW A 76, 040503(R), 2007]

Recuerdo haber visto otro enfoque que se basaba en el teorema de Thouless, pero no pude encontrar la referencia exacta.