FMD

Fast Molecular Dynamics

A User's Guide

For FMD Release 1.11.5

17 March 2000

Document Maintained by James A. Lupo


Since fmd is derived from namd, Version 1.4, the following holds:

The FMD code is being developed under the CCM-4 CHSSI effort of the DOD High Performance Computing Program. This effort supports the Computational Chemistry and Materials Science (CCM) computational technology area. A partial list of Participants in the effort include: Dr. Ruth Pachter, Dr. James A. Lupo, Dr. Alan M. Mckenney, Dr. Soumya Patnaik and Dr. Zhiqiang Wang (AFRL/MLPJ); Dr. Mark Gordon (Iowa State University); Dr. Lennart Johnsson (University of Houston); Dr. Sarm Krimm (University of Michigan); Dr. Betsy Rice and William Mattson (ARL); and Dr. Greg Voth (University of Utah).

FMD is derived, in part, from the source code of the NAMD program, and is redistributed under the modification and redistribution terms of the NAMD license agreement. The NAMD license agreement states:

Copyright (C) 1995-96 The Board of Trustees of the University of Illinois. All rights reserved.

NOTICE: The program NAMD is *not* in the public domain. However, it is freely available without fee for education, research, and non-profit purposes. By obtaining copies of this and other files that comprise the NAMD program, you, the Licensee, agree to abide by the following conditions and understandings with respect to the copyrighted software:

  1. The software is copyrighted in the name of the Board of Trustees of the University of Illinois (UI), and ownership of the software remains with the UI.
  2. Permission to use and modify this software and its documentation is hereby granted to Licensee. In addition, permission to copy this work and any derived works is granted to Licensee, provided that
    1. the copyright notice and this permission notice appear on all such copies,
    2. that proper credit be given by citing:

      M. Nelson, W. Humphrey, A. Gursoy, A. Dalke, L. Kale, R. Skeel and K. Schulten, Intl. J. Supercomput. Applics. High Performance Computing, Vol 10, #4, pp.251-268, 1996.

    3. that no charge be made for such copies,
    4. that programs derived from NAMD be given a different name.
  3. Some of the code and executables used by NAMD may have different restrictions.
  4. Licensee may not use the name, logo, or any other symbol of the UI nor the names of any of its employees nor any adaptation thereof in advertizing or publicity pertaining to the software without specific prior written approval of the UI.
  5. THE UI MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THE SOFTWARE FOR ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY.
  6. The UI shall not be liable for any damages suffered by Licensee from the use of this software.

The fast fourier transform routines, comprising the source code contained in the FFT subdirectory, are from the double precision version of FFTPack as distributed via Netlib. It is apparently Version 4, dated 1985, as authored by Paul N. Swarztrauber of the National Center for Atmospheric Research, Boulder, Colorado. NCAR is sponsored by the National Science Foundation. No restrictions were found in the the Netlib distributions of either the single or double precision versions.

This should be considered a working document, and as such should be associated with the specific version of FMD it is released with. It need not describe depricated features in previous versions, nor correctly describe those in future versions. The information contained within represents only part of the overall FMD effort. It has been adapted, in part, from the documentation released with NAMD 1.4.

Introduction

fmd is a parallel molecular dynamics program designed for high-performance simulations in chemistry and materials science. This user guide describes how to use fmd and its features. Chapter 2 gives a brief overview of fmd and molecular dynamics in general. Chapter 3 covers the actual running of fmd. It describes the input and output file formats. The available control parameters are also presented here. Chapter 4 provides an example of running fmd on an IBM SP2 massively parallel processor system. Installation of fmd is described in Chapter 5. References and Additional Readings contain a list of primary reference materials that may be of interest.

Overview

Molecular dynamics (MD) simulations compute atomic trajectories by solving the equations of motion numerically using an empirical force field. The force field, currently CHARMm (see section References), defines the interactions between atoms in terms of bonds, bond angles, dihedral angles, improper dihedral angles, van der Waals, and electrostatic interactions. These interactions approximate the actual interactions between two atoms. In addition to running on scalable machines, some of the other features of the current version of fmd include:

Execution

fmd was developed to be compatible with several existing molecular dynamics packages, especially the X-PLOR and CHARMM programs. To achieve this compatibility, the set of data files which fmd uses to define a molecular structure are identical to those used by xplor. These data files are very similar to, but not quite fully compatible with, those used by the charmm program. Moving between the xplor and charmm formats is fairly straight forward, and several tools exist to aid in that process. One particular data file is read before any other and will be referred to the input file. This file contains the user specifiable execution settings for various parameters particular to a given fmd run. A detailed description of the fmd data file formats follows below.

In addition, the output file formats used by fmd were chosen to be compatible with namd, xplor and charmm. In this way, output from fmd can be analyzed by namd, xplor, charmm, or any of a variety of other tools designed to used these formats. Details of the output file formats also follow below.

Molecular Data File Formats

PDB Files

Atomic coordinates and velocities are stored in Brookhaven Protein Data Bank (PDB) format. This is the standard format used by many other programs for coordinate data, including xplor and charmm. PDB files use a well defined fixed line format, a full description of which can be obtained via anonymous ftp from host ftp.pdb.bnl.gov as a compressed file, /pub/format.desc.ps.Z, or as a plain text file, /pub/format.desc.txt. A "velocity" PDB file simply replaces each atom's spatial coordinate components with it's velocity components.

Since the formal PDB file format allows only 5 digits to represent the atom sequence numbers, a custom variation is supported by fmd which allows it to handle more atoms. FMD will read PDB (and PSF) files using base-64 notation for the atom sequence numbers and residue sequence numbers. The character set used is: "0-9A-Za-z@#". This allows over 1 billion atoms to be specified in five characters, and over 16 million residue sequences in 4 characters.

PDB files using the base-64 notation indicate the fact with a special KEYWRD record:

KEYWRD....BASE64

where the "...." are replaced by four spaces. Similarily, the PSF file uses a special title line containing BASE64 anywhere on the line. PDB files generated by fmd will use this base-64 format if the atom count is over 99,999.

HDF files

Atomic coordinates and velocities can be stored in NCSA HDF formatted files. This format has the advantage of being architecture independent, so fmd can read and write such files on any machine which supports the HDF library. Details of the file format and its supporting libraries can be found at NCSA.

All HDF files generated by fmd have the same structure. There contain nine file (global) attributes which serve as a file "header". Each data set written to the file has a name and one attribute. The data sets are written in HDF "float64" format, which is double precision on most machines. The file attributes are:

title
String containing the main title for model run.
title2
String containing the subtitle for the model run.
program
String containing "FMD".
revision_id
The release number of the FMD version which generated the data.
revision_date
The release date of the FMD version which generated the data.
creator
The user name of the person generating the data.
date
The date the data was generated.
type
The general data type: output, restart or trajectory.
class
The specific type of data: coordinates, velocities, all-forces, and short- or long-range electrostatic forces.

The data set names take the form "timestep nnn", and the attribute associated with each is named "elapsed_time". The attribute contains the simulation time of the data in "float64" (double precision) format. The source code for the hdfdump utility provides a good example of how the data is read from the HDF files.

PSF Files

The protein structure files (PSF) used by fmd follow the same format as used by xplor. They can be created by hand, in a tedious process, or can be created by other chemical design tools. A simple translator, for instance, can convert PSF files generated by the MSI Quanta commercial program's charmm into fmd format. The file is a text file separated by keywords into several sections. The following describes the sections in the order the must appear. For compatibility with CHARMM and XPLOR, the file should be fixed-format. Formats are shown using C format specifiers. A sample PSF file can be found in section Sample PSF File.

PSF
Usage: PSF
Format: (%s)
Description: PSF must occur as the first and only word on the first non-blank line in the file. It should begin in column 1.
NTITLE
Usage: n !NTITLE: Title
Format: (%8d %s %s)
Description: The number "n" specifies how many non-blank remark lines follow. Each remark line must be a total of 80 characters or less. fmd supports a custom extension to the PSF format. If the keyword BASE64 appears in a title line, fmd with treat all numbers as base-64 numbers. See the brief discussion under the PDB file format above. Additional details are provided in the base64.[ch] source files.
NATOM
Usage: n !NATOM:
Format: (%8d %s)
Description: The number "n" specifies how many atoms are in the model. It is followed by that number of atom records in the format:
Cols
Content
1-8
Atom sequence number (%8d)
10-13
Segment name (%4s)
15-18
Residue sequence number (%4d)
20-23
Residue name (%4s)
25-28
Atom name (%4s)
30-33
Atom type (%4s)
36-48
Partial charge (%13.10f)
50-62
Mass (%13.10e)
64-70
(Unused, 0 in column 70)
NBONDS
Usage: n !NBONDS:
Format: (%8d %s)
Description: The number "n" specifies the number of pairwise atom bonds which follow. Up to 4 pairs are listed on the following lines until all pairs are listed. Atoms in the pairs are specified by listing their sequence numbers in "%8d%8d" format.
NTHETA
Usage: n !NTHETA:
Format: (%8d %s)
Description: The number "n" specifies the number of bond angle triplets which follow. Up to 3 triplets are listed on a line until all triplets are listed. Atoms in the triplets are specified by listing their sequence numbers, with the atom at the angle apex second, using the format "%8d%8d%8d".
NPHI
Usage: n !NPHI:
Format: (%8d %s)
Description: The number "n" specifies the number of dihedral angles which follow. Up to 2 quadruplets are listed on a line until all quadruplets are listed. Atoms in the quadruples are specified in bond order using their sequence numbers in the format "%8d%8d%8d%8d".
NIMPHI
Usage: n !NIMPHI:
Format: (%8d %s)
Description: The number "n" specifies the number of improper dihedral angles following the same format as the dihedral section above.
NDON
Usage: n !NDON:
Format: (%8d %s)
Description: The number "n" specifies the number of hydrogen donors which follow. Up to 4 pairs of atoms are listed on a line until all donors have been specified using the format "%8d%8d". This data is presently IGNORED by fmd.
NACC
Usage: n !NACC:
Format: (%8d %s)
Description: The number "n" specifies the number of hydrogen acceptors which follow. Up to 4 pairs of atoms are listed on a line until all donors have been specified using the format "%8d%8d". This data is presently IGNORED by fmd.
NNB
Usage: n !NNB:
Format: (%8d %s)
Description: The first lines that follow contain "n" atom sequence numbers which are excluded. Following this is a list that is NATOMS long which indexes into the first list and describes the exclusion list for the atoms of that sequence number. The data line format is "%8d%8d%8d%8d%8d%8d%8d%8d". If the index of atom 1 into the exclusion list is 0, atom 1 has no exclusions. If the index of atom n, n > than NNB, is equal to NNB, then that atom has no exclusion list. Finally, for atoms < NNB, the index into the exclusion list marks the start of the list for the atom, and ends when the exclusion list index equals the atom list index. For example, if we have 5 atoms in out model and 3 atoms in the exclusion list, our NNB section might look like:
|>       3 !NNB:
|>       3       4       5
|>       0       1       3       3       3
Then atom 1 has no exclusions (its 0). Atom 2 indexes the first atom in the list and ends at the second, so it has atoms 3 and 4 in its exclusion list. Atom 3 indexes the third atom in the list, and ends with the third, so has only atom 4 in its list. Lastly, the indexes specified for atoms 4 and 5 equal NNB, and since 4 and 5 are both > NNB, they have no exclusions. Thus, of the five atoms, two have exclusions, three do not.
NGRP, NST
Usage: n m !NGRP, NST
Format: (%8d%8d %s %s)
Description: Contains a list of charge groups. This data is presently IGNORED as fmd does not support charge groups.

Parameter Files

fmd supports the CHARMM19 and CHARMM22 parameter files in the same format as used by X-PLOR. Every interaction and atom type which appears in the PSF file must be described in one or more of the entries in the parameter file. The details of the force field are found in the FMD Programmer's Guide. (Click here ...). Each line in a parameter must be blank or begin with a recognized keyword. Only the first four letters of these keywords are significant. They may be in upper or lower case, but are shown below in capital letters for emphasis. The format of each entry is expresses as a C format statement. A sample parameter file can be found in section Sample Parameter File.

!
REMARK
Usage: ! This is a comment
Format: (%s)
Description: Enters a remark into the parameter file. The line is ignored by fmd.
BOND
Usage: BOND type1 type2 forceconstant refdist
Format: (%s%8d%8d%13.10f%13.10f)
Description: A BOND statement specifies the interaction between two atoms using a force expression proportional to separation distance. Since BOND interactions are symmetric, one entry covers the two possible orderings of the atoms.
ANGLe
Usage: ANGLE type1 type2 type3 forceconstant refangle
or ANGLE type1 type2 type3 forceconst refangle UB const angle
Format: (%s%8d%8d%8d%13.10f%13.10f)
or (%s%8d%8d%8d%13.10f%13.10f UB %13.10f %13.10f)
Description: An ANGLE statement specifies the interaction between three atoms using a force expression proportional to angular displacement. Atom 2 is at the apex of the angle. Since the ANGLE interaction is symmetric about the apex, one entry covers the two possible orderings of the atoms.
DIHEdral
IMPRoper
Usage: DIHE typ1 typ2 typ3 typ4 forceconst periodicity phaseshift
or DIHE typ1 typ2 typ3 typ4 MULTIPLE= multi const period phase
const period phase
Format: (%s%8d%8d%8d%8d%13.10f%13.10f%13.10f)
or (%s%8d%8d%8d%8d MULTIPLE= %8d%13.10f%13.10f%13.10f)
(%13.10f%13.10f%13.10.f)
Description: Both the DIHEDRAL and IMPROPER statements specify interactions between four atoms using a force express proportional to the torsional angle displace about the axis defined by atoms 2 and 3. If the "MULTIPLE=" keyword is present, the statement is followed by "multi-1" entries giving the force constant, periodicity and and phase shift. Atom types may be expressed with wild cards ("X" or "*"). For example, "C*" represents any carbon atom type."
NONBonded
Usage: NONB atomtype sigma epsilon sigma14 epsilon14
Format: (%s%8d%13.10f%13.10f%13.10f%13.10f)
Description: A nonbonded entry is used to specify the coefficients for constructing the Van der Waals interaction coefficients with other atoms. The first two are for normal interactions, and the second two are for 1-4 interactions.
NBFIx
Usage: NBFI typ1 typ2 A B A14 B14
Format: (%s%8d%8d%13.10f%13.10f%13.10f%13.10f)
Description: NBFIX entries are used to specify explicit Van der Waals interaction coefficients, rather than computing them from the nonbonded parameters.

