# Purpose

Molecular dynamics (MD) studies of biological macromolecules (such as proteins or DNA) require a large amount of computations, mainly due to the large number of atoms (typically several thousands) such molecules consist of. Even when using supercomputers, this computational complexity limits such simulations to very short time scales, typically a few nanoseconds.

Furthermore, just considering the macromolecule of interest is not enough, for the physiological environment of the molecule (e.g., for globular proteins, water solvent and salt ions) strongly interacts with the dissolved macromolecule. Therefore, also part of that environment has to be included within the simulation system, which then usually contains several tens of thousands of atoms [1,2]. Obviously, one wishes to include only as many solvent molecules within the simulation system as really necessary, while keeping the influence of the (artificial) system boundary (the surface of the solvent) onto the dissolved macromolecule as small as possible. `SOLVATE` serves this purpose.

`SOLVATE` is a program to construct an atomic model of a solvent environment for a given atomic macromolecule model (solute). Its main feature is that it can create irregularly-shaped solvent volumes specifically adapted to the (mostly also irregular) shape of the solute. As a result, the number of atoms that have to be considered in the MD-simulation is significantly reduced in comparison to the usual box- or sphere-shaped volumes, so that the simulations run considerably faster.

`SOLVATE` accepts pdb-files (Brookhaven Data Bank/X-PLOR format) of the solute as input; the output is a pdb-file of the solute plus a number of water molecules and, optionally, sodium and chloride ions placed in accordance with a Debye-Hückel-distribution. To generate ions, an X-PLOR protein structure (psf-)file of the solute (which contains the partial charges of the solute atoms) is required in addition to the pdb-file. An X-PLOR-script to create a protein structure file of the solute/water/ion-system can be generated. Note that the output structure is not equilibrated, since this can be done with the usual programs, e.g., CHARMm [3], X-PLOR [4], or EGO [5].

Clearly, just creating solute-adapted solvent volumes is not an art --- it can easily be done, e.g., with the `around`-function of X-PLOR. However, just to have such a solvent/solute-system is not enough for an MD-simulation. Rather, water molecules near the surface of the solvent volume must be subjected to `boundary-forces' in order to prevent these water molecules from evaporating into the vacuum. Ideally, these forces should substitute all those forces (e.g., electrostatic interactions and van der Waals contacts), which would originate from solvent molecules outside the simulation system. The socalled `stochastic boundary'-approach [6,7] provides such forces in a simple approximation by use of a suitable boundary potential.

Such boundary potentials are generally functions of the distance between the particle, onto which the force acts, and the boundary of the simulation system. Hence, for an efficient computation of the forces derived from this potential, it should be of simple analytic form. This is the reason why, typically, box- or sphere-shaped solvent-volumes are used.

`SOLVATE` provides an (almost) arbitrarily-shaped solvent volume and a simple analytic description of its boundary using few multivariate gaussian functions. That choice of description enables efficient computation of distances between water molecules and the boundary during subsequent MD-simulations. The necessary algorithms will soon be implemented into the MD-program EGO, but they can also easily be implemented within CHARMm or X-PLOR.