Ottimizzazione Molecolare - "opt" Keyword
Brick 
Welcome to everybody,

Iniziamo a vedere le funzioni principali di Gaussian. La funzionalità più utilizzata ed effettuata per ogni studio computazionale è sicuramente la funzione "ottimizzazione". Questa funzione è descritta nella riga di comando del file Input, dalla parola "opt" presente dopo l'indicazione del metodo e della basis set. Di seguito un esempio di riga di comando per ottenere l'ottimizzazione.

#HF(metodo)/6-21G**(basis set) opt(comando per ottimizzazione)

Naturalmente nella riga di comando possono essere sempre inseriti altri parametri che il programma deve seguire, ad esempio il numero massimo di cicli di calcolo, la memoria massima di utilizzo o la presa in considerazione o meno della simmetria della molecola.

La funzione "opt" viene utilizzata per molteplici scopi, il più utilizzato è sicuramente lo studio della PES. Con questa funzione il programma ci fornisce il punto stazionario più vicino alla molecola da noi immessa (matrice Z inserita nell'Input), spesso si tratta di minimi locali o assoluti ma non è sempre così (vedremo più avanti questi casi particolari).

Che calcoli effettua Gaussian quando gli viene dato il comando "opt"?

Gaussian con il comando "opt" esplora la PES considerando la differenza di energia potenziale U fra le diverse strutture geometriche analizzate. In poche parole Gaussian cambia la geometria della molecola di partenza e si calcola la relativa energia fino ad ottenere l'energia minima del sistema, in cui la derivata prima è uguale a 0.

Come fa Gaussian a capire che quella geometria è un minimo della PES?

Attraverso la convergenza del sistema. La convergenza del sistema è una verifica che Gaussian effettua sul sistema attraverso l'analisi di alcuni criteri. Questi criteri sono:
  • Le forze devono essere essenzialmente 0
  • La radice quadrata della forza deve essere essenzialmente 0
  • Lo spostamento energetico calcolato per lo step successivo deve essere minore di 0.0018 (essenzialmente 0)
  • La radice quadrata dello spostamento energetico calcolato deve essere minore di 0.0012 (essenzialmente 0)

Cerchiamo di spiegare questi criteri in maniera più semplice e comprensibile. Analizzeremo solo il criterio sullo spostamento energetico calcolato in quanto più facile da comprendere e meno astratto del concetto di forza. Iniziamo con calma  si si

Noi inseriamo all'interno del file Input una determinata matrice Z, che consiste in un determinato vettore "q" della PES che a sua volta consiste nel punto di partenza dell'ottimizzazione. Gaussian come già detto in precedenza, modificherà un parametro del sistema di partenza (ad esempio una lunghezza di legame, un angolo diedro o altro parametro) e calcolerà l'energia potenziale per il nuovo sistema ottenuto.

Ottenuta l'energia potenziale del nuovo sistema, Gaussian effettua la sottrazione rispetto all'energia potenziale della struttura modifica (struttura iniziale), ottenendo un valore numerico. Se questo valore numerico è essenzialmente zero, Gaussian identificherà quella struttura come minimo in caso contrario continuerà a modificare il parametro scelto (lunghezza di legame, angolo diedro o altro parametro) finchè non avrà soddisfatto il criterio di spostamento energetico calcolato (differenza energetica fra le due strutture circa 0). Vi inserisco un'immagine in modo da rendere più chiaro il discorso appena affrontato (Fig.1).

[Immagine: bucadipotenzialeopt.png]
Fig.1 Ottimizzazione della lunghezza di legame A-B.


La geometria da noi immessa come matrice Z consiste nel vettore qk, la quale viene ottimizzata in 4 step, ottenendo il vettore qk+4 che consiste nella geometria ottimizzata del nostro sistema. In Fig.1 è presente solo l'ottimizzazione della lunghezza di legame A-B ma se immaginiamo di effettuare questo processo per altre variabili di sistema (altre distanze, altri angoli o altro parametro) otteniamo l'effettivo lavoro che svolge Gaussian durante l'operazione di ottimizzazione.

Ogni vettore "q" (nuova geometria del sistema) preso in considerazione da Gaussian nella sua ottimizzazione viene descritto nel file di output (osservabile con ChemCraft), vedere Fig.2 sottostante.

[Immagine: stepdiopt.png]
Fig.2 Differenti step di ottimizzazione

Ogni step presente nel file di output e descritto da un valore di energia corrisponde a una differente geometria del sistema. Notate come Gaussian abbia interrotto l'ottimizzazione quando la differenza di energia fra i due vettori "q" presi in cosiderazione (geometria 19 e 18) è pressochè 0.

Come già detto, Gaussian ci fornisce soltanto il punto stazionario più vicino alla nostra matrice Z che non è detto che corrisponda al minimo assoluto del sistema. Sta nella bravura dell'operatore a individuare ed interpretare i risultati in modo da riuscire ad ottenere un risultato chimicamente e fisicamente accettabile.

Stay Computational ;-)