DCD Trajectory Files

fmd produces binary trajectory (DCD) files in the same format as xplor. The exact format of these files is quite ugly, as it reproduces the binary record format of unformatted FORTRAN files. Each such "record" begins with 4 bytes containing the integer value of the number of bytes in the following record. It ends with a record containing the same 4 bytes. The file can be broken into two parts, the header information at the beginning of the file, and the coordinate sets themselves. Here is the header:

BYTES TYPE CONTENT COMMENT
======= ======= ========= =============================
4 Int 84 Start of 84 byte record.
4 Char "CORD" Flag a coordinate record DCD file.
4 Int nnnn Number of coordinate sets in file.
4 Int nnnn Starting time step number.
4 Int nnnn Time steps between coordinate steps.
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
8 Double t.ssss Size of a time step.
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 0 (Unused field).
4 Int 84 End of 84 byte record.
4 Int 164 Start of 164 byte record.
4 Int 2 Number of 80 byte records to follow.
80 Char "string" 80 byte comment string.
80 Char "string" 80 byte comment string.
4 Int 164 End of 164 byte record.
4 Int 4 Beginning of 4 byte record.
4 Int nnnn Number of atoms.
4 Int 4 End of 4 byte record.

Here is the format of the coordinate sets:

BYTES TYPE CONTENT COMMENT
======= ======= ========= =============================
4 Int 4*n Beginning of record, 4*Natom bytes long.
4*n Real x.xxx List of Natom X coordinate values.
4 Int 4*n End of record, 4*Natom bytes long.
4 Int 4*n Beginning of record, 4*Natom bytes long.
4*n Real x.xxx List of Natom Y coordinate values.
4 Int 4*n End of record, 4*Natom bytes long.
4 Int 4*n Beginning of record, 4*Natom bytes long.
4*n Real x.xxx List of Natom Z coordinate values.
4 Int 4*n End of record, 4*Natom bytes long.

User Input File Format

Note: careful reading of the FMD Programmer's Guide, (Click here ...), and source code, will convince you that the velocities seen by the majority of the code are actually 1 timestep behind that of the coordinates. This is important when a sequence of runs is planned, since the velocities are treated differently at the beginning of the first run of the sequence. If an initial temperature is specified, the code assumes the first time step is an initialization step. If initial velocities are specified, the code assumes the initial time step is a restart step. All other time steps are considered to be continuations of a run.

fmd has a wide variety of parameters that the user can set at startup to control fmd's behavior. These options and variable settings determine the exact behavior of fmd, which features will be active or inactive, how long the simulation will run, etc. This section describes syntax expected, and what settings are available.

User Input File Syntax

Each line in the user input file consists of a keyword identifying the option being specified, and a value which is to be assigned to the option. The line can take one of two forms. The keyword and value can be separated by only white-space (ie. spaces and/or tabs), such as:

    keyword    value

or they can be separated by an equal sign and white-space, such as:

    keyword =  value

