Chimica computazionale
# Chimica computazionale

La chimica computazionale è quella branca della chimica teorica che si occupa dello sviluppo di modelli matematici, basati sia sulla meccanica classica sia sulla meccanica quantistica, in grado di simulare sistemi chimici, con lo scopo di calcolarne le grandezze fisiche caratteristiche e prevederne le proprietà chimiche.

La potenza predittiva delle simulazioni è legata in modo stretto alle caratteristiche delle macchine che si hanno a disposizione per il calcolo. Il numero di operazioni floating-point per secondo (FLOPS) e la capacità di memoria sono i parametri più importanti che determinano la possibilità di eseguire simulazioni in tempi ragionevoli. Nonostante già nei primi anni del XX secolo il supporto teorico per la formulazione dei modelli fosse pronto, il grande sviluppo della chimica computazionale si è avuto a partire dagli ultimi decenni del XX secolo, proprio perché si è iniziato a disporre di sistemi hardware sufficientemente potenti.

## Applicazioni

Le utilità delle simulazioni sono molteplici:

* I calcoli sono preziosi nell'interpretazione dei dati sperimentali. Si può mettere in luce ciò che è avvenuto in un esperimento confrontando le misure con i calcoli.
* Sono utili per mettere a punto la strumentazione più adeguata allo studio sperimentale di un certo sistema.
* Permettono di ottenere informazioni su sistemi difficili da studiare sperimentalmente per motivi tecnici o economici.
* Permettono di prevedere su base teorica la possibile esistenza di specie chimiche non note in natura o ancora mai sintetizzate.
* Permettono inoltre di confrontare e verificare i modelli teorici in senso più ampio.

Le grandezze che si vogliono calcolare sono numerose. Se ne riportano solo alcune a titolo di esempio:

* Superficie di energia potenziale
* Grandezze termodinamiche
* Grandezze cinetiche
* Spettro NMR
* Spettro EPR
* Spettro IR
* Spettro rotazionale
* Affinità elettronica
* Energia di ionizzazione
* Spettri XAS, sia EXAFS sia XANES

## Metodi

I metodi impiegati in chimica computazionale possono essere divisi in due sottogruppi in funzione delle modalità descrittive degli atomi e delle molecole:

### Metodi classici

Le caratteristiche molecolari vengono descritte per mezzo di una modellazione della molecola basata sulla elettrostatica e sulla meccanica classica:

* Meccanica molecolare
* Dinamica molecolare
* Metodo Monte Carlo

### Metodi quantomeccanici

Le caratteristiche molecolari vengono descritte in termini quantomeccanici. I metodi quantomeccanici possono a loro volta essere suddivisi in due sottocategorie: i metodi ab initio (che permettono di studiare un oggetto risolvendo direttamente l'equazione di Schrödinger per l'oggetto in esame) e i metodi semiempirici (che utilizzano, nella risoluzione della equazione di Schrödinger, parametri ottenuti per via sperimentale al fine di evitare un appesantimento eccessivo del calcolo).

**Metodi ab initio**

* Metodo di Hartree-Fock (HF)
* Metodi post-HF
   * Interazione di configurazione (CI)
   * Metodo MCSCF
   * Teoria perturbativa di Møller-Plesset (MPn)
   * Metodo Coupled Cluster (CC)
   * Teoria del funzionale della densità (DFT)
   * Monte Carlo quantistico

**Metodi semi-empirici**

* Metodo di Hückel
* Metodo Tight Binding (TB)
* Metodo CNDO
* Metodo INDO
* Metodo NDDO
