AIM and other electron-density tools

Workshop by Erna & Justin, 16/6-20

Programs

VMD
https://www.ks.uiuc.edu/Development/Download/download.cgi?PackageName=VMD

(Linux, MacOS, Windows ...)
module load vmd/1.9.2

AIMALL
http://aim.tkgristmill.com/download/download.html
(Linux, MacOS, Windows)
or on aurora /lunarc/nobackup/projects/snic2019-35-66/Justin/programs/AIMAll/aimstudio.ish
aimall on Aurora

NCIplot
https://www.lct.jussieu.fr/pagesperso/contrera/nciplot.html
on aurora:
export NCIPLOT_HOME=/lunarc/nobackup/projects/snic2019-35-66/Justin/programs/nciplot-master/src_ nciplot_4.0/
nciplot

IGMplot
http://igmplot.univ-reims.fr/download.php
http://igmplot.univ-reims.fr/DOC/doc.pdf
on aurora: /lunarc/nobackup/projects/snic2019-35-66/Justin/programs/IGMPLOT-2.4.2/source/IGMPLOT
igmplot
Does not work currently unless you download the program locally.

dgrid
http://www2.cpfs.mpg.de/
~kohout/dgrid_web/download.php
(only Linux)
On aurora
/lunarc/nobackup/projects/snic2019-35-66/Justin/programs/DGrid-5.1-2019-09-09/dgrid
dgrid

Input in /lunarc/nobackup/projects/snic2019-35-66/Justin/ed_analyses/input
or /lunarc/nobackup/projects/snic2019-35-66/Ulf/Aim


Quantum Theory of Atoms in Molecules (QTAIM)

The topology of the electron density is analysed by mathematical methods
The first derivative of the electron density is the gradient vector field
Zero of the gradient vector field determines critical points in the electron density
To characterize these critical points the curvature is used.

AIMALL
http://aim.tkgristmill.com/download/download.html

(Linux, MacOS, Windows)
or on aurora /lunarc/nobackup/projects/snic2019-35-66/Justin/programs/AIMAll/aimstudio.ish
aimall on Aurora

  1. Run AIMStudio (command aimall)
  2. Run - AIMQB
    select wave-function.file
    OK
  3. File - Open in Current Window - select *.sumviz
  4. Look at the Atoms and BCPs.


Non-covalent interactions (NCI)

  • Documentation for the program can be found here:
    https://www.lct.jussieu.fr/pagesperso/ contrera/nciplot.html
    If you want to use the software more extensively, there are several exercises available on the homepage.

  • The NCIPlot program can read xyz files, wfn or wfx files.

  • The xyz file contains the number of atoms in the system you want to study and the coordinates of the atoms. If you read in an xyz file, the program automatically uses promolecular densities for the calculation.

    3
    water
    O     1.396405    -0.121399    -0.040373
    H     1.465873     0.195903     0.874079
    H     1.472634     0.685789    -0.573657

  • Wfn or Wfx files contain information about the wavefunction and can be used to read information from a previous quantum chemical calculation.
    The wfn format is older and it is limited to 999 atoms. Also if you are working with effective core potentials, the wfx format is better.

NCIplot
https://www.lct.jussieu.fr/pagesperso/contrera/nciplot.html
on aurora:
export NCIPLOT_HOME=/lunarc/nobackup/projects/snic2019-35-66/Justin/programs/nciplot-master/src_ nciplot_4.0/
nciplot

Example using the promolecular approximation.
  1. Create an input file, e.g. water.inp
    1
    water.xyz
  2. export NCIPLOT_HOME=/lunarc/nobackup/projects/snic2019-35-66/Justin/programs/nciplot-master/src_ nciplot_4.0/
  3. nciplot water.inp >water.out
  4. Start vmd
    vmd
    File - Load visualization state
    open the file water.vmd.
    Graphics – Representations
    Make sure that you are looking at the Isosuface representation and change the Isovalue.
  5. Look at the 2D plots with gnuplot
    gnuplot
    # Gnuplot script for mapping NCI color code over NCI diagrams
    set terminal pngcairo enhanced
    set encoding iso_8859_1
    set output 'water.png'
    set key
    set ylabel 's(a.u.)' font "Helvetica, 30"
    set xlabel 'sign({/Symbol l}_2){/Symbol r}(a.u.)' font "Helvetica, 30"
    set pm3d map
    # Define a color gradient palette used by pm3d
    set palette defined (-0.04 "blue",0.00 "green", 0.04 "red")
    set format y "% .2f"
    set format x "% .2f"
    set format cb "% -.2f"
    set border lw 4
    set xtic  -0.06,0.01,0.06 nomirror rotate font "Helvetica"
    set ytic   0.0,0.25,1.0 nomirror font "Helvetica"
    # set the color bar tics
    set cbtic  -0.06,0.01,0.06 nomirror font "Helvetica"
    set xrange [-0.06:0.06] 
    set yrange [0.0:1.0]
    # set the range of values which are colored using the current palette
    set cbrange [-0.06:0.06]
    plot 'water.dat' u 1:2:1 w p lw 6 palette t ''
Using instead a calculated wavefunction (e.g. from Gaussian)
  1. Create an input file, e.g. water.inp
    1
    water.wfn
  2. Use the same steps above to run nci and look at the results.