Blank lines in the file are ignored. Comments are prefaced with a pound sign (#), and may appear at the end of a line with a keyword- value pair:

    foo =      value1
    bar =      value2  # Here is a comment
    fie =      value3

    # Skip comment lines like this one or blank lines

It is important to note that keywords are case insensitive. Hence, entries such as coorTrjFile and coortrjfile are recognized as the same keyword. However, values ARE case sensitive. This is particularly important when you specify file names, as they must be written exactly as you expect to find them. There is one exception. The toggle values of off and on may be written with any capitalization desired.

Required User Parameters

This sections describes those options which a user is required to set. They define the most basic properties of the simulation to be performed.

NumSteps
Usage: Number of time steps
Acceptable Values: Any positive integer
Description: The number of simulation time steps that should be performed. The total amount of simulation time is numsteps x timestep.
Coordinates
Usage: name of PDB coordinate input file
Acceptable Values: Any legal UNIX filename
Description: The name of a file from which the initial atomic coordinates and data will be read. This can be an absolute path name, or a path relative to the directory from which fmd is executed. Only one file name may be specified.
Structure
Usage: name of PSF molecular structure file
Acceptable Values: Any legal UNIX filename
Description: The name of the PSF file from which the molecular structure will be read. This can be an absolute path name, or a path relative to the directory from which fmd is executed. Only one file name may be specified.
Parameters
Usage: name of force field parameter file
Acceptable Values: Any legal UNIX filename
Description: The name of a file from which the force field parameters will be read. CHARMM19 or CHARMM22 parameters are currently accepted. This can be an absolute path name, or a path relative to the directory from which fmd is executed. Only one file name may be specified per keyword, but multiple parameters keywords may be used to specify several different parameter files, if required.
     parameters  params1
     parameters  params2
     parameters  params3
The files will be read in the order they appear, and warning messages will be printed if duplicated values are found. The last value read is the the value used, so the order in which the files are specified could be important.
Cutoff
Usage: Cutoff, or local, interaction distance
Acceptable Values: float greater than 0, in units of @AA{}
Description: If FMM3D is used, this option defines the local interaction distances. Otherwise, this option specifies the distance at which electrostatic interactions are truncated.
Exclude
Usage: neighbor exclusion policy to use
Acceptable Values: none, 1-2, 1-3, 1-4, or scaled1-4
Description: Specifies which pairs of bonded atoms should be excluded from non-bonded interactions. With the value of none, no bonded pairs of atoms will be excluded. With the value 1-2, all atoms pairs that are directly connected via a linear bond will be excluded. With a value of 1-3, all 1-2 pairs will be excluded, along with all pairs of atoms that are bonded to a common third atom (ie. if atom A is bonded to atom B, and atom B is bonded to atom C, then the atom pair A-C would be excluded). With a value of 1-4, all 1-3 pairs will be excluded along with all pairs connected by a set of two bonds (ie. if atom A is bonded to atom B, and atom B is bonded to atom C, and atom C is bonded to atom D, then the atom pair A-D would be excluded). With a value of scaled1-4, all 1-3 pairs are excluded and all pairs that match the 1-4 criteria are modified. The electrostatic interactions for such pairs are scaled by the factor 1-4scaling. The van der Waals interactions are modified by using the special 1-4 parameters defined in the parameter files.
OutputName
Usage: base name assigned to the output files
Acceptable Values: Any legal UNIX file name prefix
Description: At the end of every simulation, fmd will write out 2 PDB files, one containing the final coordinates of all atoms, and the other containing the final velocities of all atoms. This option specifies the file name prefix that will be used to create the names of the two files. .coor will be appended to the prefix to create the name of the coordinate file, and .vel will be append to create the name of the velocity file. Thus, if one has:
     OutputName = /tmp/my_output
then the coordinate file will be named /tmp/my_output.coor and the velocity file will be named /tmp/my_output.vel. The format of the files may be set by outputformat, as described below.

Basic User Parameters

These are parameters and options that are not required, but will almost always be specified. These, along with the required options of the previous section, form the fundamental options for a simulation.

InitCoordsFile
Usage: Specifies initial coordinates.
Acceptable Values: any UNIX file name.
Default Value: (none)
Description: Specifies a binary or HDF coordinates data file which will override the coordinates found in the "coordinates" PDB file. The acceptable formats are binary, or HDF. If initCoordsFile is specified, coordinates must also be specified.
InitCoordsFormat
Usage: Specify format of the coordinates input file.
Acceptable Values: pdb, bin or hdf
Default Value: bin
Description: Specifies the format of a coordinates data file which will override the coordinates found in the "coordinates" PDB file. The acceptable formats are binary, or HDF.
InitCoordsDataset
Usage: Select HDF dataset from coordinates input file.
Acceptable Values: int >= 0
Default Value: 0
Description: Specifies which dataset should be read from an HDF format initCoordsFile. It defaults to 0. The data is checked to make sure coordinate data is being read. The setting is ignored if binary format is being used.
Title
Usage: Title for job
Acceptable Value: any printable character string
Default Value: none
Description: The string specified here will appear in the printout and in several files, such as the "dcd" and "hdf" format trajectory files.
Title2
Usage: Subtitle for job
Acceptable Value: any printable character string
Default Value: none
Description: The string specified here will appear in the printout and in several files, such as the "dcd" and "hdf" format trajectory files.
TimeStep
Usage: size of the time steps
Acceptable Value: float greater than 0 in units of femto-seconds
Default Value: 1.0 fs
Description: Size of time step to use when integrating each step of the simulation.
Temperature
Usage: initial temperature of the model
Acceptable Value: float greater than 0 in units of degrees Kelvin
Description: Sets the initial temperature for the model. Using this option will generate a random velocity distribution for the initial velocities for all atoms approximating the desired temperature. One of temperature or velocities must be defined to set initial velocities for the model. The options can not be used together. NOTE: if this file represents a continuation of a previous run, FirstTimestep must be set to something other than 0!
OutputFormat
Usage: Specify the format for the output files.
Acceptable Values: pdb, bin or hdf
Default: pdb
Description: By default, the .coor and .vel files written for output (see the outputname keyword) are in PDB format. This keyword allows them to be written in binary or HDF format. Both save space and preserve accuracy. The HDF format is machine independent.
Velocities
Usage: name of a file containing initial velocities for the run.
Acceptable Value: Any legal UNIX filename
Description: A file that contains the initial velocities for all atoms in the model. This is typically a restart file or final velocity file written by fmd during a previous simulation run. One of temperature or velocities must be defined to set initial velocities for the model. The options can not be used together.
VelocitiesFormat
Usage: Specify format of the velocities input file.
Acceptable Value: pdb, bin or hdf
Default Value: pdb
Description: This specifies the format of the velocities file. The bin and hdf formats both save space and preserve accuracy. The hdf format has the advantage of being machine independent.
VelocitiesDataset
Usage: Select HDF dataset from velocities input file.
Acceptable Values: int >= 0
Default Value: 0
Description: Specifies which dataset should be read from an HDF format velocitiesFile. It defaults to 0. The data is checked to make sure velocity data is being read. The setting is ignored if binary format is being used.
COMmotion
Usage: flag to allow center-of-mass motion
Acceptable Value: yes or no
Default Value: no
Description: This option determines if center-of-mass motion will be allowed or removed. If set to yes, center-of-mass motions will be allowed (ie. ignored). If set to no, center-of-mass motions will not be allowed. Once initial velocities are assigned, they will be adjusted so as to remove any center-of-mass rotational and translational motions.
RestartName
Usage: file prefix for restart file names
Acceptable Value: Any legal UNIX file name prefix
Description: Defines a file name prefix used to construct the names of velocity and coordinate PDB restart files. Names are built in the same way as for outputname. That is, .vel is appended to the prefix to create the velocity file name, and .coord is appended to create the coordinate file name. These files specified here differ from outputname files only in the number of times they are written during a simulation. outputname are written at the end of a simulation, restartname are written every restartfreq time step during the simulation. The final restartname files may or may not equal the outputname files. The files may be written in binary or HDF format if restartformat is set, as described below. If restartname is specified, then restartfreq must also be specified.
RestartFreq
Usage: frequency at which restart files are generated
Acceptable Value: integer greater than 0
Description: Specifies the frequency, in time steps, with which restart files are written. In other words, the restart files are rewritten every restartfreq time steps. If restartfreq is specified, then restartname must also be specified.
RestartFormat
Usage: Flag to specify restart file format.
Acceptable Value: pdb, bin or hdf
Default Value: pdb
Description: Specifies if the restart files should be written in PDB, binary or HDF (respectively) format. Both bin and hdf formats preserve accuracy and conserve space. In addition, the HDF format is machine independent.
Dielectric
Usage: dielectric constant for the model.
Acceptable Value: float greater than or equal to 1.0
Default Value: 1.0
Description: Sets the dielectric constant for the model. A value of 1.0 implies no modification to the electrostatic interactions. Any large value was cause a subsequent decrease in the electrostatic forces, scaling as 1/dielectric.
1-4Scaling
Usage: scaling factor for 1-4 interactions
Acceptable Value: float between 0.0 and 1.0
Default Value: 1.0
Description: Sets the scaling factor used for 1-4 interactions. This factor is only used when the exclude keyword is set to scaled1-4. In that case, this factor is used to modify the electrostatic interactions of 1-4 atom pairs. If the exclude parameter is set to anything but scaled1-4, this parameter is ignored.
CoorTrjFile
Usage: name of the coordinate trajectory file
Acceptable Value: Any legal UNIX file name
Description: Sets the name of the coordinate trajectory file. This a trajectory of all atom coordinates in one of two formats: binary DCD, as used by xplor; and NCSA HDF format. If coorTrjFile is specified, the coorTrjFreq must also be defined.
CoorTrjFreq
Usage: frequency in time steps for writting data to coordinate trajectory file
Acceptable Value: Integer great than 0
Description: Frequency, in units of time steps, at which data is written to the coordinate trajectory file. In other words, every coorTrjFreq time step, the data is written. If coorTrjFreq is specified, then coorTrjFile must also be defined.
CoorTrjFormat
Usage: specifies format of the coordinate trajectory file.
Acceptable: "dcd" or "hdf"
Default: "dcd"
Description: The coordinate trajectory file can be written in X-Plor DCD format, or, if supported locally, the NCSA HDF format.
EnergyTrjFile
Usage: name of the energy trajectory file
Acceptable Value: Any legal UNIX file name
Description: Sets the name of the energy trajectory file. This is a time step history of the same 11 energy values writting to the output file, but in NCSA HDF format (requires that HDF support be enabled). The energy trajectory file header attributes document the order in which the energies appear. These can be displayed with the hdfdump utility. If energyTrjFile is specified, then energyTrjFreq must also be defined.
EnergyTrjFreq
Usage: frequency in time steps for writting data to energy trajectory file
Acceptable Value: Integer great than 0
Description: Frequency, in units of time steps, at which data is written to the energy trajectory file. In other words, every energyTrjFreq time step, the data is written. If energyTrjFreq is specified, then energyTrjFile must also be defined.
VelTrjFile
Usage: name of the velocity trajectory file
Acceptable Value: Any legal UNIX file name
Description: Sets the name of the velocity trajectory file. This is a trajectory of all atom velocities is in one of two formats: binary DCD, as used by xplor; and NCSA HDF format. If velTrjFile is specified, then velTrjFreq must also be defined.
VelTrjFreq
Usage: frequency in time steps for writing data to the velocity trajectory file
Acceptable Value: Integer great than 0
Description: Frequency, in units of time steps, at which data is written to the velocity trajectory file. In other words, every velTrjFreq time step, the data is written. If velTrjFreq is specified, then velTrjFile must also be defined.
VelTrjFormat
Usage: specifies format of the velocity trajectory file.
Acceptable: "dcd" or "hdf"
Default: "dcd"
Description: The velocity trajectory file can be written in X-Plor DCD format, or, if supported locally, the NCSA HDF format.
CWD
Usage: current working directory
Acceptable Value: Any legal UNIX directory name
Description: Sets the default directory for input and output files. If a value is give, all filenames that do not begin with "/" are assumed to be in this directory. For example, if we have:
     OutputName = job1/run3
     RestartName = /tmp/run3
     CWD = /scr
then the coordinate files would become
     /scr/job1/run3.coord
     /tmp/run3.coord
If no CWD is specified, then the file paths are not modified.
Seed
Usage: random number seed
Acceptable Value: Integer greater than 0
Description: Number used to seed the random number generator. This can be used so that consecutive simulations produces the same results. If no value is specified, fmd will choose a pseudo-random value based on the current UNIX system clock. The random number seed will be output during the simulation startup so that its value is known and can be reused if desired. NOTE: If Langevin dynamics are used in a parallel simulation, (ie. a simulation run on more than one processor), using the same seed will not guarantee reproducible results, as processor clock times may differ slightly.
OutputEnergies
Usage: frequency, in time steps, at which energies are printed
Acceptable Value: Integer greater than 0
Default Value: 1
Description: Specifies how frequency the energy values are to be written to the output file. It is done every outputenergies time steps. The default setting of every time step may produce huge amounts of output during very long simulations.
FirstTimestep
Usage: starting time step value
Acceptable Value: Integer greater than or equal to 0
Default Value: 0
Description: Time step value for first time step. This value is typically used when a simulation is restarted from a previous one. Thus a starting time step can be specified so all the time steps in the simulation are sequential. In fact, this variable MUST be set to something other than 0 if one truly intends a continuation run. Otherwise, there will be a small glitch in the way the velocities in do_integration are set at the half timestep boundary.
Switching
Usage: flag to control switching/shifting functions
Acceptable Value: on or off
Default Value: off
Description: Determines how the van der Waals forces behave at the cutoff value. If switching is set to off, then a truncated cutoff is performed. If switching is set to on, then smoothing functions are applied to both the electrostatic and van der Waals forces. For a complete description of the non-bonded force parameters, see below. If switching is on, then switchdist must also be defined.
SwitchDist
Usage: distance at which switching occurs, in units of @AA{}.
Acceptable Value: float greater than 0.0 but less than cutoff
Description: Distance at which the switching function used for van der Waals forces should begin to take effect. This parameter only has meaning if switching is on. The value of switchdist must be less than or equal to the value of cutoff, since the switching function is only applied on the range from switchdist to cutoff.
PairListDist
Usage: maximum distance between atom pairs for inclusion in pair lists.
Acceptable Value: float greater than cutoff
Default Value: cutoff
Description: During each cycle, a pair list is created containing pairs of atoms for which electrostatics and van der Waals interactions will be calculated. This parameter is used when switching is set to on to specify the allowable distance between atoms for inclusion in the list. This is equivalent to the xplor cutnb parameter. If no atom moves more than pairlistdist-cutoff during one cycle, then there will be no jump in electrostatic or van der Waals energies when the next pair list is built. Since such a jump is unavoidable when truncation is used, this parameter may only be specified when switching is on.
StepsPerCycle
Usage: time steps per cycle
Acceptable Value: integer greater than 0
Default Value: 15
Description: Number of time steps in each cycle. Each cycle represents the number of time steps between pair list generation and atom reassignment. If full electrostatics are active, it is also the number of time steps between full electrostatic evaluation. While acceptable levels of accuracy are possible for values of 10 - 15, there is a price to pay in energy conservations. With a value of 10, total energy losses of up to 2.4\%/ns have been observed. A value of 4 reduces the drift to less than 0.4\%/ns, and a value of 2 yields a drift below 0.004\%/ns.
Margin
Usage: extra length in patch dimensions
Acceptable Value: float greater than 0.0, in units of @AA{}
Default Value: 1.0
Description: An internal tuning parameter used in determining the size of the cubes of space that fmd uses to partition the system. The value of this parameter will not change the physical results of the simulation at all. Unless you are motivated to get the very best possible performance, just leave this value at the default.
SnapshotFile
Usage: legal UNIX file name
Default Value: none
Description: Name of a trajectory file to hold coordinates output over a specified range of time steps. If specified, requires snapshotstart and snapshotstop.
SnapshotFormat
Usage: specifies format of the snapshot file.
Acceptable: "dcd" or "hdf"
Default: "dcd"
Description: The snapshot file can be written in X-Plor DCD format, or, if supported locally, the NCSA HDF format.
SnapshotStart
Usage: integer greater than 0
Default Value: none
Description: Specifies the first time step in a snapshot interval.
SnapshotStop
Usage: integer greater than 0
Default Value: none
Description: Specifies the last time step in a snapshot interval.
AllForceTrjFile
Usage: name of the all-force trajectory file
Acceptable Value: Any legal UNIX file name
Description: Sets the name to use for the all-force trajectory file. The file contains the composite force on all atom in one of two formats: binary DCD, as used by xplor; and NCSA HDF format. If allForceTrjName is specified, the allForceTrjFreq must also be defined.
AllForceTrjFreq
Usage: frequency, in time steps, for writting data to all-force trajectory file
Acceptable Value: Integer great than 0
Description: Frequency, in units of time steps, at which data is written to the all-force trajectory files. In other words, every allForceTrjFreq time step, the data is written. If allForceTrjFreq is specified, then allForceTrjFile must also be defined.
AllForceTrjFormat
Usage: specifies format of the all-force trajectory file.
Acceptable: "dcd" or "hdf"
Default: "dcd"
Description: The all-force trajectory file can be written in X-Plor DCD format, or, if supported locally, the NCSA HDF format.
ElectTrjName
Usage: name of the electrostatic force trajectory file
Acceptable Value: Any legal UNIX file name
Description: Sets the prefix for the name of the electrostatic trajectory files. The short range contributions will be in "name.s", and the long range components in "name.l". These are trajectories of all atom forces in one of two formats: binary DCD, as used by xplor; and NCSA HDF format. If electTrjName is specified, the electTrjFreq must also be defined.
ElectTrjFreq
Usage: frequency in time steps for writting data to electrostatic force trajectory file
Acceptable Value: Integer great than 0
Description: Frequency, in units of time steps, at which data is written to the electrostatic force trajectory files. In other words, every electTrjFreq time step, the data is written. If electTrjFreq is specified, then electTrjFile must also be defined.
ElectTrjFormat
Usage: specifies format of the electrostatic trajectory file.
Acceptable: "dcd" or "hdf"
Default: "dcd"
Description: The electrostatic force trajectory file can be written in X-Plor DCD format, or, if supported locally, the NCSA HDF format.
DiceFreq
Usage: specifies frequency, in time steps, for updating data for the DICE user interface.
Acceptable: Integer greater than 0
Default: 1
Description: Data sent to the DICE graphical user interface is updated independent of all other output frequencies. The value set here can be changed under DICE control.

FMM3D User Parameters

The FMM3D parameters control use of the three-dimensional fast multipole method for calculation of the long-range electrostatic interactions.

FMA
Usage: flag to turn FMM3D usage on or off
Acceptable Value: on or off
Default Value: off
Description: Specifies the use of the FMM3D algorithm for electrostatic force calculations if set to on, not used if set to off.
FMALevels
Usage: number of levels to use in the multipole expansions
Acceptable Value: integer greater than 0
Default Value: 3
Description: Sets the number of subdivisions applied to the spatial volume. Higher numbers result in smaller lowest order volumes, at the expense of greater energy requirements. This option is recognized only if fma is on.
FMAMp
Usage: number of multipole expansion terms
Acceptable Value: integer greater than 0
Default Value: 5
Description: Sets the number of terms to use in the multipole expansions. A higher number gives greater precision, but also requires more work. This option is recognized only if fma is on.
FMADegSep
Usage: set degree of separation for Anderson methods
Acceptable Value: integer equal to or greater than 0
Default Value: 0
Description: Specifies the degree of separation to use with the Anderson Non-Adaptive or Anderson Adaptive methods.
FMASuperNode
Usage: number of Anderson method super nodes
Acceptable Value: integer equal to or greater than 0
Default Value: 0
Description: Specifies the number of super nodes to use with the Anderson Non-Adaptive or Anderson Adaptive methods.

Harmonic Constraint Parameters

The harmonic constraint feature of fmd is controlled by its own set of input options. The implementation might be more correctly called harmonic restraints. It follows the implementation seen in xplor. Through the use of these options, harmonic restraints may be applied to any atom or set of atoms in a model.

Constraints
Usage: a flag to indicate if restraints are to be used.
Acceptable Value: on or off
Default Value: off
Description: The setting of this option turns application of harmonic restraints on or off based on the obvious value specified. If on is chosen, the parameters consref, conskfile, conskcol, and consexp will be recognized.
ConsExp
Usage: exponent value for the harmonic constraint energy function.
Acceptable Value: any positive, even integer
Default Value: 2
Description: Specifies the exponent to use for the harmonic constraint energy function. Only even values make any physical sense. Value is ignored if constraints is off.
ConsRef
Usage: name of PDB file containing constraint reference points.
Acceptable Value: Any legal UNIX file name.
Default Value: coordinates
Description: The atoms specified in this file will be constrained about the listed coordinates. If no keyword is specified and constraints is on, the same file used for coordinates will be read, indicating the atoms are to be constrained about their initial positions.
ConsKol
Usage: Column in PDB file containing constraint data
Acceptable Value: X, Y, Z, O, or B
Default Value: O
Description: Any floating point field in the PDB file may be used. That is, any of the X, Y, and Z coordinate, the occupancy (O) or the beta-coupling (B) column. A value of 0.0 for any atom means that it is not constrained. (Data format is \%6.2f. Occupancy data in columns 55-60, beta-coupling data in columns 61-66.)
ConsKfile
Usage: name of PDB file containing force constant values.
Acceptable Value: Any legal UNIX file name.
Default Value: coordinates
Description: Specifies the name of a PDB file containing the force constants for the harmonic constraints. If no value is given, than the coordinates PDB file is assumed to contain the constants.

Energy Minimization Parameters

fmd does have the ability to perform energy minimization using a steepest descent method. While this algorithm is not the fastest to converge, it is sufficient for most applications. There are only two parameters for minimization to set, one to specify that minimization is active, and the other to specify the maximum movement of any one atom.

Minimization
Usage: minimization control flag
Acceptable Value: on or off
Default Value: off
Description: Flag to turn minimization on or off in the obvious fashion.
MaximumMove
Usage: Maximum distant any one atom can move in a step
Acceptable Value: float distance greater than 0.0, in units of @AA{}
Default Value: 0.75*cutoff/stepspercycle
Description: Maximum distance that an atom can move during any single time step during minimization. This is to ensure that atoms do not go flying off into space during the first few time steps when the largest energy conflicts are resolved.

Langevin Dynamics Parameters

fmd is capable of performing Langevin dynamics, where additional damping and random forces are introduced into the model. This follows the same implementation as found in xplor.

Langevin
Usage: Control flag for Langevin dynamics
Acceptable Value: on or off
Default Value: off
Description: Activates Langevin dynamics in the obvious fashion. If set to on, then the parameter langevintemp must also be set.
LangevinTemp
Usage: temperature for the Langevin forces.
Acceptable Value: float greater than 0.0, in units of degrees Kelvin.
Description: Set the temperature to which atoms affected by Langevin dynamics will be set to. Through the addition of friction and random forces, this temperature will be roughly maintained across the atoms affected. This parameter is required if langevin is set to on.
LangevinFile
Usage: name of PDB file containing Langevin parameters
Acceptable Value: Any legal UNIX file name.
Default Value: coordinates
Description: Specifies the name of a PDB file containing the Langevin dynamics parameters. If no value is given, than the coordinates PDB file is assumed to contain the parameters.
LangevinCol
Usage: Column in PDB file containing Langevin parameters.
Acceptable Value: X, Y, Z, O, or B
Default Value: O
Description: Any floating point field in the PDB file may be used. That is, any of the X, Y, and Z coordinate, the occupancy (O) or the beta-coupling (B) column. A value of 0.0 for any atom means that it is not affected by the Langevin dynamics. (Data format is \%6.2f. Occupancy data in columns 55-60, beta-coupling data in columns 61-66.)

Temperature Rescaling Parameters

fmd allows equilibration of a system by means of temperature rescaling. Using this method, all of the velocities in the system are periodically rescaled so that the entire system is set to the desired temperature. The following parameters specify how often rescaling is to be performed, and the temperature to be used.

RescaleFreq
Usage: number of time steps between temperature rescaling.
Acceptable Value: integer greater than 0
Description: If non-zero, specifies the frequency, in time steps, at which the temperature will be rescaled. If specified, then specification of the parameter rescaletemp is required.
RescaleTemp
Usage: desired temperature for rescaling (equilibration).
Acceptable Value: float greater than 0.0, in units of degrees Kelvin.
Description: The temperature to use for rescaling. This, in effect, is a method of equilibrating the model at a desired temperature. The parameter is recognized only if rescalefreq is set.

Periodic Boundary Condition Parameters

The periodic boundary conditions (PBC) in fmd support periodicity in any combination of directions (ie. line, slab, or volume), and arbitrary triclinic unit cells. To use PBC's, the user must enable PBC support, specify four vectors which define the unit cell, and optionally, specify the periodicity type if something other than volume is desired. The current implementation does not support use of fast multipole methods, and uses the nearest neighbor approximation when computing non-bonded forces. The fast multipole method will eventually support infinite images.

UnitCell
Usage: Turns periodic boundary conditions on or off.
Acceptable Value: on or off.
Default Value: off.
Description: Enables or disables the use of periodic boundary conditions. If enabled, it will make sure the fast multipole methods are disabled.
UnitOrigin
Usage: Specifies origin of unit cell.
Acceptable Value: three floats.
Description: 0-origined vector defining the location of the vertex from which the axes of the cell originate.
UnitX
Usage: Specifies first basis vector of unit cell.
Acceptable Value: three floats.
Description: 0-origined vector defining the location of the end of one basis vector (or axis) of the unit cell. The basis vector runs from UnitOrig to UnitX.
UnitY
Usage: Specifies second basis vector of unit cell.
Acceptable Value: three floats.
Description: 0-origined vector defining the location of the end of one basis vector (or axis) of the unit cell. The basis vector runs from UnitOrig to UnitY.
UnitZ
Usage: Specifies third basis vector of unit cell.
Acceptable Value: three floats.
Description: 0-origined vector defining the location of the end of one basis vector (or axis) of the unit cell. The basis vector runs from UnitOrig to UnitZ.
Periodicity
Usage: Specify periodicity of unit cell.
Acceptable Value: x, y, z, xy, xz, yz, or xyz
Description: Specifies the dimensions in which the unit cell is periodic. It may be periodic along one dimension (x|y|z), two dimensions (xy|xz|yz) or all three dimensions (xyz). X, Y, and Z, of course, refer to the unit cell basis vectors, not the Cartesian basis.

Spherical Boundary Condition Parameters

The only boundary conditions currently supported by fmd are spherical harmonic boundary conditions. These boundary conditions can consist of a single potential, or a combination of two potentials active at the outer edge of the model.

SphericalBC
Usage: Control flag for spherical boundary conditions
Acceptable Value: on or off
Default Value: off
Description: Turns on spherical boundary conditions in the obvious fashion. If set, then sphericalbcr1 and sphericalbck1 must also be set.
SphericalBCr1
Usage: radius for the first boundary condition function
Acceptable Value: float greater than 0.0, in units of @AA{}
Description: Distance from the model's center of mass at which the first boundary condition takes effect.
SphericalBCk1
Usage: force constant for the first potential.
Acceptable Value: float not equal to 0.0
Description: Force constant to use for the first spherical harmonic potential. A positive value will force atoms back towards the center of mass, and a negative value will pull atoms away from the center of mass.
SpericalBCexp1
Usage: exponent for the first potential.
Acceptable Value: integer, greater than 0, and even.
Default Value: 2
Description: Exponent to use for the first boundary potential. The only likely values to use are 2 and 4.
SphericalBCr2
Usage: radius for the second boundary condition function
Acceptable Value: float greater than 0.0, in units of @AA{}
Description: Distance from the model's center of mass at which the second boundary condition takes effect.
SphericalBCk2
Usage: force constant for the second potential.
Acceptable Value: float not equal to 0.0
Description: Force constant to use for the second spherical harmonic potential. A positive value will force atoms back towards the center of mass, and a negative value will pull atoms away from the center of mass.
SphericalBCexp2
Usage: exponent for the second potential.
Acceptable Value: integer, greater than 0, and even.
Default Value: 2
Description: Exponent to use for the second boundary potential. The only likely values to use are 2 and 4.
SphericalBCCenter
Usage: x y z (coordinates).
Acceptable Value: 3 floats, any value.
Default Value: center of mass.
Description: Fix the center(s) for the spherical boundary conditions at a specific point. If not specified, the radii are computed from the center of mass of the molecule.

fmd supports the application of an external electric field. This, along with setting a dielectric constant for the model, allows for a wide variety of electrostatic conditions.

Applied Electric Field Parameters

EFieldOn
Usage: Control flag for applied electric field
Acceptable Value: on or off
Default Value: off
Description: Indicates that an external electric field is to be used. If set, then EField must also be set.
EField
Usage: Vector specifying an applied electric field
Acceptable Value: three floats, any value
Description: Specifies a three dimensional vector representing a constant applied electric field. Ignored if EFieldOn is not set "on", else it defaults to 0.

Equivalent X-PLOR Parameters

fmd was designed to provide many of the same molecular dynamics functions as found in xplor. Thus, there are many similarities between the types of parameters passed to both fmd and xplor. This table lists the fmd parameter and the equivalent xplor parameter.

Cutoff
xplor: CTOFNB
Description: When full electrostatics are not in use within fmd, these parameters have exactly the same meaning. It represents the distance at which the electrostatic and van der Waals forces are truncated. When full electrostatics are in use in fmd, the cutoff meaning still applies to the van der Waals forces. However, for electrostatics, it represents the local interaction distance within which interactions are directly calculated.
SwitchDist
xplor: CTONNB
Description: Distance at which van der Waals switching function becomes active.
PairListDist
xplor: CUTNb
Description: Distance between atom pairs which result in inclusion in pair lists.
1-4Scaling
xplor: E14Fac
Description: Scaling factor to apply to 1-4 pair electrostatic interactions.
Dielectric
xplor: EPS
Description: Dielectric constant to use.
Exclude
xplor: NBXMod
Description: These parameters both specify what atom pairs should be excluded from non-bonded interactions. The ability to ignore explicit exclusions is not present within fmd, thus only positive values of NBXMod have fmd equivalents. These equivalents are:
   NBXMod   exclude    Description
   ====================================================
     1        none     no atom pairs excluded
     2        1-2      only 1-2 atom pairs excluded
     3        1-3      1-2 and 1-3 pairs excluded
     4        1-4      1-2, 1-3, and 1-4 pairs excluded
     5      scaled1-4  1-2, 1-3, 1-4 pairs excluded,
                       1-4 pair interactions modified
Switching
xplor: SHIFt, VSWItch, TRUNcation
Description: fmd switching on is equivalent to xplor SHIFt and VSWItch on. Setting to off is equivalent to xplor option TRUNcation.
Temperature
xplor: FIRSttemp
Description: Specifies the initial temperature for random velocity distribution.
RescaleFreq
xplor: IEQFrq
Description: Number of time steps between velocity rescaling.
RescaleTemp
xplor: FINAltemp
Description: Temperature to use for rescaling (equilibration).
RestartName
xplor: SAVE
Description: File name for the restart files.
RestartFreq
xplor: ISVFrq
Description: Number of time steps between generation of restart files.
CoorTrjFile
xplor: TRAJectory
Description: File name for coordinate trajectory file.
CoorTrjFreq
xplor: NSAVC
Description: Number of time steps between writting of coordinates to trajectory file.
VelTrjFile
xplor: VELOcity
Description: Name of the velocity trajectory file.
VelTrjFreq
xplor: NSAVV
Description: Number of time steps between writing of velocities to velocity trajectory file.
NumSteps
xplor: NSTEp
Description: Number of time steps to perform.

Development Parameters

This is a collection of parameters that serve primarily as aids in code development, are experimental, or are of questionable usefulness. Use at your own risk if you find a need.

GlobalTest
Usage: Force global integration for testing purposes.
Acceptable Value: true or false.
Default Value: false
Description: Forces explicit global integration of all forces. This allows one to compare the "exact" solution with any of the approximate solutions.
LdbStrategy
Usage: Select load balancing strategy.
Acceptable Value: none, random, nolocality, bisection, or other.
Default Value: bisection
Description: Selects a method for load balancing. Execution statistics are gathered from the various nodes and used as input data to the chosen method.
LdbStepsPerCycle
Usage: Time steps between load reassignments.
Acceptable Value: Integer > 0
Description: Specifies the number of time steps between recalculation of the load balance. Must be specified if ldbstrategy is specified.
LdbSendStep
Usage: Time step in load balance cycle to set statistics.
Acceptable Value: ldbstepspercycle > Integer > 0
Description: Specifies the time step within a load balance cycle at which performance statistics are exchanged with other nodes. Must be specified if ldbstrategy is specified.
LongSplitting
Usage: Select long range force splitting method.
Acceptable Value: sharp, xplor, or c1
Default Value: sharp
Description: Selects from among three types of long range force splitting.
MTSAlgorithm
Usage: Select multiple time step algorithm.
Acceptable Value: naive, verleti, or verletx
Default Value: naive
Description: Selects among several methods for time step splitting.
PLMmarginCheck
Usage: Toggles testing of pairlist margins.
Acceptable Value: on or off.
Default: off.
Description: Performs extra calculations to see if any atom moves outside of the region specified when the pairlist was created. This can be a test of appropriate sized volumes or time step.
TCouple
Usage: Toggles usage of a temperature bath.
Acceptable Value: true or false.
Default Value: false.
Description: Specifies that the system should be coupled to an external temperature bath.
TCoupleTemp
Usage: Sets temperature of external bath.
Acceptable Value: Float > 0.0 in units of degrees Kelvin.
Description: Specifies the temperature of the external bath. This must be specified if tcouple specified as true.
TCoupleFile
Usage: Name of PDB format file with temperature coupling terms.
Acceptable Value: Any UNIX file name.
Description: Provides the name of a file, in ASCII PDB format, which contains the couple terms describing the external temperature bath. This must be specified if tcouple is true.
TCoupleCol
Usage: Column in PDB file containing bath coupling parameter.
Acceptable Value: X, Y, Z, O, or B
Default Value: O
Description: Any floating point field in the PDB file may be used. That is, any of the X, Y, and Z coordinate, the occupancy (O) or the beta-coupling (B) column. This must be specified if tcouple is true. (Data format is \%6.2f. Occupancy data in columns 55-60, beta-coupling data in columns 61-66.)
Dihedral
Usage: Toggle to control dihedral dynamics.
Acceptable Value: true or false
Default Value: false
Description: Enables dihedral angle dynamics. It sets up hard distance constraints based on biological dihedral structures.
Cold
Usage: Toggle to control Langevin dynamics with dihedral dynamics.
Acceptable Value: true or false
Default Value: false
Description: Enables the performance of over-damped Langevin dynamics in conjunction with the dihedral dynamics. Is recognized only if dihedral is true.
ColdTemp
Usage: Temperature for Langevin dynamics
Acceptable Value: Float > 0.0 in degrees Kelvin.
Description: Specifies the temperature for the Langevin dynamics used in conjunction with the dihedral angle dynamics. Must be specified if cold and dihedral are true.
ColdRate
Usage: Damping rate for Langevin dynamics
Acceptable Value: Float > 0.0
Default Value: 3,000.0
Description: Specifies the damping factor to be used with the dihedral and Langevin dynamics. It is ignored unless dihedral and cold are true.
ElectForceTrjName
Usage: The electrostatic force trajectory file
Acceptable Value: Any legal UNIX file name
Description: Sets the name of the electrostatic force trajectory file. ".s" is appended to give the file name for the short range component file, and ".l" is appended for the long range component file. These are trajectories of all atom long and short range forces in one of two formats: binary DCD, as used by xplor; and NCSA HDF format. If electForceTrjName is specified, then electForceTrjFreq must also be defined.
ElectForceTrjFreq
Usage: frequency in time steps for writing data to electrostatic force trajectory file
Acceptable Value: Integer great than 0
Description: Frequency, in units of time steps, at which data is written to the electrostatic force trajectory file. In other words, every electForceTrjFreq time step, the data is written. If electForceTrjFreq is specified, then electForceTrjName must also be defined.
AllForceTrjFile
Usage: name of the all-force trajectory file
Acceptable Value: Any legal UNIX file name
Description: Sets the name of the all-force trajectory file. This is a trajectory of all atom composite forces in one of two formats: binary DCD, as used by xplor, and NCSA HDF. If allForceTrjFile is specified, then allForceTrjFreq must also be defined.
AllForceTrjFreq
Usage: frequency in time steps for writing data to all-force trajectory file
Acceptable Value: Integer great than 0
Description: Frequency, in units of time steps, at which data is written to the all-force trajectory file. In other words, every allForceTrjFreq time step, the data is written. If allForceTrjFreq is specified, then allForceTrjFile must also be defined.

Notes on Non-Bonded Interactions

fmd has a number of options that control the way non-bonded interactions are calculated. These options are interrelated and can be confusing. This section attempts to explain their behavior and provide a better understanding of their usage.

van der Waals Interactions

The simplest non-bonded interaction behavior is that of the van der Waals forces. With fmd, van der Waals interactions are always truncated at the cutoff distance. switching is the main option that effects the van der Waals forces. With this option set to on, a smooth switching function will be used to accelerate the decrease of the van der Waals force so that it is 0 at cutoff. If switching is set to off, the van der Waals forces are simply truncated to 0 beyond cutoff. This is seen most clearly in the following figure. This is seen most clearly in the following figure.

The details of the switching function are given in the FMD Programmer's Guide. (Click here ...). The switching function used is based on the xplor implementation. The parameter switchdist specifies the distance at which the switching function begins to take effect, and cutoff defines the distance at which the switching function takes the van der Waals forces to 0. Thus, the value of switchdist must always be less than cutoff.

Electrostatics

The handling of electrostatics is slightly more complicated due to the possibility of doing a full treatment via the fast multipole method in three dimensions, FMM3D. There are two cases to consider, one where FMM3D is used to provide full electrostatics and the other where electrostatics are truncated at a given distance.

Let us begin by considering the second case, where electrostatics are truncated at cutoff. Using this scheme, all electrostatic interactions between pairs separated by a distance greater than cutoff are ignored by setting to 0. If switching is on, than instead of having a discontinuity at cutoff, a shifting function is applied to the electrostatic potential so the the entire potential is lowered in a manner that causes it to go to 0 at cutoff instead of at infinity. The implementation follows that used by xplor. The following figure illustrates the behavior of the shifting function. The following figure illustrates the behavior of the shifting function.

Next, consider the case were full electrostatics are calculated. In this case, the electrostatic interactions are not truncated at any distance. In this scheme, the cutoff parameter has a slightly different meaning for the electrostatic interactions. It represents the point at which the decision is made to use a direct calculation at every time step during a cycle, or use the FMM3D algorithm. Atom pairs closer than cutoff will use the direct method, while atoms pairs farther apart than cutoff will use the FMM3D algorithm. At the end of each cycle, the pair lists are rebuilt and a new set of FMM3D coefficients calculated.

Pair List Generation

The last critical parameter for non-bonded interaction calculations is the pairlistdist parameter. To reduce the cost of performing the non-bonded interactions, fmd uses a non-bonded pair list. This list contains all pairs of atoms that non-bonded interactions should be calculated for. Performing the search for pairs of atoms that should have their interactions calculated is an expensive operation. Thus, the pair list is only calculated periodically, once per cycle. Unfortunately, pairs of atoms move relative to each other during the steps between preparation of the pair list. Because of this, if the pair list was built to only include those pairs of atoms that are within the cutoff distance, it is possible for atoms to drift closer together than the cutoff distance and yet not have their non-bonded interactions calculated.

Let us consider a concrete example to better understand this. Assume that the pairlist is only built once every 10 time steps, and consider a pair of atoms A and B. Assume that at the time the pair list is built, A and B are 0.1@AA{} further apart than the cutoff distance. Since the pair list includes only those atoms with a separation of cutoff, this pair would not be included in the pair list. Now assume that after 5 time steps, atoms A and B have moved 0.2@AA{} closer together. This pair is now within cutoff of each other, and should have their non-bonded interactions calculated. However, because the non-bonded interactions are based solely on the pair list, and the pair list will not be rebuilt for another 5 time steps, this pair will be ignored for 5 time steps, causing non-conservation of energy in the model.

To avoid this problem, the parameter pairlistdist allows the user to specify a distance greater than cutoff for pairs to be included in the pair list. Pairs that are included in the pair list, but with a separation greater than cutoff are ignored. So in the above example, if pairlistdist were set to a value 1@AA{} greater than cutoff, the atom pair A and B would be included in the pair list, but their non-bonded interactions would not be calculated until their separation decreased to less than cutoff. The value of pairlistdist should be chosen such that no atom pair moves more than pairlistdist-cutoff in one cycle.

In the above scheme, the van der Waals forces are still truncated at cutoff. Thus the van der Waals truncation distance forms a lower limit to the local interaction distance. This is believed to be sufficient, but further studies need to be done to provide full van der Waals calculations in O(n) time as well.

Example

There are several sample problems contained in the Data directory of the FMD distribution. One example is that of bpti (or bovine pancreatic trypsin inhibitor). The example covers the execution and output from fmd on an IBM SP2 massively parallel processor. On the SP2, one must first set up several environment variables, whether running interactive or under LoadLeveler, the IBM batch queue manager. One possible set is (note that everything from the "|" character to the end of line is NOT included in the setenv commands):

 setenv MP_PROCS 4            | Requests 4 processors
 setenv MP_HOSTFILE "NULL"    | No explicit processor list
 setenv MP_EUILIB us          | Use the high speed switch library
 setenv MP_EUIDEVICE css0     | Use the high speed switch device
 setenv MP_RMPOOL 1           | Use Resource Manager Pool 1
 setenv MP_RESD YES           | Partition Manager uses Resource Manager
 setenv MP_INFOLEVEL 2        | Informational, warning & error messages
 setenv MP_PGMMODEL spmd      | SPMD or MPMD programming model
 setenv MP_LABELIO YES        | Label I/O with node numbers

These setenv could be placed in a .cshrc file, or could be placed in a text file and read manually with a source command.

Once the execution environment (or poe in IBM parlance) has been set, the next step is to create a user input file. The bpti model already has a sample file that could be modified, called bpti.in. This particular model simply gets a set of energy readings, and is configured to allow comparison with charmm output. This file contains:

 # FMD user input file for bpti

 Structure        ./Data/bpti.psf    | PSF in subdirectory Data
 Coordinates      ./Data/bpti.pdb    | PDB in subdirectory Data
 Parameters       ./Data/parameters  | parameters in subdirectory Data
 Minimization     off                | Not minimization run.
 OutputName       bpti               | Use bpti as output file prefix
 OutputFormat     pdb                | Output in PDB format
 RestartName      bpti.rst           | Use bpti.rst as restart file prefix
 RestartFormat    hdf                | Must use binary or HDF format
 RestartFreq      10                 | Frequence of restart writes
 Seed             834716765          | Handy dandy random number seed
 margin           1                  | Patch margin (default actually)
 Numsteps         20                 | Only 20 time steps
 StepsPerCycle    10                 | Results in 2 cycles
 Timestep         0.01               | Very short time step
 Cutoff           14.0               | 14 Angstrom cutoff
 OutputEnergies   1                  | Energy audits every time step
 Temperature      0                  | No temperature
 COMmotion        no                 | Do not allow COM motion
 Dielectric       1.0                | No effective dielectric
 Exclude          scaled1-4          | Use scaled 1-4 interactions
 1-4Scaling       0.5                | 1-4 scaling factor
 switching        on                 | Enable switching
 SwitchDist       11.0               | Switch distance is 11 Angstroms
 Constraints      off                | No constraints
 Langevin         off                | Langevin dynamics off
 FMA              on                 | FMM3D is on
 FMALevels        4                  | 4 FMM3D levels, ignored
 FMAMp            6                  | 6 expansion terms, ignored

Note that the file uses white-space separation only, and that the keywords use a mix of upper and lower case. Also note that this file expects the molecular data files to reside in a subdirectory called Data below the current working directory.

Assuming fmd is in your execution search path, the simulation is run with the following command:

     fmd bpti.in >& bpti.out &

This runs fmd in the background, and directs standard output (STDOUT), and standard error (STDERR) to the file called bpti.out.

The first few lines of bpti.out look like:

 INFO: 0031-690  Connected to Resource Manager  
 INFO: 0031-119  Host hpc020302-e.wpafb.af.mil allocated for task 0
 INFO: 0031-119  Host hpc020304-e.wpafb.af.mil allocated for task 1
 INFO: 0031-119  Host hpc020306-e.wpafb.af.mil allocated for task 2
 INFO: 0031-119  Host hpc020308-e.wpafb.af.mil allocated for task 3
  0:INFO: 0031-724  Executing program: <./fmd>
  3:INFO: 0031-724  Executing program: <./fmd>
  1:INFO: 0031-724  Executing program: <./fmd>
  2:INFO: 0031-724  Executing program: <./fmd>
  0:Node 0:Info> Fast Molecular Dynamics (FMD)
 . . .

The first five lines are informational messages from the Resource Manager. The next five lines are from fmd. The numbers at the beginning of the line are the node numbers automatically attached by the Resource Manager to the output.

The last few lines of the output file look like:

 . . .
 0:Node 3:Info> TOTAL RUN TIME 50.5044
 0:Node 3:Info> TOTAL CPU TIME 49.34
 0:Node 0:Info> ENERGY:      1 562.7293    179.5891    136.0189  ...
 0:Node 0:Info> TIME IN MID-CYCLE STEPS 1.02405 AVERAGE TIME PER ...
 0:Node 0:Info> TIME ACTUALLY DOING ALL TIMESTEPS 2.0048 AVERAGE ...
 0:Node 0:Info> TOTAL RUN TIME 51.2912
 0:Node 0:Info> TOTAL CPU TIME 48.57
 0:Node 0:Info> fmd exiting
 0:INFO: 0031-306  pm_atexit: pm_exit_value is 0.
 INFO: 0031-656  I/O file STDOUT closed by task 0
 . . .

The ENERGY line has been wrapped to show its full contents. Note that node 0 does most of the routine output for fmd. Routine termination messages follow at the end of this file.

Of course, the other output files, bpti.coord and bpti.vel were also created. The first few lines of each are shown here. First, bpti.coor:

REMARK  FINAL COORDINATES WRITTEN BY FMD AT TIMESTEP 1
ATOM  1  N   ARG  1  26.465  27.452  -2.490  1.00 25.18  APTI   
ATOM  2  CA  ARG  1  25.497  26.862  -1.573  1.00 17.63  APTI   
ATOM  3  C   ARG  1  26.193  26.179  -0.437  1.00 17.26  APTI   
ATOM  4  O   ARG  1  27.270  25.549  -0.624  1.00 21.07  APTI   
ATOM  5  CB  ARG  1  24.583  25.804  -2.239  1.00 23.27  APTI   
ATOM  6  CG  ARG  1  25.091  24.375  -2.409  1.00 13.42  APTI   
ATOM  7  CD  ARG  1  24.019  23.428  -2.996  1.00 17.32  APTI   
ATOM  8  NE  ARG  1  23.591  24.028  -4.287  1.00 17.90  APTI   
ATOM  9  CZ  ARG  1  24.299  23.972  -5.389  1.00 19.71  APTI   
. . .

And then bpti.vel:

REMARK  FINAL VELOCITIES WRITTEN BY FMD AT TIMESTEP 1
ATOM  1  N   ARG  1   0.009   0.007  -0.011  1.00 25.18  APTI   
ATOM  2  CA  ARG  1  -0.004  -0.007  -0.005  1.00 17.63  APTI   
ATOM  3  C   ARG  1   0.026  -0.006  -0.011  1.00 17.26  APTI   
ATOM  4  O   ARG  1  -0.012   0.008  -0.001  1.00 21.07  APTI   
ATOM  5  CB  ARG  1  -0.002   0.005  -0.002  1.00 23.27  APTI   
ATOM  6  CG  ARG  1   0.000  -0.002  -0.000  1.00 13.42  APTI   
ATOM  7  CD  ARG  1   0.006   0.008  -0.004  1.00 17.32  APTI   
ATOM  8  NE  ARG  1  -0.020   0.012   0.010  1.00 17.90  APTI   
ATOM  9  CZ  ARG  1  -0.011  -0.024   0.009  1.00 19.71  APTI   
. . .

Installation

Installation Overview

The fmd system has been packaged to distribute all the necessary source code in one directory tree. There is a master configuration file in the top level (or project root) directory which controls compilation for various architectures. The directory tree looks like:

    ./FMD                          Project root.
    `-----ARCH                     Binaries.
    |     `-----xx-yy-zz           Architecture specific binaries.
    `-----Data                     Sample input and data files.
    `-----Docs                     Formatted documentation.
    `-----Misc                     Version histories.
    `-----Src                      All source files.
    |     `-----Docs               Documentation sources.
    |     `-----FFT                FFTPACK source.
    |     `-----FMD                FMD source.
    |     `-----FMM3D              FMM3D source.
    |     `-----Include            Header files.
    |     `-----Misc               Scripts and other helper files.
    `-----Validation               The validation suite.
    |     `-----Canonical          Accepted results.
    |     |     `-----P            Parallel jobs.
    |     |     |     `-----vr_mm  Directory for job mm.
    |     |     `-----S            Sequential jobs.
    |     |     |     `-----vr_nn  Directory for job nn.
    |     `-----Data               Data used by validation models.
    |     `-----Jobs               FMD input files.
    |     |     `-----P            Parallel job input files.
    |     |     `-----S            Sequential job input files.
    |     `-----Runjobs            Sample runjob scripts
    |     |     `-----LAM          Scripts for LAM-MPI

The system is designed to install as automatically as possible using the GNU Autoconf system. One should simply execute the shell script configure to set the system for a particular architecture. Should you be working on a system which it can't identify, there is a manual method for customizing the required files. The UNIX make utility is used to control package compilation. A make that supports the "include" statement for reading in other makefile fragments is required. The package was developed with GNU make-3.75, a utility freely available in source format.

The documents are not designed to be rebuilt automatically, since they require a TeX installation which does not exist on many of the target architectures. If you have one, setting the environment variable FMD_DOCS to YES will activate the make file. The Docs/Makefile will have to be reviewed to insure all TeX related utilities are pointed to correctly.

Installation begins by changing to a directory which will hold the package. Let's assume that we are in one's home directory. The next step is uncompressing the tar file, then untaring it. Once done, once changes to the FMD root directory, configures and makes the programs. Here is what the command sequence looks like:

        hpc02% gunzip fmd-1.1.3.tgz
        hpc02% tar xvf fmd-1.1.3.tar
        hpc02% cd FMD
        hpc02% configure
        hpc02% make all

Once this sequence is completed, there should be two new directories created in the project root directory. One is the ARCH directory containing a subdirectory for your architecture. It will have a name like: alpha-dec-osf4.1. This indicates the CPU type, the manufacturer, and the operating system. In this directory you will find four files:

        fmd ------------ the FMD executable
        libfmd.a ------- ar library of all the Src/FMD modules.
        libfmm3d.a ----- ar library of all the Src/FMM3D modules.
        libdfftpack.a -- a double precision FFT library.

In the best of all worlds, the user in ready to run FMD. However, on some machines, the IBM SP2 in particular, the user must make a choice of MPI libraries - either an MPI implementation or a portable implementation. This is done by specifying an option to configure:

        configure --with-ibmmpi=ARG

where ARG is one of IBM or PORT.

The user also has the option of specifying the type of algorithm to use for the long range forces. Currently two are implemented, NONE - implying some truncation technique is used, or FMM3D - which selects the Fast Multipole Method in 3D method. The configure command would look like:

        configure --with-lrfm=ARG

where ARG is NONE or FMM3D.

Finally, the use has the ability of specifying which "make" utility to use. This is done as:

        configure --with-make=PATH

where PATH is the fully specified path to the "make" utility.

Installation Details

Autoconf configuration

If you have access to a system with Autoconf installed, there is only one file that need be modified to configure FMD for a new system. That file is configure.in. If Autoconf is not installed, then all of the settings can be handed from the command line using "configure --with-OPTION" flags. A listing of all the available options can be generated by running "configure --help".

It is a file which contains Autoconf macros and shell programming stanzas. There are two stanza's to consider modifying for a new system. The first section cleans up the architecture identifier. For instance, the IBM SP system is identified as "rs6000-ibm-aix4.1.0.5". This is probably too specific for our needs, so it is pared down to just "rs6000-ibm-aix4.1". The stanza which does this looks like:

case "$host" in

#  IBM RS6000 - Prune version numbers as needed.  Guessing that
#  AIX 4.1.0.5 can be cut down to AIX 4.1, as "uname -a" reports
#  only 4.1

   rs6000-ibm-aix4.1*)
      host_os=aix4.1
      host=$host_cpu-$host_vendor-$host_os
      host_alias=$host
      echo setting host system type to:  $host
   ...
   ;;

