¿Cómo se relaciona la complejidad computacional de encontrar un estado térmico de equilibrio para un hamiltoniano dado a una temperatura dada con el tamaño del sistema bajo Monte Carlo clásico y cuántico? Sé que escala polinomialmente para CMC y para QMC sin problema de signo, y exponencialmente para QMC con problema de signo, pero ¿cuáles son los exponentes?
Pido disculpas por la vaguedad de la pregunta: estoy seguro de que la respuesta depende del algoritmo preciso (y posiblemente también de si la temperatura es cero), y también puede haber entradas relevantes además del tamaño del sistema. En particular, sé que para los sistemas con un problema de signo, QMC tarda exponencialmente en converger de manera confiable, pero ¿exactamente cómo se compara la escala con la de la diagonalización exacta?
El estado para un hamiltoniano mecánico cuántico a temperatura es:
Entonces, consideremos el costo de una matriz exponencial (lo que llamas "diagonalización exacta"). Este es un campo de investigación muy activo incluso hoy en día. El algoritmo que usa MATLAB R2016b proviene de una tesis de 2010 y 2016 ha visto al menos 3 nuevos algoritmos ( Ruiz et al . 2016 , Grebrimedhin et al. 2016 , Guttel et al. , 2016 ). La elección del algoritmo y el costo de ese algoritmo depende de las propiedades de y de la precisión con la que pretende obtener la respuesta, pero Las operaciones de coma flotante (FLOP) se han dado aquí como una estimación cruda , donde es la dimensión de la matriz, que para un hamiltoniano es dónde es el número de niveles incluidos en su sistema cuántico.
Entonces, una estimación aproximada del costo del algoritmo determinista es FLOP para un El sistema de niveles, que tiene razón, es exponencial con respecto al número de partículas de espín-1/2.
En cuanto a los métodos de Monte Carlo, tendrá que ser más específico sobre lo que busca. El número de macro iteraciones requeridas para obtener su respuesta con una precisión de es y cada una de estas macro iteraciones dependerá de , pero para darte el recuento de FLOP tendrás que ser más específico en tu pregunta.