# Module MMTK.MolecularSurface

This module provides functions that calculate molecular surfaces and volumes.

## Functions

- surfaceAndVolume()

  Returns the molecular surface and volume of object, defining the surface at a distance of probe_radius from the van-der-Waals surfaces of the atoms.

- surfaceAtoms()

  Returns a dictionary that maps the surface atoms to their exposed surface areas.

- surfacePointsAndGradients()

  Returns a dictionary that maps the surface atoms to a tuple containing three surface-related quantities: the exposed surface are, a list of points in the exposed surface, and a gradient vector pointing outward from the surface.

- findContacts()

  Returns a list of MMTK.MolecularSurface.Contact objects that describe atomic contacts between object1 and object2. A contact is defined as a pair of atoms whose distance is less than |contact_factor|*(r1+r2+|cutoff|) where r1 and r2 are the atomic van-der-Waals radii.