The second stanza handles the main group architecture settings, and it occurs near the end of the file. Here is an excerpt, showing how the C++ compiler is specified for a DEC AlphaStation running OSF 4.0:

#
# Architecture Specific Section
#
# Here we handle architecture specific stuff that can't be set up
# any other way.  If a variable is set to NONE, then set it to the
# default value for the machine:

case "$host" in

#  DEC AlphaStation running OSF 4.0

   alpha-dec-osf4.0)
      AC_DEFINE(OSF)
      TESTED=yes
#
#     Here are the C++ compiler settings.
#
      if test "${CCPP}" = NONE ; then
         TMP=g++
      else
         TMP=$CCPP
      fi
      AC_PATH_PROG(CCPP,${TMP})
      if test "${CCOPT}" = NONE ; then
         CCOPT="-O3"
      fi
      if test "${CCNOPT}" = NONE ; then
         CCNOPT="-g"
      fi
     ...
     ;;

Adding configuration data for a new architecture would entail filling in a host block such as this. The shell variables identify the compilers to use, set specific flags, and identify the location of the communication package specific files.

TESTED
Description: flag to indicated if a specification block has been tested.
Usage: TESTED= yes | no
Option: (none)
AC_DEFINE(OS)
Description: Autoconf macro that sets a macro symbol in config.h. Here it is used to set a symbol for a particular operating system. config.h must contain either a #define OS or #undef OS.
Usage: AC_DEFINE(symbol)
Option: --with-UNKOS=OS, where OS is the symbol for the operating system.
ARCHLIBS
Description: Used to specify special libraries and loader flags.
Option: --with-ARCHLIBS=FLAGS
Usage: --with-ARCHLIBS="-bmaxdata:1073741824 -lfoo"
CCPP
Description: Use to specify the C++ compiler.
Option: --with-CCPP=ARG
Usage: --with-CCPP=g++
CC
Description: Use to specify the C compiler.
Option: --with-CC=ARG
Usage: --with-CC=gcc
SCC
Description: Use to specify the sequential C compiler, if there are separate compilers for parallel and sequential programs.
Option: --with-SCC=ARG
Usage: --with-SCC=gcc
CCOPT
Description: Use to specify optimization flags for the C++ compiler.
Option: --with-CCOPT=FLAGS
Usage: --with-CCOPT=-O3
COPT
Description: Use to specify optimization flags for the C compiler.
Option: --with-COPT=FLAGS
Usage: --with-COPT=-O2
SCOPT
Description: Use to specify optimization flags for the sequential C compiler, in case there are separate parallel and sequential compilers.
Option: --with-SCOPT=FLAGS
Usage: --with-SCOPT=-O2
CCNOPT
Description: Use to specify no optimization flags for the C++ compiler.
Option: --with-CCNOPT=FLAGS
Usage: --with-CCNOPT="-g -Q"
CNOPT
Description: Use to specify no optimization flags for the C compiler.
Option: --with-CNOPT=FLAGS
Usage: --with-CNOPT=-g
SCNOPT
Description: Use to specify no optimization flags for the sequential C compiler, in the event there are separate sequential and parallel compilers.
Option: --with-SCNOPT=FLAGS
Usage: --with-SCNOPT=-g
CCOPTARCH
Description: Use to specify architecture specific C++ compiler flags.
Option: --with-CCOPTARCH=FLAGS
Usage: --with-CCOPTARCH=-qarch=pwr2
COPTARCH
Description: Use to specify architecture specific C compiler flags.
Option: --with-COPTARCH=FLAGS
Usage: --with-COPTARCH=-qarch=pwr2
SCOPTARCH
Description: Use to specify architecture specific sequential C compiler flags, in the event there are separate parallel and sequential compilers.
Option: --with-SCOPTARCH=FLAGS
Usage: --with-SCOPTARCH=-qarch=pwr2
FC
Description: Command to run the FORTRAN compiler.
Option: --with-FC=ARG
Usage: --with-FC=f77
FOPT
Description: Optimization flags for the FORTRAN compiler.
Option: --with-FOPT=FLAGS
Usage: --with-FOPT=-O2
FNOPT
Description: No optimization flags for the FORTRAN compiler.
Option: --with-FNOPT=FLAGS
Usage: --with-FNOPT=-g
FOPTARCH
Description: Architecture unique FORTRAN compiler flags.
Usage: FOPTARCH="-X m"
Default: --with-FOPTARCH=
COMMARCH
Description: Architecture type flag used by communications package.
Option: --with-COMMARCH=ARG
Usage: COMMARCH=alpha
Default: --with-COMMARCH=
COMMDEVICE
Description: Device used by communications package.
Option: --with-COMMDEVICE=ARG
Usage: COMMDEVICE=ch_p4
Default: --with-COMMDEVICE=
COMMROOT
Description: Path to communication package root directory. This is the directory that contains the binaries, libraries, include files, etc.
Option: --with-COMMROOT=PATH
Usage: COMMROOT=/usr/local/mpi
Default: --with-COMMROOT=
COMMINC
Description: Compiler include flag for the communications package.
Option: --with-COMMINC=-IPATH
Usage: COMMINC=-I/usr/local/mpi/include
Default: --with-COMMINC=
COMMLIB
Description: Loader library flags for the communications package.
Option: --with-COMMLIB=FLAGS
Usage:: COMMLIB="-L/usr/local/mpi/lib -lmpi"
Default: --with-COMMLIB=
HDF
Description: Compile in support for NCSA's HDF file format. Requires that you have the HDF libraries and header files installed. The format can be used for output, restart, and trajectory files. It has the distinct advantage of being architecture independent. (Note: the HDF option settings are always over ridden if the DICE settings are active. This is because DICE contains HDF)
Option: --with-HDF=yes|no
Default: --with-HDF=no
HDFROOT
Description: Specifies path to the NCSA HDF installation directories. This should be the root, or home, directory which contains the include and lib subdirectories.
Option: --with-HDFROOT=PATH
Default: --with-HDFROOT=
DICE
Description: Specifies that DICE is available and support for the visualizer should be enabled. FMD may be run with or without using DICE, but DICE can not communicate with FMD unless this option is enabled. (Note: since DICE contains HDF, the DICE settings will over ride the HDF settings. Full HDF support is provided.)
Option: --with-DICE=yes|no
Default: --with-DICE=no
DICEROOT
Description: Specifies path to the DICE installation directories. This should be the root, or home, directory which contains the include and lib subdirectories.
Option: --with-DICEROOT=PATH
Default: --with-DICEROOT=
HPF
Description: Specifies path to the HPF (High Performance FORTRAN) compiler. If this is set to NONE, those modules which depend on HPF will not be compiled.
Option: --with-HPF=PATH
Default: --with-HPF=NONE
HPFOPT
Description: Specifies the HPF compiler flags, with optimization.
Option: --with-HPFOPT="FLAG1 FLAG2"
Default: --with-HPFOPT=
HPFNOPT
Description: Specifies the HPF compiler flags, without optimization.
Option: --with-HPFNOPT="FLAG1 FLAG2"
Default: --with-HPFNOPT=
DCFLAGS
Description: Extra C/C++ flags which can be set by developers.
Option: --with-DCFLAGS="FLAG1 FLAG2"
Default: --with-DCFLAGS=