Chemistry4888
Cita messaggio
[-] I seguenti utenti ringraziano Chemistry4888 per questo post:
myttex
Due considerazioni.

Non mi spiego perchè non abbiano fatto un programma unico che faccia da solo ciò che fa prima Gaussian e poi ChemCraft.
Questo ipotetico sw che chiamerò GauCraft potrebbe produrre l'elaborazione e la visualizzazione senza accendere e spegnere due programmi diversi e spostando manualmente dei files. Mah! Mi sembrerebbe una logica elementare e la prima cosa che uno pensa... *Si guarda intorno*
---
A parte le chiare spiegazioni di principio, non mi è ancora chiaro un concetto fondamentale: ottenuta la suggestiva immagine faticosamente ottimizzata dai sw, che ce ne facciamo? Bella, bellina, ma a cosa serve?
(Probabilmente sarà chiarito in seguito... come non detto asd )

Cita messaggio
Allora Al, iniziamo con ordine.

ChemCraft è solo un programma che mi permette di vedere il file di Output di Gaussian in un modo diverso rispetto a quando faccia Gaussian. Gaussian ci fornisce il file Output in "forma numerica", che come hai ben notato ha un'interpretazione abbastanza complessa. ChemCraft legge questi dati numerici e li trasforma in immagini, in cui puoi effettuare diverse operazioni che nell'Output numerico di Gaussian non sono così semplici. Ho sempre lavorato e visto lavorare i chimici computazionali con più programmi (ChemDraw e Chem3D per la costruzione delle molecole, Gaussian o altro programma per il calcolo e ChemCraft o altro programma per la visualizzazione dei risulati), suppongo quindi che non sia possibile inserire tutte queste funzioni in un unico programma.

Ad esempio con Chem3D è possibile osservare la molecola iniziale (non è possibile disegnarla però), fare dei calcoli computazionali associati ad essa ed osservare la struttura finale, tutto senza cambiare programma. Naturalmente i calcoli computazionali effettuati con Chem3D non sono minimamente paragonabili a quelli ottenuti da un programma computazionale specifico come Gaussian. Tutto dipende naturalmente dal tipo di lavoro che devi svolgere e dal tipo di accuratezza voluta, anche se l'uso di più programmi credo sia inevitabile (per ora, in futuro chissà).

Passiamo alla seconda osservazione, che cosa facciamo con questa immagine ottimizzata bellina bellina??? O_o

L'ottimizzazione di una geometria deve sempre essere fatta per ottenere uno studio computazionale teoricamente corretto. Mi spiego meglio con un semplicissimo esempio.

Supponiamo di voler studiare la reazione di tautomerizzazione del fenolo. Chiameremo il tautomero del fenolo con il nome "tautomero" in modo da abbreviare il discorso e renderlo più fluido. Ritorniamo a noi, vogliamo conoscere di suddetta reazione l'energia di stabilizzazione derivante dall'aromaticità.

Per prima cosa dobbiamo ottimizzare le varie strutture coinvolte. Quindi il primo step da eseguire sarà l'ottimizzazione della struttura del fenolo e della struttura del tautomero in modo da ottenere una struttura geometrica per tali molecole che si avvicina il più possibile a quella reale. Ottenere una struttura geometrica il più possibile veritiera (non sarà mai esattamente quella reale, this is impossible) abbassa in maniera sostanziale la percentuale di errore sul risultato finale, in quanto come ben sai gli errori sono cumulativi.

