Let's look at how to set up input for spin density evaluation on a two-dimensional grid. The relevant input section of PSI3 might look like this:
jobtype = oeprop grid = 2 spin_prop = true grid_origin = (0.0 -5.0 -5.0) grid_unit_x = (0.0 1.0 0.0) grid_unit_y = (0.0 0.0 1.0) grid_xy0 = (0.0 0.0) grid_xy1 = (10.0 10.0) nix = 30 niy = 30grid specifies the type of a property and the type of a grid oeprop needs to compute. Since spin_prop is set and grid=2, the spin density will be evaluated on a grid.
Grid specification is a little bit tricky but very
flexible. grid_origin specifies the origin of the
rectangular coordinate system associated with the grid in the
reference frame. grid_unit_x specifies a reference frame
vector which designates the direction of the x-axis of the grid
coordinate system. grid_unit_y is analogously a
reference frame vector which, along with the grid_unit_x,
completely specifies the grid coordinate system.
grid_unit_x and grid_unit_y do not have to
be normalized, neither they need to be orthogonal to either other -
orthogonalization is done automatically to ensure that unit vectors of
the grid coordinate system are normalized in the reference frame too.
grid_xy0 is a vector in the grid coordinate system that
specifies a vertex of the grid rectangle with the most negative
coordinates. Similarly, grid_xy1 specifies a vertex of the
the grid rectangle diagonally opposite to grid_xy0.
Finally, nix and niy specify the number of
intervals into which the
and
sides of the grid rectangle are
subdivided. To summarize, the above input specifies a rectangular (in
fact, square) 30 by 30 grid of dimensions 10.0 by 10.0 lying in the
plane and centered at origin of molecular frame.
Running PSI3 on such input will create a file called sdens.dat (for file names refer to man page on oeprop), which can be fed directly to PlotMTV to plot the 2-D data.
Specification of a three-dimensional grid for plotting MOs
(grid = 5) or densities (grid = 6) is just slightly
more complicated.
For example, let's look at producing data for plotting a HOMO and
a LUMO. The indices of the
MOs which needs to be plotted will be specified by keyword
mo_to_plot.
The reference frame is
specified by keywords grid_origin, grid_unit_x and grid_origin_y (the third axis of the grid coordinate
system is specified by by the vector product of
grid_unit_x and grid_unit_y). Since in this
case we are dealing with the three-dimensional grid coordinate system,
one needs to specify two diagonally opposite vertices of the grid box
via grid_xyz0 and grid_xyz1. The number of
intervals along
is specified via niz. The relevant section of
input file may look like this:
jobtype = oeprop grid = 5 mo_to_plot = (-1 +1) grid_origin = (-5.0 -5.0 -5.0) grid_unit_x = (1.0 0.0 0.0) grid_unit_y = (0.0 1.0 0.0) grid_xyz0 = (0.0 0.0 0.0) grid_xyz1 = (10.0 10.0 10.0) nix = 30 niy = 30 niz = 30
Running PSI3 on input like this will produce a Gaussian Cube file called mo.cube, which can be used to render images of HOMO and LUMO using an external visualization software.