In che modo la teoria funzionale della densità scala con le dimensioni del sistema?


11

Teoricamente, in che modo il tempo di fare una teoria del calcolo della densità funzionale (DFT) scala con il numero di elettroni? Sono interessato alle implementazioni DFT "tipiche" come VASP, ABINIT, ecc., Non ai codici O (N).

Risposte:


13

La risposta corretta più semplice è che DFT è in . Questo deriva dall'idea che alla fine diagonalizzi un hamiltoniano con dimensioni proporzionali al numero di elezioni e la diagonalizzazione è tecnicamente O ( n 3 ) .O(Ne3)O(n3)


In realtà, DFT è un insieme di passaggi e diversi passaggi sono limitanti la velocità in contesti diversi. Se ci limitiamo al DFT a onda piana (PW) (VASP, ABINIT, QE e altri), possiamo fare alcune affermazioni più forti. Un'idea importante da capire per i codici PW DFT è che l'Hamiltoniano non viene mai memorizzato come una matrice grande; invece, l'azione dell'operatore hamiltoniano viene calcolata e utilizzata in quelli che sono generalmente diagonali iterativi "interni" (gradiente coniugato, davidson, ecc.). Questi diagonali sono formalmente , dove M V è il costo del calcolo dell'azione dell'Hamiltoniano, ma dato il loro ruolo in un algoritmo autoconsistente più ampio, tendono ad eseguire molto più velocemente.O(neMV)MV

Il processo di calcolo dell'azione dell'Hamiltoniano si svolge in un paio di passaggi:

  • Il potenziale locale nello spazio reale richiede un FFT, O(nvlnnv)
  • Proiezione può verificarsi in reale o g-spazio, o O ( n un n p n v ) , rispettivamenteO(nun'np)O(nun'npnv)
  • Il potenziale non locale è diagonale o diagonale a blocchi, o O ( n a n 2 p ) , rispettivamenteO(nun'np)O(nun'np2)

tutto ciò deve avvenire una volta per elettrone (in realtà, funzione d'onda), quindi aggiungi un fattore a tutti loro.ne

Attraverso alcuni mezzi (Gram-Schmidt, ad esempio) le funzioni d'onda (autofunzioni dell'hamiltoniano) devono essere mantenute ortogonali tra loro, O(ne2nv)

Infine, le funzioni d'onda devono essere composte in una densità di elettroni. Nei codici PW, ciò si ottiene con un ultimo FFT per funzione d'onda (e una somma), .O(nenvlnnv)

Si noti che ho inserito alcuni 's diversi: n v è correlato al volume (in realtà, è la dimensione di base), n p è il numero di proiettori per atomo, n a è il numero di atomi e n all'e il numero di elettroni. Formalmente n v , n a e n e sono tutti linearmente correlati tra loro ( n pnnvnpnun'nenvnun'nenp è un piccolo numero intero), ma puoi immaginare di aumentare il volume con un numero fisso di elettroni (aggiungendo il vuoto nelle geometrie di lastre / fili) o di aumentare il numero di proiettori con un numero fisso di atomi ed elettroni (usando uno pseudo-potenziale più accurato).

O(n2lnn)


Hai davvero bisogno della piena composizione elettronica, o solo di una piccola parte dello spettro?
Victor Liu

O(ne)ne/2

Grazie per la tua risposta! Potete consigliarmi degli articoli che hanno discusso di questo problema o eseguito benchmark?
Max Radin,

1
G. Kresse, Computational Materials Science 6, 15 (1996) è l'introduzione standard a VASP; potresti iniziare con la sezione 6. RM Martin, Struttura elettronica: teoria di base e metodi pratici (Cambridge Univ Pr, 2004) è una grande introduzione a DFT (onde piane e non), ma probabilmente è meno esplicita sulla complessità.
Max Hutchinson,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.