Torniamo alla nostra reazione di tautomerizzazione.

Come già detto dobbiamo ottimizzare la geometria delle molecole coinvolte. Supponiamo di dover iniziare l'ottimizzazione del tautomero del fenolo. Mi costruisco la matrice Z del tautomero e ottengo la geometria sottostante (Fig. 1):

[Immagine: tautomerofenolo.png]
Fig.1 Struttura Tautomero immessa con la matrice Z


L'energia associata a questa struttura è di -301.447536632 Hartree.

Dopo aver ottimizzato la geometria del tautomero ottengo questa geometria (vedere Fig.2 sottostante), che invece possiede un'energia pari a -301.6960841 Hartree.

[Immagine: tautomerofenolocorretto.png]
Fig.2 Struttura Tautomero dopo ottimizzazione


Come puoi ben notare, la differenza strutturale fra le due geometrie è evidente e anche la differenza energetica è molto marcata. La differenza di energia è di circa 0,248547468 Hartree che corrispondono a circa 156 calorie. L'energia di stabilizzazione derivante dall'aromaticità è di circa 19 calorie, puoi intuire da solo che commettendo un errore iniziale di 156 calorie su una quantità di 19 calorie, non è proprio il massimo anzi è proprio pessimo.

Naturalmente questo errore è derivante solo dalla struttura non ottimizzata del tautomero del fenolo, dovresti tener presente anche l'errore derivante dalla non ottimizzazione della struttura del fenolo e quindi sommare i due errori che portano a un valore davvero molto molto ma davvero molto lontano dalla realtà (ma davvero molto).

Spero di aver risolto il tuo dubbio e la tua curiosità, in caso contrario chiedi pure asd asd

Stay Computational ;-)
Chemistry4888
Cita messaggio
(2012-03-22, 17:52)Chemistry4888 Ha scritto: ...spero di aver risolto il tuo dubbio e la tua curiosità, in caso contrario chiedi pure asd asd [/align]
Stay Computational

In parte. Diciamo che rimango... Computational Rolleyes
(Mi accontento di aver saputo che da oggi (per me) l'energia si misura anche in Hartree *Si guarda intorno* )

Cita messaggio
Brick 
Sono molto curioso di sapere la parte complementare a quel "In parte" *Sbav* *Sbav* *Sbav*

Stay always Computational :p
Chemistry4888
Cita messaggio
none.
Cita messaggio
ahahahahahahahahahaha....Per avere l'aggancio pratico, quel famoso bromo + benzene = bromobenzene, bisogna partire dall'ottimizzazione del sistema bromo + benzene :-D

Abbi fede Al, vedrai che alla fine questo bromobenzene salterà fuori!

Stay more Computational ;-)
Chemistry4888
Cita messaggio
Per copletare il discorso sulla funzione "opt" di Gaussian vi allego il file di output dell'ottimizzazione della molecola d'acqua.

Nel file di output sono presenti vicino ad ogni nuova sezione del file delle spiegazioni (in blu) che descrivono la sezione corrispondente. In questo modo vi sarà più facile andare a "leggere" le informazioni presenti all'interno del file di output.

Come già detto in altri theard, queste informazioni "numeriche" formite da Gaussian sono codificate da ChemCraft in immagini geometriche, in cui è più semplice ottenere ed elaborare l'informazione desiderata (lunghezze di legame, angoli, energia del sistema e altri possibili parametri).

Pronti via! *Sbav* *Sbav* *Sbav*

[Immagine: output1.png]

[Immagine: output2.png]

[Immagine: output3.png]

[Immagine: output4.png]

[Immagine: output5.png]

[Immagine: output6.png]

[Immagine: output7.png]

[Immagine: output8.png]

[Immagine: output9.png]

Stay Computational ;-)
Chemistry4888
Cita messaggio




Utenti che stanno guardando questa discussione: 1 Ospite(i)