Looking at NCI-ingegral values

  1. Sample input file:
    2
    waterB.xyz
    waterA_100.xyz
    INTERMOLECULAR
    ONAME water_100
  2. The INTERMOLECULAR keyword means that only inter- molecular interactions are considered in the calculation of the integral values.
    ONAME sets the name of the output file.
  3. Each xyz file contains one water molecule. The position of the one in waterB.xyz is always fixed, whereas the one in waterA *.xyz is moved further apart, according to the scaling of the distance.
  4. Look at the integral values ”Integration over the volumes of rhoˆn” for n=2.5. The easiest way to do this is if you use grep:
    grep -A5 ”Integration over the volumes of rhoˆn” *out
    | grep ”n=2.5”
  5. Do not assume  that there is a direct relationship between the value of the integral and the interaction energy. There seems to be a relationship, but it is not an easy (linear) one and more research still needs to be done.
    If you are interested in the interpretation of the value of the NCI-integral, have a look at the following two papers:
    https://doi-org.bases-doc.univ-lorraine.fr/10.1021/acs.jctc.0c00063
    https://doi-org.bases-doc.univ-lorraine.fr/10.1021/acs.jcim.9b00950
    (for MD simula- tions)


Independent gradient model (IGM)

IGMplot
http://igmplot.univ-reims.fr/download.php
http://igmplot.univ-reims.fr/DOC/doc.pdf
on aurora: /lunarc/nobackup/projects/snic2019-35-66/Justin/programs/IGMPLOT-2.4.2/source/IGMPLOT
igmplot
Does not work currently unless you download the program locally.

  • The IGMPlot program can process xyz files (then it uses the promolecular approximation) and wfn files (to use the wavefunction from a quantum chemical calculation).

  • Documentation for the IGMPlot program can be found here:
    http://igmplot.univ-reims.fr/ DOC/doc.pdf
    The software itself comes with a number of tests, which can be a very useful starting point, many of them are also the examples shown in the documentation.

  • Example input file:
    2

  • water1.xyz
    water2.xyz
    RADIUS 1.5 0.5 0.5 5.0
  • Without the radius keyword, the program is still working, but the automatically chosen cube size is too small to visualise all isosurfaces.

  • IGM detects intermolecular interactions only if two separate xyz files are given as input. Each of the two xyz files contains one water molecule each.

  • Run the program by
    igmplot water.inp > water.out

  • Like NCI, with IGM you can visualise 3D and 2D plots.

  • Load the igm.vmd file as visualisation state in vmd.
    Enable the visualisation of the intramolecular interactions with double clicking on the red D in the main window. 

  • For the 2D plots, use the gnuplot script igm water.gp. This will provide you with two png files, one for the inter- and one for the intramolecular interactions.

    # Gnuplot script for IGM
    set terminal pngcairo enhanced
    set encoding iso_8859_1
    set output 'intra.png'
    set key
    set ylabel '{/Symbol d}g(a.u.)' font "Helvetica, 20"
    set xlabel 'sign({/Symbol l}_2){/Symbol r}(a.u.)' font "Helvetica, 20"
    set border lw 2
    set yrange [0.0:0.5]
    plot 'out-igm.dat' u 1:3 w p lc rgb "blue" title "dg intra"
    set terminal pngcairo enhanced
    set encoding iso_8859_1
    set output 'inter.png'
    set key
    set ylabel '{/Symbol d}g(a.u.)' font "Helvetica, 20"
    set xlabel 'sign({/Symbol l}_2){/Symbol r}(a.u.)' font "Helvetica, 20"
    set border lw 2
    set yrange [0.0:0.1]
    plot 'out-igm.dat' u 1:4 w p lc rgb "blue" title "dg inter"


Electron Localization Function (ELF)

Electron Localisability Indicator (ELI) is a real space descriptor of the electron localisability.

dgrid
http://www2.cpfs.mpg.de/
~kohout/dgrid_web/download.php
(only Linux)
On aurora
/lunarc/nobackup/projects/snic2019-35-66/Justin/programs/DGrid-5.1-2019-09-09/dgrid
dgrid

  • IELI-D, regions with high values have a high electron localisation like atoms, bonds and lone pairs.

  • In the definition of ELI-D there is no separation between α- and β-spin-electrons.

Convert a FChk file to a g09 file:
dgrid file.FChk
gives file.g09

Integration over basins

dgrid input_file
Sample input file:
::  Title
:-------------------------------------------------------------

wfn_1=C2H2.g09

compute
:-----------------------------------------
using wfn_1
rho
mesh=0.1 rho=0.0009 parallel
save field_1
:-----------------------------------------
compute_end

compute
:-----------------------------------------
using wfn_1
:format=cube
ELI-D alpha-alpha
:rho
:rho Laplacian
mesh=0.1 rho=0.0009 parallel
:change mesh and rho_cutoff
save field_2
:-----------------------------------------
compute_end

basin
:---------------------
using field_2
save basin_2
crop using field_1 0.001
:---------------------
basin_end

integrate
using field_1
over basin_2
integrate_end

look in the *elid_r_a_aa.bsn.rho_r_ITG file for results

Visualisation
dgrid input_file

Sample input file:
::  Title
:-------------------------------------------------------------

:KEYWORDS
:-------------------------------------------------------------
wfn_1=C2H6.g09

compute
:-----------------------------------------
using wfn_1
format=cube
ELI-D alpha-alpha
mesh=0.1 rho=0.0009 parallel
:-----------------------------------------
compute_end

Visualise the results with vmd:

  • File, new Molecule
    select *.elid_r_a_aa file and select file type Gaussian Cube, Load
  • Graphics, Representation
    Create Rep
    set Drawing method to isosurface and play with the isovalue (around 2) and representation(Draw, solid surface)


Further examples

If you would like to look at some other non-covalent interactions, many geometries (in xyz format) can be found here:
http://www.begdb.com/index.php?action=oneDataset&id=4&state=show& order=ASC&by=name_m&method=

You can repeat the same steps as you did for NCI and IGM with these. Or you calculate a wavefunction yourself and do a QTAIM and ELI analysis.