Manual configuration

In some ways, manual configuration of a new system without benefit of Autoconf or --with-OPTION's may be easier. Only two files must be edited: make.cfg and Src/Include/config.h. configure helps you out by setting all of the unknown variables to CHANGE_ME. Hopefully, searching them out and setting them, following the above descriptions, are all you have to do to get a working system. An excerpt from make.cfg shows you what you can expect to see:

# Compiler symbols, normally set to -DHAVE_CONFIG_H.  Anything else
# should really go in Src/Include/config.h

DEFS=-DHAVE_CONFIG_H

# C++ compiler.

CCPP=CHANGE_ME

# C++ compiler optimization flags

CCOPT=CHANGE_ME

# C++ compiler no optimization flags.

CCNOPT=CHANGE_ME

If you find you must make adjustments, either for a new system, or for an existing one, please let us know. Please e-mail the resulting demo.cfg and make.cfg files to: Ruth.Pachter@ml.afrl.af.mil

Regenerating Documentation from Sources

The complete sources for all documentation is included in the distribution. However, because regeneration requires many special utilities, a TeX installation among them, the make files are set up for null action unless an environment variable, FMD_DOCS is set to YES. Before this is done, however, the user needs to look over the Makefile in ./FMD/Src/Docs to make sure all of the necessary utilitites are present. Doing (from csh):

