/** \page srctree The Source Tree

<dl>

<dt><tt>bin</tt><dd>This directory mainly contains commands that
  are used to help with the compilation of MPQC.

<dt><tt>lib/basis</tt><dd>The Gaussian basis set data files are in this
  directory.

<dt><tt>lib/elisp</tt><dd>If you are an emacs user, some useful
  modes and C++ programming style specifications can be found
  here.

<dt><tt>lib/perl</tt><dd>Perl modules that are used by the MPQC
  validation suite are found here.

<dt><tt>src/lib/util/options</tt>
  <dd>This contains the GetLongOpt command line argument parsing facility
  written by S. Manoharan, with some modifications.

<dt><tt>src/lib/util/ref</tt>
  <dd>This library provides memory management for objects.
  See \ref ref for more information.

<dt><tt>src/lib/util/container</tt><dd>This library provides container
  classes.  Some of these classes are not very efficient and it is likely
  that they will be replaced by the C++ Standard Template Library (STL)
  when it is supported fully by more compilers.  If your C++ implementation
  supports the STL you can configure with the <tt>--enable-stl</tt> option
  to use STL containers in place of the containers provided by this
  library.

<dt><tt>src/lib/util/misc</tt><dd>This contains a variety of independent
  classes that don't belong anywhere else.  Here one can find classes to
  assist with debugging, provide information about the execution
  environment, help make the output prettier, maintain detailed timing
  information, etc.

<dt><tt>src/lib/util/class</tt><dd>This library provides base classes for
  classes that require meta-information about the class.  This
  meta-information includes the class name, meta-information about the
  parent class and derived classes, pointers to functions that can create
  instances of the class, and so on.  See \ref class
  for more information.

<dt><tt>src/lib/util/keyval</tt><dd>This library provides classes that read
  keyword/value pairs from an input file.  See \ref keyval
  for more information.

<dt><tt>src/lib/util/state</tt><dd>The state library provides a base class
  for persistent objects and classes to read and write these objects to a
  stream.  See \ref state for more information.

<dt><tt>src/lib/util/group</tt><dd>This group library provides classes to
  utilize multiple processors of a parallel machine.  Message passing,
  distributed shared memory, and multi-threaded models are supported.
  See \ref group for more information.

<dt><tt>src/lib/util/render</tt><dd>This library provides a standard
  interface to rendering packages.

<dt><tt>src/lib/math/linpackd</tt><dd>This library contains double precision
  C versions of some of the linpack routines.

<dt><tt>src/lib/math/scmat</tt><dd>This library defines an abstract matrix
  class and supplies concrete implementations of parallel replicated and
  distributed matrices.  See \ref scmat for more information.

<dt><tt>src/lib/math/optimize</tt><dd>The optimize library provides classes
  to perform optimizations and base classes for objects that compute a
  scalar quantity as a function of several coordinates.

<dt><tt>src/lib/math/isosurf</tt><dd>This library can be used to compute a
  triangulated approximation to an isosurface.

<dt><tt>src/lib/math/symmetry</tt><dd>The symmetry library contains classes
  useful for describing point group symmetry.  See \ref symmetry
  for more information.

<dt><tt>src/lib/chemistry/molecule</tt><dd>This library has classes to
  describe molecules and internal molecular coordinates. A base class for
  classes that map the molecular coordinates to an energy is provided to
  permit the optimization of the molecular coordinates.

<dt><tt>src/lib/chemistry/solvent</tt><dd> This code can be used to
  describe solvated molecules.

<dt><tt>src/lib/chemistry/qc/basis</tt><dd>The basis library has classes
  that describe Gaussian basis sets and base classes for libraries that
  compute integrals involving these functions.

<dt><tt>src/lib/chemistry/qc/oint3</tt><dd>This library is comprised of
  machine generated code that is only used by the intv3 library.

<dt><tt>src/lib/chemistry/qc/intv3</tt><dd>The intv3 library computes
  integrals involving Gaussian basis functions.

<dt><tt>src/lib/chemistry/qc/wfn</tt><dd>The wfn library contains base
  classes for classes that, given a molecule and a basis set, compute the
  energy and other properties of the molecule.

<dt><tt>src/lib/chemistry/qc/scf</tt><dd>The scf library is used to compute
  self-consistent-field energies and gradients.  Specializations for
  Hartree-Fock theory are provided.

<dt><tt>src/lib/chemistry/qc/dft</tt><dd>The dft library provides
  implementations of density functional theory energies and gradients.

<dt><tt>src/lib/chemistry/qc/mbpt</tt><dd>This library computes second-order
  perturbation theory energies and gradients.

<dt><tt>src/lib/chemistry/qc/psi</tt><dd>This provides an example of
  interfacing MPQC to an external quantum chemistry package.

<dt><tt>src/bin/mpqc</tt><dd>The Massively Parallel Quantum Chemistry program
  is in this directory.  See \ref mpqc for more information.

<dt><tt>src/bin/scls</tt><dd>This program lists the contents of files created
  by \ref state.  See \ref scls for more
  information.

<dt><tt>src/bin/scpr</tt><dd>This program prints objects contained in files
  created by \ref state.  See \ref scpr for more
  information.

</dl>

*/
