User Manual
Yammp

Yammp is a batch-oriented program and a module of the Yup package. It is designed for computationally intensive simulations and as such does not have many interactive features.

This name refers to two different objects. The yammp module (all lower-case) is a component of the Yup package. This module is used by the YammpScripter application. You can access this module directly if you wish, by direct scripting. For more information on scripting see the YammpScript item of the Technical Documentation. The Yammp program (capitalized) is a small script that imports the yammp module for you and is a more convenient access point. You can set up a simulation by using YammpScripter (see the Scripter item in this manual) to generate a script. There is no need for direct scripting unless you want very fine control over your calculation.

Input

There are two input files: a descriptor file and an archive file. Both are binary files. The descriptor contains the parameters of the force field. The archive file contains one or more records containing coordinates, velocities or other vectors. One coordinate set will be read from the archive file which will be used as a starting conformation for the simulation. The last record of the archive file will be used unless you specify a different record number.

It is possible to create a descriptor by hand but Taro offers easier and better ways to do this. Taro can also generate simple starting conformations or convert a PDB file to an archive file.

Calculations

The potential energy function is the central equation in Yammp. It is specified by parameters that are read from the descriptor file. See the Energy item in the Technical Documentation for details.

Yammp provides three main molecular mechanics methods: the Metropolis Monte Carlo method, three varieties of Energy Minimizers and two Molecular Dynamics methods. Two of the energy minimizers can be customized with one of three linesearch methods. You can use any or all of these methods in any order and in any proportion. For more on methods see the Methods item in the Technical Documentation.

The usual approach is to modify a method to change the settings for your particular simulation and then perform the simulation.

The energy minimizers are used to obtain low energy structures. (That is, low potential or internal energies not free energies.) Starting conformations that are far from the optimum geometry must be cleaned up and energy minimization methods can help. Even then, for very poor structures you may have to use a very conservative energy minimization method like Steepest Descent. This is a safe method but it is non-convergent. A method with better convergence is CGPR but this method is not stable with poor conformations.

Molecular Dynamics methods are used to generate trajectories, to study the dynamic behavior of molecules. Starting structures must be close to the energy minimum; energy minimization can be used to achieve this. The system must also be brought up to the simulation temperature gradually. The Berendsen heat bath is a good way to do this.

Yammp implements a simple Monte Carlo method that moves one particle at a time. A Monte Carlo step or sweep consists of as many trial moves as the number of atoms in the system. The atoms are picked at random so not all atoms are moved in each sweep but with a large number of sweeps all atoms will be moved at some point. The trial moves are typically of a magnitude so that they pass and fail with equal chances, i.e., an acceptance rate of 50%. It is efficient as far as particle-based methods go but it is not well suited for conformation sampling. However, there are two good uses of Monte Carlo. First, as a method of last resort for energy minimization. A very poor conformation can be put through a suitable number of Monte Carlo sweeps. If the system cannot be minimized after extensive treatment with the Monte Carlo method, the system is too large or the potential energy description is defective or the starting conformation is much too far from the optimum. A second use for Monte Carlo is to prepare a molecule for molecular dynamics. A molecule can be plunged into a heat bath using Monte Carlo without observing the usual precautions necessary with molecular dynamics (step size and temperature gradient). A disadvantage though is that this method does not generate a corresponding set of velocities.

A simulation may therefore require more than a single application of a single method. Some calculation sequences are carried out many times with different systems. Such sequences can be packaged as modules. See the YammpScripter item of the Technical Documentation for examples.

Output

The output consists of reports that appear in two streams. The kinetic energy and the components of the potential energy are written to the standard output stream. Information and warning messages are written to the standard error stream. Normally, the two output streams are written to the same device, the screen or a file. You can separate the two streams if you like using file redirection. This is a shell capability so you need to consult the documentation for your shell.

You can save new conformations (and velocities) at nearly any point in your simulation with an explicit command. You can also set an interval for each molecular mechanics method at which new conformations (and velocities) is written to the archive file. The conformations are appended to the archive file specified as input archive file. You can also name a new archive file to be used for this purpose. If you name a new archive file without specifying the record number, it is assumed that your starting conformation will be the first record (instead of the last) of the input archive.


Manual
Introduction
Simplified RNA
Simplified DNA
Emmental
Virus Packing
Yup.scx Yup.vlat

Home
Information
News
User
Technical
Programmer
iYup
Download
Showcase
ETC