setenv FMD_DOCS YES
make all

will regenerate the PostScript, info, and html documents from the included source files.

Utilities

There are several utilities, consisting of GAWK scripts and C programs, which help make usage of FMD a bit easier. These utilities include:

fmd.ui.tcl

Usage: fmd.ui.tcl [ input_file ] \&

Description: This utility is a tool to help with the generation of user input files. It allows the user to view all available keywords, their usage, and the allow values. It performs some sanity checks to make sure that all required keywords have been specified, and checks on the legality of many of the entries. It currently does not check that entries have the proper Float or Integer format, nor does it check on numerical range. That is simply a matter for future programming efforts.

energies.awk

Usage: gawk -f energies.awk output_file > energy.dat

Description: The energy audit lines written by fmd to the output file can be extracted with the aid of the energies.awk script. Each line of the script's output contains the data for a single energy audit. The fields on each line always include the elapsed time, bond energy, bond angle energy, dihedral energy, improper dihedral energy, electrostatic energy, van der Waals energy, kinetic energy, and temperature. The constraint and electric-field energies may also be present, depending on how the program was run.

stripmine.pl

Usage: stripmine.pl t=stride [option=x ...] output_file > energy.dat

Description: The energy audit lines written by fmd to the output file can be processed with the aid of the stripmine.pl script. The "t = stride" option sets the stride in time units, allowing energies to be picked out after specific time intervals. The time units output default to pico-seconds, and may be set using the optional "units = fs | ps | ns" keyword to either femto-, pico-, or nano-seconds. The energies can be averaged over the stride interval if the optional keyword "ave=y" is specified. The optional keywords "start=stime" and "end=etime" may be used to specify a sub-interval for extraction or averaging. The fields on each output line include the elapsed time, and the instantaneous or averaged bond energy, bond angle energy, dihedral energy, improper dihedral energy, electrostatic energy, van der Waals energy, kinetic energy, and temperature. The constraint and electric-field energies may also be present, depending on how the program was run.

engdump

Usage: engdump energy.hdf > energy.txt

Description: engdump writes out the data from a HDF energy trajectory file in the same layout as the energy audits in fmd output, but using a %20.15g numerical format field to display many more significant digits. This would allow the use of stripmine.pl for averaging and striding just as with normal fmd output. It can also provide the basis for more sophisticated energy comparison tools. Output is written to STDOUT (here directed into a file), while diagnostics and error messages are written to STDERR. The global file attributes and number of data sets in the file are included in the diagnostics.

fmdarch

Usage: fmdarch

Description: fmdarch is a shell script with determines the architecture name in the same fashion as the FMD configuration script. If multiple architectures are available, this script will determine which subdirectory under FMD/ARCH to use for binaries. For example, if FMDROOT is the full path to the FMD directory, then something like

% set path=($path $FMDROOT/ARCH/`$FMDROOT/ARCH/fmdarch`)

would add the proper subdirectory to a CSH user's path.

hdf2pdb

Usage: hdf2pdb [-dn] data.hdf data.pdb > new.pdb

where "n" is an optional dataset ID specifier which runs from 0 to one less than the number of datasets in the HDF file; data.hdf is the name of the file containing the HDF dataset; data.pdb is the corresponding PDB file; and output is written to STDOUT (here directed into a file).

Description: The coordinate and velocity data stored in fmd HDF formatted output, restart, trajectory and/or snapshot files can be used to replace the data in an existing PDB formatted file. This allows use of analysis tools which may not support HDF files. Data is read from an HDF file using dataset 0 unless the -d options is used to specify some other dataset. HDF header and dataset information is written out as PDB REMARK records, then the PDB file is scanned. If ATOM or HETATM records are encountered, the coordinate or velocity data is replace with that from the HDF file and written out. Any other PDB record type is echoed unchanged. This assumes, of course, that the atom order in the PDB and HDF files are the same. They will be the case if the PDB file is the same as that used to initialize the model.

hdfdump

Usage: hdfdump data.hdf

Description: The contents of an FMD HDF file can be dumped in text form for human inspection. All HDF labels, attributes, and data encountered int the file are displayed in tabular form, giving their characteristics and values. It can be used to verify the contents of a file before use, or extract data for use in programs which do not support HDF. An alternative utility, hdflist is also provided. hdfdump is specific to the FMD Version 2 HDF format, while hdflist can handle both old and new format.

quanta2fmd

Usage: quanta2fmd quanta.psf fmd.psf

Description: The Molecular Simulations Inc. (MSI) program Quanta4.0 can be used to create protein structure files for use by fmd. quanta2fmd provides the necessary data translation between the MSI CHARMm format and the Harvard CHARMM/Yale X-PLOR format used by FMD.

swap.awk

Usage: psselect `gawk -f swap.awk foo.ps` foo.ps > bar.ps

Description: The table of content pages appear at the end of a Postscript file produced by dvips from TeX or Texi processing. swap.awk is a GAWK script which generates page selection specifications for the psselect utility that reorders the Postscript file into more common book order with the table of contents at the beginning of the file. It should be noted that the input file really does appear twice: once as the argument to gawk, and the as the input argument to psselect.

send-pr

Usage: send-pr

Description: send-pr is a shell script which automates the process of submitting a bug or trouble report to the FMD development team. It will activate the editor you have specified in your EDITOR or VISUAL environment variable, defaulting to vi if you've specified none. A report template is loaded into the editor, with some fields prefilled, and other marked for you to add information. Upon completion of the report, send-pr automatically mails it to the FMD development team. You will receive an automated response back, which will include the assignment of a report number. For additional details, including how to inquire about report status via e-mail, see the FMD Problem (Bug) Reporting Manual. (Click here ...).

Validation

The FMD/Validation subdirectory tree contains a set of standard test jobs which can be used to validate the operation of FMD. The suite has not been fully automated because of the many different ways in which FMD, depending on the architecture and MPI libraries. The suite expects to use a fully configured version of FMD, with all features, except DICE support, active. The shell script RUNJOBS controls the execution of FMD and comparison of results against the canonical results. The comparisons performed attempt to ignore anything related to dates, timings, and expected error messages, but will flag anything other differences. If changes are reported, they should be reviewed for significance. In particular, any differences in the reported energy values should be investigated/reported as a potential serious problem.

References

B. R. Brooks, R. E. Bruccoleri, B. D. Olafson, D. J. States, S. Swaminathan and M. Karplus, "CHARMm: A Program for Macromolecular Energy, Minimization, and Dynamics Calculations.", J. Comput. Chem., 4(2), pages 187-217, 1983.

