I have several programs available for downloading. Note that I retain copyright and that they may not be used for commercial purposes without my explicit written permission. Anyone who uses any of these programs is asked to notify me by email at ajs1@cam.ac.uk, so that they can be added to my mailing list for bug notices and updates.
Index to documentation
Program details
CamCASP (formerly SITUS). CamCASP (Cambridge package for Calculation of Anisotropic Site Properties) is a collection of scripts and programs for the calculation ab initio of distributed multipoles, polarizabilities, dispersion coefficients and repulsion parameters for individual molecules, and interaction energies between pairs of molecules using SAPT(DFT). The program is still being actively developed, and the current version should be regarded as beta software. In addition to the programs included in the package, CamCASP uses several other programs: SAPT2006, Orient, and an ab initio program, normally Dalton. The user's guide is available in PDF form.
Download CamCASP (authorized CamCASP users only). Please complete the licence application form if you wish to use CamCASP.
Please note: We initially called this program SITUS, unaware that there was already a program package of that name. To avoid confusion, we have renamed our package.
- GDMA 2.2. GDMA
is a Fortran 90 program for performing
Distributed Multipole Analysis of wavefunctions calculated using the
Gaussian program system. That
is, it calculates electric multipole
moments at the atomic positions, or at other specified sites, that
can give a very accurate representation of the electrostatic field of the
molecule. It uses the formatted checkpoint file produced by the
Gaussian program. Version 2.2 handles files from Gaussian94,
Gaussian98 and Gaussian03. It is also possible to use GDMA with the
Dalton program as part of the CamCASP package.
Instructions for downloading and installation. - Orient is a program for carrying out
calculations of various kinds for an assembly
of interacting molecules. It uses a site-site potential specified by the
user, including electrostatic, induction, repulsion, dispersion and
charge-transfer interactions if required. The electrostatic interactions
may be described
by simple point charges or by more elaborate descriptions involving distributed
multipoles up to rank 5 if required. Distributed polarizabilities may be
used if required, and the site-site repulsion and dispersion and charge-transfer
terms may be anisotropic. The energy of the assembly can be calculated at
specified configurations, and the geometry can be optimized to find minima
and transition states and the paths between them. Molecular dynamics and
Monte Carlo calculations can be performed on the assembly. The program can
calculate pressure and dielectric second virial coefficients, including
quantum corrections to the pressure virial coefficient.
The program can now also be used to study interactions involving ionic or
molecular
crystal surfaces. Clusters of molecules or periodic adlayers adsorbed
on the surface can be defined, and their geometries optimized. Monte
Carlo calculations can also be performed on the adsorbed cluster or
adlayer. The top layer of the crystal can be treated as an adlayer,
and its structure optimized to study surface reconstruction effects.
The interaction between the surface layer and the body of the crystal
also provides a tool for studying crystal growth morphology using the
attachment energy and related quantities.
The Orient 4.8 program manual is available in two versions, both PDF: an a4 version, intended for printing, and an a5 landscape version, intended for viewing on-screen.
Download Orient 4.8 (licensed Orient users only). Please complete the licence application form if you wish to use Orient.
- RRF. This is my Root Rational Fraction
program, which does exact arithmetic on quantities that are square
roots of rational fractions. It is intended mainly for manipulating
the formulae of angular momentum theory, especially the Wigner 3j, 6j
and 9j symbols. It can be used as a sort of desk calculator, or it can
be used as a subroutine library in Fortran programs. Further details are available.
Download package (about 20K) as a
gzipped tarfile or
zip file.
You can also use the program directly via the Web to calculate individual 3j, 6j or
9j symbols.
- Input routines. This is a Fortran 90
module containing a routine that parses input lines into ‘words’, and
routines that read a ‘word’ and either use it as a keyword or
translate it into a specified form,
usually an integer or double-precision number. In conjunction with a
simple CASE structure this provides a powerful and flexible method for
organising data input in a user-friendly manner. The package includes
documentation, and an
example program and data file as illustrations of the ways in which
the module can be used to organise data. Download
(19K)
- OpenGL modules for Fortran. In
Fortran2003 it is possible to call C functions directly from Fortran
programs in a reasonably straightforward manner. This makes the
standard OpenGL graphics libraries available to the Fortran
programmer. However it is necessary to define Fortran interfaces to
the C procedures, and the constants that are used as arguments to many of
them. Aleksandar Donev and Anthony Stone have carried out this task.
More
details are available, and the whole
package, including example files which illustrate the usage and
also serve as test files, is available for download (about 200K).