\section{What is \MODELLER ?}

\MODELLER\ is a computer program that models 3D structure of proteins
by satisfaction of spatial restraints. 

\MODELLER\ is most frequently used for homology or comparative protein 
structure modeling: The user provides an alignment of a sequence to be modeled 
with known related structures and \MODELLER\ will automatically calculate 
a model with all non-hydrogen atoms.

More generally, the input to the program are 
restraints on the spatial structure of the amino acid sequence(s) 
and ligands to be modeled. The output is a 3D structure that satisfies 
these restraints as well as possible.
Restraints can in principle be derived from a number of 
different sources. These include related protein structures (comparative 
modeling), NMR experiments (NMR refinement), rules of secondary 
structure packing (combinatorial modeling), cross-linking experiments,
fluorescence spectroscopy, image reconstruction in electron microscopy,
site-directed mutagenesis, intuition, residue--residue and atom--atom 
potentials of mean force, \etc. The restraints can operate on distances, 
angles, dihedral angles, pairs of dihedral angles and some other spatial 
features defined by atoms or pseudo atoms. Presently, \MODELLER\ 
automatically derives the restraints only from the known related structures 
and their alignment with the target sequence.

A 3D model is obtained by optimization of a molecular probability 
density function (pdf). The molecular pdf for comparative modeling
is optimized with the variable target function procedure in Cartesian space 
that employs methods of conjugate gradients and molecular dynamics with 
simulated annealing.

\MODELLER\ can also perform multiple comparison of protein sequences and/or 
structures, clustering of proteins, and searching of sequence databases. 
The program is used with a scripting language and does not include any 
graphics. It is written in standard \FORTRAN~90 and is meant to run on a 
\UNIX\ computer.