Axel T. Br@"unger, "X-PLOR, Version 3.1: A System for X-ray Crystallography and NMR", The Howard Hughes Medical Institute and Department of Molecular Biophysics and Biochemistry, Yale University, 260 Whitney Avenue, P.O. Box 6666, New Haven, CT 06511, 1992.

L. Greengard and V. Rokhlin, "A Fast Algorithm for Particle Simulations", J. Comp. Phys., 73, pages 325-348, 1987.

M.T. Nelson, W.F. Humphrey, A. Gursoy, A. Dalke, L.V. Kal'e, R.D. Skeel, K. Schulten and R. Kufrin, "NAMD: A Parallel, Object-Oriented Molecular Dynamics Program", International Journal of Supercomputer Applications and High Performance Computing, 10, #4, pages 251-268, 1996.

M. Nelson, W. Humphrey, A. Gursoy, A. Dalke, L. Kale, R. Skeel, K. Schulten and R. Kufrin, "MDScope: A Visual Computing Environment for Structural Biology", Comp. Phys. Comm., 1995 (in press).

Sample PSF File

This is a sample PSF file. The sections are complete, but it does not describe a complete molecule.

PSF

       2 !NTITLE
REMARK QUANTA-generated PSF for ala4
REMARK Produced on Wed Sep 25 10:30:43 1996

      43 !NATOM
       1 SEG1 1    ALA  N    NT    -3.000000E-01       14.0067       0
       2 SEG1 1    ALA  HT1  HC     3.500000E-01        1.0080       0
       3 SEG1 1    ALA  HT2  HC     3.500000E-01        1.0080       0
       4 SEG1 1    ALA  HT3  HC     3.500000E-01        1.0080       0
       5 SEG1 1    ALA  CA   CT     1.500000E-01       12.0110       0
       6 SEG1 1    ALA  HA   HA     5.000000E-02        1.0080       0
      ...
      40 SEG1 4    ALA  C    C      1.400000E-01       12.0110       0
      41 SEG1 4    ALA  OCT1 OC    -5.700000E-01       15.9994       0
      42 SEG1 4    ALA  OCT2 OC    -5.700000E-01       15.9994       0
      43 SEG1 4    ALA  CA   CT     1.000000E-01       12.0110       0

      42 !NBONDS: bonds
       1       2       1       3       1       4       1       5
       5       7       5      11       5       6       7       8
       7       9       7      10      11      12      11      13
      13      14      13      15      15      17      15      21
      15      16      17      18      17      19      17      20
      21      22      21      23      23      24      23      25
      25      27      25      31      25      26      27      28
      27      29      27      30      31      32      31      33
      33      34      33      43      35      43      36      43
      36      37      36      38      36      39      40      43
      40      41      40      42

      75 !NTHETA: angles
       2       1       3       2       1       4       2       1       5
       3       1       4       3       1       5       4       1       5
       1       5       7       1       5      11       1       5       6
       7       5      11       7       5       6      11       5       6
      ...
      37      36      38      37      36      39      38      36      39
      43      40      41      43      40      42      41      40      42
      33      43      35      33      43      36      33      43      40
      35      43      36      35      43      40      36      43      40

      99 !NPHI: dihedrals
       2       1       5       7       2       1       5      11
       2       1       5       6       3       1       5       7
       3       1       5      11       3       1       5       6
       4       1       5       7       4       1       5      11
      ...
      39      36      43      40      41      40      43      33
      41      40      43      35      41      40      43      36
      42      40      43      33      42      40      43      35
      42      40      43      36

       7 !NIMPHI: impropers
      11       5      13      12      13      11      15      14
      21      15      23      22      23      21      25      24
      31      25      33      32      33      31      43      34
      40      41      42      43

Sample Parameter File

The following is an example of a parameter file.

remark  ========================================================
remark  Pairwise bonds. ========================================
remark  ========================================================

bonds B    CT     200.0       1.58
bonds B    N      200.0       1.42
bonds B    OE     200.0       1.36
bonds B    OT     200.0       1.325
...
bonds SO3  O      660.0       1.44 
bonds SO3  OC     260.0       1.57
bonds SO3  OE     260.0       1.57 
bonds SO3  OS     237.0       1.54
bonds SO3  OT     260.0       1.57 
bonds SO4  O      660.0       1.425 
bonds SO4  OC     528.0       1.50
bonds SO4  OE     260.0       1.57 
bonds SO4  OS     237.0       1.54
bonds SO4  OT     260.0       1.585 
bonds ST   ST     172.0       2.04 
bonds ST   XF     190.0       1.560 

remark  ====================================
remark  Bond angles. =======================
remark  ====================================

angle CT   B    OE      45.0     110.0
angle H    B    CT      35.0     109.47
angle H    B    OE      35.0     109.47
angle H    B    H       35.0     115.0
angle H    B    HMU     35.0     105.0
angle HMU  B    HMU     35.0     120.0
angle OE   B    OE      35.0     112.0
...
angle H    ST   CT4     50.0     109.47 
angle H    ST   H       55.0      92.1     
angle OC   ST   OC      85.0     109.47
angle PT   ST   PT      50.0      98.0  
angle ST   ST   PT      50.0      99.5  

remark  ========================================
remark  Dihedral angles ========================
remark  ========================================

dihedral H    B    HMU  B        0.5  4  180.0
dihedral HMU  B    HMU  B        0.5  2    0.0
dihedral X    B    CT   X        0.5  3    0.0
dihedral X    B    OE   X        0.5  3    0.0
dihedral X    B    OT   X        0.5  3    0.0
dihedral X    B    SE   X        2.0  2    0.0
dihedral C    C    CT   HA       0.12 2  180.0 
dihedral C    C    NP   CT4      2.6  2  180.0 
dihedral C    C    NP   H        2.6  2  180.0 
...
dihedral C6R  C    NP   C        2.6  2  180.0
dihedral C6R  C    NP   C6R      2.6  2  180.0
dihedral C6R  C    NP   CT       2.6  2  180.0
dihedral C6R  C    NP   H        2.6  2  180.0
dihedral CT   C    OS   CT       MULTIPLE= 2   0.49  1  0.0
                                               2.65  2  180.0 
dihedral HA   C    CT   CT       0.00 1  180.0 
dihedral OA   C    CT   CT       MULTIPLE= 2    0.26  1  0.0
                                                1.70  3  180.0 
dihedral OA   C    CT   HA       0.30 3  180.0
dihedral OA   C    CUA1 CUA1     2.2  1    0.0 
dihedral OA   C    CUA2 CUA2     1.8  1    0.0 
dihedral OAC  C    CT   CT       0.40 3  180.0
dihedral OAC  C    OS   CT       MULTIPLE= 2    0.27  1  0.0
                                                2.65  2  180.0
dihedral OAC  C    OT   H        0.03 1  180.0 
dihedral OK   C    CT   CT       MULTIPLE= 2    0.55  1  180.0
                                                0.25  4  180.0 

remark  ======================================================
remark  Improper dihedrals ===================================
remark  ======================================================

improper C    C    OT   O       65.0  0    0.0 
improper C    C    OT   OAC     65.0  0    0.0 
improper C    C5R  OS   OAC    147.0  0    0.0
improper C    C6R  OS   OAC    147.0  0    0.0
improper C    CH1E OS   OAC    147.0  0    0.0
improper C    CH1E OT   OAC    147.0  0    0.0
improper C    CH2E OS   OAC    147.0  0    0.0
improper C    CH2E OT   OAC    147.0  0    0.0
improper C    CH3E OS   OAC    147.0  0    0.0
improper C    CH3E OT   OAC    147.0  0    0.0
improper C    OT   CT   OAC    147.0  0    0.0
improper C    OT   CUA1 OAC    147.0  0    0.0 
improper C    X    X    C      100.0  0    0.0 
improper C    X    X    C5R     90.0  0    0.0
improper C    X    X    C5RP   100.0  0    0.0
improper C    X    X    C5RQ   100.0  0    0.0 
improper C    X    X    C6R    100.0  0    0.0

remark  =========================================
remark  Nonbonded interactions. =================
remark  =========================================
remark
remark                                              1-4 interactions
remark     Atom    epsilon         sigma          epsilon         sigma
remark             kcal/mol                       kcal/mol

nonb    AR  2.8591415e-01  3.3497792e+00   2.8591415e-01  3.3497792e+00
nonb     B  1.0000000e-02  2.0847030e+00   1.0000000e-02  2.0847030e+00
nonb     C  1.4100000e-01  3.3319612e+00   1.4100000e-01  3.3319612e+00
nonb    C3  1.4100000e-01  3.3319612e+00   1.4100000e-01  3.3319612e+00
nonb    C4  1.4100000e-01  3.3319612e+00   1.4100000e-01  3.3319612e+00
nonb   C5R  5.0000000e-02  3.6348668e+00   1.0000000e-01  3.1359635e+00
nonb  C5RE  9.0300000e-02  3.7417746e+00   1.0000000e-01  3.3854151e+00
nonb  C5RP  5.0000000e-02  3.6348668e+00   5.0000000e-02  3.6348668e+00
nonb  C5RQ  5.0000000e-02  3.6348668e+00   5.0000000e-02  3.6348668e+00
nonb   C6R  5.0000000e-02  3.6348668e+00   1.0000000e-01  3.1359635e+00
... 
nonb    RN  1.2343876e+00  4.0090442e+00   1.2343876e+00  4.0090442e+00
nonb    SE  4.3000000e-02  3.5101409e+00   4.3000000e-02  3.5101409e+00
nonb   XAT  3.2000000e-01  3.8843184e+00   3.2000000e-01  3.8843184e+00
nonb   XBR  3.2000000e-01  3.8843184e+00   3.2000000e-01  3.8843184e+00
nonb   XCL  2.6000000e-01  3.6705027e+00   2.6000000e-01  3.6705027e+00
nonb    XE  8.3286521e-01  3.8486825e+00   8.3286521e-01  3.8486825e+00
nonb    XF  1.0000000e-01  3.0290556e+00   1.5000000e-01  2.7617860e+00
nonb    XI  8.0000000e-01  3.6348668e+00   8.0000000e-01  3.6348668e+00

remark  ===============================================================
remark  Nonbonded generics. ===========================================
remark  ===============================================================

nonb    N*  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb    P*  1.0000000e-01  3.3854151e+00   1.0000000e-01  3.3854151e+00
nonb    M*  1.0000000e-03  1.1581683e+00   1.0000000e-03  1.1581683e+00
nonb    S*  4.3000000e-02  3.3675972e+00   4.3000000e-02  3.3675972e+00
nonb    O*  1.5910000e-01  2.8508759e+00   2.0000000e-01  2.4232445e+00
    
nonb   OH1  1.5910000e-01  2.8508759e+00   2.0000000e-01  2.4232445e+00
    
nonb     N  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb    NC  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb    NP  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb    NR  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb    NX  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb   NC2  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb   NH1  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb   NH2  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00
nonb   NH3  9.0000000e-02  3.2606893e+00   1.0000000e-01  2.9043298e+00

remark  ===========================================================
remark  Explicit VdW pairs ========================================
remark  ===========================================================
remark
remark  Explicit 6-12 A-B terms when the above are not good enough:
remark
remark         E(r) = A(i,j)/r^12 - B(i,j)/r^6
remark
remark                                          1-4 Interactions
remark	             A             B             A             B

nbfi  CT HO    7.971615e+04  2.187000e+02  7.971615e+04  2.187000e+02 
nbfi  HA HO    3.938313e+04  8.875036e+01  3.938313e+04  8.875036e+01 
nbfi  HT HT    3.086917e-06  7.534891e-04  3.086917e-06  7.534891e-04 
nbfi  HT OW    3.278424e+02  1.047233e+01  3.278424e+02  1.047233e+01 
nbfi  OSH O2M  0.000000e+00  0.000000e+00  0.000000e+00  0.000000e+00 
nbfi  OSH OSH  0.000000e+00  0.000000e+00  0.000000e+00  0.000000e+00 
nbfi  OW OW    5.820175e+05  5.950097e+02  5.820175e+05  5.950097e+02 

Variable Index

Note that many of the variable entries have two page numbers. In nearly every case, the first number indicates the page on which the table, in which the variable appears, begins, while the second number indicates the page on which the variable actually appears. Jump to: ! - - - 1 - a - b - c - d - e - f - g - h - i - l - m - n - o - p - r - s - t - u - v

