La química computacional cuántica es un campo emergente que aprovecha la computación cuántica para simular sistemas químicos. A pesar del papel fundamental de la mecánica cuántica en la comprensión de los comportamientos químicos, los enfoques computacionales tradicionales enfrentan desafíos significativos, en gran medida debido a la complejidad e intensidad computacional de las ecuaciones de la mecánica cuántica. Esta complejidad surge del crecimiento exponencial de la función de onda de un sistema cuántico con cada partícula agregada, lo que hace que las simulaciones exactas en computadoras clásicas sean ineficientes. [1]
Se espera que los algoritmos cuánticos eficientes para problemas de química tengan tiempos de ejecución y requisitos de recursos que se escalen polinómicamente con el tamaño del sistema y la precisión deseada. Los esfuerzos experimentales han validado los cálculos químicos de prueba de principio, aunque actualmente están limitados a sistemas pequeños. [1]
Breve historia de la química computacional cuántica
1929: Dirac observó la complejidad inherente de las ecuaciones mecánicas cuánticas, subrayando las dificultades para resolver estas ecuaciones mediante el cálculo clásico. [2]
1982: Feynman propuso utilizar hardware cuántico para simulaciones, abordando la ineficiencia de las computadoras clásicas para simular sistemas cuánticos. [3]
Métodos comunes en química computacional cuántica
Si bien existen varios métodos comunes en química cuántica, la siguiente sección enumera solo algunos ejemplos.
Qubitización
La qubitización es un concepto matemático y algorítmico de la computación cuántica para la simulación de sistemas cuánticos a través de dinámicas hamiltonianas. La idea central de la qubitización es codificar el problema de la simulación hamiltoniana de una manera que sea más eficiente de procesar mediante algoritmos cuánticos. [4]
La qubitización implica una transformación del operador hamiltoniano, un objeto central en la mecánica cuántica que representa la energía total de un sistema. En términos computacionales clásicos, un hamiltoniano puede considerarse como una matriz que describe las interacciones de energía dentro de un sistema cuántico. El objetivo de la qubitización es incorporar este hamiltoniano en un operador unitario más grande, que es un tipo de operador en la mecánica cuántica que preserva la norma de los vectores sobre los que actúa. [4]
Matemáticamente, el proceso de qubitización construye un operador unitario tal que una proyección específica de es proporcional al hamiltoniano de interés. Esta relación a menudo se puede representar como , donde es un estado cuántico específico y es su transpuesta conjugada. La eficiencia de este método proviene del hecho de que el operador unitario se puede implementar en una computadora cuántica con menos recursos (como qubits y puertas cuánticas) de los que se requerirían para simular directamente [4].
Una característica clave de la qubitización es la simulación de dinámicas hamiltonianas con alta precisión, al tiempo que se reduce la sobrecarga de recursos cuánticos. Esta eficiencia es especialmente beneficiosa en algoritmos cuánticos donde es necesaria la simulación de sistemas cuánticos complejos, como en las simulaciones de química cuántica y ciencia de materiales. La qubitización también desarrolla algoritmos cuánticos para resolver ciertos tipos de problemas de manera más eficiente que los algoritmos clásicos. Por ejemplo, tiene implicaciones para el algoritmo de estimación de fase cuántica, que es fundamental en varias aplicaciones de computación cuántica, incluida la factorización y la resolución de sistemas lineales de ecuaciones. [4]
Aplicaciones de la qubitización en química
Conjuntos de bases orbitales gaussianas
En los conjuntos de bases orbitales gaussianos , los algoritmos de estimación de fase se han optimizado empíricamente desde hasta donde es el número de conjuntos de bases. Los algoritmos avanzados de simulación hamiltoniana han reducido aún más el escalamiento, con la introducción de técnicas como los métodos de series de Taylor y la qubitización, lo que proporciona algoritmos más eficientes con requisitos computacionales reducidos. [5]
Conjuntos de base de ondas planas
Los conjuntos de bases de ondas planas, adecuados para sistemas periódicos, también han experimentado avances en la eficiencia de los algoritmos, con mejoras en los enfoques basados en fórmulas de productos y métodos de series de Taylor. [4]
Estimación de fase cuántica en química
Descripción general
La estimación de fase, propuesta por Kitaev en 1996, identifica el estado propio de energía más baja ( ) y los estados excitados ( ) de un hamiltoniano físico, como detallaron Abrams y Lloyd en 1999. [6] En la química computacional cuántica, esta técnica se emplea para codificar hamiltonianos fermiónicos en un marco de qubit . [7]
Breve metodología
Inicialización
El registro de cúbits se inicializa en un estado que tiene una superposición distinta de cero con el estado propio objetivo de interacción de configuración completa (FCI) del sistema. Este estado se expresa como una suma de los estados propios de energía del hamiltoniano, , donde representa coeficientes complejos. [9]
Aplicación de las puertas Hadamard
Cada cúbit ancillario se somete a una aplicación de compuerta Hadamard, colocando el registro ancillario en un estado superpuesto. Posteriormente, las compuertas controladas, como se muestra arriba, modifican este estado. [9]
Transformada cuántica de Fourier inversa
Esta transformación se aplica a los qubits ancillares, revelando la información de fase que codifica los valores propios de energía. [9]
Medición
Los qubits ancillares se miden en la base Z, colapsando el registro principal en el estado propio de energía correspondiente en función de la probabilidad . [9]
Requisitos
El algoritmo requiere cúbits ancillares, cuyo número está determinado por la precisión deseada y la probabilidad de éxito de la estimación de energía. Para obtener una estimación de energía binaria precisa de n bits con una probabilidad de éxito se necesitan [9] cúbits ancillares. Esta estimación de fase se ha validado experimentalmente en varias arquitecturas cuánticas. [9]
Aplicaciones de los QPE en química
Evolución temporal y análisis de errores
La evolución temporal coherente total requerida para el algoritmo es aproximadamente . [10] El tiempo de evolución total está relacionado con la precisión binaria , con una repetición esperada del procedimiento para una estimación precisa del estado fundamental. Los errores en el algoritmo incluyen errores en la estimación del valor propio de la energía ( ), evoluciones unitarias ( ) y errores de síntesis del circuito ( ), que se pueden cuantificar utilizando técnicas como el teorema de Solovay-Kitaev . [11]
El algoritmo de estimación de fase se puede mejorar o modificar de varias maneras, como por ejemplo utilizando un único cúbit ancilar para mediciones secuenciales, aumentando la eficiencia, la paralelización o mejorando la resistencia al ruido en la química analítica. El algoritmo también se puede escalar utilizando el conocimiento obtenido clásicamente sobre las brechas de energía entre estados. [12]
Limitaciones
Se necesita una preparación de estado eficaz , ya que un estado elegido al azar reduciría exponencialmente la probabilidad de colapsar al estado fundamental deseado. Se han propuesto varios métodos para la preparación de estado, incluidos enfoques clásicos y técnicas cuánticas como la preparación de estado adiabático. [13]
Eigensolver cuántico variacional (VQE)
Descripción general
El solucionador de eigens cuántico variacional es un algoritmo en computación cuántica, crucial para el hardware cuántico de corto plazo. [14] Inicialmente propuesto por Peruzzo et al. en 2014 y desarrollado por McClean et al. en 2016, VQE encuentra el valor propio más bajo de los hamiltonianos, particularmente aquellos en sistemas químicos. [15] Emplea el método variacional (mecánica cuántica) , que garantiza que el valor esperado del hamiltoniano para cualquier función de onda de prueba parametrizada sea al menos el valor propio de energía más bajo de ese hamiltoniano. [16] VQE es un algoritmo híbrido que utiliza computadoras tanto cuánticas como clásicas. La computadora cuántica prepara y mide el estado cuántico, mientras que la computadora clásica procesa estas mediciones y actualiza el sistema. Esta sinergia permite a VQE superar algunas limitaciones de los métodos puramente cuánticos. [17]
Aplicaciones de los VQE en química
Cálculos 1-RDM y 2-RDM
Las matrices de densidad reducida (1-RDM y 2-RDM) se pueden utilizar para extrapolar la estructura electrónica de un sistema. [18]
Extrapolación de la energía del estado fundamental
En el ansatz variacional hamiltoniano, el estado inicial se prepara para representar el estado fundamental del hamiltoniano molecular sin correlaciones electrónicas. La evolución de este estado bajo el hamiltoniano, dividido en segmentos conmutativos , se da mediante la ecuación siguiente. [17]
donde los parámetros variacionales se optimizan para minimizar la energía, proporcionando información sobre la estructura electrónica de la molécula. [17]
Escala de medición
McClean et al. (2016) y Romero et al. (2019) propusieron una fórmula para estimar el número de mediciones ( ) necesarias para la precisión energética. La fórmula está dada por , donde son los coeficientes de cada cuerda de Pauli en el hamiltoniano. Esto conduce a un escalamiento de en una base orbital gaussiana y en una base dual de onda plana. Nótese que es el número de funciones base en el conjunto de bases elegido. [19] [20]
Agrupamiento de niveles fermiónicos
Un método de Bonet-Monroig, Babbush y O'Brien (2019) se centra en agrupar términos a un nivel fermiónico en lugar de a un nivel de qubit , lo que lleva a un requisito de medición de solo circuitos con una profundidad de compuerta adicional de . [21]
Limitaciones de VQE
Si bien la aplicación de VQE para resolver la ecuación electrónica de Schrödinger para moléculas pequeñas ha demostrado ser exitosa, su escalabilidad se ve obstaculizada por dos desafíos principales: la complejidad de los circuitos cuánticos requeridos y las complejidades involucradas en el proceso de optimización clásica. [22] Estos desafíos están significativamente influenciados por la elección del ansatz variacional, que se utiliza para construir la función de onda de prueba. Las computadoras cuánticas modernas enfrentan limitaciones para ejecutar circuitos cuánticos profundos, especialmente cuando se utilizan los ansatz existentes para problemas que exceden varios qubits. [17]
Codificación Jordan-Wigner
La codificación de Jordan-Wigner es un método en computación cuántica utilizado para simular sistemas fermiónicos como orbitales moleculares e interacciones electrónicas en química cuántica. [23]
Descripción general
En química cuántica, los electrones se modelan como fermiones con funciones de onda antisimétricas . La codificación de Jordan-Wigner asigna estos orbitales fermiónicos a cúbits, preservando su naturaleza antisimétrica. Matemáticamente, esto se logra asociando cada operador de creación y aniquilación fermiónico con los operadores de cúbits correspondientes a través de la transformación de Jordan-Wigner :
Donde , , y son matrices de Pauli que actúan sobre el qubit. [23]
Aplicaciones de la codificación de Jordan-Wigner en química
Salto de electrones
El salto de electrones entre orbitales, fundamental para la unión y las reacciones químicas, se representa mediante términos como . Según la codificación de Jordan-Wigner, estos se transforman de la siguiente manera: [23] Esta transformación captura el comportamiento mecánico cuántico del movimiento y la interacción de los electrones dentro de las moléculas. [24]
Complejidad computacional en sistemas moleculares
La complejidad de simular un sistema molecular mediante la codificación Jordan-Wigner está influenciada por la estructura de la molécula y la naturaleza de las interacciones electrónicas. Para un sistema molecular con orbitales, la cantidad de qubits requeridos escala linealmente con , pero la complejidad de las operaciones de las compuertas depende de las interacciones específicas que se modelan. [25]
Limitaciones de la codificación Jordan-Wigner
La transformación de Jordan-Wigner codifica los operadores fermiónicos en operadores de cúbits, pero introduce operadores de cadena no locales que pueden hacer que las simulaciones sean ineficientes. La compuerta FSWAP se utiliza para mitigar esta ineficiencia reorganizando el orden de los fermiones (o sus representaciones de cúbits), simplificando así la implementación de las operaciones fermiónicas. [26]
Red SWAP fermiónica (FSWAP)
Las redes FSWAP reorganizan los cúbits para simular de manera eficiente la dinámica de los electrones en las moléculas. Estas redes son esenciales para reducir la complejidad de las compuertas en las simulaciones, especialmente para interacciones de electrones no vecinos . [27]
Cuando se intercambian dos modos fermiónicos (representados como qubits después de la transformación de Jordan-Wigner), la compuerta FSWAP no solo intercambia sus estados sino que también actualiza correctamente la fase de la función de onda para mantener la antisimetría fermiónica . Esto contrasta con la compuerta SWAP estándar , que no tiene en cuenta el cambio de fase requerido en las funciones de onda antisimétricas de los fermiones. [28]
El uso de puertas FSWAP puede reducir significativamente la complejidad de los circuitos cuánticos para simular sistemas fermiónicos. Al reorganizar inteligentemente los fermiones, se puede reducir la cantidad de puertas necesarias para simular ciertas operaciones fermiónicas, lo que conduce a simulaciones más eficientes. Esto es particularmente útil en simulaciones en las que los fermiones deben moverse a través de grandes distancias dentro del sistema, ya que puede evitar la necesidad de largas cadenas de operaciones que de otro modo serían necesarias. [29]
Referencias
^ ab Gieres, François (2000). "Sorpresas matemáticas y el formalismo de Dirac en mecánica cuántica". Informes sobre el progreso en física . 63 (12): 1893–1931. arXiv : quant-ph/9907069 . Código Bibliográfico :2000RPPh...63.1893G. doi :10.1088/0034-4885/63/12/201. S2CID 250880658.
^ Dirac, PAM (6 de abril de 1929). "Mecánica cuántica de sistemas de muchos electrones". Actas de la Royal Society de Londres. Serie A, que contiene artículos de carácter matemático y físico . 123 (792): 714–733. Bibcode :1929RSPSA.123..714D. doi : 10.1098/rspa.1929.0094 . ISSN 0950-1207. S2CID 121992478.
^ Feynman, Richard P. (17 de junio de 2019). Hola, Tony; Allen, Robin W. (eds.). Feynman Lectures On Computation. Boca Raton: CRC Press. doi :10.1201/9780429500442. ISBN978-0-429-50044-2. Número de identificación del sujeto 53898623.
^ abcde Low, Guang Hao; Chuang, Isaac L. (12 de julio de 2019). "Simulación hamiltoniana por qubitización". Quantum . 3 : 163. arXiv : 1610.06546 . Bibcode :2019Quant...3..163L. doi : 10.22331/q-2019-07-12-163 . S2CID 119109921.
^ Kwon, Hyuk-Yong; Curtin, Gregory M.; Morrow, Zachary; Kelley, CT; Jakubikova, Elena (15 de julio de 2023). "Conjuntos de bases adaptativas para computación cuántica práctica". Revista internacional de química cuántica . 123 (14). arXiv : 2211.06471 . doi : 10.1002/qua.27123 . ISSN 0020-7608. S2CID 253510818.
^ Kitaev, Alexei (17 de enero de 1996). Mediciones cuánticas y el problema del estabilizador abeliano (informe). Coloquio electrónico sobre complejidad computacional (ECCC).
^ Abrams, Daniel S.; Lloyd, Seth (13 de diciembre de 1999). "Algoritmo cuántico que proporciona un aumento exponencial de la velocidad para hallar valores propios y vectores propios". Physical Review Letters . 83 (24): 5162–5165. arXiv : quant-ph/9807070 . Código Bibliográfico :1999PhRvL..83.5162A. doi :10.1103/PhysRevLett.83.5162. S2CID 118937256.
^ McArdle, Sam; Endo, Suguru; Aspuru-Guzik, Alán; Benjamin, Simon C.; Yuan, Xiao (30 de marzo de 2020). "Química computacional cuántica". Reseñas de Física Moderna . 92 (1): 015003. arXiv : 1808.10402 . Código Bibliográfico :2020RvMP...92a5003M. doi : 10.1103/RevModPhys.92.015003 . S2CID 119476644.
^ abcdef Nielsen, Michael A.; Chuang, Isaac L. (2010). Computación cuántica e información cuántica (edición del décimo aniversario). Cambridge: Cambridge University Press. ISBN978-1-107-00217-3.
^ Du, Jiangfeng; Xu, Nanyang; Peng, Xinhua; Wang, Pengfei; Wu, Sanfeng; Lu, Dawei (22 de enero de 2010). "Implementación de RMN de una simulación cuántica de hidrógeno molecular con preparación de estado adiabático". Physical Review Letters . 104 (3): 030502. Bibcode :2010PhRvL.104c0502D. doi :10.1103/PhysRevLett.104.030502. ISSN 0031-9007. PMID 20366636.
^ Lanyon, BP; Whitfield, JD; Gillett, GG; Goggin, ME; Almeida, MP; Kassal, I.; Biamonte, JD; Mohseni, M.; Powell, BJ; Barbieri, M.; Aspuru-Guzik, A.; White, AG (2010). "Hacia la química cuántica en una computadora cuántica". Nature Chemistry . 2 (2): 106–111. arXiv : 0905.0887 . Bibcode :2010NatCh...2..106L. doi :10.1038/nchem.483. ISSN 1755-4349. PMID 21124400. S2CID 640752.
^ Wang, Youle; Zhang, Lei; Yu, Zhan; Wang, Xin (2023). "Procesamiento de fase cuántica y sus aplicaciones en la estimación de fase y entropías". Physical Review A . 108 (6): 062413. arXiv : 2209.14278 . Código Bibliográfico :2023PhRvA.108f2413W. doi :10.1103/PhysRevA.108.062413.
^ Sugisaki, Kenji; Toyota, Kazuo; Sato, Kazunobu; Shiomi, Daisuke; Takui, Takeji (25 de julio de 2022). "Preparación del estado adiabático de funciones de onda correlacionadas con funciones de programación no lineal y funciones de onda de simetría rota". Química de las comunicaciones . 5 (1): 84. doi :10.1038/s42004-022-00701-8. ISSN 2399-3669. PMC 9814591 . PMID 36698020.
^ Peruzzo, Alberto; McClean, Jarrod; Shadbolt, Peter; Yung, Man-Hong; Zhou, Xiao-Qi; Love, Peter J.; Aspuru-Guzik, Alán; O'Brien, Jeremy L. (23 de julio de 2014). "Un solucionador de valores propios variacional en un procesador cuántico fotónico". Nature Communications . 5 (1): 4213. arXiv : 1304.3061 . Bibcode :2014NatCo...5.4213P. doi :10.1038/ncomms5213. ISSN 2041-1723. PMC 4124861 . PMID 25055053.
^ Peruzzo, Alberto; McClean, Jarrod; Shadbolt, Peter; Yung, Man-Hong; Zhou, Xiao-Qi; Love, Peter J.; Aspuru-Guzik, Alán; O'Brien, Jeremy L. (23 de julio de 2014). "Un solucionador de valores propios variacional en un procesador cuántico fotónico". Nature Communications . 5 (1): 4213. arXiv : 1304.3061 . Bibcode :2014NatCo...5.4213P. doi :10.1038/ncomms5213. ISSN 2041-1723. PMC 4124861 . PMID 25055053.
^ Chan, Albie; Shi, Zheng; Dellantonio, Luca; Dur, Wolfgang; Muschik, Christine A (2023). "Solucionadores de características propias cuánticas variacionales híbridos: fusión de modelos computacionales". arXiv : 2305.19200 [quant-ph].
^ abcd Tilly, Jules; Chen, Hongxiang; Cao, Shuxiang; Picozzi, Dario; Setia, Kanav; Li, Ying; Grant, Edward; Wossnig, Leonard; Rungger, Ivan; Booth, George H.; Tennyson, Jonathan (5 de noviembre de 2022). "El solucionador de propiedades cuánticas variacionales: una revisión de métodos y mejores prácticas". Physics Reports . 986 : 1–128. arXiv : 2111.05176 . Código Bibliográfico :2022PhR...986....1T. doi :10.1016/j.physrep.2022.08.003. ISSN 0370-1573. S2CID 243861087.
^ Liu, Jie; Li, Zhenyu; Yang, Jinlong (28 de junio de 2021). "Un solucionador cuántico variacional adaptativo eficiente de la ecuación de Schrödinger basado en matrices de densidad reducida". The Journal of Chemical Physics . 154 (24). arXiv : 2012.07047 . Bibcode :2021JChPh.154x4112L. doi :10.1063/5.0054822. ISSN 0021-9606. PMID 34241330. S2CID 229156865.
^ Romero, Jonathan; Babbush, Ryan; McClean, Jarrod R; Hempel, Cornelius; Love, Peter J; Aspuru-Guzik, Alán (19 de octubre de 2018). "Estrategias para la computación cuántica de energías moleculares utilizando el ansatz de clúster acoplado unitario". Ciencia y tecnología cuántica . 4 (1): 014008. arXiv : 1701.02691 . doi :10.1088/2058-9565/aad3e4. ISSN 2058-9565. S2CID 4175437.
^ McClean, Jarrod R; Romero, Jonathan; Babbush, Ryan; Aspuru-Guzik, Alán (4 de febrero de 2016). "La teoría de algoritmos variacionales híbridos cuántico-clásicos". New Journal of Physics . 18 (2): 023023. arXiv : 1509.04279 . Bibcode :2016NJPh...18b3023M. doi :10.1088/1367-2630/18/2/023023. ISSN 1367-2630. S2CID 92988541.
^ Bonet-Monroig, Xavier; Babbush, Ryan; O'Brien, Thomas E. (22 de septiembre de 2020). "Programación de medición casi óptima para tomografía parcial de estados cuánticos". Physical Review X . 10 (3): 031064. arXiv : 1908.05628 . Código Bibliográfico :2020PhRvX..10c1064B. doi :10.1103/PhysRevX.10.031064. S2CID 199668962.
^ Grimsley, Harper R.; Barron, George S.; Barnes, Edwin; Economou, Sophia E.; Mayhall, Nicholas J. (1 de marzo de 2023). "Un solucionador de propiedades cuánticas variacionales adaptativo y adaptado a cada problema mitiga los paisajes de parámetros irregulares y las mesetas estériles". npj Quantum Information . 9 (1): 19. arXiv : 2204.07179 . Bibcode :2023npjQI...9...19G. doi :10.1038/s41534-023-00681-0. ISSN 2056-6387. S2CID 257236255.
^ abc Jiang, Zhang; Sung, Kevin J.; Kechedzhi, Kostyantyn; Smelyanskiy, Vadim N.; Boixo, Sergio (26 de abril de 2018). "Algoritmos cuánticos para simular la física de muchos cuerpos de fermiones correlacionados". Physical Review Applied . 9 (4): 044036. arXiv : 1711.05395 . Bibcode :2018PhRvP...9d4036J. doi : 10.1103/PhysRevApplied.9.044036 . ISSN 2331-7019. S2CID 54064506.
^ Li, Qing-Song; Liu, Huan-Yu; Wang, Qingchun; Wu, Yu-Chun; Guo, Guo-Ping (2022). "Un marco unificado de transformaciones basado en la transformación de Jordan-Wigner". The Journal of Chemical Physics . 157 (13). arXiv : 2108.01725 . Código Bibliográfico :2022JChPh.157m4104L. doi :10.1063/5.0107546. PMID 36209000. S2CID 236912625 . Consultado el 13 de noviembre de 2023 .
^ Harrison, Brent; Nelson, Dylan; Adamiak, Daniel; Whitfield, James (noviembre de 2022). "Reducción del requisito de cúbits de las codificaciones de Jordan-Wigner de sistemas de K-fermiones y N-modos de N a ⌈log2(NK)⌉". arXiv : 2211.04501 [quant-ph].
^ "Códigos fermiónicos personalizados para simulación cuántica | Perimeter Institute". www2.perimeterinstitute.ca . Consultado el 13 de noviembre de 2023 .
^ Kivlichan, Ian D.; McClean, Jarrod; Wiebe, Nathan; Gidney, Craig; Aspuru-Guzik, Alán; Chan, Garnet Kin-Lic; Babbush, Ryan (13 de marzo de 2018). "Simulación cuántica de la estructura electrónica con profundidad lineal y conectividad". Physical Review Letters . 120 (11): 110501. arXiv : 1711.04789 . Código Bibliográfico :2018PhRvL.120k0501K. doi :10.1103/PhysRevLett.120.110501. PMID 29601758. S2CID 4219888.
^ Hashim, Akel; Rines, Rich; Omole, Victory; Naik, Ravi K; John MarkKreikebaum, John Mark; Santiago, David I; Chong, Frederic T.; Siddiqi, Irfan; Gokhale, Pranav (2021). "Redes SWAP fermiónicas optimizadas con promedio de circuito equivalente para QAOA". arXiv : 2111.04572 [quant-ph].
^ Rubin, Nicholas C.; Gunst, Klaas; White, Alec; Freitag, Leon; Throssell, Kyle; Chan, Garnet Kin-Lic; Babbush, Ryan; Shiozaki, Toru (27 de octubre de 2021). "El emulador cuántico fermiónico". Quantum . 5 : 568. arXiv : 2104.13944 . Código Bibliográfico :2021Quant...5..568R. doi :10.22331/q-2021-10-27-568. S2CID 233443911.
Lectura adicional
Cook, David Branston (1998). Manual de química cuántica computacional . Oxford University Press. ISBN 9780198501145.OCLC 468919475 .