!

  • !
  • -

  • --with-ARCHLIBS
  • --with-CC
  • --with-CCNOPT
  • --with-CCOPTARCH
  • --with-CNOPT
  • --with-COMMARCH
  • --with-COMMDEVICE
  • --with-COMMINC
  • --with-COMMLIB
  • --with-COMMROOT
  • --with-COPT
  • --with-COPTARCH
  • --with-DCFLAGS
  • --with-DICE
  • --with-DICEROOT
  • --with-FC
  • --with-FNOPT
  • --with-FOPT
  • --with-FOPTARCH
  • --with-HDF
  • --with-HDFROOT
  • --with-HPF
  • --with-HPFNOPT
  • --with-HPFOPT
  • --with-ibmmpi
  • --with-lrfm
  • --with-make
  • --with-SCC
  • --with-SCNOPT
  • --with-SCOPT
  • --with-SCOPTARCH
  • -with-UNKOS
  • 1

  • 1-4Scaling
  • a

  • AC_DEFINE(OS)
  • AllForceTrjFile, AllForceTrjFile
  • AllForceTrjFormat
  • AllForceTrjFreq, AllForceTrjFreq
  • ANGLe
  • ARCHLIBS
  • b

  • BOND
  • c

  • CC
  • CCNOPT
  • CCOPT
  • CCOPTARCH
  • CCPP, CCPP
  • class
  • CNOPT
  • Cold
  • ColdRate
  • ColdTemp
  • COMMARCH
  • COMMDEVICE
  • COMMINC
  • COMMLIB
  • COMmotion
  • COMMROOT
  • ConsExp
  • ConsKfile
  • ConsKol
  • ConsRef
  • Constraints
  • Coordinates
  • CoorTrjFile
  • CoorTrjFormat
  • CoorTrjFreq
  • COPT
  • COPTARCH
  • creator
  • Cutoff
  • CWD
  • d

  • date
  • DCFLAGS
  • DICE
  • DiceFreq
  • DICEROOT
  • Dielectric
  • DIHEdral
  • Dihedral
  • e

  • EField
  • EFieldOn
  • ElectForceTrjFreq
  • ElectForceTrjName
  • ElectTrjFormat
  • ElectTrjFreq
  • ElectTrjName
  • EnergyTrjFile
  • EnergyTrjFreq
  • Exclude
  • f

  • FC
  • FirstTimestep
  • FMA
  • FMADegSep
  • FMALevels
  • FMAMp
  • FMASuperNode
  • FMD_DOCS, FMD_DOCS
  • FNOPT
  • FOPT
  • FOPTARCH
  • g

  • GlobalTest
  • h

  • HDF
  • HDFROOT
  • HPF
  • HPFNOPT
  • HPFOPT
  • i

  • IMPRoper
  • InitCoordsDataset
  • InitCoordsFile
  • InitCoordsFormat
  • l

  • Langevin
  • LangevinCol
  • LangevinFile
  • LangevinTemp
  • LdbSendStep
  • LdbStepsPerCycle
  • LdbStrategy
  • LongSplitting
  • m

  • Margin
  • MaximumMove
  • Minimization
  • MTSAlgorithm
  • n

  • NACC
  • NATOM
  • NBFIx
  • NBONDS
  • NDON
  • NGRP, NST
  • NIMPHI
  • NNB
  • NONBonded
  • NPHI
  • NTHETA
  • NTITLE
  • NumSteps
  • o

  • OutputEnergies
  • OutputFormat
  • OutputName
  • p

  • PairListDist
  • Parameters
  • Periodicity
  • PLMmarginCheck
  • program
  • PSF
  • r

  • REMARK
  • RescaleFreq
  • RescaleTemp
  • RestartFormat
  • RestartFreq
  • RestartName
  • revision_date
  • revision_id
  • s

  • SCC
  • SCNOPT
  • SCOPT
  • SCOPTARCH
  • Seed
  • SnapshotFile
  • SnapshotFormat
  • SnapshotStart
  • SnapshotStop
  • SpericalBCexp1
  • SphericalBC
  • SphericalBCCenter
  • SphericalBCexp2
  • SphericalBCk1
  • SphericalBCk2
  • SphericalBCr1
  • SphericalBCr2
  • StepsPerCycle
  • Structure
  • SwitchDist
  • Switching
  • t

  • TCouple
  • TCoupleCol
  • TCoupleFile
  • TCoupleTemp
  • Temperature
  • TESTED
  • TimeStep
  • Title
  • title
  • Title2
  • title2
  • type
  • u

  • UnitCell
  • UnitOrigin
  • UnitX
  • UnitY
  • UnitZ
  • v

  • Velocities
  • VelocitiesDataset
  • VelocitiesFormat
  • VelTrjFile
  • VelTrjFormat
  • VelTrjFreq
  • Concept Index

    Jump to: ! - 1 - a - b - c - d - e - f - g - h - i - l - m - n - o - p - q - r - s - t - u - v - w - x

    !

  • ! parameter keyword
  • 1

  • 1-4 interaction scaling factor
  • a

  • AC_DEFINE
  • all-force trajectory write frequency, all-force trajectory write frequency
  • Anderson degree of separation
  • Anderson super node
  • ANGLE parameter keyword
  • ARCHLIBS
  • Autoconf configuration
  • automatic configuration
  • b

  • BASE64 PDB extension
  • BASE64 psf keyword
  • basic user parameters
  • bath coupling constant column
  • bath temperature
  • bath temperature file
  • BOND parameter keyword
  • boundary condition constant, first
  • boundary condition constant, second
  • boundary condition exponent, first
  • boundary condition exponent, second
  • boundary condition radius, first
  • boundary condition radius, second
  • bpti example
  • bug report
  • build process
  • building documents
  • c

  • CC
  • CCNOPT
  • CCOPT
  • CCOPTARCH
  • CCPP
  • center of mass motion
  • CHARMM compatibility
  • CNOPT
  • column, batch coupling constant
  • COMMARCH
  • COMMDEVICE
  • COMMINC
  • COMMLIB
  • COMMROOT
  • compilation
  • configure details
  • configure files
  • configure options
  • coordinate trajectory write frequency
  • COPT
  • COPTARCH
  • couple to temperature bath
  • CTOFNB (xplor)
  • CTONNB (xplor)
  • CUTNb (xplor)
  • d

  • damping rate, dihedral Langevin dynamics
  • DCFLAGS
  • degree of separation
  • DICE
  • DICEROOT
  • dielectric constant
  • dihedral dynamics
  • dihedral dynamics, with Langevin dynamics
  • dihedral Langevin damping rate
  • dihedral Langevin temperature
  • DIHEDRAL parameter keyword
  • directory structure, FMD
  • document regeneration
  • dynamics options
  • e

  • E14Fac (xplor)
  • electric field parameters
  • electric field settings
  • electric field strength
  • electrostatic force trajectory write frequency
  • electrostatic interactions
  • electrostatic switching
  • electrostatic trajectory write frequency
  • enable, unit cell
  • energies.awk
  • energy audit frequency
  • energy minimization
  • energy minimization parameters
  • energy trajectory write frequency
  • engdump
  • EPS (xplor)
  • equilibration temperature, equilibration temperature
  • Example fmd Problem
  • example output
  • example, bpti.coor output
  • example, bpti.vel output
  • example, end of output file
  • exclusion policies
  • Execution of fmd
  • explicit electrostatics
  • extensions
  • f

  • Fast multipole method
  • FC
  • file compatibility
  • file formats
  • file, molecular structure
  • files, all-force force trajectory
  • files, all-force trajectory
  • files, coordinate trajectory
  • files, coordinates
  • files, electrostatic force trajectory, files, electrostatic force trajectory
  • files, energy trajectory
  • files, harmonic constraints column
  • files, harmonic constraints file
  • files, HDF
  • files, Langevin parameter
  • files, output
  • files, parameter, files, parameter
  • files, PDB
  • files, PSF
  • files, restart
  • files, sample user input
  • files, snapshot
  • files, trajectory
  • files, user input syntax
  • files, velocities
  • files, velocity trajectory
  • FINAltemp (xplor)
  • first time step value
  • FIRSttemp (xplor)
  • FMD directory structure
  • fmd directory structure
  • fmd.ui.tcl
  • fmdarch
  • FMM3D mode
  • FMM3D user parameters
  • FNOPT
  • FOPT
  • FOPTARCH
  • force fields
  • force test
  • format, all-force trajectory file
  • format, coordinate trajectory file
  • format, electrostatic trajectory file
  • format, initCoordsDataset
  • format, initCoordsFile
  • format, initCoordsFormat
  • format, output files
  • format, restart file
  • format, snapshot file
  • format, velocities
  • format, velocitiesDataset
  • format, velocity trajectory file
  • frequency, DICE updates
  • g

  • global force test switch
  • global test
  • h

  • harmonic constraint function
  • harmonic constraint parameters
  • harmonic constraints
  • harmonic constraints data column
  • harmonic constraints file
  • harmonic reference points
  • HDF
  • HDF files
  • hdf2pdb
  • hdfdump
  • hdflist
  • HDFROOT
  • HPF
  • HPFNOPT
  • HPFOPT
  • i

  • IEQFrq (xplor)
  • IMPROPER parameter keyword
  • initial coordinates file
  • initial temperature
  • initializing random number generator
  • Installation of fmd
  • interactive MD
  • Introduction to fmd
  • ISVFrq (xplor)
  • l

  • Langevin data column
  • Langevin dynamics flag
  • Langevin dynamics parameters
  • Langevin parameter file
  • Langevin temperature
  • load balance send stats
  • load balancing
  • load balancing cycle
  • load balancing strategy
  • long range force splitting
  • long-range forces
  • m

  • Manual configuration
  • margins, patch
  • MDscope
  • minimization movement
  • modifications
  • molecular data file formats
  • multiple time step algorithm
  • multiple time stepping
  • multipole expansion levels
  • multipole expansion terms
  • n

  • NACC psf keyword
  • NATOM psf keyword
  • NBFIX parameter keyword
  • NBONDS psf keyword
  • NBXMod (xplor)
  • NDON psf keyword
  • NGRP psf keyword
  • NIMPHI psf keyword
  • NNB psf keyword
  • NONBONDED parameter keyword
  • Notes on Non-Bonded Interactions
  • NPHI psf keyword
  • NSAVC (xplor)
  • NSAVV (xplor)
  • NST psf keyword
  • NSTEp (xplor)
  • NTHETA psf keyword
  • NTITLE psf keyword
  • number of time steps
  • o

  • output, format
  • p

  • pair exclusion
  • pair list distance
  • pair list generation
  • pair list margin test
  • pairlistdist, calculation
  • parallel performance
  • parameter files
  • parameter keyword, !
  • parameter keyword, ANGLE
  • parameter keyword, BOND
  • parameter keyword, DIHEDRAL
  • parameter keyword, IMPROPER
  • parameter keyword, NBFIX
  • parameter keyword, NONBONDED
  • parameter keyword, REMARK
  • patch margins
  • PDB files
  • periodic boundary condition parameters
  • PSF files
  • psf keyword BASE64
  • psf keyword NACC
  • psf keyword NATOM
  • psf keyword NBONDS
  • psf keyword NDON
  • psf keyword NGRP
  • psf keyword NIMPHI
  • psf keyword NNB
  • psf keyword NPHI
  • psf keyword NST
  • psf keyword NTHETA
  • psf keyword NTITLE
  • psf keyword PSF
  • PSF psf keyword
  • q

  • quanta2fmd
  • Quick Overview of fmd
  • r

  • random number seed
  • References and additional readings
  • regenerating documents
  • REMARK parameter keyword
  • required user parameters
  • rescaling temperature
  • restart frequency
  • restart, files
  • restart, format
  • s

  • sample parameter file
  • sample psf file
  • sample user input
  • SAVE (xplor)
  • SCC
  • SCNOPT
  • SCOPT
  • SCOPTARCH
  • send-pr
  • setting all-force trajectory file
  • setting all-force trajectory file format
  • setting all-force trajectory file name
  • setting all-force trajectory write frequency, setting all-force trajectory write frequency
  • setting applied electric field on
  • setting center of spherical BC's
  • setting coordinate trajectory file format
  • setting coordinate trajectory file name
  • setting coordinate trajectory write frequency
  • setting cut-off distance
  • setting DICE update frequency
  • setting electric field strength
  • setting electrostatic force trajectory file
  • setting electrostatic force trajectory write frequency
  • setting electrostatic trajectory file format
  • setting electrostatic trajectory file name
  • setting electrostatic trajectory write frequency
  • Setting energy audit frequency
  • setting energy minimization
  • setting energy trajectory file name
  • setting energy trajectory write frequency
  • setting exclusion policy
  • setting first boundary condition radius
  • setting first force constant
  • setting first force exponent
  • setting first time step value
  • setting FMM3D usage
  • setting harmonic constraints
  • setting harmonic constraints file
  • setting harmonic data column
  • setting harmonic energy function
  • setting harmonic reference points
  • setting initial coordinates dataset, setting initial coordinates dataset
  • setting initial coordinates file format
  • setting initial velocity file
  • setting job subtitle
  • setting job title
  • setting Langevin data column
  • setting Langevin dynamics
  • setting Langevin parameter file
  • setting Langevin temperature
  • setting maximum movement during minimization
  • setting multipole expansion levels
  • setting multipole expansion terms
  • setting output file
  • setting output file format
  • setting pair list distance
  • setting parameter files
  • setting patch margins
  • setting PDB coordinates file
  • setting rescaling temperature
  • setting restart file format
  • setting second boundary condition radius
  • setting second force constant
  • setting second force exponent
  • setting snapshot file format
  • setting snapshot file name
  • setting snapshot interval, setting snapshot interval
  • setting spherical boundary conditions
  • setting steps per cycle
  • setting structure files
  • setting switching distance
  • setting switching mode
  • setting temperature
  • setting temperature rescaling frequency
  • setting time step
  • setting time steps
  • setting velocities file format
  • setting velocity trajectory file
  • setting velocity trajectory file format
  • setting velocity trajectory write frequency
  • setting working directory
  • SHIFt (xplor)
  • snapshot start
  • snapshot stop
  • snapshot, file name
  • SP2 environment variables
  • spherical boundary condition constant, first
  • spherical boundary condition constant, second
  • spherical boundary condition exponent, first
  • spherical boundary condition exponent, second
  • spherical boundary condition parameters
  • spherical boundary condition radius, first
  • spherical boundary condition radius, second
  • spherical boundary conditions flag
  • spherical boundary conditions, center
  • splitting, long range forces
  • steps per cycle
  • stripmine.pl
  • subtitle specification
  • super node
  • supported features
  • swap.awk
  • switch distance
  • switching mode
  • t

  • temperature bath
  • temperature rescaling frequency
  • temperature rescaling parameters
  • temperature, dihedral Langevin dynamics
  • test pair list margin
  • TESTED
  • time step specification
  • time step value, first
  • title specification
  • TRAJectory (xplor)
  • trajectory files
  • trajectory, all-force
  • trajectory, all-force force
  • trajectory, all-force write frequency, trajectory, all-force write frequency
  • trajectory, coordinate
  • trajectory, coordinate write frequency
  • trajectory, electrostatic
  • trajectory, electrostatic force
  • trajectory, electrostatic write frequency, trajectory, electrostatic write frequency
  • trajectory, energy
  • trajectory, energy write frequency
  • trajectory, velocity
  • trajectory, velocity write frequency
  • trouble report
  • TRUNcation (xplor)
  • u

  • unit cell, enable
  • unit cell, origin
  • unit cell, periodicity
  • unit cell, X axis
  • unit cell, Y axis
  • unit cell, Z axis
  • user input file format
  • user input file syntax
  • utilities
  • v

  • Validation
  • van der Waals interactions
  • velocities file
  • velocities file format
  • VELOcity (xplor)
  • velocity integration
  • velocity trajectory write frequency
  • VSWItch (xplor)
  • w

  • working directory
  • x

  • X-PLOR compatibility
  • xplor equivalent parameters, xplor equivalent parameters

  • This document was generated on 20 March 2000 using the texi2html translator version 1.52.