Insight IImanual
Insight IImanual
Modeling Environment
Viewer, Docking, Analysis,
Ampac/Mopac, Builder
Release 2000
June 2000
APPENDICES
Figures
Figure 1. Viewer Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
Figure 2. Mouse Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
Figure 3. Dial Box Functions . . . . . . . . . . . . . . . . . . . . . . . . . . .16
Figure 4. Using the Mouse as a Dial Box Control. . . . . . . . . . . .17
Figure 5. Commands in the Molecule Pulldown . . . . . . . . . . . .23
Figure 6. Color Command in the Molecule Pulldown . . . . . . . .32
Figure 7. Element Command in the Modify Pulldown . . . . . . .35
Figure 8. Color Molecule Command Parameter Block. . . . . . . .37
Figure 9. Center Command in the Transform Pulldown . . . . . .44
Figure 10. Label Command in the Graph Pulldown . . . . . . . . .45
Figure 11. Sample Spectrum. . . . . . . . . . . . . . . . . . . . . . . . . . . .53
Figure 12. Example of Insight II Help Viewer Window . . . . . . .68
Figure 13. The Pilot Button . . . . . . . . . . . . . . . . . . . . . . . . . . . .73
Figure 14. The Forward Button . . . . . . . . . . . . . . . . . . . . . . . . .74
Figure 15. Spreadsheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82
Figure 16. Molecule Browser . . . . . . . . . . . . . . . . . . . . . . . . . .114
Figure 17. Dial Box for Torsion Navigation . . . . . . . . . . . . . . .124
Figure 18. Example of the Fuse_1 command . . . . . . . . . . . . . .158
Figure 19. Example of 2-pair Intermolecular Fusion . . . . . . . .159
Figure 20. Example of 3-pair Fusion . . . . . . . . . . . . . . . . . . . .160
Figure 21. Example of Close Atom Fusion . . . . . . . . . . . . . . . .162
Tables
Table 1. Function Key Descriptions . . . . . . . . . . . . . . . . . . . . . . 18
Table 2. Operator Classes and Syntax . . . . . . . . . . . . . . . . . . . 269
Table 3. Reserved Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Table 4. Operator Precedence . . . . . . . . . . . . . . . . . . . . . . . . . 330
Table 5. Intrinsic Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Table 6. Insight II Commands that Return a Value . . . . . . . . . 334
Table 7. Insight II Parameter Names . . . . . . . . . . . . . . . . . . . . 335
Table 1. Out-of-Plane Assignment Rules . . . . . . . . . . . . . . . . 446
Table 2. Atom Record Definition . . . . . . . . . . . . . . . . . . . . . . . 456
Table 3. Torsion Record Definition . . . . . . . . . . . . . . . . . . . . . 459
Table 4. Pseudo Atom Definition. . . . . . . . . . . . . . . . . . . . . . . 461
Table 5. Pseudo Atom Set Definition. . . . . . . . . . . . . . . . . . . . 463
4. Viewer Module 77
Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
Window Layouts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
Spreadsheet Introduction . . . . . . . . . . . . . . . . . . . . . . .80
Creating a Spreadsheet. . . . . . . . . . . . . . . . . . . . . .82
Modifying the Spreadsheet Layout . . . . . . . . . . . .83
Manipulating Spreadsheet Data . . . . . . . . . . . . . . .83
Displaying Spreadsheet Data . . . . . . . . . . . . . . . . .83
Using the Spreadsheet . . . . . . . . . . . . . . . . . . . . . .84
Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .84
Data Value Editing . . . . . . . . . . . . . . . . . . . . . .84
Cell References. . . . . . . . . . . . . . . . . . . . . . . . .86
Command Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
Module Pulldown (MSI logo icon) . . . . . . . . . . . . . . . .87
Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87
Biopolymer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87
DelPhi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
Solvation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
Discover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
Discover_3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
Docking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89
MCSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89
Ludi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89
Search_Compare. . . . . . . . . . . . . . . . . . . . . . . . . . .89
CHARMm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
MBOND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Homology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
NMR_Refine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Xsight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Binding Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Ampac/Mopac . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
DMol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
Turbomole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
Zindo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
QuanteMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
DeCipher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
Licenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
Session Pulldown . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
Environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94
Light_Source. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95
Cmd_Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
Molecular Graphics
A somewhat arbitrary, but frequently used, distinction is to divide
molecular modeling techniques into molecular graphics, and com-
putational chemistry. Molecular graphics is the core of a modeling
system, providing for the visualization of molecular structures
and their properties. Molecular graphics provides the ability to
Molecular Mechanics
When a structure is built it usually needs to be refined to bring it
to a stable, sterically acceptable, conformation. This is especially
true after building certain structures in three dimensions, when
the process of adding fragments can generate serious atom
clashes. The refinement process is known as minimization (or opti-
mization), and is an iterative procedure in which the coordinates
of the atoms are adjusted so that the energy of the structure is
brought to a minimum. The structure with the lowest energy is
considered to have the most stable arrangement, and by definition
the optimum geometry. Minimization generally results in a mod-
eled structure with a close resemblance to a real physical structure.
The ability to compute the energy of a structure is a necessary part
of the minimization process, and is an extremely important aspect
of a modeling system.
Molecular mechanics techniques take a classical approach to cal-
culating the energy of a structure. The molecule is treated essen-
tially as a set of charged point masses (the atoms) which are
coupled together with springs. The total energy of a structure is
For this reason, each atom in a structure must have a potential type
assigned before the energy calculation is run. The potential type
assigned depends on the hybridization state and environment of
each atom. The forcefield parameters themselves are stored in the
parameter file according to potential type.
Molecular mechanics enables the energy of a structure to be eval-
uated quickly, and may be applied to structures of a size up to and
including large proteins. Energy calculations have a range of
applications in molecular modeling. They can be used in confor-
mational analysis to evaluate the relative stability of different con-
formers (see below), and to predict the equilibrium geometry of a
structure. They can also be used to evaluate the energy of two or
more interacting molecules, as when docking a substrate into an
enzyme active site (Basics Application 3 illustrates docking in the
formic acid dimer using the Docking module.)
As described above, molecular mechanics energy calculations are
an integral part of energy minimizations. From the energy func-
tions it is possible to evaluate the forces acting on the atoms. Min-
imization actually uses information on the atomic forces to adjust
atomic coordinates in an iterative manner to bring the structure to
a minimum energy conformation. (Basics Application 1 and 2
illustrate use of the Optimize command in the Builder module.)
There are several different minimization algorithms which can be
used, depending on the nature of the problem (see Basics Applica-
tions 8 and 10).
Molecular Dynamics
A great deal of useful information can be gained from the study of
minimum energy structures. However, these structures are static
models, whereas in reality, molecules are flexible structures subject
to thermal motion. The technique of molecular dynamics can be
used to simulate the thermal motion of a structure as a function of
time, using the forces acting on the atoms to drive the motion.
Starting with the molecular mechanics energy description of the
structure as described above, the forces acting on the atoms can be
evaluated. As the masses of the atoms are known, Newton’s sec-
ond law of motion (force = mass * acceleration) may be used to
Quantum Mechanics
The electronic structure of a molecule is of prime importance in
determining its properties. When a drug molecule and receptor
interact, each “sees” the other as a blob of electron density which
is held together by the positive charges of the atomic nuclei.
Although molecular mechanics calculations are extremely useful
they consider essentially only the position of the nuclei and there-
fore cannot fully represent chemical reality. Molecular mechanics
provides no information on electronic structure, and furthermore
cannot be used when the molecule is not in its ground state, or
when covalent bonds are being broken or formed. There are a
number of properties that can be derived only using quantum
mechanics calculations.
Starting with a specified nuclear geometry, quantum mechanics
calculations solve the Schrodinger equation for this arrangement
of electrons and nuclei. This yields both the energy of the mole-
cule, and the associated wave function from which electronic
properties, such as electron density, can be calculated.
The energy of a structure calculated quantum mechanically can be
used in conformational searches, in the same way that the molec-
ular mechanics energy is used. Quantum mechanics calculations
can also be used for energy minimization. However, quantum
mechanics calculations typically consume a far greater amount of
computer resource than molecular mechanics calculations, and are
also generally limited to small molecules, whereas molecular
mechanics can be applied to structures up to the size of large pro-
teins. Molecular mechanics and quantum mechanics should thus
be viewed as complementary techniques. For instance, conforma-
tional energy calculations for a peptide are best carried out using
molecular mechanics. However, molecular mechanics is generally
ineffective for handling conjugated systems, while quantum
mechanics, in calculating electronic structure, takes account of
conjugation automatically and is therefore recommended for opti-
Finally. . .
Once a modeling experiment is complete it is essential to be able
to convey the results. Hardcopy plots of molecular structures with
suitable annotations convey a large amount of information, and
the ability to incorporate structural displays into reports produced
using word processing packages is extremely useful. (Basics
Application 7 illustrates annotation and the production of hard-
copy.)
Starting Insight II
From the UNIX shell prompt type:
> insightII
Using Insight II
Building, displaying, and studying molecules is done by issuing
commands to the Insight II program. Most commands create and
affect objects. Further details on the object types in Insight II can be
found at the end of this chapter.
Commands
Commands can be issued in three ways: from the keyboard, by
selecting commands from pulldowns (menus), or by picking icons.
Picking an icon is equivalent to selecting a pulldown or a com-
mand from a pulldown. Each command has an equivalent typed
and menu form.
Typed commands are entered at the Command: prompt located in
the bottom of the Insight II program interface window. The box
around the command prompt is referred to as the command area
(see Command Area and Command Prompt in Figure 1). Typed
commands may also be placed in a file which can be executed
using the Source_File command.
If a command is presented in pulldown form, it appears along the
left of the interface window or along the top of the window (if the
number of parameters associated with the command is particu-
larly large).
Certain key pulldowns and commands can be accessed by clicking
on icons. When the Insight II program is started, a palette of icons
is provided (see Icon Palette in Figure 1). You may define the last
five icon positions to execute different commands.
Although some basic commands are self-contained, most com-
mands require you to input more information than just the com-
mand name. These additional pieces of information are referred to
as parameters for a command. In the menu version of a command,
the parameters are presented as boxes to be filled in. In the typed
form of the command, the parameters are listed after the com-
mand name and are separated by spaces.
When filling in parameter boxes in a menu, first select the param-
eter using the mouse. You may type in the parameter from the key-
board, and in some instances a value or object for the parameter
can be specified using the mouse. For example, if you need to spec-
ify the name of one of several molecules that are currently being
displayed, you could type in the name, use the mouse to pick the
molecule, or choose the molecule name from a list. All picking and
choosing is done by placing the cursor at the desired area of the
screen, and pressing the left mouse button. Other ways of using
the mouse are described later in this chapter.
directly through specific commands, and you cannot alter this dis-
play.
Figure 1. Viewer Module
Pulldowns
Module Icon
Icon Palette
Command Area
Command Prompt
Information Area
Objects
You can access and control objects in Insight II such as molecules,
graphs, and grids in commands by their unique name. You can
also manipulate objects, such as translating and rotating using the
mouse, function keys, physical dial box and the screen dial box.
These manipulations act on the connected object. You can also
select atoms that are affected by Insight II commands.
Accessing Objects
By Object Name
Each object in Insight II has a unique name. Insight II provides
defaults, which you can change with the Object/Rename com-
mand. For details about object names, see the Object Names section
later in this chapter.
By Object Connection
Either one object or all objects on the screen are “connected” at all
times. The connected object is specified immediately after the Conn
Obj line at the lower left corner of the Insight II window, by the
object’s name, or else the word World. The connected object is
affected by the mouse, function keys, and dials.
You can change which object is the connected object using any of
the following methods:
♦ the Transform/Connect command
♦ function keys 10 and 11
♦ holding the <control> key while picking the object with the
middle or right mouse button
Details about how to manipulate connected objects are covered on
the following pages.
By Atom Selection
Atoms can be selected with the left mouse button. Selected atoms
are shown with a white highlight in line mode or with stripes in
Manipulating Objects
You can manipulate objects with the mouse, dials, on-screen dials,
or function keys.
Note: In the following descriptions of functionality, the x axis is the
axis which lies horizontally in the plane of the screen. The y axis is
the axis which lies vertically in the plane of the screen. The z axis
is perpendicular to the x and y axes.
Mouse Functions
There are two basic actions you perform with the mouse: moving
the mouse to move the cursor on the screen, and pressing mouse
buttons. These two actions are combined to carry out a variety of
functions, such as accessing a pulldown, choosing commands or
parameters, picking a molecule or parts of a molecule on the
screen, and rotating, translating, or changing the viewing size of a
molecule. These functions are described in Figure 2.
e
om
s
s
at
om
om
o
te
sl
at
s
ss
ta
om
an
om
At
At
le
a
Ro
es
Tr
om
/L
tip
At
At
le
ed
om
du
or ox
tip
nd
nd
ul
At
nd
An
ll
ed e
At
si
le e B
tM
tA
le lat
ul
ta
ta
Bo
n
Re
ct
M
tA
Se ans
ec
l
ec
ec
ec
Se g
le
ct
ct
ct
ct
ct
nn
c
nn
l
se
se
se
To
Tr
le
le
le
le
Co
Co
De
De
Se
Se
De
Se
Se
s
es
n
ld
io
kn
s
s
s
or
rs
s
ic
ct
ct
ct
ct
n
To
W
Th
je
je
je
io
io
je
Ob
Ob
Ob
rs
rs
le
n/
Ob
e
tiv
To
To
ec te
tio
ca
ec e
d
d
d
d
nn sla
nn t a t
nn v e
Ac
te
te
te
si
te
e
/S
nn e
Co Mo
at
rs
ec
Po
Co o
Co t a t
Co ran
ec
te
om
tiv
ve
Ro
ta
ab
Z
Z
T
Ac
Re
Ro
Zo
Sl
180.0
Rotate in x
(dial 1)
Translate in x
Rotate in y (dial 5)
(dial 2)
Translate in y
(dial 6)
Rotate in z
(dial 3)
Translate in z
(dial 7)
Scale
(dial 4) Slab thickness
(dial 8)
Silicon Graphics
Dial Box
X Rotate Y TranNSL
Function Keys
Across the bottom of the Insight II program’s interface screen are
a row of boxes with words and numbers. These are function keys.
Each function key performs a command. You can use a function
key in two ways: you can select it on the screen with the mouse, or
you can depress it on the keyboard. For example, function key 6
(on the screen) or <F6> (on the keyboard) causes all windows asso-
ciated with the current Insight II session to pop to the front of the
screen. A brief description of each function key follows:
Table 1. Function Key Descriptions
<F1> Full Screen. Toggle the Insight II program’s window so
that the black region of the window fills the entire
screen.
<F2> Stereo Sep. Toggles the function of the eighth dial so
that it can be used to control the stereo separation for
split pair stereo
<F3>, <F4>, <F5>
X, Y, Z Rotate. Rotates the connected object 90
degrees.
<F6> Windows Pop. Raise the Insight II windows so that the
main window is above all other applications on the
desktop and the subwindows are above the main win-
dow.
<F7> Next Torsion. Toggles the function of the right-hand
side of the dial box when there is one active torsion so
you can navigate through the defined torsions to acti-
vate the desired one.
<F8> Anim Frame/Speed. Toggles an animation from being
automatically updated to manually updated, or vice
versa. This function key also toggles the function of the
eighth dial from controlling the speed of the animation
to which frame is displayed, or vice versa. This key is
only enabled when an animation is present.
<F9> Textport on/off. Toggles the display of the textport
window from which Insight II was started. The textport
displays information that is too lengthy to be displayed
in the information area.
Atom Selection
Atom selection is an interactive, user-defined subset of atoms. This
subset is known to the system as ATOM_SELECTION. Refer to the
Mouse Graphics figure on page 2-5. The following tools and con-
ventions are used to define this subset.
Bond Selection
Clicking on a bond selects both of the atoms connected by the
bond.
Toggling Selection
Hold down the <shift> key while selecting to add atoms to, or
remove atoms from what you have already selected.
Picking:
Inking:
Transforming:
Connecting:
NOTE: to make a selection while a picking parameter has focus,
hold down the ALT key.
Deselecting
To deselect all atoms, click over empty space.
Selection Levels
Atoms can be selected at three levels, atom, monomer/residue,
and molecule. A single click on an atom selects the atom. Double
click on an atom to select all the atoms in the residue containing
that atom. Triple click to select all the atoms in the molecule.
A default selection level can be set with the Selection_Level icon,
discussed on the following pages.
Using ATOM_SELECTION
The Builder module uses selected atoms directly. Select the atoms
to be affected and activate the command.
Use the string ATOM_SELECTION in specification parameters
such as Molecule Spec to affect selected atoms from commands.
ATOM_SELECTION is the subset which holds the selected atoms.
Moving
Selected atoms can be moved with the mouse. Position the selec-
tion cursor over a selected atom. Next, press and hold the left
mouse button until the cursor changes to:
.
Now you can drag the atoms to their new location. Monitors can
be added to help you position the atoms. Note that the movement
is in the plane of the screen.
Deleting
Selected atoms can be deleted by pressing the <Delete> key on the
keyboard.
Command Hierarchy
The Insight II program’s commands are organized in a hierarchy.
At the top of the organization are the modules. Next are the pull-
downs, and at the bottom of the hierarchy are the commands.
Modules
The base modules are: Viewer, Biopolymer, Builder, Docking,
Ampac/Mopac, Analysis, and DeCipher. There are also other
modules which may be available depending on your scientific area
of interest. Each module is a family of related commands. For
example, the Viewer module allows you to view molecules, con-
tours, and other graphical objects in different ways. You can tell
what module of commands is active by looking at the window
title. Following the Insight II program name and version number
is the name of the module (see Current Module Name in Figure 1).
Pulldowns
Below modules in the command hierarchy are pulldowns. These
are sets of related commands. You can tell which pulldowns exist
in the module you are currently in by looking at the top bars of the
Insight II program’s window. The names of the pulldowns are
listed horizontally along these bars (see Pulldowns in Figure 1).
There are more than two dozen pulldowns. Only some of these are
present in any one module. For example, only the Analysis mod-
ule contains the Trajectory pulldown. To execute a command, you
must be in a module that includes the pulldown that has that com-
mand. For example, if you want to load in atomic trajectory data
and animate molecules with it, you must go to the Analysis mod-
ule. This is required whether you are using menu or typed com-
mands.
The pulldowns listed along the top-most bar are present in every
module, and are collectively named the Viewer module. Those
along the second menu bar are available in whatever is the current
module, but not necessarily in any other module. Some pulldowns
are available in more than one module. These appear in the second
menu bar whenever you are in those modules.
Several of the most commonly used pulldowns can be accessed
either through the menu bar or by picking the appropriate icon
from the icon palette. Note that the icon functions do not vary from
module to module. The pulldowns (or commands) associated with
icons are consistent through all modules.
Get
Put
Set_Defaults
Color
Transparency
Display Commands
Label
Bond_Order
Surface
Render
Ribbon
Color_Ribbon
SecondaryRender
List
Tabulate
Browse
Commands
Below pulldowns in the command hierarchy are the commands
themselves. For example, the Molecule pulldown contains the
commands: Get, Put, Set_Defaults, Color, Transparency, Display,
Label, Bond_Order, Surface, Render, Ribbon, Color_Ribbon,
SecondaryRender, List, Tabulate, and Browse (see Commands in
Figure 5). Some commands are unique to only one pulldown,
while others may appear in several pulldowns. For example,
Transform is the only pulldown containing the Center command
(i.e., there is only one Center command in all of the pulldowns).
Therefore, when you type in a command that appears in only one
pulldown you can always uniquely identify it by just the com-
mand name (e.g., Center). A command that appears in more than
one pulldown is not guaranteed to be unique. For example, there
is a Get command in each of the Molecule, User, and Contour
pulldowns (among others). If you want to get a molecule, you use
the Get command from the Molecule pulldown, while the Get
command from the User pulldown must be specified to get user
objects.
Note that the Insight II program provides a default object for each
module, and a default object for all modules. The default objects
are Molecule and Object. When typing in commands that require
an object to uniquely identify the command, the object specifica-
tion may be omitted if the default object is desired. For example,
Get Molecule may be entered as Get. Otherwise, use the com-
mand and pulldown name together as in: Get Subset.
Menu Icons
The top six icons (including the MSI logo) access pulldown menus.
Clicking one of these icons pops up the specified pulldown. Note
the small arrowhead in the lower right corner of most of these
icons, to indicate that it accesses a pulldown menu.
FF
accesses the Forcefield menu.
Subwindow Icons
These icons bring up additional windows.
ON
OFF bring up the molecule display parameter block (Display
Molecule).
Help Icons
Icon Palette
The Insight II program provides an icon palette which includes
buttons for quick access to frequently used commands. The pre-
defined icons that automatically appear in Insight II are described
in the preceding section. It is easy to substitute your own choices
of frequently used commands for the default ones by following
these steps:
1. Use the Session/Button command to override one of the
default buttons with your own command. The buttons are
numbered from the top, starting with 1. If you would like the
icon button press to pop up a parameter block, in the same
manner as the default icons, just end the command string with
a ^ symbol.
Nongraphics Mode
The Insight II program can be run without generating any graph-
ics. At the operating system prompt, the command to run the pro-
gram unattached is:
Command Name
Value-Aid
Enumerated Choice
Focus
Trigger Parameter
Typable Parameter
Non-typable Parameter
Parameter Blocks
A parameter block is labeled on top with the name of the com-
mand (see Command Name in Figure 6). Within each parameter
List Parameter
On/Off Parameter
Value-Aids
Value-aids are found in the value-aid block near the command’s
parameter block. If there is room, they are placed below the <Can-
cel> and <Execute> boxes. If there is not enough room there, the
value-aid block is placed to the side of the parameter block.
Each value-aid is directly linked to a particular parameter in the
parameter block for a command. This linkage is apparent when
you look at a value-aid block because it is labeled with the name of
the parameter to which it is linked. Below the name of the param-
eter to which it is linked are one or more boxes which are labeled
in the same fashion as parameter boxes.
The most common value-aid is a list of suggested values. For
example, when filling in the value for the Molecule Spec parame-
ter, a value-aid pops up displaying a list of all the molecules that
exist in the current session. You can select an entry from this value-
aid list, and your choice is automatically placed into the parameter
that is linked to the value-aid.
Another common value-aid controls the picking level. Some
parameters can be filled in by picking objects from the screen. For
example, when coloring atoms in a molecule, you must fill in the
Molecule Spec parameter. Although you can type in a value, it
may be easier to pick a value by pointing to it with the mouse.
Note, however, that whenever you pick an object, you need to
specify whether you want the pick resolved to the molecule, a sub-
set of the molecule, the monomer or residue, or the specific atom
level. This is an important specification. If you specify the mole-
cule name, then all of the atoms in the molecule are affected. Sim-
ilarly, if you specify a monomer or residue, then only the atoms in
that subunit are affected, and if you pick an atom, then only that
atom is affected. So whenever you must fill in a value for the Mol-
ecule Spec parameter, a value-aid appears. It offers you a set of
choices to determine the picking level: Molecule, Subset, Mono-
mer, Residue, or Atom. Note that Monomer and Residue are
equivalent when setting the picking level. (See Value-Aid in
Figure 6.)
Another common value-aid is the color palette (see Color Palette
in Figure 8). This value-aid appears whenever you are filling in a
parameter that specifies a color. Placing the cursor over any one of
the pre-assigned colors and pressing the picking mouse button
selects this color as the one to be used for the command. Similarly,
selecting the blended color in corner of the color palette selects that
color for the command. The blend can be customized to any mix-
ture of red, green, and blue by using the horizontal color bars. Use
the mouse and move the sliders to increase or decrease the amount
of red, green, or blue in the current color (Figure 8.)
Figure 8. Color Molecule Command Parameter Block
Color Palette
Red-Green-Blue Mix
Current Color
Pre-set Colors
Focus
As you fill in parameter values in the menu version of a command,
each typable parameter in turn is colored white. The focus is
whichever parameter is currently outlined in yellow. The top-most
typable parameter is usually the focus first. The focus parameter is
Inactive Parameters
A parameter block includes all of the parameters that can be used
for a given command. Depending on the value of some of the
parameters, other parameters may not be necessary or appropri-
ate. These parameters are inactive. You can use the Session/Cmd_
Display command to control whether inactive parameters are dis-
played in a light gray color, or are not displayed at all.
For example, consider the Color command in the Molecule pull-
down (see Figure 6). It only makes sense to specify R or S chirality
when you have chosen Chiral or Pro_Chiral for the Atom_Set
enumerated choice parameter. Therefore, unless you first choose
Chiral or Pro_Chiral, the R and S boolean parameter boxes are not
displayed (by default), or if specified by Session/Cmd_Display,
are drawn in light gray to indicate that they are inactive.
(presumably with at least one new parameter value). Or, you can
cancel the command.
The execution of some commands (in their menu form) may auto-
matically bring up different but related command menus. Com-
mands which correspond to such secondary menus are referred to
as activated commands. While in this mode, the Command prompt
changes to the word Activate. Secondary menus are used to step
you through a series of commands in a logical fashion. This is
done, for example, when creating a graph from atomic trajectory
information (with the Construct_Graph command in the Trajec-
tory pulldown). Since creating such a graph involves using several
different commands to define axis function data, the logical
sequence of commands is activated automatically.
Typed Commands
As mentioned previously, all commands are accessible in a fully
typed form. Note that an appropriate module must always be
selected before any non-Viewer command can be executed. To
select a module by typing, type the name of the module and then
the <Enter> key.
There is a direct correspondence between the order of the param-
eters as they are presented in a parameter block, and the order in
which they must be entered when typing in the full command.
When a command is typed in there is no value-aid available to
pick choices from. However, the Insight II program prompts for
omitted parameters if these are needed, and when available shows
defaults. Default enumerated parameters are immediately fol-
lowed by the word default, in angle braces: <default>. All other
defaults are enclosed in brackets. Pressing <Enter> when defaults
are available executes that command using default values.
To execute a command that you have typed, press the <Enter> key.
If the parameters necessary to complete the command have been
given, the command is executed. If there are missing parameters,
the program prompts you for the parameters needed to complete
the command. To cancel a typed command before <Enter> has
been pressed, you can backspace over each character in the com-
mand line. Or, easier still, press the letter u while holding down
the <Ctrl> key, or press <Esc>. This clears the command line
instantly. You can also use the <Esc> key to cancel a command that
is prompting for more input. Commands can be edited in the same
way as typable parameters.
If it is not clear to you how to finish a command or how to answer
a prompt, you may type a ^ (shift 6) and then hit the enter key. The
Insight II program responds by activating a parameter block and
setting the values that you have specified up until that point in the
command. You may then finish entering the command parameters
and execute the command as you normally would for a menu
command. The command is logged as a menu command. Note
that the ^ must not appear within a quoted string. This procedure
does not work for concurrent commands (see next section).
Parameters that were described as “non-typable” in the parameter
block description need not be entered in a typed command if the
default is desired. However, such parameters must be typed in if a
choice other than the default is desired. The three types of param-
eters that may be omitted when typing in a command are the on/
off parameters, the enumerated choice parameters, and the list
parameters.
There are basic rules for specifying the different types of parame-
ters described in the parameter blocks.
Parameters must be separated by spaces when entered on a com-
mand line. Triplet parameters, which are used to specify three
related numbers, such as coordinates (see the Triplet Parameter in
Figure 9), must have a comma separating each of the three num-
bers when they are entered on a command line. There must be no
spaces between the numbers and the commas. In the case of a
parameter that is text, and where that text includes spaces, all of
the text must be enclosed in quotation marks.
For example, suppose you want to label a graph axis as my axis
label. The command that you use is Label in the Graph pulldown,
and the pertinent parameter is Label Text (see Figure 10). To type
in the identical command, you must enclose the label text in
quotes. For example:
Concurrent Commands
Concurrent commands allow you to type a command in the com-
mand area while a parameter block is active. Concurrent com-
mands are entered by first selecting the command area, then
typing the concurrent command. The command area is selected by
moving the mouse to the command area and depressing and
releasing the picking mouse button. The command area is colored
yellow to signal that a command may be typed in. After the com-
mand is entered the parameter block becomes active again, and
the menu command can then be executed. Any command in the
top menu bar, which does not create or delete an object on the
screen, can be entered as a concurrent command.
Triplet Parameter
Connected Object
On/Off Parameters
When specifying an on/off parameter as on, it may be typed as on,
or as the name of the parameter itself. When specifying an on/off
parameter as off, it may be typed as off, or as the name of the
parameter preceded by a dash (-).
For example, the Distance command has the parameter Monitor.
When the parameter is on, the distances selected are by default
or:
The 0 and 10 are the values for the parameter’s minimum distance
and maximum distance. The typed forms of the command to per-
form the distance calculation only once are:
or:
Atom1 and atom2 must be entered in the proper syntax for atom
specification:
molecule:monomer/residue:atom
Enumerated Parameters
Enumerated parameters are entered by typing the text of the enu-
merated choice. In the above Distance command example, the
Monitor parameter actually controls whether or not an additional
enumerated parameter can be specified. The full syntax for the
Distance command allows for the addition of atoms to the list of
atoms having their distances monitored (using the Add option).
The command also allows for the deletion of atoms from the list of
atoms having their distances monitored (using the Remove
option). Finally, the list of atoms may be cleared entirely (using the
Clear option). Depending on the enumerated choice selected,
additional parameters may be necessary to completely specify the
command. In the case of Add, the parameters for the minimum
and maximum distances must also be specified.
Following are examples of the Distance command:
These two commands add the specified atoms (atom1 and atom2)
to the list of atoms having their distances monitored. Note that
Add does not have to be entered since it is the default when Mon-
itor is specified. Also note that the 0 and 10 specify the minimum
and maximum distance to be used when monitoring the pair of
This command clears the list of atoms having their distances mon-
itored. Note that the specification of atoms is not necessary in this
form of the command.
List Parameters
List parameters are entered by typing the text of the desired choice
from the list. For example:
History
In addition to its log file, the Insight II program maintains a history
of the most recent commands executed. Both typed and
menu-entered commands are stored in the history buffer. Com-
mands can be accessed by typing a built-in history command to
the command prompt in the command line. Built-in history com-
mands have the following form:
!! Execute the last command again.
!-n Execute the nth command counting back from the last
(last=0).
!string Execute the most recent command starting with string.
&& Bring the last command into the command line for edit-
ing.
&-n Bring the nth command counting back from the last
into the command line.
Default Objects
Commands can always be uniquely identified by both the com-
mand name and the object (pulldown).
For example, Get Molecule, Get Contour, and Get User uniquely
identify the proper command, while simply typing Get is too
ambiguous for the Insight II program. If Get is entered alone, you
are prompted with appropriate choices.
For typed commands, the program is set up to assume a default
object if one is not provided. For example, unless you reconfigure
the Insight II program, the Molecule object is set up as the default.
You can type get pdb pdb1crn.ent crn to get the crambin protein
from the Brookhaven library of proteins. You do not have to type
get molecule pdb pdb1crn.ent crn, because the default object is set
up as Molecule.
Even with a default object, you still might find it cumbersome to
have to type in the object for commands that are not included in
the default object. For example, if the default object is Molecule,
and you want to delete some Object (call it crn), you could type
delete object crn. This specifies which Delete command to use,
since Delete exists in both the Object and other pulldowns (and is
therefore not uniquely named). Because this is cumbersome, two
default objects are defined. One default is for all of the modules,
while the other is defined on a per-module basis.
Object Types
Central to the understanding of the Insight II program is the con-
cept of objects. Objects are unique entities which may be addressed
by name within the program. There are several different types of
objects, each with its own unique characteristics and properties.
Throughout this section, reference is made to other sections of this
manual where you can find additional information on defining
and manipulating these object types.
Molecular Objects
The primary type of object is the molecule. Molecules can come
from a variety of sources, including:
♦ Molecular fragment files (see Get Fragment in the Fragment
pulldown)
♦ Brookhaven Protein Data Bank (see Get Molecule, PDB option)
♦ Cambridge Crystal Data Base (see Get Molecule, Cambridge
option)
♦ Energy minimization or dynamics simulations performed by
the Discover program (see Get Molecule, Archive option, and
Get Trajectory in the Trajectory pulldown in the Analysis
module)
User Objects
The second type of object is the user object. User objects are com-
posed of dots, vectors, or text. Any given user object is composed
of one of these types. A user object has only a name. It does not
contain any divisible elements which can be referred to separately.
The entire user object color can be changed at one time, but indi-
vidual pieces cannot be changed. For the vector and text types,
there can be only one color for the entire object. For the dots type,
each dot has an individually specified color.
For further details on the format of the user object definition files,
see the online documentation for the Get User command, in the
Viewer module.
Contour Objects
The third type of object is the contour. Contours are used in the
solution of molecules via x-ray techniques and in the display of
output from ab initio programs such as Ampac, Mopac, and DMol.
Contouring may also be used for the display of energy levels (e.g.,
in the creation of phi/psi maps) and in displaying isopotential sur-
faces from DelPhi and DMol program output. Commands in the
Contour pulldown allow you to create contours from grid data.
The contour, like a user vector mode object, can have only a single
color. Unlike the user object, however, the contour can have
selected portions of the object displayed under user control. The
Clip Contour command description describes how to control the
display of contours.
Assembly Objects
The fourth type of object is the assembly. An assembly is composed
of a collection of one or more other objects (including other assem-
blies). Operations, such as rotations, applied to assemblies act on
each of the components of the assembly, treating the components
as if they were a single object. Thus, assembly rotations occur
about the assembly’s center of rotation just as if all of the objects of
which the assembly is composed are a single object.
Assemblies can be composed of a mixture of other object types. An
assembly could contain the combination of a molecule, an electron
density contour, and a user mode text object. These separate
objects could then be treated as a single object for the purpose of
rotation, translation, or scaling. Assemblies are created with the
Associate command, which is located in the Assembly pulldown.
Graph Objects
The fifth type of object is the graph. Graphs can be created from
within several different modules of the Insight II program. Graphs
are created by defining properties to plot on each of the axes.
A graph may be manipulated in much the same way as any other
type of object. Graphs may be scaled, moved, rotated, blanked, or
unblanked. Graphs may also have their axis titles colored or rela-
beled. Graphs may be coupled directly to an animated molecule or
molecular system, but need not be. Note that graph objects are not
automatically connected to other objects or world and therefore
must be explicitly connected using Connect Object in order to be
manipulated.
Spectrum Objects
The sixth type of object is the spectrum (see Figure 11). Spectrums
are created with the Create Spectrum command in the Viewer
module. Spectrums are used to map data values to colors in a vari-
ety of coloring and data analysis commands. They may specify
very complex mappings through the use of multiple subranges,
each being either a solid color or a color ramp. Commands in the
Spectrum pulldown are available to get, put, edit, manipulate, and
list spectrums. Spectrums may also be scaled, positioned, copied,
renamed, blanked, and listed using commands in the Transform
and Object pulldowns in the Viewer module.
Several spectrums are provided with the Insight II program. For
example, CHARGE_SPECTRUM is used to color atoms, surfaces,
and CPKs according to their partial charge values. Another,
TEMP_FACTOR_SPECTRUM, colors atoms, surfaces, and CPKs
according to their temperatures.
under range color subrange 1 object label subrange 2 over range color
CHARGE_SPECTRUM
-1.00 -.80 -.60 -.40 -.20 0.0 .20 .40 .60 .80 1.0
DelPhi charge value
Object Names
In addition to becoming familiar with the various object types, it is
important to understand the way the Insight II program uses
object names. Throughout the command descriptions in the fol-
lowing chapters it is assumed that you understand the format of
the object name and its various components. This section describes
each of the components of the overall object name, and looks at the
various ways these components can be specified and combined.
Every object must have a name. The name must be unique. Com-
mands should not be used as object names.
Molecule names are composed of up to three components:
1. Object name
2. Monomer/residue specification
3. Atom specification
Only molecules have these three components. All other objects
have only an object name.
Object Name
The object name is composed of characters taken from the set of
alphabetic characters (a-z), the numbers (0-9), and may also
include the dollar sign ($) and underscore (_) characters. An object
name can begin with any alphabetic character or the dollar sign.
The maximum length of an object name is 19 characters, but since
it may typed often, a short name is suggested. These are examples
of valid object names:
AMINO_ACID
LYS
BIND$PROTEIN
Note that although the dollar sign is allowed, it is not recom-
mended because in some instances the Insight II program uses the
object name to generate external filenames. Since the $ character
has special meaning in UNIX, its presence in a filename could
cause problems.
These are examples of invalid object names:
_LYS
(Invalid because of the leading underscore.)
23SKIDOO
(Invalid because it begins with a number rather than a letter.)
BIND@PROTEIN
(Invalid because it contains an illegal character, @.)
Object names can also be compound. When an object is part of an
assembly (see the Associate command), it can be referred to in the
context of the assembly by specifying first the assembly name,
then a dot to separate the names, then the name of the primitive
object. Thus, the name:
ASSEMBLY.PRIMITIVE
refers to the object named PRIMITIVE in the context of the object
named ASSEMBLY.
In the special case of a symmetry-replicated molecule (see the Cell
and Symmetry commands in the Assembly pulldown), there is a
special syntax for the molecule name which allows you to specify
Monomer/residue Specification
This portion of the overall name exists only for molecules. For
example, for a protein this subunit of the molecule can take several
forms:
1. It can be a specific residue type such as LYS or PHE (you can
also use the single letter abbreviations). In addition, the
charged species of residues may be referenced by using a P to
denote plus (+), or an M to denote minus (-). Examples:
ARGP references ARG+
ASPM references ASP-
Capping residues with neutral sidechains are also matched
with their normal names. Examples:
ARG matches ARG, ARGn, ARGN, and ARGC
GLY matches GLY, GLYn, GLYN, and GLYC
2. It can be a specific residue of a protein, such as A312 (residue
312 of the A-chain).
3. It can be a range of monomers/residues, specified by typing the
first and last monomers/residues (inclusive) separated by a
dash, such as A132-A150, or 3-12.
4. It can be a series of individual monomers/residues separated
by commas, such as A132,A140,A150, or 3-12,14,15.
5. It can be a combination of the above, such as A130-
A140,LYS,B12.
6. Two special names, BEG and END, can be used to refer to the
first and last residues or monomers, respectively, in the mole-
cule. Thus the range BEG-END refers to all residues or mono-
mers of the molecule.
Atom Specification
The next portion of the overall object name is the atom specifica-
tion. It takes very much the same format as the monomer/residue
specification. That is, you are allowed to specify single atoms sep-
arated by commas, atom ranges separated by dashes, and atom
ranges selecting every nth atom using the @. There are no specific
atom types or abbreviations for atoms. The atom specification fol-
lows the monomer/residue specification, separated by a colon. If
there is no actual atom specification, then the atoms are selected
from the molecule in the order of their occurrence in the molecule.
For example, consider a molecule that is comprised of the atoms
C1, O2, C3, C4, that has one monomer/residue, and is called TEST.
The specification:
TEST:1:
selects atom C1, O2, C3, and C4, or all the atoms of TEST. The spec-
ification:
TEST:1:c*
selects only the carbon atoms, or C1, C3, and C4 (that is, this spec-
ification identifies all C atoms). The specification:
TEST:1:C4,C3,C1
does the same thing, selecting atom C4, then C3, and finally C1.
For most commands the actual order in which the atoms are
selected is unimportant (for example, with the commands Color
Pseudoatoms
Pseudoatoms are defined as the instantaneous average of the coor-
dinates of a set of real atoms. For example, the centroid of a phenyl
group could be displayed as a pseudo atom created from the six
carbon atoms in the ring. Pseudoatoms are referenced in the same
way as atoms; their names may be explicitly specified at the time
of their creation, or the names may be generated automatically.
Note that all atom names must be unique within a monomer/res-
idue. See the Builder command summary for additional informa-
tion about pseudoatoms.
Periodic Systems
Periodic atoms are used to model periodic systems. They are cre-
ated by performing symmetry operations or unit cell translations
on an asymmetric unit. Periodic atoms have many of a real atom’s
attributes and operations, such as coordinates, CPK, surface, color,
label, clipping, and bonds. They also contain information on the
real atom and the symmetry or offsetting operation which created
them. This information is reflected in a periodic atom’s pick string.
This string is obtained when a periodic atom is selected with the
mouse. The format of the pick string is as follows:
unit_cell.molecule:res:atom#operation%offset
where unit_cell is the name of the cell (a concise name for the peri-
odic system), molecule is the parent molecule contained in the cell,
res is the residue name, atom is the parent atom, operation is the
symmetry operation which the periodic atom was created via, and
offset is the x,y,z cell offset of the periodic atom. An example of a
periodic atom pick string is:
UNIT_CELL.PREN:1:C1#3%0.0.,0.0,0.0
Periodic atoms have the capability of being grouped into replicate
objects when needed by a command. This capability is reflected in
the molecule level pick string of a periodic atom. The pick string is
as follows:
unit_cell(replicate_number)
where unit_cell is the name of the cell object, and replicate_number
corresponds to the index of the replicate within the cell. An exam-
ple of a replicate level pick string is:
UNIT_CELL(4)
♦ The following Insight II program commands support periodic
atoms:
♦ CPK Molecule
♦ Get Molecule
♦ Put Molecule
♦ Distance Measure
♦ Angle Measure
♦ Dihedral Measure
♦ XYZ Measure
♦ Merge Modify (supported for periodic atoms grouped into
replicates)
♦ Save_Folder File
♦ Restore_Folder File
Using Parentheses
There is one additional syntax which is allowed in the specification
of the monomer/residue and atom portion of the object name.
This involves the use of parentheses to control the grouping of
atom references with monomers/residues. For example, suppose
that you want a command to refer to all of the alpha carbons of res-
idues in the range 1-40 and all of the beta carbons on ALA resi-
dues. If the object name is ABC then the specification:
ABC:(1-40:CA),ALA:CB
refers to these atoms in a single command. In general, you can use
parentheses to specify any valid monomer/residue and atom
Wildcards
There are two types of wildcards which are valid in all portions of
the overall name. These are: the question mark (?), which matches
any single character; and the asterisk (*), which matches any num-
ber of characters. They may be combined to form several combina-
tions of matches. When a field is omitted, it is treated as if it
contained an *. Thus the name:
TEST::
is the same as:
TEST:*:*
Either expression specifies that all atoms of all monomers/resi-
dues of the object TEST are to be referenced.
Wildcards can be used in monomer/residue names and atom
names as well. For example, to refer to all monomers/residues in
the B chain of the object API, refer to:
API:B*
Experiment with the use of wildcards for the types of things you
like to do. It is the best way to get to know their power and limita-
tions.
Not all commands allow for wildcard specification. Which com-
mands allow wildcards, and in what context, is noted in each com-
mand’s online description. Generally, when you use a wildcard in
an invalid context, the program gives you an error message telling
you that the object name specified is invalid and why.
Properties
Visualization and analysis in molecular modeling is often a matter
of viewing or analyzing properties. Insight II provides a conve-
nient way to use these properties in a variety of ways, including
the ability to easily add your own properties using BCL or plug-
ins.
These properties are often properties of molecules, residues, or
atoms. For example, a property of a molecule is its mass. A prop-
erty of an amino acid residue is its hydrophobicity. A property of
an atom is its element type. Properties have a type and a class. The
type indicates the type of value for the property, which may be
float, integer, boolean, or string. For example, mass is a float, while
sequence number is an integer. The float and integer types are
referred to as scalar types since they are numerical and can be used
in arithmetic or used in conjunction with a spectrum object to indi-
cate a color. The display status of a molecule, which may either be
true or false, is an example of a boolean property, while the name
property of atoms is an example of a string property. The Custom/
List_properties command may be used to list the set of currently
defined properties.
Properties can be used in Insight II in a number of ways to help
you understand the system under study. For example:
♦ atoms, residues, or molecules may be labeled with property
values, thus attaching a small piece of text with the object.
♦ scalar properties may be used to color atoms or molecular sur-
faces according to a spectrum object
♦ atoms may be collected into subsets according to property val-
ues
♦ molecule spreadsheets can have property columns added to
them which display property values for each molecule in a list.
♦ property values may be queried in BCL scripts or spreadsheet
formulas
While MSI provides a pre-defined set of properties with Insight II,
it is easy to add your own properties using macros or “plug in”’s.
See the BCL chapter for information on macro properties and the
Open Interface manual for information on plug ins.
Predefined Properties
The following table lists the predefined properties in Insight II
along with brief descriptions.
Use of Color
The Insight II program allows you to set and change the colors for
atoms, entire objects, specific residues or monomers, surfaces, and
labels. In all of these cases you have three methods by which you
can specify the color:
1. By color name, using one of the six names which the program
recognizes.
2. By color number.
3. By RGB triplet.
Using methods 1 or 2, a color can be defined by a value from 0 to
360. The color names and their meanings are as follows:
Blue = 0 or 360
Magenta = 60
Red = 120
Yellow = 180
Green = 240
Cyan = 300
You are allowed, whenever a color is required, to specify one of the
names given above or a numerical value. The number must be an
integer in the range of 0 to 360, and where the number is not one
of the values listed above, corresponds to a blend of the colors
between which it lies.
In addition to the specification of color or hue, you are allowed to
specify, if you choose, a saturation value for the color. The hue is
the color quality of the picture. The saturation is the purity of the
color. A fully saturated color red is really red. A half-saturated red
is pink because the other half is white. All colors at zero saturation
are white. Use of both hue and saturation controls in the setting of
colors allows you to generate a virtually infinite variety of dis-
played colors on the screen.
Note that on an SGI, a total of 12 base colors can be simultaneously
displayed. These colors include the 7 pre-defined colors blue,
magenta, red, green, yellow, cyan, and white, and 5 user-defined
colors in color map mode. In RGB mode there are an unlimited
number of user colors, but if you switch back to color map mode
only 5 of those colors will remain.
To specify the saturation of a color, follow the color name or num-
ber with an open parenthesis, a value from 0.0 to 1.0, and a close
parenthesis. For example, to specify a pink color use:
red(0.5)
This syntax of color (saturation) is valid whenever a color is speci-
fied to the program. The default saturation, if none is given, is 1.0
which makes the color strong and pure.
Online Help
Navigational Buttons
These buttons are dynamically updated reflecting the hierar-
chical path to either the module, the menu, the command or the
parameter you are getting help for. Note that the right-most
button is a pulldown button. You can click on either of these
buttons to navigate through the entire hierarchy of Insight II
commands.
Pilot
Insight II Pilot is an electronic assistant which can provide interac-
tive training sessions and practical guidance for accomplishing a
variety of tasks. Using Pilot, the full functionality of the Insight II
modeling system can be navigated. Novice users can complete
practical modeling problems from the first time they use the pro-
gram. More experienced users will appreciate Pilot’s ability to
access the comprehensive capabilities of the fully integrated
Insight II software suite. Pick the large question mark at the bot-
tom of the Pilot window to access online help on Pilot itself,
including how to create or extend the exisitng tutorials.
Pilot provides a convenient means for organizing modeling infor-
mation and developing strategies. In-house modeling experts can
use Pilot as a convenient means of communicating modeling pro-
cedures or even demonstrating already-worked-out solutions for
internal customers.
An important part of MSI’s approach to online information is that
its interface should be intuitive, and self-documenting. Pilot is
consistent with this design goal. From the Insight II interface, click
the Pilot icon in the icon palette:
This opens the Pilot parameter block, where you can choose a
directory of Pilot log files. From the next window that opens,
choose any tutorial.
Pilot is designed to run in conjunction with Insight II. Starting
Insight II and then Pilot ensures that both programs work together.
It is possible to run Pilot separately, however. Enter pilot at a
UNIX prompt. This brings up the same Pilot windows as when
Pilot is started from within the Insight II interface.
Example
Choose “Select this to see a list of the available online tutorials”
from the list that appears (it takes a few moments). Choose
“Insight II tutorials” from the next list which appears, then select
the desired tutorial. The Pilot window displays a narration for an
Insight II session and automatically executes Insight II commands
at each step of the narration. To proceed to the next step of the tuto-
rial, press the forward button.
Pilot then displays the narration for the next step in the tutorial.
Note that with Pilot, the commands are executed for you automat-
ically at each step. You can use Insight II while reviewing a Pilot
script, however. In this way you can experiment with the com-
mands that are being demonstrated.
Choosing a tutorial
From the Open Tutorial window, select Insight II tutorials (and, if
necessary, the module) and choose from the list of available les-
sons.
Application 1 Getting Started with Insight II
Application 2 Building Molecules (HARDCOPY ONLY; see Sketcher,
page 175)
Application 3 Docking 2 Molecules
Application 4 Superimposition
Application 5 Molecular Orbital Calculations
Application 6 Importing Structures
Application 7 Exporting & Printing Graphics from Insight II
Application 8 Conformational Search by Torsion Driving
Application 9 Conformational Search Using Molecular Mechanics
Application 10 Restrained Molecular Dynamics
Application 11 Cluster Analysis of a Dynamics Simulation
Application 12 Template Forcing
ALSO:
Viewer Module: Use of Insight II Viewer Commands
Ampac/Mopac Module: Use of AMPAC/MOPAC through Insight II
Docking Module: Simulation Trajectory Analysis Tutorials
Graph Pulldown: Use of General Graphing Tools within Insight II
You can access the Open Tutorial window at any time by clicking
the Open File button in the lower left corner of the Pilot window.
For a more complete description of Pilot and its use, click the
online help button in the Pilot interface or refer to Introduction to
Insight II.
Implementation
Window Layouts
During the course of a session using the Insight II program it is
common to create and interact with several application windows
simultaneously. The main window and Spreadsheet windows are
two examples. Since these windows are all independent windows
you can manage your workstation screen space by raising, lower-
ing, moving, resizing, and iconifying the windows with the win-
dow manager. However, it is often the case that several of the
windows are related, and it may be convenient to be able to per-
form these window manager type activities on all of the windows
at once.
entry 1 entry 2
t=0 t=0
b=67 b=67
t=67
l=0 r=100
b=100
entry 3
window added to the layout would occupy the upper left position,
the next window would be placed in the upper right, and the third
window would go below the other two.
Note that since the order in which the windows occur in the layout
determines which template entry is used, if a window is removed
from the layout, the other windows rearrange so that no template
entries are skipped. For example, if a layout contained three win-
dows (w1, w2, w3) and the layout template above, then initially
w1 would be in the location described by entry 1, w2 in entry 2,
and w3 in entry3. If w2 were then removed from the layout, w3
would now be the second window in the layout, so it would move
into the position specified by entry 2. Since the edges of each entry
are given as percentages, they do not directly specify the actual
size of the whole layout. To do so, one of the windows must be des-
ignated as the control window for the layout. The size and position
of the layout are then computed based on the size and position of
the control window. As this window is moved and resized, the rest
of the windows are automatically updated to satisfy the layout
template. By default, the first window in the layout is the control
window. However, any window can be designated as the control
window by using the Apply option of the Window/Layout com-
mand. By turning off the Use_Control_Window option in that
command, you may choose not to use a control window, in which
case the windows all move and resize independently. A special
string (“ - Controls layout NAME”) is appended on the window
name in the window title bar to identify the current control win-
dow.
To create a window layout you must first have some secondary
windows to be managed by the layout. Then go to the Window/
Layout command and select the Use_Template option. Enter a
unique name for the Layout_Name parameter, and then choose an
existing layout from the Layout_Templates value-aid to fill in the
Layout_Template_Nam parameter. This defines the layout tem-
plate to be used. Next select the Add_Window option, and choose
a window from the Window_List value-aid to fill in the Window_
Name parameter. Repeat this action once for each window to be
managed by the layout. When you add the first window, the only
change you should see is that the title bar of the window should
change to indicate that it is the control window. As each of the
other windows is added, the window size and location should
change to fit the layout template.
Spreadsheet Introduction
The Insight II molecular modeling program includes an integrated
spreadsheet. This can be used to view various properties of struc-
tures in a tabular form.
The Insight II program’s spreadsheet is a fully functional spread-
sheet with the ability to view textual and numerical data. The
numerical data may be calculated and can be derived from formu-
las or from other data in the spreadsheet. The spreadsheet includes
features such as cut and paste, dynamic calculation of arithmetic
expressions and functions, references to cells, and data plotting. In
addition, spreadsheets are integrated into the Insight II program
environment in the following ways:
♦ Spreadsheets may be created which display tabular data for the
structure being modeled. The Molecule/Tabulate command
Creating a Spreadsheet
Spreadsheets may be created in one of three ways:
1. The New command under the Spreadsheet icon can be used to
create a blank spreadsheet, which may be edited to enter data.
The spreadsheet appears in a separate window from the main
window of the Insight II program, thus making it possible to
arrange it on the screen independently of the main window (see
Command Summary
The top menu bar consists of pulldowns which access the core
commands. The pulldowns are Module, Session, File, Object,
Molecule, Measure, Transform, Subset, Assembly, User, Spec-
trum, Custom, Window, and Help In addition, this section con-
tains summaries of the commands available when you pick the
Contour icon, and the Spreadsheet icon, including the commands
available only within the Spreadsheet window.
Builder
The Builder command activates the Builder module. This module
allows you to construct new molecules from molecular fragments
or individual atoms. It also allows you to modify such properties
as atom type, hybridization, potential function parameters, bond
order, and geometry of existing molecules. You can use the newly
created or modified molecules in all of the normal ways through-
out Insight II.
Biopolymer
The Biopolymer command activates the Biopolymer module. The
commands in this module facilitate the building and modification
of peptides, proteins, polynucleic acids, and carbohydrates. In par-
ticular the peptide commands can be used to: build up peptide
sequences while imposing secondary structure, delete or replace
residues in peptides and proteins, impose secondary structure on
existing peptides and proteins, and change N and C terminal cap-
ping groups. Other commands in this module allow you to search
a database for, and display regions of, proteins which meet a given
geometric criterion. The nucleic acid commands can be used to:
build single, double, or triple-stranded polynucleotides in A, B, or
Z form; delete or replace nucleotides in strands, measure angles
and distances between bases, and cap a prime or ligate strand. The
carbohydrate commands can be used to link monosaccharides in a
number of ways and to change the enantiomer or anomer of a
monosaccharide within a molecule. This module includes access
DelPhi
The DelPhi module has commands to define DelPhi calculation
parameters (Setup), perform a DelPhi calculation (Run_DelPhi),
analyze the results (Potential), and create charge and radius tem-
plates (Templates). DelPhi itself is a software package which cal-
culates the electrostatic potential in and around macro-molecules,
using a finite difference solution to the Poisson-Boltzmann equa-
tion. The program allows specification of ionic strength as well as
dielectric constants of both the solvent and the molecule of inter-
est. In addition, periodic boundary conditions may be used for
molecules or systems with repetitive portions, such as nucleic
acids.
Solvation
The Solvation module has been implemented in order to simplify
and speed up calculating the solvation energy using DelPhi. It
involves one or two DelPhi runs (based on the parameter set—
CFF91, PARSE—used), a Discover run for calculating the intramo-
lecular energy, and a calculation of the total accessible solvent area.
In addition, this module provides several other simple solvation
models. Finally, a separate option to calculate the total solvent
accessible surface area, using current Insight II atomic radii, is also
provided.
Discover
The Discover module provides an interface to the Discover pro-
gram. The interface allows for the definition of minimization and
dynamics calculations. You can perform simulations using various
forms of constraints and restraints, including template forcing,
torsion forcing, tethering, and NOE. This module also enables you
to do free energy calculations, and provides options for querying
ongoing jobs.
Discover_3
The Discover_3 module provides an interface to the Discover 3.0
program by enabling you to specify molecular mechanics simula-
tions using that program. It also provides basic options for query-
ing ongoing jobs. The interface allows for the definition of
minimization and dynamics calculations.
Docking
The Docking module provides facilities for calculating the non-
bond energy between two molecules using explicit van der Waals
energy, explicit electrostatic (Coulombic) energy, or the combina-
tion of van der Waals and electrostatic energies. The number of
atoms included in the calculation can be limited by specifying a
monomer- or residue-based cutoff. Alternatively, the computation
can be done approximately, using a precomputed energy grid.
MCSS
The MCSS command activates the Multiple Copy Simultaneous
Search (MCSS) module. The MCSS module predicts ligand bind-
ing affinities by flooding the active site of a target macromolecule
with thousands of non-interacting copies of the ligand. The copies
are minimized and sorted in the active site, leading to a reduced
number of highly optimized candidate ligands. The candidates
can then be analyzed and clustered using additional commands
available in the MCSS module.
The MCSS module provides functionality for defining and visual-
izing the active site, defining all MCSS simulation parameters, and
analyzing the results of an MCSS simulation.
Ludi
The Ludi module provides functionality to help you design candi-
date ligands.
Search_Compare
The Search_Compare module provides functionality for calculat-
ing molecular volumes, performing boolean volumetric opera-
tions, constructing vector maps, and for performing systematic
conformational searches.
CHARMm
The CHARMm module provides an interface to the CHARMm
program, from which you specify molecular mechanics simula-
tions using that program. The interface allows for the definition of
minimization and dynamics calculations.
MBOND
The MBOND module provides an interface to the MBOND pro-
gram, allowing you to specify molecular mechanics simulations
using that program. The interface allows for the definition of min-
imization and dynamics calculations.
Homology
The Homology module contains commands to help build a model
of a protein given only its amino acid sequence and the three-
dimensional structure of at least one other protein. Facilities are
provided to find related proteins, to find regions of structural con-
servation among related proteins, to align amino acid sequences,
and to assign coordinates based on these alignments.
NMR_Refine
The NMR_Refine module is a structure determination module
that uses data from Nuclear Magnetic Resonance to determine the
structure of a molecule. The module includes IRMA (Iterative
Relaxation Matrix Approach) to refine restraints, DGII (Distance
Geometry), SA (Simulated Annealing in Discover) to help predict
structure, and tools to access the programs XPLOR and Felix.
Xsight
The Xsight module contains a comprehensive set of commands for
performing all aspects of macromolecular crystallography.
Binding Site
The Binding_Site module contains methods to characterize a pro-
tein binding site of active site.
Ampac/Mopac
The Ampac/Mopac module provides an interface to the public
domain AMPAC and MOPAC programs, which provide a semi-
empirical solution to electron configuration problems. These pro-
grams can be used to predict such properties as electron distribu-
tion and partial charges. They can also be used to optimize small
molecule conformations, create contours showing electron config-
urations, and perform various other calculations. You can also run
AMPAC and MOPAC from the operating system level.
DMol
The DMol module provides an interface to DMol, a local density
functional quantum chemistry program. The module provides
options for choosing the type of calculation (e.g., energy, minimi-
zation, frequency), setting input parameters, and determining out-
put quantities from the DMol calculation. It also provides the
capability to restart energy and/or minimization calculations
from previous results, and to launch DMol jobs on remote hosts.
Molecular orbital, density, and other volumetric output from
DMol may be contoured and viewed from within this module.
Turbomole
The Turbomole module provides an interface to Turbomole, a pro-
gram for ab initio and Gaussian-based density function quantum
chemistry.
Zindo
Zindo is comprehensive semi-empirical SCF/CI program. It has
many options, offering RHF, UHF, UHFA, and ROHF SCF calcula-
tions; energy, geometry, and CI options; and EHT, CNDO, INDO,
NDDO, and PPP methods.
QuanteMM
The QuanteMM command activates the QuanteMM module.
This module combines functionalities of the quantum mechanical
programs MOPAC, Turbomole, and DMol with the capabilities of
the molecular mechanics program Discover to perform calcula-
tions where a molecule, described by a quantum mechanical
Analysis
The Analysis module is used to perform molecular conformation
analysis. This module provides functionality for analyzing the tra-
jectory data output by the molecular mechanics program Discover
(separately licensed from MSI). This functionality may also be
used to analyze conformational data produced by other molecular
mechanics programs, or by any other method, provided the data
is formatted in a file type recognizable by Insight II.
The analysis is performed by defining properties of interest, iden-
tifying the atoms that uniquely define the property, and then
graphing or tabulating those properties against each other. Four
types of properties are available for analysis: total energy, time,
distance (including point-plane), and periodic (angles, dihedral
angles, and plane-plane angles).
DeCipher
The DeCipher command activates the DeCipher module, which is
used to perform molecular conformation analysis. This module
provides functionality for analyzing the configuration data output
by the molecular mechanics program Discover, separately licensed
from MSI. This functionality may also be used to analyze confor-
mational data produced by other molecular mechanics programs,
or by any other method, provided the data is formatted in a file
type recognizable by Insight II.
The analysis is performed by defining properties of interest, iden-
tifying the atoms that uniquely define the property, and then
graphing or tabulating those properties against each other.
Licenses
The Licenses command lists all licenses that can be checked out or
checked in interactively during the Insight II session. There are
other licenses, such as License_Holder, that will be listed in your
license file but cannot be explicitly checked out/in. These do not
show up in this command.
Session Pulldown
The Session pulldown contains commands to customize the cur-
rent Insight II session. Session commands also provide access to
Insight II’s comprehensive online help utility, allow you to exit
temporarily or permanently to the operating system, and replay
Insight II command scripts. Session commands, such as changing
the background color of the graphics window, do not impact the
contents of files created later using Save or Put.
Environment
The Environment command allows you to customize the environ-
ment of your current Insight II session. The features that you can
control include the following:
Anti_alias in conjunction with the Antialiasing parameter
enables or disables anti-aliasing. When Antialiasing is On, lines
and curves appear smoother than when this feature is Off. How-
ever, when Antialiasing is On screen refreshes are somewhat
slower.
RGB_Mode in conjunction with the RGBmode parameter allows
you to change whether Insight II runs in colormap mode, or rgb
mode. Each mode has advantages and disadvantages depending
on which model of workstation you are using. Rgb mode generally
allows more colors and higher quality cpks to be displayed, but
may impact graphics performance. Colormap mode draws the
fastest anti-aliased lines on most platforms but limits the number
of simultaneously displayed colors. The default varies according
to the model of your workstation.
Single_buffer in conjunction with the Singlebuffering parameter
allows you to control whether Insight II runs in single or double
buffer mode. Double buffer mode is the default. When in rgb mode
on some eight-bit graphics board workstations such as the SGI
Indigo, turning on single buffering improves the sharpness and
detail of the image at the expense of the screen flashing during
redraws.
Render_in_Motion in conjunction with the Render_Quality
parameter allows control over how certain types of renderings
such as CPKs, solid ribbons, and solid contours are drawn when
they are being moved via the mouse or dials. When Render_Qual-
ity is set to Fast_Render various simplified representations are
used to give faster drawing performance while in motion.
Background in conjunction with the Background Color parame-
ter allows you to change the color of the graphics window. By
default, background color is BLACK.
Auto_World in conjunction with the Autoworlding parameter
enables or disables the automatic addition of newly created objects
to the WORLD assembly. The WORLD assembly is an internally-
maintained assembly object that normally is the assemblage of all
Light_Source
The Light_Source command is used to set the apparent direction
to the light source in an Insight II graphics window. The objects
Cmd_Display
The Cmd_Display command gives you control over the display of
inactive parameters in the Insight II program’s command parame-
ter blocks. If you choose to show all parameters, then both active
and inactive parameters are displayed in parameter blocks. Inac-
tive parameters are displayed in gray and do not respond to user
input.
If you choose not to show all parameters, then only active param-
eters are displayed. The parameter block adjusts its size to accom-
modate all the active parameters at any given time.
Use the Single_Column_CMDs parameter to control the display
of parameters in commands with only one column of parameters.
Use the Multi_Column_CMDs parameter to control the display
of parameters in commands with more than one column of param-
eters.
Help
The Help command allows you to access the Insight II program’s
comprehensive on-line help facility. On-line help contains infor-
mation on every Insight II module, pulldown, command, and
parameter, as well as actual command examples. To access help,
select the Help command in the Session pulldown, type the com-
mand help on the command line, or press the on-line help icon
(the question mark button in the icon palette).
Parameters are available to specify at which level you wish to
enter the help library.
Autosave
The Autosave command is used to control automatic saving of
objects in the current Insight II session. When Insight II first comes
up, automatic saving of objects is disabled. Autosave is used to
turn on or off the feature and specify the interval between saves.
Backup
The Backup command is used to save objects to the Insight II ses-
sion folder, .insight_session.psv, located in the directory where
Insight II was first started. A new file is created each time Backup
is executed or the operation is invoked via the autosave mecha-
nism.
Recover
The Recover command is used to restore objects from the folder
created with the Backup command or the periodic autosave oper-
ation controlled by the Autosave command. Delete * is executed
first.
History
The History command displays the commands in the current ses-
sion’s history buffer. By knowing the number of a command, you
may recall it by preceding the number with an exclamation point.
For example, !-7 recalls the seventh command counting from the
last command that was executed.
Buffer
The Buffer command controls the number of commands stored in
the current session’s history buffer.
Alias
The Alias command in the Session pulldown allows you to create
and delete aliases. An alias is a custom notation for a command.
You can use an alias to give a command a more meaningful name,
or to shorten a frequently typed command string. This command
is used to create new aliases or to delete previously defined aliases.
Note that Alias remains active only at the token level. A valid alias
token must be surrounded by white space, and it cannot be part of
another token. For example:
In this case, the string "list" is not replaced with the alias value 1,3,5
because the string is part of another token.
These commands color ca:1, ca:3, and ca:5 green because here "list"
is a single token surrounded by white space.
Note that aliases may be used anywhere in a command as long as
they are separated from the rest of the command with blanks.
Because alias token substitution applies to all command tokens, it
is necessary to place a backslash (\) in front of the existing token
in order to:
To redefine the alias token Exit, when the alias Exit already exists:
This command redefines the alias token Exit to have the value
Done. If the backslash is not present, then the command:
first replaces Exit with Quit, and then defines an alias Quit to be
equivalent to Done.
A backslash is also required in order to use Exit as a value in a
command:
Button
The Button command is used to maintain the text associated with
the buttons on the optional button box peripheral. It provides the
ability to associate text with a button, clear the text associated with
a button, and list the text associated with buttons. The text can be
set to execute as a concurrent command. Once text is associated
with a button, that text is output, exactly as if it had been typed,
when the button is pressed. This makes buttons useful for holding
frequently used commands or parameters.
Stereo
The Stereo command provides a stereo view of the object or
objects in the graphics window. You are given the option of chang-
ing the stereo angle (the angle between the views) no matter what
type of stereo is being utilized. There are two types of stereo avail-
able: Hardware Stereo and Software Stereo.
The Software Stereo command creates split stereo pairs, and you
are required to cross your eyes slightly to see the stereo effect.
The Hardware Stereo command is intended for SGI systems
equipped with special stereo hardware. If you have StereoView
hardware, which utilizes an emitter and special glasses, then the
Env_var
The Env_var command allows you to access environment vari-
ables from within the Insight II program.
Unix
The Unix command allows you to issue commands to the operat-
ing system without leaving the Insight II program. You can enter
any valid UNIX command, including one that starts up a shell ses-
sion. To exit a shell session and return to Insight II, type exit or
press <control>-<D>. Changes to a subprocess, including to
default directories and environment variables, do not affect the
parent process.
Please note that although the Insight II program itself is not case-
sensitive, UNIX is. You must type all operating system level com-
mands that you invoke through the Insight II Unix command in
the proper case.
Change_directory
The Change_directory command is used to change the default
directory from which the Insight II program reads files, and to
which it writes files.
Sleep
The Sleep command allows you to suspend the running of this
program for a specified number of seconds. This is primarily use-
ful when replaying a log file for demonstration/training purposes,
allowing you to halt the display for a set length of time regardless
of the processing speed of the host computer.
Quit
The Quit command ends the current Insight II session. This is the
normal way to exit the program. Upon normal completion, the
Insight II program names the logfile insight.log. Note that if the
program terminates abnormally, it names the logfile WBLOGFILE.
MSI_OnLine
This command launches a browser pointed to MSI’s online help.
File Pulldown
The File pulldown contains commands that allow you to perform
operations on the contents of a file or folder. Folders are special
files used by the Insight II program to store objects created during
a session. Folders can contain multiple objects created during dif-
ferent Insight II sessions.
Save_Folder
The Save_Folder command adds object(s) to a folder. You can cre-
ate a new folder, or insert an object(s) into an existing folder.
The comment parameter for the Save_Folder command allows
you to specify a comment string that can provide information on
an object stored in a folder. Both the List_Folder and Restore_
Folder commands cause the display of this comment string to the
textport. How the Insight II program handles duplicate object
names can be specified.
Restore_Folder
The Restore_Folder command displays object(s) previously
stored in a folder. Restore_Folder also displays the associated
comment to the textport for each object it restores, if a comment
exists. You can also use the Restore_Folder command to specify
how the Insight II program handles duplicate object names.
Remove_Folder
The Remove_Folder command deletes object(s) from a folder.
List_Folder
The List_Folder command displays information on the contents of
a folder to the textport. This information includes each object’s
name, date of last modification, and associated comment text. The
List_Folder command is the only mechanism that queries the con-
tents of a folder. Folders cannot be printed or edited with standard
UNIX commands, such as more or vi.
Import
The Import command is used to read molecular data files into
Insight II for viewing or analysis. Import is similar in function to
Get, but adds features that permit searching for files utilizing an
index and preview operations that make it possible for you to view
the text or graphics contained in a file in a window separate from
the main Insight II graphics window. The Import command uti-
lizes different File_Filter strings for each file type that the com-
mand supports. File_Filter strings allow you to specify the file
extensions that are to be accepted when a file list is created. Insight
II provides reasonable defaults for these "filter_strings" to allow
easy access to files with non-standard file extensions. These
defaults can be changed during the Insight II session by using the
Set_File_Type toggle.
Export
Export is a companion command to the Import command. Molec-
ular data within Insight II can be written in one of the available
supported file formats.
Export_Plot
The Export_Plot command in the File pulldown allows you to
write the present display to various output file types, including an
intermediate plot file (.ipf), or directly to a specified hardcopy
device.
When the input is directly from the screen all current transforma-
tions such as clipping and coloring are taken into account. The
entire display is plotted except for hardware-created images such
as CPK spheres and the variable linewidth of bonds.
Export_Image
The Export_Image command allows you to capture a bitmap
image (also called a raster image) from the current display and
write it to a file, optionally sending it directly to a printer or pre-
viewer. To export images at 600 dots-per-inch (dpi) resolution you
should have at least 128 MB of RAM, and note that a PostScript file
saved at 600 dpi resolution may be as large as 200 MB. On an SGI
workstation, Insight II should be running in OpenGL mode in
order to export images at 300 or 600 dpi resolution. Otherwise text
in the exported image may be clipped. Additional notes on using
this command are provided online through the Insight II Help
Viewer.
The captured image can be the entire graphics window, or a por-
tion of it. The USER_DEFINED, NTSC, and PAL options for the
Image Size parameter allow interactive specification of the region
to capture.
Source_File
The Source_File command in the File pulldown executes a set of
Insight II program commands from a disk file. You may use up to
three nested levels of indirect files in any sequence of commands.
This is particularly useful for repeated operations.
To terminate a sourcing process, press <Esc> on the keyboard. To
temporarily halt the sourcing to review screen output, press
<Backspace> or <tab>. Then you can choose either <Esc> to exit
the command, or press any other key to continue. Note that while
the replay process is halted, you can use real or screen dials to
rotate, translate, or scale the screen image. However, commands
may not be executed.
Export_Molscript
The Export_Molscript command creates a molscript input file for
each separate protein object (protein_id) in Insight II. The follow-
ing options are available:
♦ rendering and coloring atom subsets and secondary structure
elements.
♦ stereo diagram generation.
♦ CPK and Ball-and-Stick rendering.
Minimum input for this command requires setting:
♦ protein_id, the object to be rendered.
♦ Molscript_file, the name of the molscript input file to be gener-
ated.
For each Molscript_file generated, a matching Mol_<Molscript_
file>_<protein_id>.pdb file is generated. Both files must be present
in the same directory for molscript to work correctly. Postscript
File options also generate a <Molscript_File>.ps PostScript file.
Note that MSI does not distribute the molScript executable. It must
be properly installed and available in your PATH for the Post-
script File and Show Postscript options to work correctly.
Also, a properly installed PostScript viewer must be present for
the Show Postscript option to work. Export_Molscript requires
that the SGI_PS_VIEWER (on SGI) or IBM_PS_VIEWER (on IBM)
environment variable be set to point to the postscript viewer. SGI_
PS_VIEWER is set by default to xpsview and IBM_PS_VIEW does
not have a default value.
Object Pulldown
The Object pulldown contains commands for manipulating
objects.
For molecules, the object name is the first part of the molecule
specification, which does not include the monomer/residue or
atom specifications. As a result, the colon (:) character used in the
full molecule specification is not allowed in an object name.
Copy Object
The Copy Object command creates a duplicate of the object you
specify. If the object is a molecule or a user object, it makes an
actual copy of all the vectors, atoms, and/or bonds. If the object is
an assembly, it creates an assembly with exactly the same contents
as the original assembly.
The newly created object may or may not be displaced from the
original object depending on the value of the Displace parameter.
Setting Displace to on helps you see the new object more clearly,
since it is not coincident with the original.
Paste Object
The Paste Object command pastes an object from the Motif clip-
board into Insight II. The clipboard may have been filled by an ear-
lier Copy Object command with To_Clipboard set to On, or by a
cut or copy operation using a compatible application running con-
currently under the Motif window manager. A warning message
is displayed if the Motif clipboard is empty or contains material
with an unrecognizable format.
Currently, Motif clipboard operations are limited to 2D and 3D
molecules and use the MDL “mol” format. Compatible applica-
tions must use the “MDL_MOL” format identifier. When using the
menus, Insight II fills in the New_Name parameter with the com-
pound name from the “mol” format, if that is set. Otherwise you
should fill in the New_Name parameter with a unique name for
the new object.
Delete Object
The Delete Object command deletes a specified object. Once
deleted, the object is removed from the screen, memory, and data
storage. No memory of the object is retained.
Rename Object
The Rename Object command is used to give a new name to a
specified object.
Blank Object
The Blank Object command is used to blank the display of an
object. When an object is blanked, it does not appear on the display
screen. In the case of molecules, the Blank Object command
affects atoms, surfaces, CPKs, and ribbons.
Axes_Display Object
The Axes_Display Object command is used to control the display
of the local and alternate axes systems for objects of any class.
Blink Object
The Blink Object command is used to cause an object to blink or
flash on the screen. This facilitates seeing the minor differences
between two objects which are very similar and which have been
superimposed.
DepthCue Object
The DepthCue Object command activates or deactivates depth
cueing for the specified object. Depth cueing aids in the three-
dimensional perception of an object by drawing bonds and atoms
which are farther away from the view point in dimmer colors.
LineWidth Object
The LineWidth Object command is used to set the width of the
lines which are used to represent an object.
List Object
The List Object command lists general information about all types
of objects. This listing includes the object name, the object type,
and some specific information on the composition of the object.
Information can be requested for all objects (the default), or for any
single object. For more details on a particular object, you can use
the List command which refers to the type of that object: List
Assembly, List Molecule, List Contour, List User, List Graph.
Molecule Pulldown
The Molecule pulldown contains commands to manipulate mole-
cules.
Get Molecule
The Get Molecule command brings a molecule into the working
session.
Using this command, you can retrieve a stored molecule, which
must be in one of these formats: Ampac, Mopac, Archive (MSI .arc,
.car, and .cor files are all read with the Archive option), Cambridge
(CSD_Fdat), free format, PDB (the Brookhaven Protein Databank
data set), CHARMm, Quanta_MSF, MDL, Sybyl_Mol2. The
default file type is Archive. If the file specified is a free format file,
an additional file for reading that format must also be specified.
The free format and MSI-provided template files are described in
Appendix B. HETATM cards may optionally be retrieved when
reading a PDB format file.
You can also retrieve an entire archive file, or a single frame or
range of frames from an archive file.
You may also specify a coordinate system for displaying the
retrieved molecule relative to an already existing molecule.
Molecules are displayed using default values for Color, Bond_
Order, DepthCueing, and Line_Width (see the Molecule/Set_
Default command for setting the default values of these parame-
ters).
When Insight II reads a file containing molecular data, it deter-
mines what element each atom is. This is crucial information for
any subsequent operation on a molecule. The determination of ele-
ment type is done by scanning the appropriate column in the input
file. If an atom cannot be matched with a known element, an error
is reported to the user. The elements known to Insight II are
defined in the file elements.dat, located in the $INSIGHT_DATA
directory. Insight II uses several different methods for establishing
topology when molecules are read:
MSI car, arc, and cor files An accompanying mdf file is also
expected. The mdf file must have the same prefix as the car, arc, or
cor file (e.g., test.car or test.mdf). If the mdf file is present, and
refers to the same atoms as the car, arc, or cor file, the connectivity
found in the mdf file is used explicitly.
Note that Insight II writes an informational message when the mdf
file is being used. You should confirm the use of the mdf file by
looking in the information area when reading car, arc, or cor files.
If the mdf file does not match the car, arc, or cor file, or cannot be
found, then a two-pass algorithm is used to establish the connec-
tivity.
On the first pass the template file, amino_templates.dat, located in
the $INSIGHT_DATA directory is checked for matches. The tem-
plate file contains templates for amino acids including charged
and terminal amino acids, nucleic acids, and a few commonly
occurring residues and generic functional groups. A match occurs
when a monomer or residue matches the name found in the tem-
plate, has the same number of total atoms or heavy atoms only,
and has the same atom names. When a match is found the connec-
tivity for that residue is used from the template, with inter-residue
connectivity being determined by distances and atom types. Each
residue of a molecule is checked for a match, and those that have
templates are assigned their connectivity from the templates. Any
monomers or residues that do not match the templates have their
connectivity established by distances. In the second pass bonding
distances are read from the file elements.dat, also found in the
$INSIGHT_DATA directory.
Any two atoms that are within the bonding distance plus a small
margin of error are bonded together. If more than the appropriate
number of atoms lie within bonding distance they are all bonded
together. Insight II does not try to determine if any atoms close
enough to be bonded should not be bonded.
You should note that you can add your own entries to the template
file. For further information, refer to the appendices for Insight II.
Sybyl Mol2 files and MDL molfiles and SDfiles The connectiv-
ity information that is contained in the file is used explicitly.
Free Format Files Free format files may contain explicit connec-
tivity. In the cases that they do, it is used explicitly. Otherwise the
two-pass method described above is used.
In the Insight II program, atom names are constrained to a five-
character length.
Put Molecule
The Put Molecule command writes molecules from the working
session into a disk file. The molecule may be stored in any of sev-
eral formats: Old_Biosym, WebLab_MSV, MDL, Sybyl_Mol2, free
format, Mopac (usable with Ampac or Mopac), PDB, or
CHARMm. Files can also be saved in a format of your own speci-
fication.
Optionally, the Put Molecule command can be used to store only
the atoms that are actually displayed, and store the molecule first
applying the current transformation matrix to the molecule’s coor-
dinates.
Set_Defaults
The Set_Defaults command is used to view and set default
parameters for all molecules which are brought into the working
session by use of the Molecule/Get command. The parameters
which may have defaults set using this command are Color,
Bond_Order, DepthCueing, and Line_Width.
When the Insight II program is started, the default values of these
parameters are retrieved from a file named .in2rc. The .in2rc file
which is used is in one of three locations
1. The user’s local directory (the directory from which Insight II is
run)
2. The user’s home directory
3. The $INSIGHT_DATA directory (this file is on the Insight II
CD-ROM delivered by MSI and is not editable by the user).
The search order is as listed. If no such file is found in the local
directory, Insight II looks next in the home directory, and so on.
The $INSIGHT_DATA/.in2rc file is always present with the
default values set at MSI. The .in2rc file found at startup is the one
used throughout the session.
The .in2rc files in the local and home directories are editable and
can be updated by Insight II using the values selected in the Set_
Defaults parameter block. You may also list the current default
values at any time.
Parameter values are selected for each file type in the parameter
block. You can set values for all file types at once by selecting All
for the File Types parameter.
Choices for Coloring_Method are: By_Atom for coloring each
atom according to its element type; Specified for coloring all
atoms the selected color, for all subsequent molecules of that type;
or Color_By_Rotation for coloring all atoms of the next molecule
the selected color, and all atoms of subsequent molecules the next
color from Insight II’s color wheel.
Color Molecule
The Color Molecule command is used to render molecules and
molecular attributes in color.
Transparency Molecule
The Transparency Molecule command is used to adjust the degree
of transparency effect used for the CPK, Ball_and_Stick, and
Stick solid renderings and surfaces of molecules. This is achieved
by adjusting the alpha component of all colors in the spheres and
cylinders used in the solid rendering of the specified molecule
without affecting the r,g,b values (see Use of Color for more infor-
mation). A Transparency Value of 0.0 means fully transparent and
a Transparency Value of 1.0 means fully opaque.
Display Molecule
The Display Molecule command is used to turn on the display
status of molecular attributes. This command is used to separately
display atoms, residues, monomers, subsets, or molecules, as well
as the axes, CPKs, ribbons, or surface attributes. Attributes can be
selectively added to the display, or only specified portions of an
attribute can be displayed. Backbone, hydrogens, heavy, side-
chain, and trace atoms can be automatically selected.
Label Molecule
The Label Molecule command is used to create or remove labels
for molecules, monomers, or atoms. A label is a short piece of text
attached to a molecule, monomer, or atom. The text may be a
property of the object it is attached to, such as its name or mass.
Labels may be displayed with a variety of display characteristics,
permitting display of the properties in a flexible manner.
Bond_Order Molecule
The Bond_Order Molecule command controls the display of mul-
tiple-order bonds. By default all bonds are displayed as if they
were single bonds.
Surface Molecule
The Surface Molecule command is used to create and delete
atomic dot, line, or solid surfaces. Three surface types are avail-
able: van der Waals, solvent (solvent accessible using the Connolly
algorithm), and Quick, a pseudo-connolly surface that is not as
precise as the SOLVENT method, but the calculation is much
faster. The variables that can be controlled for the display are the
quality of the surface, and whether it is in the context of another
molecule.
In the case of solvent accessible surfaces, the probe radius can also
be varied.
The surface from a molecule can be written to a file using the Put
option. The file format used is identical to that of the dots.usr file,
so the surface can be retrieved later as either a user object or as a
surface on a molecule.
Render Molecule
The Render Molecule command allows you to control how the
atoms and bonds of a molecule are represented. Available render-
ing styles are CPK, Ball_and_Stick, and Stick.
Ribbon Molecule
The Ribbon Molecule command is used to create or delete a rib-
bon representation of protein or polynucleic acid secondary struc-
ture. This command allows you to specify the type of ribbon (flat,
solid, lines) and the number of strands to use in a line ribbon rep-
resentation, the offset distance to use in calculating ribbons around
helixes, and the width of the ribbon (in angstroms). You can also,
optionally, create decals to label the ribbons with residue property
values. You may also choose to vary the width of the ribbon based
on a per-monomer characteristic of the molecule.
Color_Ribbon Molecule
The Color_Ribbon Molecule command allows you to color mole-
cule backbone ribbons. A ribbon consists of a number of threads,
and it spans one or more monomers. The smallest part of a ribbon
which can be individually colored is a single thread within a single
monomer.
SecondaryRender Molecule
The SecondaryRender Molecule command creates a Richardson
style rendering of the secondary structure of a protein. The dis-
play parameters (e.g., size, color) for the rendering can be set with
the Preferences parameter.
The secondary classification can come from the PDB file, a mono-
mer table, or from an ab initio Kabsch Sander calculation.
The SecondaryRender Molecule command works only on a
whole molecule. If you need to create a display for a partial mol-
ecule, you can accomplish this by using Merge and Unmerge com-
mands in the Modify pulldown in the Builder module.
List Molecule
The List Molecule command is used to display detailed informa-
tion about specific molecules. You can list the names, coordinate
information, charge group, potential type, atomic charge, frac-
tional coordinates, minimum and maximum Cartesian coordi-
nates, and link distances which match the molecular specification.
The total energy of a molecule can also be listed if it has been pre-
viously computed or read in. The listed information may be dis-
played to the textport or to a specified file.
Tabulate Molecule
The Tabulate Molecule command is used to create a table that dis-
plays the molecular properties selected for the specified atoms.
Each property is represented by a column of information, with the
name of the property above each.
Browse Molecule
The Browse Molecule command creates a window which contains
a table of molecules. This table can be used to quickly and easily
browse through the molecules which are presently in the system.
This browser offers the ability to blank or show molecules, connect
molecules to dials, or select sets of molecules for use in subsequent
commands, all with the click of a mouse.
Measure Pulldown
The Measure pulldown contains commands to measure the dis-
tance between two atoms, the angle defined by three atoms, and
the dihedral angle defined by four atoms. Several of the com-
mands also allow the setting of monitors. A monitor is a visual dis-
play of a quantity’s current value, which changes dynamically as
the objects involved move.
The Measure command also provides a mechanism for measuring
the internal energies of a molecule, including bond, angle, dihe-
dral, nonbond, and cross terms.
Distance
The Distance command measures the distance between two atoms
in the same or different molecules.
The output of the Distance command is determined by the Moni-
tor parameter, which indicates whether the command uses dis-
tance monitors. A distance monitor is a visual display of the
distance using a dashed line connecting the atoms, with the dis-
Angle
The Angle command determines the current angle specified by
any three atoms. The atoms do not need to be in the same mole-
cule.
The output of the command depends on the value of the Monitor
parameter. If Monitor is On, a dotted line between the atoms
forming the angle and its measurement isdisplayed. If Monitor is
Off, the three atoms, minimum and maximum angle, angle, and
whether the condition criteria are currently satisfied are listed
either to a file or to the textport and information area.
Dihedral
The Dihedral command determines the current dihedral angle
between any four atoms. The atoms do not need to be in the same
molecule.
The output for the Dihedral command is determined by the Mon-
itor parameter. If this parameter is Off, the calculated angle, given
in degrees, is reported to the information message area, as well as
the textport. If the Monitor is set to On, a dihedral monitor is set
up. This displays the dihedral angle by connecting the four atoms
involved with dashed yellow lines, along with the current angle in
degrees. You can also add, remove, or clear dihedral monitors, and
specify values for the minimum and maximum dihedral angles to
be monitored.
Monitor_Style
The Monitor_Style Measure command allows you to set the color
of distance, angle, dihedral, bump, and hbond monitors created
via the Distance, Angle, Dihedral, Bump, and HBond commands
of the Monitor pulldown. For Distance, Angle, and Dihedral the
color may be set for all monitors of a given type, or for individual
monitors. For Bump and HBond all monitors of the given type are
affected.
XYZ
This command determines the coordinates of an atom. The coordi-
nates are reported in the information message area and the text-
port.
Bump
The Bump command is used to check for van der Waals overlap
within a molecule or between two molecules. If overlap is
detected, red vectors are drawn between the offending atoms and
the distance between the atoms is listed.
Van der Waals overlap occurs when the distance between any two
atoms is less than the sum of the van der Waals radii of the atoms,
less the allowed overlap.
The default display for the Bump command is statically connected
to the first molecule specified. That is, it is not updated in response
to movement of the molecule(s) involved. The Bump command
can also set up a monitor that changes dynamically as the mole-
cule(s) are moved. The van der Waals radii used in calculating the
overlaps are determined from the elements.dat file in the
$INSIGHT_DATA directory and is read in when Insight II is
started. The percentage of overlap considered to be unacceptable
is a parameter of this command.
Neighbor
The Neighbor command displays the distance between one or
more source atoms and their neighbors. Two atoms are neighbors
if they are in the same molecule and are separated by three or more
bonds.
You can specify whether you want neighboring atoms to be con-
nected by a solid line with the distance displayed between them,
or with a dashed line. You can add, delete specific, or delete all of
the given type of neighbor displays.
HBond
The HBond command is used to add, and delete some or all of the
hydrogen bonds within or between molecules from the display.
A hydrogen bond is considered to be formed when the distance
between the proton on the donor atom and the heavy atom accep-
tor is less than a specified distance, and the angle between the pro-
ton acceptor, the proton, and the proton donor is greater than 120
degrees. If hydrogens are not included in the current display,
hydrogen bonds are displayed between the heavy atoms oxygen
and nitrogen. The distances and angle used for determining
whether an acceptor and donor are within hydrogen bonding dis-
tance are taken from the file, hbond_file.dat, which is located in the
$INSIGHT_DATA directory.
The display of the hydrogen bonds differs slightly between
intramolecular bonds (within a molecule), and intermolecular
bonds (between molecules). Intermolecular hydrogen bonds are
displayed with dashed green lines connecting the atoms, along
with the associated distances. This display looks and acts exactly
like a distance monitor. Intramolecular hydrogen bonds are lighter
in color and have no distance displayed. Note that although
hydrogen bonds are similar to distance monitors, they can only be
deleted with the HBond command.
Energy
The Energy command allows you to examine or to monitor the
total energy of a single molecule. You can specify which atomic
energies will be used to compute the total energy. You can choose
one of the sets of predefined groupings of energy terms, including
all atomic energies, only the diagonal terms excluding the hydro-
gen bonding and cross terms, and only the nonbond terms. You
can also specify any group of energies desired. You can also add,
remove and/or clear energy monitors.
The source of the parameters used for the energy calculation is the
currently assigned forcefield file.
Transform Pulldown
The Transform pulldown contains commands that control the
three-dimensional spatial transformations of objects (i.e., rotations
and translations). Also included are commands that define certain
characteristics of the three-dimensional viewing window.
All objects that are defined in the system may be moved, rotated,
scaled, etc., in relation to the frame of reference of the viewing win-
dow (screen). Such three-dimensional transformations may be
performed in a continuous manner by using the mouse, or the dial
slider boxes in the lower left part of the screen. Some of the com-
mands in this group allow these same transformations to be per-
formed in discrete, user-defined steps. In the case of rotation and
translation, the transformations can be performed in an object
space axis system. Object space axes differ from the screen axes in
that they are unique to each object. Object space axes move and
rotate with an object when the object is transformed in screen
space. The default object space axes are defined by the principal
moments of inertia of the object. Alternative definitions can be set
up. The object to which the dials are connected is identified imme-
diately under the screen dial boxes.
Commands in this pulldown also allow you to select the object(s)
to which the transformations are applied, to set the scale of the
objects, and to set the window clipping parameters. Also included
are commands to define torsions about bonds, perform superim-
positions of molecules, rock any object about the y axis, and define
which object the mouse or dials are connected to.
Connect
The Connect command is used to connect the mouse and dials to
an object. The mouse and dials control the scale, translation, and
rotation of objects. These operations can be performed by using
the mouse, the dial slider boxes on the screen, or physical dials.
You can also specify that the given command be performed on
world, rather than an individual object or assembly.
By default, whenever more than one object exists, the dials are con-
nected to world, which is a pseudo-association to which all objects
in the system belong. Therefore, all objects initially move and scale
Position
The Position command in the Transform pulldown allows you to
list or delete alternate positions that have been previously stored
with objects.
Reset
The Reset command in the Transform pulldown allows you to
apply alternate positions that have been previously stored with
objects. These alternate positions are created with the Store com-
mand in the Transform pulldown. The positions LAST, CUR-
RENT, and ORIGINAL are automatically generated and are
updated whenever you use the commands Connect, Move,
Rotate, Scale, Center, Superimpose, and Overlay from the Trans-
form pulldown, or when you use the function keys (<F10> or
<F11>) to connect to objects.
Store
The Store command in the Transform pulldown allows you to
store alternate positions for objects. These alternate positions can
be applied later using the Reset command in the Transform pull-
down.
You may name a position with any alphanumeric string of charac-
ters and the dollar sign and underscore. However, the names
CURRENT and ORIGINAL are reserved and cannot be used.
Axes
The Axes command is used to define the alternate space axes for
an object. The alternate space axes define the center of rotation for
the object and system in which the object is translated and rotated
when the dials are connected in the Alternate space of transform
mode. Alternate space axes are convenient for performing such
tasks as rotating about the axes running through a helix, or normal
to plane. They are also used for positioning and aligning the object
via the Move and Rotate commands and are used for positioning
sliceplanes when visualizing grids.
The alternate space axes can be defined by using the Moment_of_
Inertia of the object, specifying three Atoms or Coordinates, or
providing an alternate space transformation Matrix. The Recenter
boolean controls whether the alternate space axes are recentered
on a new point or whether only their direction is altered.
Center
The Center command in the Transform pulldown is used to define
the center of rotation of an object or assembly. The new center can
be defined in several ways. For example, you can define the center
of rotation as the center of mass of the object or set of objects
(default), as a single atom or the coordinates of an atom, as the
three-dimensional midpoint of three atoms, or as an arbitrary
point in the world system. You can also specify that the given com-
mand be performed on world, rather than an individual object or
assembly.
If one or more objects of an assembly are translated, the center of
rotation is not automatically updated. This update must be done
using the Center command.
The center of rotation of world may be redefined by using the
World parameter with no object name or mode option.
In the menu version of the Center command, the Position Center
parameter may be entered by picking an atom with the mouse. The
resulting values are the x, y, z world space coordinates of the atom.
Note that this is the same as using the Atom mode, and thus is not
the intended use of the position mode.
Move
The Move command translates an object or assembly to a new
position on the screen. This can be in the world axis system or the
object axis system. The same effect can be obtained by using the
mouse, dial boxes on the menu, or physical dials for the transla-
tion. However, the Move command provides a means of moving
an object by a specific amount, or to a specific location.
Rotate
The Rotate command rotates an object or assembly by a specified
number of degrees about the world axis or object axis system.
You can specify the number of degrees in each direction (X, Y, Z),
that the object should be rotated. Values must be specified for each
direction, even if they are 0. The rotations are always done in the
order X, Y, Z.
Scale
The Scale command is used to set or change the scale of one or
more objects to a user-specified value. This is useful for resetting
objects that have been independently scaled, to a common scale, or
for changing the scale by a known amount. The scale of objects
specified with the Connect command can be changed in a contin-
uous manner through the use of the mouse or the dials.
Apply
The Apply command is used to apply the current rotation trans-
form to the coordinates of the molecule. This command functions
identically to the sequence of operations: Put Molecule Transform
ON, Delete Molecule, and Get Molecule with the transformed
coordinates.
Clip
The Clip command is used to manipulate the thickness (the dis-
tance between the front and back clipping planes) of the viewing
window, and the Z position (the midpoint of the window in the z
direction) of the viewing window. The viewing window is also
referred to as the slab. The position can be controlled using the
Rock
The Rock command is used to initiate a rocking motion of one or
more objects on the screen about the Y axis. This rocking motion is
useful for giving a pseudo three-dimensional illusion to the struc-
tures. The rocking can be controlled in both speed and magnitude.
Each time the timer fires, the object(s) are rotated by a specified
number of degrees. Specifying a larger number of degrees causes
a faster rotation rate. By specifying a large value for the magnitude
of the rocking motion a rolling motion can be achieved.
Once the Rock command is activated, rocking continues even if
other commands are issued, until the Rock command is turned off.
When specifying the object or objects which are to be rocked, you
may use a wildcard, but may not specify an assembly object. If
rocking is already in progress, the specified objects are added to
the rocking motion.
Torsion
The Torsion command is used to define, tabulate, reverse, delete,
clear, and set the display style of dihedral angles for up to four
bonds in a molecule.
Once you have defined a torsion it becomes the active torsion; an
angle monitor as well as a cone indicating the directionality of the
torsion are displayed identifying the active torsion. There is only
one active torsion at any one time. To deactivate a torsion, click on
Dials
X Rotate Torsion1
Y Rotate
Forcefield: cvff
Overlay
The Overlay command allows you to overlay one object onto
another. The Insight II program knows where every molecule,
graph, user-object, contour, etc. is in space. That is, it knows how
each such entity has been moved (translated), rotated, and/or
scaled. When one graph is overlaid on another graph, the transla-
tion, rotation, and scaling of the two graphs is made the same so
Superimpose
The Superimpose command is used to superimpose two mole-
cules on the screen. Sets of corresponding atoms from each mole-
cule are selected and used to perform a minimum RMS alignment
of the two molecules. The first (source) molecule is then moved to
visually display its superposition on the second (target) molecule.
A minimum of three atoms from each molecule are required for
superimposition.
Parameter options in the Superimpose command allow you to
select certain types of atoms, such as heavy atoms, backbone
atoms, and alpha carbon atoms, as the source spec and the target
spec.
Subset Pulldown
The Subset pulldown contains commands related to subsets. A
subset is a collection of atoms from one or more molecules. The
subset is defined using commands from the Subset pulldown and
can be used in commands anywhere a subportion of a molecule
can be used. Subsets can be created by explicitly defining mono-
mers, residues, or atoms, or automatically by having Insight II find
monomers and residues within a given proximity of selected
regions of a molecule. Subsets can also be used in molecular
mechanics simulations using Discover.
Get Subset
The Get Subset command is used to create a new subset by read-
ing a subset definition file (.sub) or a molecular data file (.mdf). If
an mdf file is specified, the subset definition is read from the atom-
set section.
Put Subset
The Put Subset command is used to save a subset in an external
file. The subset members are written to a subset definition file (.sub
extension). The format of this file is consistent with the atomset
portion of the .mdf file. Refer to the file format documentation for
more information.
Define Subset
The Define Subset command is used to create and filter subsets
that describe static, or dynamic, sets of atoms on the basis of
atomic attributes. Multiple attributes can be used sequentially, to
define, for example, sets having two properties (attributes within
specified ranges) simultaneously.
Zone Subset
The Zone Subset command is used to create a subset that is spec-
ified in terms of a central set of atoms and a radius. All atoms that
belong to monomers or residues which fall within the spheres
described by the set of central atoms and the radius are made
members of the new subset.
Interface Subset
The Interface Subset command is used to create a subset that is
defined in terms of a central set of atoms, a radius, and an object
comparison list. All atoms which are contained in monomers or
residues that belong to objects in the comparison list and are
within the sphere described by the central atom and the radius are
made members of the new subset. This command is useful for
finding those residues in a protein around an inhibitor.
Template Subset
The Template Subset command is used to create a new subset
whose members are sets of atoms that make up specific patterns
within a molecule or assembly of molecules. A specific instance of
Combine Subset
The Combine Subset command is used to perform logical set
operations on subsets. The logical operations include union, dif-
ference, and intersect.
Copy Subset
The Copy Subset command is used to create a duplicate of the
subset you specify. All members of the subset you specify will also
be members of the new subset.
Delete Subset
The Delete Subset command is used to delete a subset. Atoms that
comprise the subset are not deleted, only the subset abstraction of
them.
Rename Subset
The Rename Subset command is used to assign a new name to the
specified subset. The New Subset Name must be unique and fol-
low the same syntax restrictions as the Subset Name parameter.
List Subset
The List Subset command is used to display the monomers or res-
idues and atoms that comprise a subset.
Assembly Pulldown
The Assembly pulldown contains commands that act on assem-
blies or groups of objects.
An assembly is a collection of objects that can be rotated, moved,
and scaled as a single unit. It is composed of one or more other
objects, which may themselves be assembly objects. This nesting
may take place to any depth, but name specification is limited to
five levels of nesting. The primary purpose of an assembly is to
allow you to move a cluster of objects about its common center of
mass.
For several of these commands, value-aids which specify assem-
blies already known to the system are presented alongside the rel-
evant parameter blocks.
Associate Assembly
The Associate Assembly command creates an assembly com-
prised of existing objects. An assembly is a logical grouping of
objects that can be manipulated as one unit when connected to the
mouse or dials. When an assembly is written out, all of its member
objects are written out.
Add Assembly
The Add Assembly command adds an object to an existing assem-
bly.
Remove Assembly
The Remove Assembly command removes an object from an
existing assembly.
Cell Assembly
The Cell Assembly command is used to specify the size, angles,
and table number of the asymmetric unit, which may then be used
in crystal and periodic boundary condition operations. This infor-
mation is also used by the Cell_display, Macro_Cell, Layered_
Cell, Symmetry and Soak Assembly commands. The asymmetric
unit is also used in solvent calculations and in solvent generations.
Cell_display Assembly
The Cell_display command displays an object as it appears in a
periodic system defined by a given unit cell. Note that the asym-
metric unit needs to be defined prior to using Cell_display.
Display modification commands (e.g., Color, Display, CPK, Ball
and Stick) work on these periodic atoms (symmetry/lattice offset
generated replicates of the asymmetric unit). Ribboning, moving
individual replicates, and topological or chemical modification
(e.g., Element type, Charge, Potential Type, Bond order/type
changes) do not. This is because the periodic atoms mirror many
of their parent atoms' attributes, and cannot be changed. However,
the Merge command in the Modify pulldown can be used to con-
vert replicates into independent molecules by merging the repli-
cates into another molecule. Once merged, all modification
commands (e.g., Color, Move, Ribbon, etc.) are available for use.
Symmetry Assembly
The Symmetry Assembly command is used to create, delete, and
display symmetry-related replicates of a molecule. The position of
a replicate is calculated directly from the cell parameters (lengths,
angles, and space group operator) of a reference molecule.
Display modification commands (e.g., Color, Display, CPK, Ball
and Stick) work on these periodic atoms (symmetry/lattice offset
generated replicates of the asymmetric unit). Ribboning, moving
individual replicates, topological or chemical modification (e.g.,
Element type, Charge, Potential Type, Bond order/type changes)
do not. This is because the periodic atoms mirror many of their
parent atoms' attributes, and cannot be changed. However, the
Merge command in the Modify pulldown can be used to convert
replicates into independent molecules by merging the replicates
into another molecule. Once merged, all modification commands
(e.g., Color, Move, Ribbon, etc.) are available for use.
The Delete option in the Symmetry Assembly command allows
you to eliminate the entire periodic system, leaving only the asym-
metric unit.
Soak Assembly
The Soak Assembly command can be used to solvate a molecule.
There are three Methods provided. The molecule can either be sur-
rounded by a Layer of solvent (where you specify the thickness),
placed in the center of a solvent Sphere (where you specify the
atom to place at the center of the sphere, and the radius of the sol-
vent sphere), or a Periodic Boundary Condition (PBC) box previ-
ously defined using the Assembly/Cell command can be filled
with solvent to generate a bulk model. Solvation is accomplished
by placing the molecule in an equilibrated 3D box of solvent and
removing those solvent molecules which overlap with atoms in
the molecule being solvated. Because any atom overlap causes the
whole solvent molecule to be removed the resulting model can be
at a lower than expected density. It is important to fully equilibrate
the model using molecular dynamics before carrying out any anal-
ysis.
The default is to soak with water using the waterbox.psv file pro-
vided in the $INSIGHT_DATA directory. $INSIGHT_DATA also
contains files for toluene (tolubox), THF (thfbox), paraxylene (pxy-
lenebox), and octanol (octobox). However, any solvent may be
used if the necessary solvent files are provided. Soak requires
either a .psv or .car and .mdf files for an equilibrated PBC box of
the solvent. These can be generated using Insight II (macros are
provided in the $BIOSYM_ROOT/$BIOSYM_CONTEXT/gifts/
insight directory to help with this task--contact the Customer Sup-
port hotline for further information), or using the Amorphous_
Cell module.
List Assembly
The List Assembly command lists information about assembly or
replicate objects. The details listed are the center of mass, scale,
current translation and rotation, transform and rotation matrices,
and the component objects for each specified assembly. This com-
mand can also be used to list the symmetry-related replicates for a
specified object, which list the cell space group information for
each replicate.
User Pulldown
The User pulldown contains commands that manipulate the dis-
play of user objects and their labels. User objects are read from spe-
cially formatted .usr files that describe arbitrary data, such as
arrows, text, and dots. User objects frequently are used to annotate
models that are currently displayed.
Get User
The Get User command retrieves, displays, and names stored user
objects from special .usr format user files. By using the reference
option, you can control whether or not the Get command uses an
existing object as a reference coordinate system. The .usr files are
created by certain Insight II commands, or can be created by hand.
Color User
The Color User command modifies the color of the specified user
object, user object label, or user object user label. You may type the
color specification or select it from the color palette. Colors can be
specified using any of the normal methods.
Transparency User
The Transparency User command is used to adjust the degree of
transparency in the solid surfaces of a user object. This is achieved
by setting the alpha component of all colors in the surfaces with-
out affecting the r,g,b values (see Use of Color for more informa-
tion). A Transparency Value of 0.0 means fully transparent and a
Transparency Value of 1.0 means fully opaque.
Annotate User
The Annotate command is used to create annotations for molecu-
lar models. The annotation may consist of lines, arrows, text, cir-
cles, open boxes, and filled boxes. For example, you may use
annotations to add explanatory comments to a molecular model.
To create an annotation, select the object type (line, arrow, text,
etc.), specify an annotation name, select the characteristics you
would like for the object (color, size, etc.), then click on the Coord1
parameter.
When the Coord1 parameter is active, you may click in the 3D
window to "draw" the object. For text, click the mouse button to
create the object, then, with the mouse button still down, drag the
mouse to place the text in the desired location. For the other object
types, click where you would like the object to begin and, while
holding the mouse button down, drag the mouse to the place
where the object is to end.
For example, to draw an arrow, click where you would like the
arrow to begin, then drag the mouse to the location where you
would like the arrow to end. The arrow is drawn as you drag the
mouse to illustrate the appearance the arrow will have when you
release the mouse button.
After creating the first object, you may continue to add objects to
the annotation. Subsequent objects continue to be added to the
annotation until a new annotation name is entered into the Anno-
tation name parameter. The annotation is an assembly which con-
tains the objects which have been added to it.
Note that the names for the annotation objects are automatically
generated.
Label User
The Label User command controls the creation and positioning of
labels for user objects. You can position the label above, below, or
to the left or right of the user object. You can also specify the x, y,
and z coordinates so that the command positions the correspond-
ing label to the screen position specified by these coordinates.
Options in the Label User command allow you to specify whether
the current Label User command operates on a user object label or
on a user object user label. A user object label is simply the name
of the user object, whereas a user object user label is any arbitrary
text.
Charsize User
The Charsize User command is used to modify the size of a spec-
ified user label.
List User
The List User command displays information pertaining to the
structure and display of a user object. You can direct the informa-
tion to either the textport or a file.
Spectrum Pulldown
The Spectrum pulldown contains commands to get, put, create,
edit, and manipulate spectrums. Spectrums are used to map data
values to colors in a variety of coloring and data analysis com-
mands. They may specify very complex mappings through the use
of multiple subranges, each being either a solid color or a color
ramp. Spectrums can be translated and scaled, and their orienta-
tion and other display attributes adjusted to provide the optimal
relationship to the rest of the objects on the screen.
Get Spectrum
The Get Spectrum command is used to restore a spectrum from a
file. Spectrum save files have the extension .spect, and are created
with the Put Spectrum command.
Put Spectrum
The Put Spectrum command is used to save a spectrum to a file.
The resulting filename is the spectrum name with the extension
.spect.
Edit Spectrum
The Edit command of the Spectrum pulldown is used to invoke
the dialog boxes for spectrum creation and editing. Using these
dialog boxes you can create new spectrums with specified ranges
and colors and then edit these, or preexisting spectrums, in a
highly interactive fashion. To get help on specific Spectrum Edit
dialog boxes, press the Help button in the dialog box.
List Spectrum
The List Spectrum command displays information about the
value ranges and colors of spectrums. Wildcard specifiers are per-
mitted in spectrum names for this command. The detail level may
be set to provide from single line output with names and overall
ranges to multiple line output with subrange values and colors.
You may redirect output from the screen to an output file if
desired.
Custom Pulldown
The Custom pulldown contains commands that assist you in exe-
cuting macro commands. A macro command is defined by you
using the Biosym Command Language (BCL). It is, in effect, a
command that combines basic commands of the Insight II pro-
gram.
In order for the Insight II program to know about a macro com-
mand, you need to define it. Typically this is done by putting the
macro command’s definition into the startup file corresponding to
the environment variable (refer to the separate Insight II Products
System Guide). Or, you may execute the Source_File command in
the Session pulldown (giving as input the name of a file that con-
tains the macro command’s definition). Then you may execute the
macro command by simply typing its name (and any parameters
that it requires). You may list the defined macro commands with
the Catalogue command in the Custom pulldown.
In addition, you may add the macro commands to any pulldown
(so that they may be executed using parameter blocks rather than
just typing the commands) with the Add_To_Pulldown command
in the Custom pulldown.
Add_To_Pulldown
The Add_To_Pulldown command allows you to add a new com-
mand to any pulldown in the currently active module. The new
command corresponds to a pre-defined macro command. These
new commands are colored red in the list of commands in the cho-
sen pulldown. In effect, the Add_To_Pulldown command gives
you a second means by which you can execute your macro com-
mands. Once a macro command is defined, it can be executed by
typing it in. By using the Add_To_Pulldown command, you auto-
matically build a parameter block for the given macro command.
Catalogue
The Catalogue command allows you to list out all defined macro
commands. The list appears in the textport window. It shows each
macro command (and its type) along with its parameters (and
their types). If there is no return for an item, it appeasrs in this list-
ing as "void".
Macro_Delete
This command allows you to remove a macro you previously
placed into a pulldown by sourcing a valid BCL file. You can
replace the macro by again sourcing that BCL file.
Default
The Default command allows you to specify default values for
parameters, commands, and pulldowns within each module.
Trigger
The Trigger command allows you to set which (if any) parameter
triggers the execution of a command, once that parameter is filled
in.
List_Properties
The List_Properties command allows you to list all of the system
and user defined properties currently available. The listing
includes the Prop_Name, its Origin (Sys/User), its Type (Func/
Attr), its Class (Mol/Monomer/Atom), its Return_type (Integer/
Float/Boolean/String), and if it is a Functional Type, possibly the
Macro Name. You can list all of the classes or, using the Property
Class parameter, only one. You can also print to the Textport or
output the information to a file.
Window Pulldown
The Window pulldown contains commands that act on windows
created by the Insight II program. All of the windows created by
the program are normal top-level windows which can be manipu-
lated with the window manager. They can be raised, lowered,
closed, or iconified just like any other window. The commands in
this pulldown are intended to enhance, but not modify or replace
the existing window manager functionality. For example, it is pos-
sible to close (delete) any single window by selecting the close
option from the Window pulldown in the upper left corner of the
window’s title bar. While also providing this functionality, the
Close Window command provides the additional capability of
closing several windows simultaneously through the use of wild-
cards when specifying the window name.
Furthermore, the Window pulldown contains commands which
allow you to create and manipulate window layouts. A window
layout is used to organize a set of windows so that they may be
resized, moved, and iconified as a single unit.
Raise Window
The Raise Window command pops to the front all windows
whose names match the input string. The input string may contain
wildcard characters to allow raising more than a single window.
Lower Window
The Lower Window command pushes to the back all of the win-
dows whose names match the input string. This provides a quick
way of pushing a set of windows at one time.
Close Window
The Close Window command closes all windows whose names
match the input string. A wildcarded string may be used to close
more than a single window. Note that closing a window deletes
the window, as well as any objects which do not appear in any
other window. Since the main window of the Insight II program is
the primary focus of user interaction for the program, it may not
be closed with this command.
Layout_Template Window
The Layout_Template Window command allows creation and
manipulation of layout templates. A layout template is a descrip-
tion of the relative positions and sizes of windows within a layout.
While the Insight II program provides a couple of simple default
templates, it is difficult to anticipate individual preferences for
window layouts. Therefore, this command provides the ability for
you to define new templates using the current positions of the
windows in the layout you have created. In addition, layout tem-
plates can be written to and read from files with this command, so
that you may reuse the layouts you create in future sessions.
Layout Window
The Layout Window command allows you to create and define
window layouts. A window layout organizes a set of windows so
that they can be moved, resized, and iconified as a single unit. The
layout consists of two components. The first is the layout template
which contains of a set of entries, where each entry specifies the
relative size and location of a window as a percentage of the total
size of the layout. The second component of the layout is the list of
windows which are managed by the layout. When the layout is
applied, each window is positioned and sized according to the
next unused template entry. That is, the first window in the list is
placed in the position described by the first template entry, the sec-
ond window with the second template entry, and so on until there
are either no more windows or no more template entries.
One window may be designated as a control window. This win-
dow’s position and size are used to determine the size and posi-
tion of all the other windows so that the layout template
specifications are satisfied. To move, resize, or iconify all of the
windows together, simply perform the operation on the control
window. Any window in the layout may be designated as the con-
trol window, or you can use no control window, in which case all
windows move and resize independently.
Raise_Layout Window
The Raise_Layout Window command pops to the front all win-
dows which are currently managed by the specified window lay-
out.
Lower_Layout Window
The Lower_Layout Window command pushes to the back all of
the windows that are currently managed by the specified layout.
Close_Layout Window
The Close_Layout Window command closes a window layout.
Closing a window layout deletes the layout as well as all windows
which are managed by the layout.
Help Pulldown
There are two types of help for Insight II. Insight_Help invokes
the Help Viewer which enables browsing and printing of online
help. Pilot_Tutorials allow for interactive Insight II training ses-
sions using the Pilot program.
Insight_Help
The Help Viewer may be used to browse and to print online help.
The Help Viewer consists of a text viewing area, a row of buttons
and pulldown menus for traversing through online help, and the
Options and Help pulldown menus.
When the Help Viewer is started within Insight II, it is in follow
mode. In this mode, the Help Viewer dynamically changes to fol-
low the context of the Insight II commands being issued. This fea-
ture may be turned off by choosing the Follow toggle switch on the
Options pulldown menu.
The Go Forward and Go Backward menu items under the Options
pulldown allow you to revisit the last 10 help topics that you have
viewed. The Go Forward and Go Backward features may alterna-
tively be selected by the keyboard mnemonics Ctrl-f and Ctrl-b
respectively. This eliminates the need to open the Options menu
with the mouse.
The Print... menu item under the Options pulldown invokes a win-
dow with print options for the currently displayed help. This win-
dow is explained below.
The Quit Help menu item under the Options pulldown removes
the current Help Viewer. This action has no effect on Insight II.
The keyboard mnemonic Ctrl-q may also be typed to quit from
help. This is the equivalent of opening the Options pulldown
menu and selecting the Quit Help menu item.
The Help pulldown menu contains a single menu item, Help On
Help, which displays this help text.
Pilot_Tutorials
The Pilot tutorial sub-system displays its own help. To invoke Pilot
from within Insight II, select the Pilot_Tutorials command from
the Help pulldown menu. To view help for Pilot, select the "?" icon
from the bottom row of the main Pilot window.
Get Contour
The Get Contour command retrieves contour maps from contour
files created prior to the 2.3.0 version of the Insight II program. By
using the Reference option, you can control whether or not the
Get Contour command uses an object as a reference coordinate
system when it retrieves the contours. The Get Command can
retrieve a specific contour value, or all contour values from the
contour file.
The Get Contour command defines contours as user objects,
rather than as contour objects, and thus they may not be manipu-
lated by the Contour commands. User objects created with the Get
Contour command have no solid data and can only be represented
as wireframe.
Create_Single Contour
The Create_Single Contour command is used to create contours
from grid files or grid objects. The grid must be loaded before this
command can execute. When reading from a grid file, a grid object
is not created.
A contour object is created for the level selected using the slider
box connected to the Level Specification parameter. Contours are
given the name specified as the Contour Name parameter.
Contours can be created as Big_Dots, Dots, Lines, Solid contours,
or created but Undisplayed as dictated by the Display Style
parameter. In most cases the outside of a solid contour is the
lighted side, but if a solid contour appears as a dark shape, then
the normals should be inverted using the Recalculate Contour
command.
A contour created in the execution of the Create_Single Contour
command is initially given the color specified by the Color param-
eter. The color can be modified by the Color Contour command.
Create_Range Contour
The Create_Range Contour command is used to create contours
from grid files or grid objects. When reading from a grid file, a grid
object is not created.
The range of levels may be specified based on the value of the
Level Specification parameter. One contour object is created for
each level. The contours are given the name specified in the Con-
tour Name Root parameter, with a numeric suffix added to give a
unique name for each level.
Contours can be created as Big_Dots, Dots, Lines, Solid contours,
or created but Undisplayed as dictated by the Display Style
parameter. In most cases the outside of a solid contour is the
lighted side, but if a solid contour appears as a dark shape, then
the normals should be inverted using the Recalculate Contour
command.
Contours created by the Create_Range Contour command are
given one of six unique color specifications. These colors can be
modified by the Color Contour command.
Clip_Display Contour
The Clip_Display Contour command controls the clipping and
display of contour objects. Various options of this command allow
you to clip contours using planes, boxes, or spheres in fractional
space and Cartesian space.
Color Contour
The Color Contour command modifies either the color of the spec-
ified contour, or the color of the specified contour’s label. You can
choose one of the predefined colors, such as blue, green, red, cyan,
yellow, magenta, or white. Or, you can specify a blend of these col-
ors or define a color hue.
Transparency Contour
The Transparency Contour command is used to adjust the degree
of transparency in the solid display of a contour. This is accom-
plished by setting the alpha component of all colors in the contour
without affecting the red, green, blue values. See the Use of Color
section in the Introduction to the Insight II User Guide for more
information on color specification, alpha values, and transparency.
A Transparency Value of 0.0 means fully transparent, and a Trans-
parency Value of 1.0 means fully opaque.
Recalculate Contour
The Recalculate Contour command is used to change the contour
level, the normals of solid contours, or the display style of a con-
tour. A new contour level can be selected using the slider box con-
nected to the Level Specification parameter. Solid contours have a
lit and a dark side which can be controlled by the Flip_Normals
parameter. The Display_Style of contours may be Big_Dots, Dots,
Lines, Solid surfaces, or Undisplayed.
Label Contour
The Label Contour command controls the creation and position-
ing of labels for contours. The object name of the contour becomes
the contents of the label. You can position the label above, below,
to the left of, or to right of the object. You can also specify the x, y,
and z coordinates for any Label Contour command, which then
Charsize Contour
The Charsize Contour command modifies the size of the specified
contour's label.
List Contour
The List Contour command displays information pertaining to the
structure and display of a contour. Information in the listing
includes the fractional space limits available for display, and the
fractional limits currently displayed. You can direct the informa-
tion to either the textport or a file.
Spreadsheet Pulldown
When you pick the Spreadsheet icon, a menu with fourcommands
appears. Picking the Spreadsheet icon is equivalent to picking the
Spreadsheet pulldown from the lower menu bar, in modules
where that option is available.
New Command
The New command creates a new empty spreadsheet.
New_Molecule Command
The New_Molecule creates a new spreadsheet for a selected mol-
ecule.
Open Command
The Open command gets information from disk in various file for-
mats to create a new spreadsheet. The file types include the MSI
ASCII format for graphs, and a neutral ASCII table format used by
other spreadsheets.
Put Command
The Put command writes out the table data to an ASCII file that
can be printed, viewed, and/or edited. The data are written to a
file with the .tab format. Each table cell value is separated by tabs.
Edit
The Edit pulldown contains those commands used to modify the
spreadsheet, including changing the values of the stored data and
adding formula(e).
Cut Edit The Cut command removes the values of the selected
cells from the spreadsheet, placing them within the global clip-
board.
Find Edit The Find command takes the selected cell region and
modifies the selection to represent only those cells whose value
falls within the specified constraints.
This is also a fall back position if the mouse driven selection cannot
be completed.)
Fill Edit The Fill command allows the user to supply a single
value to all cells, or a range of values in linear and non-linear pro-
gression. The row or column major application of the range to the
selected cells is controlled by the Preference Format command.
Data
The Data pulldown contains those commands to manipulate or
make inquiries about the data within the spreadsheet.
Format
The Format pulldown contains those commands to modify how
the spreadsheet is viewed. It also includes commands describing
how the spreadsheet is manipulated (such as row major versus
column major).
Graph Plot
The Graph command creates or adds to an existing graph a set of
plots using each column (or row if the preference is row major).
The set of plots created are oriented in 3D based on the plot num-
ber.
Viewer Tutorials
As of this release, most tutorials are now available online for use
with the Pilot interface. To access the online tutorials for the
Viewer module, click the mortarboard icon in the Insight II inter-
face.
Command Summary
In addition to the core pulldowns in the top menu bar, the Builder
module adds pulldowns to the lower menu bar. The pulldowns
are Atom, Fragment, Modify, Forcefield, Pseudo_Atom, and
Optimize. (The Sketch pulldown and the Toolbox comprise the
Sketcher product, licensed separately and documented in the next
chapter.)
Atom Pulldown
The Atom pulldown is used to modify molecules at the atomic
level.
Charge Atom
The Charge Atom command is used to set or alter partial or formal
atomic charges. This command sets discrete user supplied charge
values for specified atoms. It does not perform any type of overall
charge assignment. The charges for an entire molecule can be com-
puted using the Potentials command, which is accessed from the
Forcefield icon.
Hybridization Atom
The Hybridization Atom command is used to change the hybrid-
ization of a molecule by adding or deleting hydrogen atoms as
needed, and modifying the molecular geometry accordingly. The
level for hybridization may be specified, or calculated automati-
cally by the Insight II program. The Hybridization Atom com-
mand can also be used to add hydrogens to fill unfilled values, as
determined by existing bonds and geometry. In this mode of oper-
ation, the desired hybridization is ascertained by looking at
explicit bond orders first, if the hybridization is still ambiguous
after looking at bond order the geometry of the atom and its sur-
rounding environment will be used. By default, the Insight II pro-
gram fills valences to a neutral state. Using this command, this
mode is equivalent to the Hydrogens command in the Modify
pulldown. The program never changes the actual bond orders of
any bonds. It is left to the user to make sure that the bond order
and geometry are consistent.
The naming scheme for hydrogens is as follows:
Planar Atom
The Planar Atom command is used to set or unset the out-of-plane
flag for an atom. Out-of-plane atoms are used by the Discover pro-
gram to mark atoms that are to be constrained to lie in the plane of
the three atoms it is bonded to. You rarely need to use this com-
mand because the Insight II program automatically keeps track of
out-of-plane atoms.
Potential Atom
The Potential Atom command is used to set or change the poten-
tial function type for an atom, according to the assigned forcefield
library. This command is used to manually change the potential
function types of individual atoms. The Potentials command in
the Forcefield pulldown can be used to automatically set the
potential function atom types for an entire molecule. The available
potential function atom types in this command are taken from the
forcefield library, which is defined by the environment variable
FORCEFIELD and is in the directory defined by the environment
variable BIOSYM_LIBRARY.
Delete Atom
The Delete Atom command is used to delete an atom from a mol-
ecule. If a heavy atom is deleted, all bonded hydrogens are also
deleted. No attempt is made to fill valences left open by the dele-
tion. When the last atom of a molecule is deleted, the molecule
itself is deleted.
Replace Atom
The Replace Atom command is used to change the element type
of an atom. Connected hydrogens are removed appropriately. The
Insight II program allows the replacement of atoms that result in
valences being exceeded. For example, an sp3 carbon with three
ligands can be replaced by an oxygen. The deletion of the extra
bond is left for the user to do.
Rename Atom
The Rename Atom command is used to change the name of an
atom. Insight II requires that all atom names in a molecule be
unique. This command allows you to explicitly change the name
of individual atoms.
List Atom
The List Atom command lists information about a specified atom,
including the atom name, element type, coordinates, sequence
number, and connected atom sequence numbers. Additional infor-
mation can be displayed, including the group name, potential
function type, fractional space coordinates, charge, switch and
out-of-plane flag values. The information is listed tp the textport or
is output to a file.
Fragment Pulldown
The Fragment pulldown is used to maintain the fragment library,
create or modify a fragment, or repeat the fragment to create a
polypeptide or polymer.
Get Fragment
The Get Fragment command is used to create a molecule by copy-
ing a fragment from the fragment library. This command also dis-
plays the contents of the fragment library in a separate window.
You can configure which fragment libraries to display via the Frag-
ment Libraries... button. Once a molecule has been created with
this command, it can be modified and manipulated just as a mole-
cule from any other source. The available categories for storing
and retrieving a fragment are Aminos, Atoms, Groups, Hydrocar-
bons, Rings, Metal templates, Metal ligands, Cage Clusters, Metal
Complexes, and User.
Put Fragment
The Put Fragment command is used to add a newly-defined frag-
ment to the fragment library, or replace an existing fragment in the
fragment library. Once a fragment is added, it appears in the frag-
Remove Fragment
The Remove Fragment command is used to remove a fragment
from the fragment library.
You may need your own copy of the fragment library to be able to
use the Remove Fragment command. Lesson 4, part 2, of the
Bioploymer tutorials includes information on setting up your own
fragment library.
Define Fragment
The Define Fragment command is used to make a molecule,
which may itself contain multiple fragments or monomer/resi-
dues, into a fragment suitable for
addition to the fragment library or for polymerization via the
Repeat command. During the process, the molecule is collapsed
into a single monomer/residue. If the fragment is to be repeated,
and head and tail atom must be identified.
Repeat Fragment
The Repeat Fragment command is used to create polypeptides or
polymers by repeating an amino acid, monomer, or existing
polypeptide or polymer that has forward and backward bonding
hydrogens defined. An optional dihedral angle for the bond cre-
ated may be given.
Delete Fragment
The Delete Fragment command is used to delete a single frag-
ment, residue, or monomer from a molecule. No change is made to
the geometry of the portion of the molecule which remains. In the
case that the molecule is a single monomer or residue as in the case
of a fragment or repeat unit, the whole molecule is deleted. An
energy minimization may be used to readjust the geometry of the
molecule in the cases where a nonphysical situation occurs.
List Fragment
The List Fragment command lists the coordinate and topology
details for a specific repeat unit, fragment, or residue. Using this
command, you can also list molecular mechanics information such
as partial charges and potentials.
Modify Pulldown
The Modify pulldown contains various commands for modifying
molecular structures.
Bond
The Bond command is used to create, delete, or modify intermo-
lecular and intramolecular bonds.
Intermolecular bonding requires choosing two atoms, usually
hydrogens, that are lost when the bond is created. When intermo-
lecular bonding is done, the smaller of the molecules is reposi-
tioned so as to make the length and geometry of the bond
reasonable. If a peptide bond is created via intermolecular bond-
ing, its bond order automatically is set to partial double. The bond
lengths used by the Insight II program are specified in the file ele-
ments.dat, which is located in the Insight II program’s help direc-
tory. This file is read each time the Insight II program is run, and
can be modified by the user.
For intramolecular bonding, the bond is created directly between
the specified atoms. When possible, the Insight II program deletes
hydrogens that would cause valences to be exceeded when the
bond is formed. The program allows heavy atom valences to be
exceeded temporarily while bonding. These inconsistencies must
Fuse_1
The Fuse_1 command is used to create fused ring systems by per-
forming intramolecular fusion of a pair of heavy atoms. The fusion
is performed by connecting all the bonds of the second heavy atom
to the first heavy atom, then deleting the second atom. After all the
bonds from the second atom have been added to the first atom,
hydrogens that violate the heavy atoms valence are deleted. The
Fuse_1 command is also useful for cleaning up any unfused pairs
remaining after a 2- or 3-pair fusion.
Before
1
2
After
Fuse_2
The Fuse_2 command is used to create fused ring systems by fus-
ing component rings together intermolecularly. Two atoms (usu-
ally heavy), are used in each of the two molecules to identify the
atom used for superposition. A third atom in each molecule is
picked that defines a plane using the first two atoms picked. The
fusion is accomplished by superimposing the second molecule or
fragment on the first, such that the first two pairs of atoms picked
are coincident. The molecules or fragments are then merged. The
atoms that comprised the second molecule or fragment are then
rotated to bring the alignment atom into the same plane as the
alignment atom of the first molecule or fragment. The two pairs of
atoms used for superposition are fused, then, any atom pairs
brought within .5 Å of one another by the superposition are fused.
Hydrogens that violate the valence of an atom are deleted from all
heavy atoms that were fused.
1 2 6
A
3 4
θ
B
Fuse_3
The Fuse_3 command is used to create fused ring systems by fus-
ing component rings together intermolecularly. Three heavy
atoms in each molecule are usually used to identify three pairs of
atoms used for superposition. The fusion is accomplished by
superimposing the second molecule or fragment on the first such
that the pairs of fusion atoms are coincident. The molecules or
fragments are merged, then the specified pairs are fused. Any
other atom pairs brought within .5 Å of one another by the super-
imposition are also fused. Hydrogens that violate the valence of an
atom are deleted from all heavy atoms that were fused.
Before
pair 1
pair 2
pair 3
After
Fuse_Close
The Fuse_Close command is used to fuse all the close atoms
(atoms within 0.5 Å of each other) either in one molecule, or
between two molecules. Close atom fusion between two mole-
cules results in the second being merged into the first, and then all
close atoms being fused. No superimposition is done. Hydrogens
that violate the valence of an atom are deleted from all heavy
atoms that were fused.
Before
molecule 1 molecule 2
After
Hydrogens
The Hydrogens command automatically adds hydrogens or lone
pairs to entire molecules. This command can also be used to add
hydrogens to fill unfilled valences, as determined by existing
bonds and geometry. In this mode of operation, the desired
hybridization is ascertained by looking at explicit bond orders
first. If the hybridization is still ambiguous after looking at bond
order the geometry of the atom and its surrounding environment
is used. By default, Insight II fills valences to a neutral state. Insight
II never changes the actual bond orders of any bonds. It is up to
you to make sure that the bond order and geometry are consistent.
This command also allows you to add hydrogens based on a target
pH for the solution. During pH based hydrogenation, the number
of hydrogens to be added for an atom is decided by doing a look-
up of the residue in the currently defined residue library. The res-
idue library used for the look-up is the one pointed to by the envi-
ronmental variable RESIDUE_LIBRARY, in the directory pointed
to by the environmental variable BIOSYM_LIBRARY. A match
occurs when either of following two conditions are met:
♦ pH of residue < abs( pKa of residue in library ) and pKa of res-
idue in library < 0 .
♦ pH of residue ≥ abs( pKa of residue in library ) and pKa of res-
idue in library > 0.
If a match occurs, the atom inherits the number of hydrogens of
the same atom in the template. Otherwise, valences are filled to a
neutral state.
The naming scheme for hydrogens is as follows:
♦ If one hydrogen is bonded to X, it is HX; if two, they are HX1
and HX2.
Merge
The Merge command combines two molecules into a single mole-
cule. The separate atom and monomer/residue lists are merged
and henceforth treated as a single object. Note that Merge is differ-
ent from the Associate command, in which the two molecules are
maintained as two separate objects.
Replicates created by the Symmetry command can also be merged
into other molecules. Since replicates are dependent on the given
symmetry operation and state of the molecule that derived them
(i.e., the asymmetric unit), special steps are necessary to not break
the symmetry relationship of replicates with the asymmetric unit.
Replicates cannot be merged into the asymmetric unit because this
operation would break the symmetry relationship of the repli-
cates; however, the replicates can be merged into a copy of the
asymmetric unit. To merge replicates back into a molecule that cre-
ated the replicates, perform the following steps:
1. Make a copy of the asymmetric unit molecule by using the Copy
Object command.
Unmerge
The UnMerge command allows you to create a new molecule by
extracting a piece from an existing molecule. The piece to be
unmerged must not be bonded to any atoms of the part(s) that are
to remain in the original object. The UnMerge command can be
used to make a separate molecule out of one subunit of a protein
complex, for example.
Geometry
The Geometry command is used to modify distances, angles, and
dihedrals in and between molecules. Distances can be modified
between bonded or unbonded atoms not connected by rings.
Angles can be set between any three atoms not connected by rings.
Dihedrals can be set between four atoms not connected by rings;
however, they must all be in the same molecule.
Ring_Conf
The Ring_Conf command is used to interactively modify the
geometry of rings in molecules without breaking a bond. A frag-
ment of a ring, which is specified by two anchor atoms, can be
moved up and down relative to the ring plane.
There are two types of operations you can perform. The first one is
called flipping. In this operation, the ring is flipped using the neg-
ative value of the current plane angle. A typical example is flip-
ping a cyclohexane ring from chair to boat conformation, or vice
versa.
The second operation is called flapping. In this operation, you spec-
ify the angle to apply either by typing in the value (in degrees) or
by using the valuator. In the latter case, the molecule’s structure is
changed interactively. Once you select Execute, the molecule
adopts the displayed conformation. If you select Cancel instead,
the original structure is restored.
You specify the moving fragment by selecting two anchor atoms.
These atoms must be in the same and in a unique ring, and there
must be at least one atom separating them. The side of the ring
containing fewer ring atoms is the moving fragment. If both sides
contain the same number of atoms, the fragment connecting to
fewer atoms is moved.
The plane angle is defined by two ring planes formed by the
anchor atoms and the two fragments. Each ring plane is defined by
three points:
1. The coordinate of anchor atom 1;
2. The coordinate of anchor atom 2;
3. Either:
a. If there is only one ring atom between atom 1
and atom 2, the coordinate of this atom.
Invert
The Invert command is used to invert the chiral sense of an atom
in an existing molecule or one that is being built. Inverting the
chirality about an atom is accomplished using a 180° rotation
around the axis defined as the mid-vector of the two bonds to be
inverted (see Figure 22). To invert chirality, choose the atom that is
the chiral center and two bonded atoms that specify the atoms to
be inverted. Chirality inversion can be done even if the two
bonded atoms are connected to each other in a ring, but cannot be
done if either is connected back to the chiral atom via another path.
Atoms in templates cannot be changed with the Invert command.
The chirality of the central atom is inverted by picking atoms 1, 2,
then 3, using the Invert command.
Before
1 3
180
switch switch
2
atom atom
chiral
atom
After
Reflect
The Reflect command generates the mirror image of a molecule.
This is done by changing the sign of either the x, y, or z coordinates
of all atoms of the molecule. The choice of which coordinate is
reflected is controlled by the Reflection Axis parameter. For exam-
ple, setting this parameter to X causes all the x coordinates in the
molecule to change sign, thereby effectively reflecting the mole-
cule along the x axis or, equivalently, in the yz plane.
In addition, the molecule’s transform is altered such that the mol-
ecule’s center of mass screen location is unchanged, and so that its
center of rotation undergoes the same reflection as the molecule
itself.
Element
The Element command is used to define elements and their
attributes. Explicit bond lengths between pairs of elements can be
defined. If the element specified is already defined, the defaults for
the parameters are the current values for that element.
The attributes of an element that can be modified include the van
der Waals radius, covalent radius, maximum valence, minimum
valence, and common valence. The common valence is defined as
the valence that results in a neutral state. The van der Waals radius
is used for van der Waals overlap checking, and surface and CPK
generation. The covalent radius is used for determining bond
lengths when explicit bond lengths are not known. The maximum
and minimum valences are used when adding and deleting hydro-
gens. The original definition of an element is made in the file ele-
ments.dat, which is located in the help directory ($INSIGHT_
HELP).
Atom_Position
The Atom_Position command allows you to move an atom to a
new coordinate position manually. You can move the atom to a
new position in either the world coordinate system or within the
coordinate space of the object to which the atom belongs. Move-
Forcefield Pulldown
The Forcefield icon is the “FF” icon. This pulldown contains com-
mands to fix, check, or accept the potential atom types and partial
charges of a molecule, to fix or accept formal charges of a molecule,
and to select a new forcefield type. It also contains the commands
to perform charge group validity checks and editing. These com-
mands are used to assign partial charges and potential function
atom types to molecules for energy calculations by either the
Insight II or the Discover program.
Select
The Select command allows you to determine the current force-
field type, select a new forcefield, or copy the forcefield file with-
out exiting your current session.
The Copy option of the Select command allows you to make a pri-
vate copy of the forcefield file and the associated rule file and res-
idue library so that you can modify it using the forcefield editor,
invoked by the Forcefield/Tabulate command.
The Select command automatically resets the FORCEFIELD,
RESIDUE_LIBRARY, and INSIGHT_POTENTIAL_TEMPLATES
environment variables each time you select a new forcefield. How-
ever, these variables revert to their original values defined prior to
the current Insight II session. Therefore, all changes to these vari-
ables apply to the current session only. The selected forcefield is
displayed in the lower left corner of the screen, beneath the dial
boxes.
Since the potential atom types and/or charges associated with the
previously built molecules may not be compatible with the force-
field, the Select command allows you to erase all of the previous
atom type and charge assignments.
Potentials
The Potentials command is used to check, fix, or accept the poten-
tial function types of the atoms in a molecule.
This command is automatically activated when you leave the
model-building module (in which Forcefield appears) if there are
any molecules with inconsistent potential function atom types.
Most operations performed in a model-building module change
the model and necessitate reassignment of the potential function
atoms types. Potential function atom types must be assigned
before charges can be assigned. Potential function atom types
must be assigned prior to running a simulation with the Discover
program.
The Insight II program assigns potential types by looking at an
atom and its surrounding environment. The potential function
atom type assignment rules reside in an external file to facilitate
potential function atom type assignment to any forcefield. When
assigning potential function atom types, Insight II first looks for
matches in the currently assigned residue library. If a match is
found, the residue library entry is used to assign the potential
function atom types. If a match is not found, the program looks for
an entry in the potential template rule file. The potential template
rule file describes the chemical environment using a SMILES-like
language. You may add new potential function atom types by
making additions to the template rules file (refer to the Potential
Template Rules appendix for a complete description on how to
add rules to the template rules file). A rule file is provided for each
forcefield. As potential atom types are changed, this information is
reported to the information area and the textport. You should also
note atoms that could not be assigned a potential type, which are flagged
with a question mark (?). These atoms did not pass any potential template
tests, and are not usable in Discover program simulations. The appro-
priate forcefield file must also have been defined before running
any simulations.
The out-of-plane values are assigned for each atom based on the
rules in the Potential Template Rules appendix.
Groups
The Groups command is used to edit or perform validity checks
on charge groups. Potentials and charges for the atoms must be
Assign_CFF Forcefield
The Assign_CFF command is used to assign the CFF force field.
The corresponding atom types and partial charges are assigned if
“Fix” is set for Potential_Action and Partial_Chg_Action (this is
the default). Therefore, unlike “Select” command in the Forcefield
pulldown, after Assign_CFF, it is not necessary to use the “Poten-
tial” command to assign potential functions.
Tabulate Forcefield
The Tabulate Forcefield command creates the table of a Forcefield
previously loaded using the Select Forcefield command. It allows
browsing, editing, and analyzing of Forcefield parameters. In
addition to the Search, Sort, and Summary commands in the Data
pulldown of the spreadsheet, browsing of Forcefield parameters is
controlled by the View Data command (or the View button), and
updating by the Update Data command (or the Update button).
Editing is performed using spreadsheet operations. The modified
table can be saved as a new Forcefield file using Save_As File
command (or the Save button) in Forcefield table for use in Dis-
cover or CHARMm.
Forcefield Support
The Insight II program supports the CFF91 forcefield, the CVFF
forcefield, the AMBER forcefield, CHARMm, and the ESFF force-
field, specified through the Forcefield/Select command. Insight II
Pseudo_Atom Pulldown
The Pseudo_Atom pulldown contains commands to create and
modify pseudoatoms. It contains the following commands:
Define, Rename, Delete, and List.
Pseudoatoms are defined as the instantaneous average of the coor-
dinates of a set of real atoms. For example, the centroid of a phenyl
group could be displayed as a pseudoatom created from the six
carbon atoms in the ring. Pseudoatoms are referenced in the same
way as atoms: their names can be explicitly specified at the time of
their creation or can be generated automatically.
In the DeCipher and Analysis modules, pseudoatoms can be
defined and used to study geometric properties. In the DeCipher
module, pseudoatoms can be used in conjunction with the com-
mands in the Functions and Geometrics pulldowns to plot and
Define
The Define command is used to create new pseudoatoms. Five
computational criteria (charge, geometry or arithmetic mean, cen-
ter of mass, temperature factor, and van der Waals radius) are pro-
vided to define the pseudoatom relative to other atoms. The
Pseudo_Atom Name (maximum of four characters) can be user-
specified. The default value of Auto indicates the automatic gen-
eration of the names. The Definition_Mode allows you to add or
remove an atom set from the definition of a pseudoatom. The Mol-
ecule Spec can be applied to generate one specific pseudoatom.
The Per_Monomer and Per_Molecule parameters can be used to
apply the specification to each monomer or molecule. The ability
to use wildcards and multiple residue:atom combinations in the
Molecule Spec allows you to specify a virtually unlimited number
of atoms in defining the pseudoatom.
Rename
The Rename command is used to rename pseudoatoms created by
the Define command.
Delete
The Delete command is used to delete a pseudoatom or a group of
pseudoatoms.
List
The List command is used to list information about any specified
set of pseudoatoms. Coordinate information can be obtained by
choosing Extdetails as the List_Option. All output is listed to the
textport, or can be directed to a file.
Optimize Pulldown
The Optimize pulldown contains the Optimize command, which
provides convenient and rapid access to a minimization of a mol-
ecule or molecular system, using the Discover program.
Optimize
The Optimize command uses a Discover program minimization
strategy which automatically cycles through three different mini-
mization algorithms. Each minimizer may be accessed separately
in the Discover module, but Optimize provides a quick and con-
venient route to minimizing a molecule within the Builder mod-
ule without moving to the Discover module, and without defining
a new minimization when the previous minimization is complete.
A minimization defined with Optimize commences with steepest
descents, moves on to conjugate gradients, and finishes with the
BFGS algorithm. Maximum derivative criteria are used to select
the next algorithm in the cycle; conjugate gradients is selected
when the maximum derivative in the molecule is less than 10, and
BFGS is selected when the maximum derivative drops below 1.
The total number of iterations for the complete minimization cycle
and the final convergence criterion (i.e., the maximum derivative)
can be specified. Note that the optimization terminates if the total
number of iterations is exceeded, even if the convergence criterion
is not satisfied. It is also possible to specify whether or not to
include charges in the Discover energy calculation. The energy cal-
culation uses a harmonic term for bond stretching and does not
use cross terms.
Builder Tutorials
As of this release, most tutorials are now available online for use
with the Pilot interface. To access the online tutorials, click the
mortarboard icon in the Insight II interface.
Then, from the Open Tutorial window, select Insight II tutorials,
and choose from the list of available lessons. For molecule-build-
Introduction
The Sketcher is accessed from the Builder module of Insight II.
From the Sketch pulldown, choose the Toolbox command to bring
up the MolBuilder. The power of the Sketcher is its ease of use and
the speed with which complex structures can be built. You can
draw a molecule essentially freehand, much like drawing on a
piece of paper, and quickly convert the drawing into a reasonable
3D molecular structure. You can also use the Sketcher to build a
structure in 3D.
Tutorial
This tutorial takes you through the process of building a structure
in 2D, and in 3D. (It is numbered Application 2 because it is the
second of 12 basic applications that give a general survey of
Insight II functionality. To use the other applications start up Pilot
from Insight II, then choose Insight II Tutorials.)
Background
In the majority of cases in drug design the structure of the target
enzyme or receptor is not known. The design of active compounds
Introduction
This application illustrates how to build the captopril molecule
using the Sketcher. It goes on to demonstrate how to locate a con-
formation of captopril that is both low in energy (a conformation
that on the basis of molecular mechanics energy calculations is
energetically stable and attainable) and that also matches the phar-
macophoric pattern. This is the “bioactive” conformation of capto-
pril.
An important check of a pharmacophore model is that it should
distinguish active from inactive compounds. A stereoisomer of
HS
* N
Chirality at both O
centers * is S
O O
Application
This application is organized into the following sections.
♦ Building captopril in 3D
♦ Building captopril in 2D
♦ The “bioactive” conformation of captopril
♦ The inactive stereoisomer
The structures that are to be built in this application have already
been constructed should they be required:
Captopril_s.car initial 3D structure
Captopril_s.car2d 2D sketch
Captopril_active.car bioactive conformation
Captopril_r.car 3D structure of inactive isomer
Building Captopril in 3D
Using the Sketcher, 3D structures can be constructed by joining
together units stored in a fragment library, and by a form of 3D
sketching called Grow. The components of captopril are shown in
chapter Figure 24 . Components of Captopril. Proline is a conve-
nient fragment from which to start.
C
H H H
H N
H H Methyl
H C C H
H H
H H
C
O H
O
HS
D NB
C
A
Captopril
O
O O
When accessing the fragment library for the first time in an Insight II
session, data from the library is read in from disk. This takes a few sec-
onds, after which the first amino acid fragments are displayed in the
Fragment Window. Note that you may have more than one Fragment
Library open at the same time.
Note that, at this time, there are three open windows, the Molbuilder
Dialog box, the Fragment Window, and the Defaults dialog box. All
of these control windows can co-exist with the others, and any of the
available controls can be used at any time.
To construct the amide bond an Aldehyde group is appended to the
NH group. A fragment is added by selecting one hydrogen atom in the
fragment and one hydrogen atom from the molecule to which the frag-
ment is to be joined. Both hydrogen atoms are then deleted and a bond
is created between the two heavy atoms to which the hydrogen atoms
were bonded.
Try selecting different bond types and element types to see the effect
on the cursor shape. The cursor has these shapes only in the Draw
The only remaining task is to make the carboxylate group on the pro-
line ring from the aldehyde. Although the hydrogen of the aldehyde
group could be changed to an oxygen using the same method as the
sulfur, we will use the Selection method to change both the element
Since the default Molecule Pick Level is Molecule, the atom selec-
tion defines the whole captopril molecule and all chiral centers are
labeled by chirality. In captopril, carbon D has chirality S.
Note that naming of files (in contrast with the naming of objects) is
case sensitive. CAPTOPRIL_S is now saved on disk in the Old_Bio-
sym format file captopril_s.car in the current directory. To retrieve
this file use the Molecule/Get command, with Get File Type set to
Archive.
Building Captopril in 2D
Sketching a molecule in two dimensions, followed by a conversion
to three dimensions, is a convenient alternative to building in 3D.
In many cases it is easier and quicker to build a molecule in this
way.
Sketch does not impose any restrictions on how molecules are to
be drawn; indeed they can be drawn with very poor geometry
(e.g., very long bonds). The geometry of the sketch does not affect
the quality of the three-dimensional structure, but it is recom-
mended that sketches are kept chemically sensible.
O O
3. Begin sketching
You can also create a ring in the graphics window by clicking in one
place, and drawing a line to another place. That vector will become one
side of the ring.
Pick the second atom in the side chain, move the mouse a
bond length vertically, place a new atom with a mouse click
and terminate the chain with a second click.
Pick the ring atom pointing down and move the mouse
down a bond length and place the carbon atom. Press the
Partial Double Bond button and the Oxygen button.
Return to the display area and place the partially double
bonded oxygen, and terminate the chain with a second
click. Pick the carboxyl carbon, and place and terminate
with another partially double bonded oxygen.
Exit the Draw Mode by pressing the Select button. Pick the
first bond of the sidechain (pick at the center of the bond--
both atoms become highlighted). Then, press the Partial
Double Bond button.
This operation could also have been done while in Draw mode.
Change to the Select Mode, and select the ring atom con-
nected to the sidechain,, and press the Nitrogen button.
Lastly, select the atom at the end of the sidechain, and press
the Sulfur button.
10.Define stereochemistry
The sketch is now complete. Note that hydrogens will be added auto-
matically in the 3D conversion process, so they are not necessary for
sketches, except to specify stereochemistry.
The file captopril_s.car2d has been saved on disk in the current direc-
tory. It may be retrieved using the Sketch/Get command.
Open the Defaults dialog box, and ensure that the Keep
Sketch button in the Convert to 3D grouping is On. The
state of the Check Valences button is unimportant at this
time since the sketch we will convert has correct valences.
To convert the sketch to a 3D structure, simply press the 2D-
>3D button.
Alternatively, you can select an atom of the 2D Sketch, and press the
Optimize button. Insight II will first convert the sketch to 3D, then
optimize the 3D molecule.
Watch the structure change and the energy decrease as the optimiza-
tion proceeds. Before moving onto the next section, the refined 3D
structure should be saved and the sketch deleted.
The sketch is removed from the display (but note that it is still stored
in the file created previously).
1 N
2 C B
D
E
4
3
5 4
O
S 2
F 3
1
O O
Using the Measure/Energy command the van der Waals and Cou-
lombic (electrostatic) energies of a molecule may be monitored inter-
actively while the conformation is modified. Note that the energy
reported will not be the same as that reported using Optimize, since
Insight II only calculates the nonbonded interactions. When rotating
around a bond the bond lengths and angles do not change, so their
contributions to the energy do not need to be included.
The van der Waals, electrostatic (Coulombic), and total energy are
reported at the top right of the display area. Note the energy. The Cou-
lomb term is set off so the electrostatic energy is zero. ACE has a Zn2+
ion in the active site which would be expected to alter the charge dis-
tribution of any ligand, thus the charges that were automatically
assigned to captopril during the optimization process may not be rel-
evant.
A distance monitor is displayed for each atom pair defined. The Mea-
Select the two atoms that define torsion 4, (the ring carbon
and the carbon of the carboxylate group), or select the bond
between the two atoms. Press the Torsion button on the
Icon Bar.
Press and hold down the middle mouse button while mov-
ing the mouse horizontally. The carboxylate group rotates,
and the reported torsion angle changes.
The energy has increased, but only slightly. As the conformation of the
carboxylate group has now been defined, the distance monitors and
torsion definition may be cleared.
Both the Torsion and the Measure buttons are toggle buttons, and cre-
ate or remove Torsions or measurements. To completely remove a Tor-
sion, select the bond, or the two atoms, and press the Torsion button
on the Icon Bar.
In the same way the conformation of the side chain may be defined.
The remaining 3 distance monitors (1, 2 & 4) are set up first.
Three torsions appear on the molecule. Note that at any one time, only
one Torsion is active. You can iteratively rotate each Torsion by click-
The Energy Monitor text will no longer appear on the upper right of
The energy is initially high and drops rapidly as the optimization pro-
ceeds. (Check that the amide bond has not flipped into the cis confor-
mation during the optimization. If it has, define a Torsion and rotate
the bond to make it trans.)
With the procedures used in the previous section, attempt to locate a
low energy conformation of CAPTOPRIL_R which matches the phar-
macophore.
Discussion
This application has demonstrated how to use Insight II to build,
modify, and refine a small molecule structure, and has illustrated
the application of distance and energy monitors and bond rota-
tions to locating a conformation which matches a known pharma-
cophoric pattern.
The captopril molecule used is simple enough to make it feasible
to locate a conformation matching a known pharmacophore using
these techniques. In most instances the structures in question will
be more flexible and the pharmacophore will be undefined. In
these situations the Search_Compare module may be used to per-
form rapid systematic conformational searches to locate confor-
mations that match a set of distance constraints, and to generate
Files Created
In addition to those files written using Molecule/Put and Sketch/
Put, Insight II has automatically created a number of files, pro-
duced as a result of using Optimize. At this stage it is not impor-
tant to understand the purpose of all of these files, but it is
necessary to know the relevance of some of them.
The optimization of captopril_s produced files with the root name
captopril_s0. The 0 is a counter (starting at zero) indicating that
this was the first time Optimize was used in this session.
The initial coordinates of captopril_s (prior to optimization) are
stored in captopril_s0.car, and the final optimized coordinates are
stored in captopril_s0.cor. These files are both in the same format
and may be read into Insight II using Molecule/Get, with Get File
Type set to Archive. In addition to the coordinates these files con-
tain the partial charges, atom names, and element types.
The .car and .cor are the only files produced by Optimize that can
be read into Insight II. It is useful to have files that are created auto-
matically, in order to back-track if a mistake is made at a later stage
and the structure has not been saved using Molecule/Put.
The file captopril_s0.mdf is a definitions file, which along with
other information contains the connectivity of the structure (i.e.,
which atom is bonded to which), and the potential type of each
atom necessary for the molecular mechanics energy calculations.
The .inp file is the control file for the optimization, and the .out file
lists the results of the optimization process.
A set of files with the same extensions was produced for the opti-
mization of
captopril_r.
Implementation
The Ampac/Mopac module provides an interface to the public
domain AMPAC and MOPAC programs. AMPAC and MOPAC
are general purpose semiempirical molecular orbital packages for
the study of chemical structures and reactions. The semiempirical
Hamiltonians MNDO, MINDO/3, AM1, and PM3 are used in the
electronic part of the calculation to obtain molecular orbitals, the
heat of formation, and its derivatives with respect to molecular
geometry. Using these results, AMPAC and MOPAC calculate the
vibrational spectra, thermodynamics quantities, isotopic substitu-
tion effects, and force constants for molecules, radicals, ions, and
polymers. For studying chemical reactions, a transition state loca-
tion routine and two transition state optimizing routines are avail-
able.
While AMPAC and MOPAC call upon concepts in quantum the-
ory and thermodynamics, and use relatively advanced mathemat-
ics, you need not be familiar with these specialized topics. The
Ampac/Mopac module is designed with the non-theoretician in
mind. The Insight II program allows you to set up complex
AMPAC and MOPAC calculations with a minimal amount of
effort, so that you can concentrate on the chemistry involved
rather than the quantum and thermodynamic concepts.
.arc
Insight II .dat MOPAC .gpt Density .grd
.out .out
.gra
Introduction
A powerful suite of algorithms for geometry optimization,
referred to collectively as OPTIMIZE, is now available for MOPAC
calculations. Within the Insight II environment, you can control
OPTIMIZE via parameters provided in the Optimize/Parameters
command; and specify its usage for a MOPAC calculation by
choosing BIOSYM as Optimizer_Type for the AM_Setup/Calcu-
lation command.
OPTIMIZE is a general geometry-optimization package for locat-
ing both minima and transition states on a potential energy sur-
face. It can optimize in Cartesian coordinates or in a non-
redundant set of internal coordinates which are generated auto-
matically from input Cartesian coordinates. It also handles fixed
constraints on distances, bond angles, and dihedral angles in Car-
tesian or (where appropriate) internal coordinates - this feature is
a key advantage of using OPTIMIZE in MOPAC calculations: it is
not available in generic MOPAC, unless you go through a rather
complicated process of editing the Z-matrix while maintaining its
validity.
The MOPAC-BIOSYM-Optimizer methodology is iterative:
repeated computation of energies and gradients (using MOPAC)
and calculations (only the starting one; using MOPAC) or estima-
tions (using OPTIMIZE) of hessians in every optimization cycle
are performed until convergence is achieved. The Use_MOPAC_
Hessian option, available through the AM_Setup/Calculation
command, controls calculation of the starting hessian.
.original
mopacEnergy a. OPTIMIZE b. hessian
.input
.car/.mdf .grad
.keywords .hessian .car/.mdf
(updated)
.chk
Insight II mopacOptimize .hessian
.car/.mdf .opt.log
.car/.mdf .opt.arc
.keywords c.
.input converged
NO
YES
.car/.mdf
.keywords
.out
Insight II mopacEnergy d. .log
.arc
.gpt
–1
h = –H –1 g ≡ ( ∇2F ( x ) ) • ∇F ( x ) Eq. 1
h = – ( H – λ1 ) – 1 g Eq. 2
∑
–Fi ui
h = ------------- Eq. 3
bi – λ
i=1
H g h = λ h Eq. 4
t
g 0 1 1
b 1 F 1 h 1 = λ h 1 Eq. 5
F1 0 1 1
p
h 2 h
b2 0 F2 2
… …
… …
0 bn F n = λn Eq. 6
hn n
h
F2 … Fn 0 1 1
∑
–F1 u1 Fi ui
h = ------------------------ – ----------------------- Eq. 7
( b1 – λp) ( bi – λn)
i=2
Constrained Optimization
The essential problem in constrained optimization is to minimize
a function of, say, n variables F(x) subject to a series of m con-
straints of the form Ci(x) = 0, (i = 1 … m). This can be handled by
introducing the Lagrangian function (Fletcher 1981):
L ( x, λ ) = F ( x ) –
∑ λ C ( x)
i=1
i i Eq. 8
m
∂L
∂ xj
=
∂
∂ xj
F ( x) –
∑ λ ∂∂x C ( x)
i=1
i
j
i Eq. 9
and:
∂L
= –Ci ( x) Eq. 10
∂ λi
b1 0 F1 h1 h1
… … … …
0 = λp Eq. 11
bm F m hm h
m
F1 … Fm 0
1 1
h
bm + 1 0 Fm + 1 hm + 1
m+1
… … … …
h = λn Eq. 12
0 bm + n Fm + n m+n hm + n
Fm + 1 … Fm + n 0 1 1
GDIIS
In the GDIIS method, geometries (xi) generated in previous opti-
mization steps are linearly combined to find the “best” geometry
on the current cycle (Császár and Pulay 1984):
xn =
∑C x
i=1
i i Eq. 13
R =
∑C e i i = 0 Eq. 14
and:
∑C i = 1 Eq. 15
∑C x i i = xf Eq. 16
also holds.
The true error vectors ei are, of course, unknown. However, they
can be approximated by:
ei = –H –1 gi Eq. 17
B 0
11 B 12 … B 1m 1 C1
B 0
21 B 22 … B 2m 1 C2
… = Eq. 18
… … … …
B
B m2 … B mm 1 Cm 0
m1
1 1 … 1 0 –λ 1
where Bij = 〈ei ej〉 is the scalar product of the error vectors ei and
ej, and λ is a Lagrange multiplier.
The coefficients Ci determined from Eq. 18 are used to calculate an
intermediate interpolated geometry:
x′m + 1 =
∑C x
i=1
i i Eq. 19
g′m + 1 =
∑C g
i=1
i i Eq. 20
geometries more than a certain distance (default = 0.3 au) from the
current geometry.
[AM_Setup]/Calculation:
MNDO MNDO
MINDO/3 MINDO/3
AM1 AM1
PM3 PM3
Check_Input 0SCF
Energy 1SCF
Gradient NLLSQ
Minimize Optimize
Frequency FORCE
Saddle ________
Check_Frequency DUMP
[AM_Setup]/Electronic_State:
Lowest ________
Singlet SINGLET
Doublet DOUBLET
Triplet TRIPLET
Spin_Restricted RHF
Spin_Unrestricted UHF
Total_Charge CHARGE
[AM_Parameters]/SCF:
Energy_ConvergenceSCFCRT
SCF_Iterations ITRY
Pulay_Convergence PULAY
Peptide_Correction MMOK, NOMM
Geometry_Test GEO-OK
Shift_Energy_Level SHIFT
[AM_Parameters]/Optimize:
Gradient_Converge GNORM
NLLSQ NLLSQ
SIGMA SIGMA
BFGS BFGS
DFP DFP, POWELL
EF EF
Max_Step_Size DMAX
Transition_State TS
Line_Minimizer NOTHIEL
[AM_Parameters]/Saddle:
[AM_Parameters]/Properties:
Mulliken_Pop MULLIK
Overlap_Pop BONDS
ESR ESR
Spin_Density SPIN
Polarizabilities POLAR
Thermodynamic_PropTHERMO(nnn,lll,mmm)
Initial_Temp ________
Final_Temp ________
Temp_Step ________
Electrostatic_Pot ESP
Connolly ________
Williams WILLIAMS
Constrain_Dipole DIPOLE
Scale_Radii SCALE
Scale_Charges SLOPE
Number_Surfaces NSURF
Output_Surface POTWRT
Enforce_Sym SYMAVG
STO_3G STO3G
Surface_Distance SCINCR
[AM_Parameters]/Output:
Detail LARGE, PRINT
CI_Info MECI
Minimize_Info FLEPO
Energy_Info ENPART
Frequency_Info FMAT
Interatomic_Dist NOINTER
Summary NOLOG
Gradients GRADIENTS
Normal_Z_Matrix ________
Gaussian_Z_Matrix AIGOUT
Generate_Grid_ ________
Generate_Contour ________
Density_Contor_Level________
Density_Contor Color________
Genearte_Grid ________
Generate_MO_Contor________
[AM_Parameters]/Keywords:
Safety_Checking LET
Based on the parameters selected for performing the Ampac/
Mopac,
MOPAC-BIOSYM-Optimizer, and/or Density calculation in the
Insight II environment, the following files could be produced.
Mopac:
<name>.dat Input
<name>.out Results
<name>.res Restart
<name>.den Density matrix (in bi-
nary)
<name>.log Log messages
<name>.arc Archive or summary
<name>.gpt Data for program Den-
sity (in binary)
<name>.syb SYBYL data
<name>.pot Surface points and
electrostatic potential
file from ESP option
ESP.DUMP Dump file from ESP
option
Ampac:
<name>.dat Input
<name>.out Results
<name>.res Restart
<name>.den Density matrix (in bi-
nary)
Density:
<name>_density.gra Input referring to elec-
tron density
<name>_homo.gra Input referring to
HOMO
<name>_lumo.gra Input referring to
LUMO
<name>_homo_<n>.gra Input referring to (HO-
MO - n) orbital
<name>_lumo_<n>.gra Input referring to (LU-
MO + n) orbital
<name>_density.out Output referring to
electron density
<name>_homo.out Output referring to
HOMO
<name>_lumo.out Output referring to
LUMO
<name>_homo_<n>.out Output referring to
(HOMO - n) orbital
<name>_lumo_<n>.out Output referring to
(LUMO + n) orbital
<name>_density.grd Grid produced by Den-
sity referring to elec-
tron density
<name>_homo.grd Grid produced by Den-
sity referring to
HOMO
<name>_lumo.grd Grid produced by Den-
sity referring to
LUMO
Background_Job Control:
bkgd_job_am_<name>.csh
Shell script for Am-
pac/Mopac job
bkgd_job_am_<name>.csh_log
Output from the shell
script running the Am-
pac/Mopac job.
Two different contour objects are produced for each M.O. at plus
and minus contour level values and are colored with appropriate
colors. A grid object is also generated for each M.O. Based on the
parameters selected, the following different objects can be gener-
ated automatically in the Insight II program.
Electron Density:
<name>_DEN_GRD Grid object
<name>_DEN_CNT Contour object
HOMO:
<name>_HO_GRD Grid object for HOMO
<name>_HOP_CNT Contour object for
HOMO at plus contour
level
<name>_HOM_CNT Contour object for
HOMO at minus con-
tour level
(HOMO - n):
<name>_HO<n>_GRD Grid object for (HO-
MO - n) orbital
<name>_HO<n>P_CNT Contour object for
(HOMO - n) orbital at
plus contour level
<name>_HO<n>M_CNT Contour object for
(HOMO - n) orbital at
minus contour level
LUMO:
<name>_LU_GRD Grid object for LUMO
<name>_LUP_CNT Contour object for
LUMO at plus contour
level
<name>_LUM_CNT Contour object for
LUMO at minus con-
tour level
(LUMO + n):
<name>_LU<n>_GRD Grid object for (LU-
MO + n) orbital
<name>_LU<n>P_CNT Contour object for
(LUMO + n) orbital at
plus contour level
<name>_LU<n>M_CNT Contour object for
(LUMO + n) orbital at
minus contour level
<name>_DEN_GRD <name>_DEN_CNT
<name>_HOP_CNT
<name>_HO_GRD
<name>_HOM_CNT
<name>_HO<n>P_CNT
MOLECULE <name>_HO<n>_GRD
<name>_HO<n>M_CNT
<name>_LUP_CNT
<name>_LU_GRD
<name>_LUM_CNT
<name>_LU<n>P_CNT
<name>_LU<n>_GRD
<name>_LU<n>M_CNT
Command Summary
In addition to the core pulldowns in the top menu bar, the Ampac/
Mopac module adds pulldowns to the lower menu bar. These
pulldowns are AM_Setup, Optimize, AM_Parameters,
Background_Job, AM_Run, and AM_Analyze.
AM_Setup Pulldown
The AM_Setup pulldown contains commands to set up the type
of calculation to be performed on the system.
System
The System command is used to select the molecule to be studied.
You can specify the program, AMPAC or MOPAC, to do the calcu-
lations.
The following options provided in the interface for MOPAC are
not supported in AMPAC.
[Ampac/Mopac]AM_Setup/Calculation:
METHOD = PM3, CHECKPOINT, and CHECK_FREQUENCY
[Ampac/Mopac]AM_Parameters/SCF:
PEPTIDE_CORRECTION
[Ampac/Mopac]AM_Parameters/Properties:
ELECTROSTATIC_POT and all the parameters related to it
[Ampac/Mopac]AM_Parameters/Output:
DETAIL, SUMMARY, and ARCHIVE_FILE = GAUSSIAN_Z_
MATRIX
[Ampac/Mopac]Optimize:
Opt_Parameters and Constraints commands.
Electronic_State
The Electronic_State command is used to specify the electronic
state parameters of the system for Ampac/Mopac calculations.
You can select a desired electronic state (singlet, doublet, etc.),
choose a Hamiltonian (RHF, UHF), and specify the total charge on
the system.
Calculation
The Calculation command is used to set up the parameters for the
type of calculation to be performed in Ampac/Mopac. Four differ-
List
The List command is used to list the status of all the options avail-
able for all the commands in the AM_Setup pulldown.
Optimize Pulldown
The Optimize pulldown contains commands for setting up and
controlling a geometry optimization. These commands are only
available for a MOPAC calculation.
Opt_Parameters
The Opt_Parameters command is used to specify parameters con-
trolling the optimization calculation. Among other things, you can
specify: locate minima or a transition state; use Cartesian or inter-
nal coordinates.
Constraints
The Constraints command is used to set up geometric constraints
imposed during the optimization calculation. You can specify
fixed distance, angle, or dihedral constraints, or frozen atomic
coordinates.
AM_Parameters Pulldown
The AM_Parameters pulldown contains commands to set up the
parameters for the AMPAC or MOPAC calculation.
SCF
The SCF command is used to set up the parameters used in the
SCF calculation in Ampac/Mopac.
Optimize
The Optimize AM_Parameters command is used to specify the
parameters controlling the optimization of the system during the
Ampac/Mopac calculation.
Saddle
The Saddle command in the AM_Parameters pulldown calls the
Saddle AM_Parameters dialog box. This command allows you to
specify the parameters that control the Saddle calculation.
Properties
The Properties command is used to specify the various parame-
ters used in computing the desired properties of the system during
the Ampac/Mopac calculation.
Output
The Output command is used to control the various kinds of out-
put produced from the Ampac/Mopac calculations. The automatic
generation of contours for electron density and molecular orbitals
(M.O.s) can also be specified. The different M.O.s available for
generating contours are as follows:
Keywords
The Keywords command is used to specify additional keywords,
by typing them explicitly, to fine tune the Ampac/Mopac calcula-
tion. It is useful for specifying options that are not provided in the
interface.
List
The List command is used to list the status of all the options avail-
able for all the commands in the Am_Parameters pulldown.
Background_Job Pulldown
The Background_Job pulldown allows you to set up background
jobs to run concurrently or interactively with the Insight II pro-
gram. You are given the choice of whether to send background
jobs to a local or remote host. This pulldown is generic and is
found in many modules that run background jobs. The
Background_Job pulldown contains the following commands:
Setup_Bkgd_Job, Control_Bkgd_Job, Completion_Status, and
Kill_Bkgd_Job. Refer to the Background_Job Pulldown chapter for
more information on background jobs and the commands in this
pulldown.
AM_Run Pulldown
The AM_Run pulldown contains the command, Run, to run an
AMPAC or MOPAC job.
Run
The Run command is used to run the Ampac/Mopac calculation.
Based on the parameters selected in other commands, Density is
also run (multiple times) automatically after the Ampac/Mopac
calculation is finished.
AM_Analyze Pulldown
The AM_Analyze pulldown contains commands to generate the
electron density and/or molecular orbital (M.O.) grid and contour
objects from the <name>.gpt file (produced by a previous Ampac/
Mopac run) by running the Density program without restarting
AMPAC or MOPAC.
The commands under the AM_Analyze pulldown are useful for
long Ampac/Mopac calculations. The Ampac/Mopac job can be
Electron_Density
The Electron_Density is used to generate the electron density grid
and contour from the <name>.gpt file by running the Density pro-
gram without restarting Ampac/Mopac. The grid and contour
objects can be manipulated by using the commands under the
Grid and Contour pulldowns.
Molecular_Orbital
The Molecular_Orbital is used to generate the molecular orbital
(M.O.) grids and contours from <name>.gpt files, by running Den-
sity program successively without restarting AMPAC or MOPAC.
The grid and contour objects can be manipulated by using the
commands under the Grid and Contour pulldowns.
Get Grid
The Get Grid command retrieves grids from grid files.
Get Grid also assigns grid objects a default name based on the grid
filename. If you specify an explicit grid name with the Grid Name
parameter, the Get Grid command names the grid object accord-
ing to the value you specified.
Put Grid
The Put Grid command allows you to write the grid data to a disk
file. The output filename is specified in the File Name parameter.
If no file extension is explicitly given, a default extension of .grd is
tacked on.
The File Format option is used to specify the format of data writ-
ten out. Binary, Ascii, and Voxel_View are the available choices.
Display Grid
The Display Grid command is used to control the display of grid
objects. The Grid Attribute parameter controls which attribute of
the grid to operate upon. The Point Set parameter specifies which
points are set. The Alternate Space parameter specifies which axes
to use.
Color Grid
The Color Grid command is used to control the color of grid
objects. The Grid Attribute parameter controls which attribute of
the grid to operate upon. The Point Set parameter specifies which
points are set.
Histogram Grid
The Histogram Grid command plots a histogram of the scalar val-
ues of the grid points. The computation of histogram can be
restricted to points with values which fall within a specified range.
The coarseness of the histogram can be controlled by specifying
the number of bins. The histogram can be plotted with linear or
logarithmic scale heights.
The histogram is normally scaled so that the largest bin fills the full
width of the display. An exception to this rule occurs when the
number of grid data points is small. When the number of
datapoints in the largest bin is less than the maximum bar length,
the histogram is unscaled. In other words, the number of asterisks
("*") plotted is equal to the actual integer number of points in each
bin or (when the logarithm option is selected) the logarithm of the
integer values.
The number of points lying outside the lower and upper limits
(i.e., the “tails” of the distribution) are demarked by the symbols
[<<<] and [>>>], respectively.
Contour Grid
The Contour Grid command creates a set of contours from a spec-
ified Insight II grid. One contour is created for each of the contour
levels you specify. A contour level is a curved surface connecting
all of the points in the given grid which have the same value. These
contours may be automatically displayed or left undisplayed.
Note that the contours may be written to a file with the Save_
Folder command.
The Molecule Name parameter is the name of the molecule for
which the grid to be contoured is defined.
The Contour Name Root parameter specifies the prefix of the
names of the resulting contour objects. Each name consists of this
string with a digit appended on the end to make the name unique.
For example, if Contour Name Root is CNT and there are three
levels specified, the resulting contour names are CNT0, CNT1, and
CNT2. The next contour created using CNT is named CNT3.
You may create a Single or a Range of individual contour levels
with the Level Specification option, adding a range of levels with
the Interval_Size and Number_Of_Levels options.
Slice Grid
The Slice Grid command allows you to analyze grid data by posi-
tioning a two dimensional slicing plane inside the grid and visual-
ize the grid values interpolated to that plane either as a
continuously colored mapplane, or as a number of 2d isovalue
contours. The mapping from data value to color is controlled via a
spectrum.
Label Grid
The Label Grid command is used to create and position or to
remove labels for grid objects. The object name of the grid becomes
the contents of the label. The Label Coordinates parameter con-
trols the positioning of the label.
CharSize Grid
The CharSize Grid command modifies the size of the specified
grid object’s label.
Difference Grid
This command allows two grids to be summed or subtracted. The
two grids may be specified as files or as existing Insight II grid
objects. The resulting new grid is created as a grid object in
Insight II.
List Grid
The List Grid command displays information pertaining to the
structure and display of a grid object. The Detail Level parameter
controls the amount of information provided. Use the Output_File
parameter to direct the display of the command output to a file.
Ampac/Mopac Tutorial
As of this release, most tutorials are now available online for use
with the Pilot interface. To access the online tutorials for Ampac/
Mopac, click the mortarboard icon in the Insight II interface.
Then, from the Open Tutorial window, select Insight II tutorials,
then the Ampac/Mopac module and choose from the list of avail-
able lessons:
Lesson 1 Basic Functionality of MOPAC
Lesson 2 Use Post-Processing to Generate Contours
Lesson 3 Finding the Transition State of a Reaction
Lesson 4 Slicing Plane tutorial
Lesson 5 Characterization of the Potential Energy surface
of 1,3-butadiene
You can access the Open Tutorial window at any time by clicking
the Open File button in the lower left corner of the Pilot window.
For a more complete description of Pilot and its use, click the on-
screen help button in the Pilot interface or refer to the Insight II
User Guide.
Theory
In docking, the interaction energy is computed by summing the
energy contributions between all atoms of the two molecules. The
contribution between atoms interacting with other atoms in the
same molecule is ignored. Thus, for example, for CVFF:
∑ ∑ --------
A ij B ij qi qj
E interaction = - – --------- + ----------- Eq. 22
12 6 ε r ij
i r
j ij
r ij
A ij B ij
E ij = --------- – -------
12 6
Eq. 23
R ij R ij
where Aij and Bij are parameters with units of kcal mol-1
angstrom12 and kcal mol-1 angstrom6 respectively, and Rij is the
distance between atoms i and j in angstroms. A completely equiv-
alent representation is:
* 12 *6
* R ij R ij
E ij = ε ij ------- – 2 ------- Eq. 24
R ij R ij
where εij is the potential well depth in kcal mol-1 and Rij* is the
interatomic distance in angstroms at which the minimum occurs.
The conversion between the two representations is straightfor-
ward:
2
* B ij
* 12
ε ij = ---------- A ij = ε ij R ij
4A ij
1
---
* 2A ij 6 * 6
R ij = ---------- B ij = 2ε ij R ij
B ij
Eq. 25
* * * * * *
geometric: ε ij = ε ii ε jj R ij = R ii R jj
Eq. 26
A ij = Ai Aj and B ij = Bi Bj
Eq. 27
Eq. 28
∑ q ∑ ---------- ∑ A ∑ --------
qi A i
E = + -
ε r
i
ij
j 12
j i r j i ij
∑ B ∑ --------
Bi
– j
-
6
j r i ij
E interaction =
∑j
qj Ge ( P) + Ai G ( Pj) – Bj GB ( Pj)
A
Eq. 29
where Ge (Pj), GA (Pj ) and GB (Pj ) represent the value at the grid
points for the pre-computed electrostatic and van der Waals ener-
gies, Pj being the position of the atom in the moving molecule.
By using the position of the atom in the moving molecule to look
up the value at the appropriate grid point, the interaction energy
can be quickly computed.
It should be noted that as the grid spacing is decreased, the result
of Eq. 29 becomes closer to the result of Eq. 28 since the error
between the true atom position and the grid point decreases.
A ij B ij
E ij = ------- – -------
9 6
Eq. 30
R ij R ij
where Aij and Bij are parameters with units of kcal mol-1 angstrom9
and kcal mol-1 angstrom6 respectively and Rij is the distance
between atoms i and j in A. A completely equivalent representa-
tion is:
*9 *6
* R ij R ij
E ij = ε ij 2 ------- – 3 ------- Eq. 31
R ij R ij
where εij* is the potential well depth in kcal mol-1 and Rij* is the
interatomic distance in angstroms at which the minimum occurs.
The conversion between the two representations is straightfor-
ward:
3
* 4B ij
* 9
ε ij = ------------- A ij = 2ε ij R ij
2
27A ij
Eq. 32
1
---
* 3A ij 3 * 6
R ij = ---------- B ij = 3ε ij R ij
2B ij
* * *3 *3 6 61 ⁄ 6
* ε ii ε jj × 2 r ii r jj 6 R ii + R jj
sixth-power: ε ij = ------------------------------------------------------------ R ij = --------------------
6 6
2
r ii + r jj Eq. 33
9
A ij = 2ε ij • r ij
1
1 ---
3
6 6 2
---
3 ri + rj
2
= 2 ( ε i • r j ) • r i • r j • ----------------
2
Eq. 34
1 9
--- ---
′ 2 2
A ij = 2 ( ε i • ε j ) • ( r i • r j )
1 1
--- ---
9 2 9 2
= 2 • εi • ri • 2 • εj • rj
Eq. 35
Implementation
The Docking module provides facilities for calculating the non-
bond energy between two molecules using the methods described
in the preceding theory section. Note that this calculation is per-
formed using the Discover program, and may only be used effec-
tively with the AMBER, CFF9X and CVFF forcefields.
Also note that the separate Affinity program may be useful to per-
form energy-based flexible docking. See the separate Affinity doc-
umentation for additional information.
Command Summary
Grid Pulldown
The Grid pulldown, which is accessed via the Grid icon, is used to
manipulate an energy grid for a given molecule. You may display
and undisplay this grid, and write this grid to an output file that is
readable by the commands in the Contour pulldown.
Refer to the Ampac/Mopac Module chapter for summaries of the
commands included in this pulldown.
Evaluate Pulldown
The Evaluate pulldown allows examination of intermolecular
energies. You may select which nonbond energy terms to use for
calculations, and can set up single-point or continuous evaluations
of these interactions.
Intermolecular
The Intermolecular command allows you to examine the total
energy between two molecules. You can perform a single-point
calculation, or use a monitor to evaluate the energy continuously.
You can specify the cutoff value to be used when computing the
energy, and indicate whether or not you are using the electrostatic
or van der Waals energy parameters to compute the total energy.
The maximum derivatives with the total energy values can be dis-
played.
An energy grid can be used to approximate intermolecular energy
of very large systems. This grid can be on either molecule but must
be calculated before activating this command, using the Create
Docking_Grid and Compute Docking_Grid commands.
Docking_Grid Pulldown
The Docking_Grid pulldown is used to create and manipulate an
energy grid for a given molecule. This pulldown contains the com-
mands Create, Compute, and Display.
Create Docking_Grid
The Create Docking_Grid command allows you to define a 3D set
of points that represents the net contribution of all atoms of a spec-
ified molecule at discrete points. The size of the set of points
depends on the boundaries which are described as an enclosure
plus a defined border space. The position of the discrete points is
controlled with the Grid Step.
Compute Docking_Grid
The Compute Docking_Grid command allows you to calculate
the energy grid for the specified molecule. The grid must have
been previously defined using the Create Docking_Grid com-
mand. The Van_der_Waals and Coulomb parameters allow you to
modify which energies are calculated, while the Cut_off parame-
ter allows you to control the radius of interaction.
Display Docking_Grid
The Display Docking_Grid command allows you to display the
extents of the grid defined for the specified molecule. Grids are
displayed automatically when they are first created to make redef-
inition of the extents clearer.
Docking Tutorial
As of this release, most tutorials are now available online for use
with the Pilot interface. To access the online tutorials for Docking,
click the biplane or mortarboard icon in the Insight interface.
Then, from the Open Tutorial window, select Insight II tutorials,
then the Docking module and choose from the list of available les-
sons:
Lesson 1 Energy Calculations
Lesson 3 Energy Contours
You can access the Open Tutorial window at any time by clicking
the Open File button in the lower left corner of the Pilot window.
For a more complete description of Pilot and its use, click the on-
screen help button in the Pilot interface or refer to the Insight II
User Guide.
Implementation
The Analysis module is used to display data, especially from
molecular conformation analyses, in graphs or molecular anima-
tion. Typically, the input data of molecular conformations comes
from the Discover program (separately licensed from MSI), but
this data can come from any source, provided it is formatted in a
way that is recognizable to the Insight II program.
Three types of graphs can be created with commands in the Anal-
ysis module. The first type of graph, usually referred to as a simple
trajectory graph, uses atomic trajectories as its most basic data
source. Properties of the trajectories, such as atomic distances or
angles, are displayed as curves. The second type of graph, called a
cluster graph, also uses atomic trajectories. Its purpose is to dis-
play the relationship between each conformer and every other
conformer. This relationship is expressed as an RMS value, and the
graph is a cluster of unconnected points that are color coded to the
RMS level, thereby indicating families of related conformations.
The third type of graph, sometimes called an inanimate graph,
does not use trajectory data. Instead, it uses data from simple
ASCII files that you may create on your own or by using the Put
Graph command. In any event, these ASCII files used to create
inanimate graphs contain columns of numbers which can be plot-
ted against one another to form curves similar to those displayed
in simple trajectory graphs.
Trajectory data from the Discover program’s history and archive
files (refer to the Discover documentation appendices for a com-
plete description of an archive file) can be analyzed quantitatively
by defining properties of interest, identifying the atoms that
uniquely define the property, and graphing those properties
against each other. The data can be qualitatively analyzed by sim-
be the first frame contained within the history or archive data file.
Additionally, the loaded trajectory data frame numbers run con-
secutively, starting from one (1) and ending with the maximum
frame number without skipping numbers. These frame numbers
may not exactly match the frames that were loaded from the data
file, but there is a one-to-one correspondence between them. For
example, the first frame loaded from the data file may be frame
five (5), but it is referred to as frame one (1) once it has been loaded.
The second frame loaded could be frame ten (10), but it is referred
to as frame two (2) after it is loaded.
The calculation of distances, angles, and dihedral angles is
straightforward, and is not presented here. However, the calcula-
tion of a plane that best fits more than three points is more complex
and is presented in the next section.
Cluster graphs have no cursors or dynamic data labels. Instead,
they have legends that describe the color coding used when dis-
playing clusters of points representing related families of conform-
ers.
Inanimate graphs (i.e., those created from simple columns of num-
bers) are not linked to any molecule and do not have cursors,
dynamic data labels, or legends. They do have axis labels to
describe what is being plotted, and axis min/max labels showing
the numeric bounds of the data being displayed.
When new trajectory data is loaded, either from a different trajec-
tory file or by using a combination of frames differing from the
presently loaded trajectory data, any non-animate graph is
deleted. In other words, any graph that is linked to the molecule(s)
associated with the present trajectory data disappears. This is
necessitated by the correspondence between the trajectory data
and each graph data point.
Once a graph is defined it can be manipulated in much the same
way as any other object within the Insight II program. Graphs may
be scaled, moved, rotated, blanked, or unblanked.
∑ P (X )
2 2
χ = i : with P the plane equation and X i = ( x i, y i, z i )
i=1
2
χ : the chi square value
This is the familiar least square fitting function. This same function
is used in chi-square statistics, the so-called maximum likelihood
estimator (Pattabiraman et al. 1985).
Given a set of (a, b, c, d), certain questions arise, namely, “How
good is the fit? Is there a better fit?” When the average plane is
evaluated, the desired information includes:
1. The parameters (a, b, c, d).
The next lines describe how the most likely plane is obtained. To
derive the formula, take the plane equation:
Q z : f ( x, y ) or z = lx = my + n Eq. 40
The chi-square value estimates how well the model agrees with
the data (our points). The first derivative of this merit function for
the l, m, and n unknowns yields:
2
∂χ
--------- = 0 ⇒ 1S xx + mS xy + nS x = S xz
∂1
2
∂χ
--------- = 0 ⇒ 1S xy + mS yy + nS y = S yx
∂m
2
∂χ
--------- = 0 ⇒ 1S x + mS x + nS = S x
∂n
N N
with S = N points, Su = S u
and v equal to x, y, and z.
=
∑ ui and Suv = Su =
∑u v i i
with u
i=1 i=1
d xz d yy + d xy d yz
l = ---------------------------------------
d
d xx d yz + d xy d xxz
m = ------------------------------------------
d
–Sx l –Sy m + Sz d
n = ----------------------------------------
Sd
with duv = S suv - Su Sv and d = dxx - dyy - dxy dxy and with S, Sx,
Sy, Sz defined as before.
From these l, m, and n values we obtain the a, b, c, d coefficient of
Eq. 36 (Press et al. 1986) with:
a = – l, b = – m, c = l, and d = – n
Frequency Filtering
The Filter Trajectory command extracts motions that correspond
to interesting vibrational frequencies from a set of atomic trajecto-
ries.
The Discover program can be used to simulate a set of atomic tra-
jectories. The molecule(s) can then be displayed and animated
using the Insight II program so that it moves through the path of
the simulated trajectory.
Such simulations may cover a wide variety of molecular vibra-
tions. Amolecule can display the relatively quick movements of
bond stretches, scissors, wags, etc. It can also show the slower
movements such as linear chains rotating, bending, and twisting.
Viewing all of these movements at once may make it difficult to
focus on one or more particular kinds of vibrations.
A Fast Fourier Transform (FFT) can be used to convert the trajec-
tory data from the time domain to the frequency domain. Those
frequencies not corresponding to interesting vibrations can be fil-
tered out. This filtered frequency data can then be transformed
back into the time domain. When animated using this filtered tra-
jectory data, the molecule displays only those vibrations that are of
interest.
Prior to using the Filter Trajectory command, a trajectory data set
must be loaded (using the Get Trajectory command). After load-
ing this data, the Insight II program reports the overall number of
frames that exist. This number can be important when you decide
what values to give to the Filter Trajectory command, so it should
be noted.
The trajectory data set is modified by the Filter Trajectory com-
mand. To return to the original trajectory data, re-execute the Get
Trajectory command.
As described below, the Filter Trajectory command is limited to
modifying a number of frames that is an exact power of 2. For
example, 1024 or 2048 or 4096 frames can be modified, but some
arbitrary number, such as 1000 or 2000 frames, cannot. The num-
ber of frames that is modified is calculated by subtracting the start-
ing frame number (which is an input to the Filter Trajectory
every femtosecond, only every tenth conformer is put into the his-
tory file. Thus, the time step between frames is, by default, 10.
Both the time between conformers and the number of conformers
skipped between output to the history file can be adjusted before
the simulation is run.
The time between frames in a history file may be calculated by
multiplying the time step by the frequency of writing to the history
file. In terms of the input file (.inp) and output file (.out), these
parameters are controlled with the “steps” and “write history”
qualifiers to the initialize dynamics command.
A basic rule of the sampling theory that governs discrete Fourier
transforms states that the input data must be sampled at least
twice as fast as the fastest frequency in the system. Two times the
maximum frequency corresponds to what is called the Nyquist
sampling rate. Data collected with a sampling rate that is too slow
may introduce errors in the Fourier transform. It is often difficult
or impossible to predict exactly how severe these errors will be.
In terms of using the Filter Trajectory command, the Nyquist lim-
itation means that it is best to run simulations of hydrocarbons
such that the time between frames that are captured in the history
(or archive) file is not more than 5 fs. If the time between frames is
greater, you may see some erroneous movements in the molecule.
(However, practical experience has shown that these errors are
usually negligible as far as the display is concerned and the result-
ing animations look fine.)
The recommendation to capture frames every 5 fs is based on the
idea that the C–H bond stretch is one of the fastest (if not the fast-
est) vibration in a hydrocarbon simulation. Its period is about
11 fs. Half of this is about 5 fs.
Note, however, that the Filter Trajectory command allows any
positive value to be used when specifying the time between
frames. It is up to you to make sure that it is correct and that it is
not so large as to cause problems.
The final piece of information needed for the Filter Trajectory
command is the range of frequencies to retain after the filtering.
The unit of frequency used by the Insight II program is reciprocal
centimeters. In other words, frequencies are referred to by wave
numbers.
N–1
H ( ν ) = 1/N
∑ f ( t) e
t=0
– i2πνt/N
N–1
f ( t) =
∑ H ( ν) e
ν=0
i2πtν/N
2 1⁄2
N
2 2
∑ ( xi – xi′ ) + ( yi – yi′ ) + ( zi – zi′ )
---------------------------------------------------------------------------------------------
N
i=1
τ = 1, 2, ..., n,
1
〈 [ r i ( τ ) – r i ( 0 ) ] 2〉 = -----------
τ max
j=0
∑
[ ri ( τ + j) – ri ( j) ] 2
d 〈 N ab ( r ) 〉
g ab ( r ) = --------------------------- Eq. 41
ρ b dV ( r )
N ab ( R ) 〉 =
∫d 〈N
0
ab ( r ) 〉 dr . Eq. 42
Command Summary
In addition to the core pulldowns in the top menu bar, the Analy-
sis module adds five pulldowns, Graph, Trajectory, Pseudo_
Atom, Evaluate, and Background_Job to the lower menu bar.
Graph Pulldown
The Graph pulldown allows you to create and manipulate graphs.
These commands are described in the following chapter, Graph
Pulldown.
Trajectory Pulldown
The Trajectory pulldown contains commands for working with
trajectory data. These commands use information from previously
run molecular mechanics simulations.
Get Trajectory
The Get Trajectory command is used to load into the Insight II
program atomic trajectory information contained in history or
archive files that have been generated in previous runs of the Dis-
cover program. The command sets up information needed by
other commands such as Construct_Graph or Animate.
Put Trajectory
The Put Trajectory pulldown allows you to create an archive file
from a loaded trajectory. It may contain all or just some of the
frames of trajectory data that have been loaded. These frames may
be reordered as they are written out.
The original trajectory data may come from a variety of sources: an
archive file, a history file, or a torsion file generated by Search_
Compare or Discover.
Filter Trajectory
The Filter Trajectory command allows you to filter trajectory sets
so that only motions with interesting vibration frequencies
remain. For details on the method used see the previous section on
Frequency Filtering.
Animate Trajectory
The Animate Trajectory command is used to make molecules
move through the conformations calculated during the simula-
tion, as read from the contents of a Discover history or archive file
(trajectory file).
Unanimate Trajectory
The Unanimate Trajectory command is used to permanently stop
an existing animation. The display of the motion of the molecule
or molecular system stops and related printouts are cleared from
the screen. This is different from temporarily stopping an anima-
tion with function key <F8>.
Conformation Trajectory
The Conformation Trajectory command allows you to examine
conformations that come directly, or are derived from trajectory
sets previously computed by, the Discover program. The molecule
or assembly affected by this command is always whatever mole-
cule or assembly was specified when the Get command was last
executed.
Family Trajectory
The Family Trajectory command is used to create, or modify, a
family of conformers based on the values determined from a clus-
ter graph computation. Once a family has been defined it is iden-
tical to an assembly, where each member corresponds to some
frame within the trajectory data. All members of a given family
must be derived from cluster graphs that were defined using the
same set of atoms for comparison.
Repartition_Cluster Trajectory
The Repartition_Cluster Trajectory command allows you to
change the number of conformer families. You can repartition
cluster graph levels, or update the existing display of a cluster
graph, without having to recalculate the RMS values.
Construct_Graph Trajectory
The Construct_Graph Trajectory command is used to create
graphs that plot common properties, such as energy, time, dis-
tances, and periodic properties from previous simulations. You
can also add new plots to existing graphs. The relationship
between any two or three properties can be plotted in any order.
Axis_Function Trajectory
The Axis_Function Trajectory command is used to associate func-
tions, such as time and energy, with a graph axis when plots are
created. This command is automatically invoked by the
Construct_Graph command and is not usually entered separately.
Cluster Trajectory
The Cluster Trajectory command allows you to create a cluster
graph that displays the results of a structural comparison through-
out the defined trajectory data. Every frame within the trajectory
specified by the Start, End, and Step parameters is compared to
every other frame and the RMS resulting from the superimposi-
tion of the frame pairs is displayed within the cluster graph. This
command is automatically invoked by the Construct_Graph com-
mand and is not usually entered separately.
Distance_Def Trajectory
The Distance_Def Trajectory command is used to assign a dis-
tance between two unique atoms to an axis on a graph. For exam-
ple, to see how a distance between two atoms varies over time, you
can assign a time function to the x axis using the Axis_Function
command and a distance value to the y axis with the Distance_
Def. This command is automatically invoked by the Axis_Func-
tion command and is not usually entered separately.
COM_Distance_Def Trajectory
The COM_Distance_Def Trajectory command allows you to
define a distance between two centers of mass. This command is
automatically invoked by the Axis_Function command and is not
usually entered separately.
Angle_Def Trajectory
The Angle_Def Trajectory command is used to assign an angle
between three unique atoms to an axis on a graph. For example, to
see how an angle between three atoms varies over time, you can
assign a time function to the x axis using the Axis_Function com-
mand and an angle function to the y axis with the Angle_Def com-
Dihedral_Def Trajectory
The Dihedral_Def Trajectory command is used to assign a dihe-
dral angle defined by four unique atoms to an axis on a graph. For
example, to see how a particular dihedral angle varies over time,
you can assign a time function to the x axis using the Axis_Func-
tion command, and dihedral to the y axis with the Dihedral_Def
command. This command is automatically invoked by the Axis_
Function command and is not usually entered separately.
PP_Ang_3_Def Trajectory
The PP_Ang_3_Def Trajectory command is used to assign an
angle between two planes to an axis on a graph, using only three
points to calculate the plane. For example, if you want to see how
a particular angle between two planes varies over time, you can
assign time to the x axis using the Axis_Function command, and
PP_Ang_3_Def to the y axis using the PP_Ang_3_Def command.
This command is automatically invoked by the Axis_Function
command and is not usually entered separately.
PP_Ang_n_Def Trajectory
The PP_Ang_n_Def Trajectory command is used to assign an
angle between two planes to an axis on a graph, using three or
more unique points to calculate the plane. This command is auto-
matically invoked by the Axis_Function command and is not usu-
ally entered separately.
pP_Dist_3_Def Trajectory
The pP_Dist_3_Def Trajectory command is used to assign a dis-
tance between a point and a plane, using only three points to cal-
culate the plane. This command is automatically invoked by the
Axis_Function command and is not usually entered separately.
pP_Dist_n_Def Trajectory
The pP_Dist_n_Def Trajectory command is used to assign a dis-
tance between a point and a plane to an axis on a graph, using
COM_P_Dist_n_Def Trajectory
The COM_P_Dist_n_Def Trajectory command allows you to
define a distance between a center of mass and a plane. This com-
mand is automatically invoked by the Axis_Function command
and is not usually entered separately.
Energy_Def Trajectory
The Energy_Def Trajectory command allows you to use the
energy components found within a Discover program history file
to define an axis energy function. If the trajectory information is
from an archive file, then only the total energy may be defined.
This command is automatically invoked by the Axis_Function
command and is not usually entered separately.
Tabulate Trajectory
The Tabulate Trajectory command is used to create a table that
displays the selected trajectory properties. Each property is repre-
sented by a column of information, with the name of the property
heading the column. You can select which frames are output as
well as which atoms.
Pseudo_Atom Pulldown
The Pseudo_Atom pulldown contains commands to create and
modify pseudoatoms. The Define Pseudo_Atom command cre-
ates the pseudoatoms. The Rename Pseudo_Atom and Delete
Pseudo_Atom commands modify the already defined pseudoa-
toms. The List Pseudo_Atom command lists information about
the pseudoatoms. For more extensive descriptions of these com-
mands, refer to their descriptions in the Builder Module chapter
of this guide.
Background_Job Pulldown
The Background_Job pulldown allows you to set up background
jobs to run concurrently or interactively with the Insight II pro-
gram. You are given the choice of whether to send background
jobs to a local or remote host. This pulldown is generic and is
found in many modules that run background jobs. The
Background_Job pulldown contains the following commands:
Setup_Bkgd_Job, Control_Bkgd_Job, Completion_Status, and
Kill_Bkgd_Job. Refer to the Background Job Pulldown chapter for
more information.
Methodology
Quantitative analysis of trajectory data usually results in the cre-
ation of a simple trajectory graph or a cluster graph. The steps usu-
ally followed to create a simple trajectory graph are:
1. The Get Trajectory command is used to read in trajectory data
(a .his file) and associate the data with the molecule or molecu-
lar system being studied (a .car or .arc file). The associated sys-
tem must already be loaded when you issue the Get Trajectory
command.
2. The Filter Trajectory may (optionally) be used to remove
unwanted vibrational frequencies from the trajectory data.
3. The Construct_Graph Trajectory command is used to begin the
sequence of steps followed to create a simple trajectory graph.
In this case, the Cluster_Graph parameter should be set to off.
If the New_Graph parameter is set off, you may use the
Graph_Name parameter to add plots to an existing graph.
When New_Graph is on, a new graph is created. If the Map
parameter is on, you can indicate which contour map to over-
lay in the graph through the Map_Name parameter.
4. When the Construct_Graph Trajectory command is executed
(from the menu), the Axis_Function Trajectory command is
automatically invoked. The type of property (time, energy, tem-
perature, or geometry) to be plotted on each axis is selected and
the command is executed.
Memory Limitations
It is important to note that the Get Trajectory command causes
large amounts of memory to be used for the storage of the data. If
you are only interested in animating the molecule or molecular
system without creating any graphs, the Get Trajectory command
may be omitted. If the Get Trajectory command is not used to read
in the data, the file containing the data is specified as a parameter
to the Animate command. It should further be noted that the
amount of memory used in the Animate command is directly pro-
portional to the complexity of the display. If you are animating
large molecules, limit the number of atoms displayed and the
number of colors used in order to conserve memory. If you are
only interested in creating graphs, the molecule(s) or molecular
system should not be animated.
Analysis Tutorial
As of this release, most tutorials are now available online for use
with the Pilot interface. To access the online tutorials for Analysis,
click the mortarboard icon in the Insight II interface.
Then, from the Open Tutorial window, select Insight II tutorials,
then the Analysis module and choose from the list of available les-
sons:
Lesson 1 Using Trajectory Commands
Lesson 2 Using Pseudoatoms
Lesson 3 Getting the Data of a Box of Water
Lesson 4 Compute the Pair Distribution Function for a Box
of Water
Lesson 5 Compute the Mean Square Displacement for a
Box of Water
You can access the Open Tutorial window at any time by clicking
the Open File button in the lower left corner of the Pilot window.
For a more complete description of Pilot and its use, click the on-
screen help button in the Pilot interface or refer to the Insight II
User Guide.
Implementation
The Graph pulldown contains commands that allow you to create
graphs, modify their appearance, and query their data. These com-
mands work on all types of graphs (e.g., those created from atomic
trajectory data, or any other source of data). A number of other
graph-related commands that work only with atomic trajectory
data can be found in the Trajectory pulldown. Note that through-
out this chapter, commands are listed in the format Pulldown/Com-
mand. This is a shorthand notation for the typed form of a
command. For example, Graph/Get specifies the Get command
from the Graph pulldown, and is exactly equivalent to the typed
form: Get Graph.
Graphs can be created from numbers in an ASCII file using the
Graph/Get command. They can also be created by copying exist-
ing plots (with automatic combination of thresholds) using the
Graph/Boolean command. The data from existing plots can be
correlated to form a new plot using the Graph/Correlate com-
mand. Or, new plots can be created with arbitrarily complex equa-
tions using the Graph/Equation command.
Contour maps can be added to graphs with the Graph/Contour
command. Display attributes such as colors used on the various
lines, curves, and points in graphs can be altered using the options
in the Graph/Color command. Text labels used to describe mini-
mum and maximum values and to describe axes can be modified
with the Graph/Label command. Tick marks (with or without
labels) can be created with the Graph/Tick_Mark command. The
scale of this text can be adjusted with the Graph/CharSize com-
mand. The axes can be moved from one side of the graph to the
other, or can be inverted, using the Graph/Move_Axis command.
Data points along the plot curves can be displayed or hidden using
Equation
With the Graph/Equation command you can create plots of equa-
tions defined from data contained in other plots or from lists of
numbers in simple ASCII files. These equations consist of opera-
tors and operands. An operand may be a graph plot specification,
or a file and function specification, or a constant numeric value.
Any graph property that can be displayed by a plot can be an oper-
and, except cluster plots. An operator is a mathematical function,
such as addition or subtraction. The full list of operators is
described below.
There are five classes of operators (listed in Table 2) grouped
according to the operation each performs, and according to their
individual syntax requirements.
A number is any integer or decimal value. Negative number must
be enclosed within parentheses. An integer must be a positive,
nondecimal value.
An expression may be any grouping of the above syntax classes
enclosed within parentheses, or may be a single operand. There
are two groups of operands: number (a fixed numeric value,
allowing creation of baselines for graphs) and plot or file/function
specification.
A plot specification is:
graph<graph_number>:<plot_number>:<data_point>:axis
Correlate
The Graph/Correlate command is used to perform auto- and
cross-correlations on graphs. The formula for standard correla-
tions is:
N–j
1
C ( j ) = -----------
N–j ∑ A ( i) × B ( i + j)
i=1
N–j
N i=1
∑ A ( i) × B ( i + j)
C ( j ) = ----------- -------------------------------------------------
N
-
N–j
∑i=1
A ( i) B ( i)
Command Summary
Graph Pulldown
The Graph pulldown commands allow you to create and manipu-
late graphs.
Get
The Graph/Get command is used to create graphs that plot func-
tions whose domain and range are specified in files which have
been generated by the Put Graph command, by the various Poly-
mer application modules, or in files that have been created manu-
ally, following the file format described in Appendix B.
Put
The Graph/Put command is used to put the data used in a graph
into a file. If more than one graph is specified, only the unique data
from each graph is written to a file.
With the exception of cluster graphs, all plots written to a file using
the Put command (with the Header Style parameter set to the
Title option and the External_File parameter off) can be used to
create new plots with both the Graph/Get and Graph/Equation
commands.
You can also create files that can be used as input to the Insight II
program’s Contour utility. Extra information is put at the start of
the file so that the file can be used for this purpose. Please refer to
the Put Graph on-line command description.
Boolean
The Graph/Boolean command allows you to create new plots by
cloning plots from existing graphs. The new plots all share the
same thresholds that are formed by unioning or intersecting exist-
ing threshold lists. When you union thresholds, you are able to see
at least as much of each plot as you could see before they were
cloned. This is because you are seeing thresholds that are merged
(unioned) together. When you intersect thresholds, you may see
less of each plot because you are looking at only those sections of
the plots where thresholds overlapped (intersected). You can also
use the Boolean command to clone plots that have no thresholds.
In this case, the command is merely a tool that simplifies the task
of copying plots.
Correlate
The Graph/Correlate command is used to either auto- or cross-
correlate plots on existing graphs. By default, the correlation result
is normalized.
Equation
The Graph/Equation command is used to create a graph that uses
mathematical expressions to describe each axis. Existing graph
functions or data from files produced by the Put command are
used as operands within the equation.
Contour
The Graph/Contour command creates a set of contours composed
of the specified contour levels from a specified Insight II program
graph plot, or from a Contour File. A contour level is a curve (or
surface) connecting all of the points in the given graph which have
the same value. This contour is automatically displayed in a
graph.
When creating contours from a graph plot, you may create a single
contour level or a range of contour levels, or you may delete a sin-
gle contour level from an existing contour.
Line_Fit
The Graph/Line_Fit command allows the determination of the
equation of the line that best fits the data points contained in a
selected curve segment. The results can be displayed as a line on
the graph being examined. The equation of the line is reported as
well.
Interpolation
The Graph/Interpolation command allows you to interpolate an
existing graph with either the linear or cubic spline method. It also
allows you to modify the number of points in the graph.
Integration
The Graph/Integration command enables you to integrate a plot
using the trapezoidal rule. Since a plot is a set of discrete data, the
trapezoidal rule is sufficient. You can specify the plot by picking
from a graph, and specify the integration range by setting start and
end data-points. By default, the start and end data-points are set to
the first and last data points in the plot. The results are given in
two ways: a plot showing the running integration, and a numerical
value of the total integral. The former can be plotted in either a
new graph or in an existing graph; the latter is displayed in the
Information area.
Differentiation
The Graph/Differentiation command enables you to calculate
derivatives of a plot by using the Central Differences method. You
can specify the plot by picking from a graph. By default, the calcu-
lation is conducted over the entire range of the plot on the inde-
pendent axis. However, you can specify a smaller region to
integrate by setting the start and end points in the parameter
block. The results are given as a plot showing the running deriva-
tives in a new graph or in an existing graph.
FFT_Real
This command performs fast Fourier transform for an one-dimen-
sional, real function. The input-data must be even-spaced and the
number of points must be an integer power of 2. Failure of the first
Smoothing
Two methods are provided in the Graph/Smoothing com
to enable you to smooth a plot. The Least_Squares met
reconstructs data by three-point fitting the input data to
order polynomial. This procedure can be repeatedly per
by specifying the parameter N_Iteration. The Fourier_T
form method transfers the input data into frequency spa
ters out high-frequency components according to the par
Window_Size, then restores the data by reverse transfor
N_Iteration and Window_Size affect the results obtaine
larger these values are, the smoother the results. The res
given as a plot in a new graph or an existing graph.
CharSize
The Graph/CharSize command allows you to change an
the size of text associated with graphs.
Color
The Graph/Color command is used to specify and alter
ors for portions of a graph such as axes, box segments, l
cursors, dynamic numbers, and plots (in their entirety o
segments). If an axis is recolored, the axis, the label, and t
imum and maximum values are all displayed in the new
You can color a graph using predefined colors, as well as
and hues of predefined colors.
Label
The Graph/Label command allows you to customize the
the labels on the x, y, or z axis of a graph, or the minimu
maximum labels on the x, y, or z axis of a graph. Each gra
also have an overall label that is placed just above the gra
maximum number of characters allowed in an axis labe
276 Insight II/March 2000 The maximum number for the overall label is 29. The ma
number of characters displayed for the minimum and ma
Command Summary
Move_Axis
The Graph/Move_Axis command allows you to change the
position or orientation of an axis on a graph. By setting the
Shift_Axis parameter to on, the axis can be moved to a position
that is parallel to but opposite from the old position. This can be
used with the Color command (for coloring box segments) and
the Transform/Overlay command to create what looks like a sin-
gle graph with opposing axes.
By setting the Invert_Axis parameter to on, the axis can be
inverted. That is, its origin and termination are exchanged. The
origin of the graph can thereby be moved to a different corner of
the graph box.
Modify_Display
The Graph/Modify_Display command allows you to alter the
display characteristics of a graph plot. Some options are:
♦ display the plot as a single line
♦ display the plot as a set of bars
♦ display the plot as a disconnected set of points
In addition, you can control the scale of the points, and the width
and direction of the bars. Various combinations of the options
above are also possible.
The notion of displaying data points can be important when
using commands like Trajectory/Conformation, where you fre-
quently pick individual data points. The picking (and the differ-
entiating between points) is made much easier by temporarily
turning on display of the points.
Scale_Axis
The Graph/Scale_Axis command allows you to scale any of the
graph axes.
Threshold
The Graph/Threshold command allows you to zoom in on por-
tions of a plot, or to set an axis’ minimum or maximum limits.
Plot functions that are periodicInsight
(such as angle measurements)
II/March 2000 277
cannot be used in the Threshold command.
10. Graph Pulldown
Tick_Mark
With the Graph/Tick_Mark command you can add, modify, or
remove tick marks and their labels on any axis.
Info
With the Graph/Info command you can get information pertain-
ing to plots or map contours in graphs.
For plots, you are told which functions are set for the x, y, and z
axes. For functions that use atom selections (such as distance,
angle, etc.), you are told specifically which atoms were chosen.
However, graphs created with the Get command do not retain the
history of what atoms (if any) their data pertain to. Therefore, exe-
cuting Info for graphs created with the Get command do not list
any atoms. In some cases you may be able to find the atom refer-
ences in the top of the file used as input to the Get command.
For map contours, you are told the contour level (for example, the
energy level) and the x, y, and z values for the data point on the
contour. For example, if a map relates two dihedral angles to the
energy of a conformation, then Graph/Info might tell you that a
given point on a particular contour corresponds to energy level -
0.50, and that the two dihedral angles are 140.00˚ and -60.00˚,
respectively.
Among the parameters contained in the Info command are Graph
and Map. By setting these to On or Off, you specify whether you
are interested in plot or map information. You may set one or both
of them On.
Depending on the values of the Graph and Map parameters, you
may need to give a plot point (in the Graph Spec parameter) or a
map contour point (in the Map Spec parameter). You may type in
either of these parameter values or you may interactively pick
them off of a graph. If you pick a point at which a plot and a map
contour meet, both parameters are filled in simultaneously. If a
plot or map point is given, the coordinates of the point are also
given.
If Info does not give you enough information, try the Put com-
mand. Also note that when you pick a plot point when no param-
eter block is active, the x, y, and z values are given along with the
full plot point specification.
Tutorial
As of this release, most tutorials are now available online for use
with the Pilot interface. To access the online tutorials for Graph,
click the mortarboard icon in the Insight II interface.
Then, from the Open Tutorial window, select Insight II tutorials,
then the Graph Pulldown option and choose from the list of avail-
able lessons:
Lesson 1 Basics, Interpolation, and Numerical application
You can access the Open Tutorial window at any time by clicking
the Open File button in the lower left corner of the Pilot window.
For a more complete description of Pilot and its use, click the on-
screen help button in the Pilot interface or refer to the Insight II
User Guide.
Theory
Much of the computational work within MSI products is per-
formed by background jobs that are run using the Insight II pro-
gram as the user interface. Background jobs run concurrently with
the interactive Insight II program; this is possible because, once
started, they do not require user interaction. If you have access to
more than one computer (mainframe or workstation), you may
wish to run some of the background jobs on a different computer
(hereafter called remote host) than the computer which is running
Insight II (hereafter called local host).
In order to run the background job on a remote host, there are sev-
eral general requirements:
♦ The actual background job program must exist as an executable
image for that host.
♦ Files transferred between local and remote hosts must be read-
able and writable on both hosts.
♦ You must have an account on the remote host—and sufficient
disk space to contain all of the input, temporary, and output
files produced by that background job.
The local host must be able to communicate statuses, submit jobs,
and copy files to the remote host.
Making an executable image compatible with a remote host
involves recompiling and relinking the program; this is done by
Biosym for host types which the company supports.
Implementation
The Background_Job pulldown interface is the access point to a
system which allows submission of background jobs on both local
and remote hosts. This is a generic pulldown, which means that it
appears in more than one module of the Insight II program. The
commands found within this pulldown are used to set up, moni-
tor, and kill background job execution. Refer to the System Guide
for a detailed description of the mechanism used to invoke back-
ground jobs.
Command Summary
Background_Job Pulldown
The Background_Job pulldown allows you to set up background
jobs to run concurrently or interactively with the Insight II pro-
gram. You are given the choice of whether to send background
jobs to a local or remote host. This pulldown is generic and is
found in many Insight II modules that run background jobs. The
Background_Job pulldown contains the following commands:
Setup_Bkgd_Job, Completion_Status, Kill_Bkgd_Job, and
Control_Bkgd_Job.
Setup_Bkgd_Job
The Background_Job/Setup_Bkgd_Job command allows you to
set up the execution mode and select the host upon which to run a
job. In addition, this command can be used to control the notifica-
tion method for background job completion and cleanup options.
Control_Bkgd_Job
The Background_Job/Control_Bkgd_Job command allows you
to coordinate running background jobs by detaching or attaching
selected background jobs to the Insight II program. In addition,
this command allows you to specify the interval for invoking a
task specific to a particular background job for processing its out-
put.
Completion_Status
The Background_Job/Completion_Status command allows you
to monitor and evaluate the completion status of one or all of the
background jobs. In addition, this command can be used to look
up the meaning of a given return status code.
Kill_Bkgd_Job
The Background_Job/Kill_Bkgd_Job command is used to termi-
nate execution of a background job that has been submitted during
the current session.
Methodology
Use of the Background_Job pulldown is optional. If not used, the
default is to run all jobs on the local host in Cont_Insight mode of
the Background_Job/Setup_Bkgd_Job command. When the
Background_Job/Setup_Bkgd_Job command is used, the back-
ground job list only shows those background jobs which are run
from the current module and which can be run on a remote host.
If the module contains only one job, the parameter is automatically
filled. The list of hosts only shows those hosts which are associated
with that background job in the background_job_hosts file at your
site. It is possible for you to specify a remote host that is unavail-
able (off line, for instance) or for which you have no login account.
Use the Background_Job/Control_Background_Job command to
coordinate running background jobs by detaching or attaching
selected background jobs to the Insight II program. In addition,
you can use this command to specify the interval for invoking a
task specific to a particular background job for processing its out-
put.
Every background job submitted via the generic background util-
ity is assigned a job number. This number is displayed in the infor-
mation area when the job is submitted (e.g., Starting RIS
background job on iris5 as job 1). You should note the
job number when the job is submitted since it can be used later to
check on the job’s completion status, control the job while it is still
running, or to kill the job.
Tutorial
As of this release, most tutorials are now available online for use
with the Pilot interface. To access the online tutorial for
Background_Job, click the mortarboard icon in the Insight II inter-
face.
Then, from the Open Tutorial window, select Insight II tutorials,
then the Viewer module and choose:
Lesson 9 Use of Background Job commands
You can access the Open Tutorial window at any time by clicking
the Open File button in the lower left corner of the Pilot window.
For a more complete description of Pilot and its use, click the on-
screen help button in the Pilot interface or refer to the Insight II
User Guide.
Introduction
The Biosym Command Language (BCL) is a full featured scripting
language that allows you to add your own commands, menus, and
modules to the Insight II program.
BCL macros range from simple collections of existing Insight II
commands to complex programs that perform file I/O, Insight II
data manipulation, and powerful arithmetic computations. For
example, you might want to create a new command that gets a
molecule from a file, colors it, and visualizes it in a ball-and-stick
representation all in one step. Or you may want to gather data
from a group of molecules and generate a table. New commands
created with BCL can then be added to existing menus, new
menus, or entirely new modules.
Creating Commands
To create a new command with a BCL macro, you create a text file,
or start with an existing log file, and describe the new command’s
name, parameters, parameter block appearance, processing, and
output. The BCL macro is then loaded using the File/Source_File
command and can be added to a menu with the Custom/Add_To_
Pulldown command. Your new command can now be used in the
same way as all other Insight II commands.
Examples
More than one hundred BCL macros can be found in the $BIO-
SYM/gifts directory.
BCL Tutorial
The following tutorials walk you through the creation of BCL mac-
ros. The first tutorial, “hello.bcl” starts from scratch, giving step by
step instructions for creating, loading, running, and modifying a
simple macro. The second tutorial, “myget.bcl” starts with an
Insight II log file, then adds parameters. The third tutorial has you
enter and run a working example program that shows many of the
features of BCL.
Note: If you are unfamiliar with Insight II commands such as
Color Molecule, refer to the Viewer tutorials in chapter 2 first.
Tutorial 1: hello.bcl
Start a text editor, such as vi or emacs. Enter the text below and save the
file as hello.bcl
Define_Macro hello
Print ”Hello BCL World!”
End_Macro
Move your cursor to the command line and enter the name of the macro:
hello
The string “Hello BCL World” is printed to the info area and textport.
If any error messages appeared in the info area during steps 3 or 4, try
to fix them during step 5.
Edit the file so it appears as shown below, and save it under the same
name.
You have added a parameter, called Person of the type sstring. This
parameter type holds up to 19 characters. The print statement now
outputs whatever name you enter.
Since you modified your macro, you need to reload it. Repeat step 3.
Since you will probably be repeating this step several times, you may
wish to use abbreviations (type source hello.bcl) and use history
(type !s). Also, you may find it more convenient to work in the text-
port.
Enter hello. At the prompt for Person [no default], enter your name.
Select your new Custom/hello command, fill in the name, and Execute.
10. Iterate
Tutorial 2: myget.bcl
Use an Insight II log file to create a simple BCL macro.
1. Invoke Insight II
5. Quit Insight II
Note that the file contains the commands you invoked in Insight II, pre-
ceded by m:, as well as some comments, preceded by pound signs (#).
The m: MUST BE DELETED. The comments can be deleted or ignored.
8. Convert to BCL
At the top of the file, add the line Define_Macro myGet. At the bottom,
add the line End_Macro followed by the line Add_To_Pulldown myGet
Molecule.
Define_Macro myGet \
Lstring Filename \
Ident Objname
In the Get Molecule command line, replace the actual filename with
$Filename and the actual object name with $objname. The line should
appear similar to what is shown below.
15. Iterate
Add additional parameters for colors and labels as desired.
Define_Macro Trace_Torsions \
Ident Molecule_Name \
Int Starting_Residue \
Int Ending_Residue
# local variables
Float torsion_value # torsion angle value
Lstring fn # filename
Int presidue# previous residue index
Int cresidue# current residue index
Int nresidue# next residue index
Int nnresidue# next next residue index
Ident CA_presidue, CA_cresidue, \
CA_nresidue, CA_nnresidue # residue names
# initialization
presidue = $Starting_Residue - 1
cresidue = $Starting_Residue
nresidue = $Starting_Residue + 1
nnresidue = $Starting_Residue + 2
fn = trace_torsions.tbl
# add picking
Set_Param_Pick Molecule_Name MOLECULE_NAME
Continued...
CA_presidue = $Molecule_Name//”:”//$presidue//”:CA”
CA_cresidue = $Molecule_Name//”:”//$cresidue//”:CA”
CA_nresidue = $Molecule_Name//”:”//$nresidue//”:CA”
CA_nnresidue = $Molecule_Name//”:”//$nnresidue//
”:CA”
$torsion_value = \
{Dihedral -monitor $CA_nnresidue $CA_nresidue \
$CA_cresidue $CA_presidue}
presidue = $cresidue
cresidue = $nresidue
nresidue = $nnresidue
nnresidue = $nnresidue + 1
End_Macro
Add_To_Pulldown Trace_Torsions User
BCL Overview
This section starts with general rules for the BCL language. Func-
tionality is then covered by topic. If you know what you want to
do, but not which statements to use, start here. If you know the
statement but are not sure of the proper syntax, see the BCL Refer-
ence section.
BCL Rules
♦ BCL is case insensitive. A parameter name’s case is maintained
in prompts and parameter blocks.
♦ Multiple spaces and tabs may divide any tokens. A token is a
keyword, such as Define_Macro, a variable, a constant, or an
operator.
♦ Blank lines may appear anywhere in the macro.
♦ If more than one statement is on a line, each statement must be
separated with a semicolon (;).
♦ If a statement continues onto multiple lines, each line to be con-
tinued is ended with a backslash (\).
♦ Comments start with a pounds (#) and may begin anywhere on
a line. Comments normally run to the end of the line, unless
ended with another #.
♦ A complete statement, including continuations and comments,
must not exceed 1024 characters.
♦ Names used for macros, parameters and variables must start
with a letter and be made up of only A-Z, a-z, 0-9, _, and be fewer
than 20 characters. Names may contain spaces, but must always
be quoted as in “File Name”. (Underscores are recommended,
as in File_Name.) Reserved words should not be used as
names.
♦ Macro names must be unique command names within Insight
II.
♦ All macros must start with Define_Macro and end with End_
Macro.
♦ Multiple macros can appear in one file.
♦ Macros can call previously loaded macros.
♦ Any Insight II command may be used in a macro, but the module
containing the command must be open. Modules can be
Parameters
Parameters are arguments to your macro. If your macro is invoked
from the command line, the user may type the values for the
parameter on the line. If you do not supply arguments, Insight II
automatically prompts you with the parameter name. If your
macro is invoked from a menu, the parameters appear as widgets
in a parameter block window, just like any other Insight II com-
mand, including Execute and Cancel buttons.
Parameters can have defaults, value-aids, and picking functions.
BCL statements are also available to format the parameter block
generated when the macro is invoked from the menu. These are
covered later in this section.
It is possible to share any Insight II command parameter with a
macro. Thus, Insight II parameter defaults can be inherited by the
macro command parameter. See Table 7. Insight II Parameter
Names on page 10-337 for a list of parameters which are already
used in Insight II.
Since parameters are shared with Insight II, you must be careful in
choosing parameter names so that they do not unintentionally
coincide with existing parameters.
Types
A parameter’s type determines what kind of data it can hold and
how large it can be. Data validation is built-in, so that if you or
another user of your macro enters letters in an Int parameter, the
bell rings, a warning message appears and the parameter is
cleared. Several additional (Short_) data types are available. These
are covered later in this section.
♦ Intinteger, 19 digits max, including sign
♦ Float real, 19 digits maximum, including sign
♦ Sstring short string, 19 chars max
♦ Lstring long string, 79 chars max
♦ Vlstring very long string, 511 chars max
♦ Logicalboolean ON / OFF
Definition
All parameters must be defined in the Define_Macro statement.
Enumers and Llists are filled within the body of the macro with the
Def_Enum and Def_List statements. The example BCL code cre-
ates the parameter block shown.
Define_Macro All_Parameters \
Int Int_param \
Float Float_param \
Sstring Sstring_param \
Lstring Lstring_param \
Vlstring Vlstring_param \
Logical Logical_param \
Enumer Enumer_param \
Llist Llist_param \
Ident Ident_param \
Coord Coord_param
Variables
Variables temporarily hold data within a macro. Variables should
be defined before they are used, otherwise the variable implicitly
defined the first time it is used. We recommend defining all vari-
ables at the top of the macro, immediately following the Define_
Macro statement and its parameter definitions. Macro commands
do not share variables with other macros or commands.
Types
♦ Int integer, 19 digits max, including sign
♦ Float real, 19 digits maximum, including sign
♦ Sstring short string, 19 chars max
♦ Lstring long string, 79 chars max
♦ Vlstring very long string, 511 chars max
♦ Logical boolean ON / OFF
♦ Ident identifier, 79 chars max
♦ Coord three floats together
Definition
To define a variable, start a statement with a variable type, fol-
lowed by a comma-separated list of variable names. For example:
Int i, j
Lstring Filename
These are used with the fetch functions and accessed like arrays.
Coords
You can access coords by x, y, and z values or as a unit.
Coord point
Constants
Constants are numbers or strings to be used literally as values. The
number -12 is a constant, as is the string “Hello World”.
String constants should be enclosed in double quotes.
Constants may be used in expressions and statements as needed.
Constants may also be given symbolic names. See the Constant
command in the BCL Reference.
Operators
BCL has three types of operators: numerical, string, and logical.
See Table 4. Operator Precedence on page 10-332 for a complete list
and description of operators and their precedence. See Table 5.
Intrinsic Functions on page 10-334 for a complete list of built-in
functions, such as sin() and random().
Expressions
Expressions are collections of parameters, variables, constants,
functions, and operators. Expressions can be used in assignment
statements and within commands statements. Some examples of
expressions include:
$x + 7 (simple arithmetic expres-
sion)
In Assignment Statements
An assignment statement begins with a variable name, followed
by the equal sign (=), then an expression. Some examples of
assignment statements include:
first_case = $MoleculeName // “:*”
i = $i + 1
In Command Statements
Whenever an expression is embedded in a command, it must be
surrounded by parentheses. For example:
get mol pdb ($MoleculeName//”.brk”) $ObjName
Functions
You can make your own BCL macros that act as functions, which
in turn can return values to other macros. The function macros can
appear in the same file or separate files, but the function macros
must be loaded before they are referenced.
Defining Functions
A function macro has an additional first argument in the Define_
Macro statement which specifies what type of value is returned.
Functions also have Return statements which actually return a
value. Otherwise functions look like any other macro. The exam-
ple shown below returns a coordinate when called.
Define_Macro Coord Cen_of_Mol Sstring Mol_name
Coord cur_com
...
Return $cur_com
End_Macro
Accessing Functions
To access a function written in BCL, enclose the function name and
its arguments in curly braces. For example:
mol_cent = {Cen_of_Mol $MoleculeSpec}
Forward Referencing
As mentioned above, functions need to be loaded before they are
referenced. One way to do this to put BCL functions in the file
above the macro which refers to them. Another solution is to use
# forward reference
Command Coord Cen_of_Mol
Coord mol_cent
. . .
mol_cent = {Cen_of_Mol $MoleculeSpec}
. . .
End_Macro
Control Statements
A control statement is used to regulate the execution of statements
within a macro. The two primary types of control statements are
conditionals, such as If, and loops, such as While.
Conditionals
BCL provides two methods of conditional execution, the If state-
ment and the Switch statement.
Loops
The other type of control statement, the loop, causes the same
statements to be executed repeatedly, stopping when a logical test
fails. Loops can be created with the While, ForEach, and GoTo
statements. The Continue statement jumps control to the top of a
While or ForEach loop. The Break statement prematurely termi-
nates a While or ForEach loop. Loops may be nested.
Note: If you run your macro and it loops infinitely, it can be
stopped by pressing the <Esc> key.
ForEach The ForEach loop has two forms: the first iterates
through the values of the array; the second increments a counter.
Both forms have a matching End statement. Examples of both
forms are shown below. The BCL fetch statements used in the
examples are discussed in System_Fetch_Assy on page 10-359.
Lstring mol_name, atom, *atom_list
Int count, index
By Token The Read statement reads data from a text file and
assigns the data to BCL variables for further processing. Text can
be read as strings, integers, or floats. Read returns zero on failure
or end of file. The read statement attempts to open the file if it is
not already open. The Close statement should be used after all
reading is complete.
The following example uses the BCL_Unix command to print the
owner and modification time fields of the Insight log file.
Define_Macro Last_Run
If ($status)
Print “Insight last run here on “ \
$month $day “ by “ $owner
End
Else
Print “Unable to determine when Insight last
run”
End
End_Macro
Writing To a File
The BCL Write statement outputs a formatted line of text. The syn-
tax of the Write statement is identical to the Read statement. Write
also returns zero on failure. The Close statement should be used
after all writing is complete.
The Trace_Torsions.bcl tutorial on page 10-298 shows how this
statement can be used to create a text file for use by an Insight com-
mand.
Conversion formats, such as %s, can be found in the BCL Refer-
ence section under the Read and Write statements.
Parameter Blocks
Several BCL statements are available to enhance the use of your
new command. Some are for appearance only. Other statements
make it easier to fill in the parameter block by supplying defaults,
by providing value-aids, or by picking.
Defaults
Users of your macro appreciate smart default values in your
parameters. You can either set the value to some pre-determined
constant, or calculate the default with another BCL function.
Define_Macro Update_Range
Int val, status
End_Macro
End_Macro
Add_To_Pulldown Range File
Data Validation
Preview_Function callbacks may also be used to do data valida-
tion in parameter blocks. In this example, a callback validates that
a Float parameter is positive.
Define_Macro Validate_Size
Int status
Float f
End_Macro
Picking
Picking means placing the mouse cursor over a graphical object
and clicking the left mouse button. String and ident parameters
can be filled by picking. The statement Set_Param_Pick enables
picking, and adds a pre-defined value-aid for modifying the pick
level and selecting by name. Set_Param_Pick has arguments to
specify what level to pick to, such as atom, molecule, or assembly.
You may also specify a Screen_Only option to limit Object picks to
only Grids, Graphs, or other object types. Here are two examples
of the Set_Param_Pick statement, and the associated value-aid:
Define_Macro Check_Mol Ident Mol Sstring Obj
# Molecule picking
Set_Param_Pick Mol Molecule_Spec
# Graph picking
Set_Param_Pick Obj Object_Name Screen_Only Graph
Appearance
You can customize the appearance of a parameter block by using
Short_ parameters and by using several BCL statements to affect
layout.
Several of the parameter types have Short_ forms. These include:
Int, Float, and String. If the Short_ form of the data type is used, the
Label and Value widgets appear next to each other and are limited
to nine characters each. For example:
Define_Macro Morph \
Short_Int Steps \
Short_String From \
Short_String To
Value-Aids
Value-aids provide quick ways for the user to fill in a parameter.
The value-aid becomes visible when the parameter associated
with it gets keyboard focus. Value-aids include sliders for selecting
a float value in a range, palettes for selecting color, and lists for
selecting a value. The Place_Valuator, Set_Slider, and Param_
Add_File_List statements are used to add built-in value-aids. In
the following example, all three types of value-aids are used.
Define_Macro Value_Aids \
Sstring Shade \
Float Temperature \
Vlstring FileName
End_Macro
Palette Ruler
File List
Conditional Parameters
You may wish to de-activate parameters based on the value of
other parameters. For example, if you turn off the Boolean param-
eter Set_Color, the New_Color parameter should be removed from
the parameter block. In this case the New_Color parameter is con-
ditional on the Set_Color parameter. Parameters can be condi-
tional on Boolean and Enumer parameters.
The Condition statement makes a parameter conditional on
another parameter, called the control parameter. The syntax allows
for multiple conditions logically ANDed and ORed together, as
well as NOT logic. The condition statement to have the New_
Color parameter active only when the boolean Set_Color parame-
ter is True is:
Condition New_Color Set_Color on off off
The condition statement has five arguments. The first is the condi-
tional parameter and the second is the control parameter. The third
argument is the value of the control parameter.
The fourth argument in the Condition statement is for use when
you have multiple condition statements for one parameter. In this
example on means logically and this condition with the previous
condition, whereas off means or. The condition statements to have
the Radians parameter active only when the boolean Adjust
parameter is True and the enumer Dimension parameter is Angu-
lar is:
Condition Radians Adjust on off off
Condition Radians Dimension Angular on off
Objects
Fetch functions return arrays of object identifiers that match the
specification argument. The returned object identifiers can then be
used to refer to an Insight II object in BCL statements. The func-
tions are: System_Fetch_Atom, _Mono, _Mol, _Object, _Sketch, _
Assy, and Assy_Fetch_Molecule. The functions return NULL if no
objects were found which match the specification argument.
The following example shows atom fetching.
Define_Macro List_Atoms
Ident *atom_list, atom
Int count
Properties
BCL macros can access properties from molecular system such as
element type, charge, or number of bonds. Properties come in two
forms, Function properties, and Attribute properties. Function
properties are calculated each time the property is requested.
Attribute properties are data stored with individual objects.
Each property is associated with a class of object, such as Atom or
Mol, and datatype, such as Int of Str. See the Custom/List_Proper-
ties command for a complete list of properties, their classes, and
their datatypes.
Once a property is defined, it can be used in Insight II commands
such as Molecule/Label and Subset/Define. Properties are also
accessible in Spreadsheet formulas.
This section describes properties in four parts: accessing the sys-
tem properties supplied with Insight II, user defined attribute
properties, user defined functional properties, and accessing
arrays of properties to increase performance.
where datatype is Int, Float, Str, or Bool, and class is Atom, Mono,
or Mol. If the property is not set, Prop_Get returns a null value of
the appropriate datatype.
The following example shows how to get several pre-defined
properties with different datatypes from different classes of
objects, and the output from the macro.
Define_Macro Print_Sys_Props
Int bonds, count
Lstring element
Ident atom
atom = “CRN:29:OH”
element = { Prop_Get_Str Element Atom $atom}
bonds = { Prop_Get_Int Connection_Count Atom $atom}
Printf “Atom CRN:29:OH is %s with %d bond(s)\n” \
$element $bonds
End_Macro
End_Macro
End_Macro
(Executing: Atom_Mass)
Mass of atoms in CRN: 4412.97
Spreadsheet Cells
Spreadsheet cells can be accessed with Cell_Get_String, _Int, or _
Float. The statement takes one argument of the form Table:row.col,
as shown in the example below.
Define_Macro Print_Cell \
Ident Table Int Row Int Col
Ident Cell
Lstring contents
Debugging
If errors occur when you load or run your macro, here are a few
debugging suggestions:
♦ The most common programming bugs are typos. Name mis-
matches or incorrect spelling of command names are also com-
mon.
♦ If you receive an error message that contains line numbers, look
at the line in your macro where the first error occurred. Subse-
quent errors frequently vanish when the first is fixed.
♦ If the error message says “Missing End_Macro” and your
macro does have an End_Macro statement, check for missing
End statements for If, Else, Switch, Foreach, and While state-
ments.
♦ If a loop is not executing the proper number of times, check
your initial values, termination values, and increment values.
♦ You may find it helpful to add temporary Print statements to
dump the values of parameters and variables or to see how far
execution proceeded before the error occurred.
♦ Another debugging technique is “Divide and Conquer”. Com-
ment out parts of the macro and see if the error still occurs.
BCL Reference
Reserved Symbols
The following words have special meaning in the BCL language
and should not be used as names:
Operator Precedence
In an expression, certain operations have precedence over others.
Operations of equal precedence are evaluated left to right. The
operations and their precedence are:
Operand
Order Symbol Value Type Comments
Type
3 *, / Integer or
Float
Integer or
Float
Multiply, Divide
Intrinsic Functions
Intrinsic functions are built-in functions provided by BCL. These
include common arithmetic and trigonometric functions. They can
be used as part of an expression in an assignment statement or as
a parameter value in a command statement.
* both the input value and the return value from this function are
in radians.
BCL Statements
Assy_Fetch_Molecule
Returns an array of molecules satisfying the assembly specifica-
tion argument. See System_Fetch_Assy.
Syntax: Assy_Fetch_Molecule object_spec
Input: object_spec (Ident): object specification for assemblies.
Returns: Array of molecules or NULL.
BCL_UNIX
Execute a UNIX shell command from within a macro.
Syntax: BCL_UNIX unix_command
Input: unix_command (Vlstring):UNIX command string
Example:BCL_UNIX “ls -l *.dat”
Break
Exit a loop. Control jumps to the statement following the end of
the loop. Typically placed within conditional code.
Syntax: Break
Cleanup_Command
Associate a cleanup callback with a macro. The callback is exe-
cuted when the user cancels either explicitly with the Cancel but-
ton or implicitly by selecting another command.
Syntax: Cleanup_Command clean_macro
Input: clean_macro (Sstring): cleanup macro name
Error: macro not found
Close
Close an open file. After reading from or writing to a file, the file
should be closed with the Close statement. Failure to close files
may cause future read or write requests to fail.
Syntax: Close file_name
Input: file_name (Vlstring):data file opened for either read or write
Error: Specified data file not opened or not found.
Example:close /tmp/list.dat
Command
Declare a macro before it has been defined, to satisfy forward ref-
erences.
Syntax: Command declarator_type [*]macro_name[, macro_name]
Input: declarator_type(Sstring): parameter type returned
macro_name(Sstring): name of command
Condition
Makes a parameter conditional on the value of another parameter,
called the control parameter. The control parameter must be either
a boolean or an enumerated type.
Syntax: Condition cond_param control_param pvalue operation
polarity
Input: cond_param (Sstring): conditional parameter name
control_param (Sstring): control parameter name
pvalue (Sstring): control parameter value
Constant
Define a symbolic constant.
Syntax: Constant const_name value
Input: const_name (Sstring): new symbolic name
value: replacement value
Example:
Constant PI 3.14159
sum = $value * PI
Continue
Jump to the top of the loop. Typically placed with conditional
code.
Syntax: Continue
Example:
While ($n > 0)
n = $n - 1
# Skip this case, and start from the top
If ($n = 7)
Continue
End
Print $n
End
Define_Macro
Begin definition of a new macro.
Syntax: Define_Macro [return_type] name [param_type param][, ...]
Input: return_type (Sstring): for macro functions, data type re-
turned
name (Sstring): name of new command or function
param_type (Sstring): argument data type
param (Sstring): name of parameter
Define_Menu
Create a new pulldown menu.
Syntax: Define_Menu module_name menu_name
Input: module_name (Sstring): name of module to which new menu
will
be added
menu_name (Sstring): name of new menu
Define_Module
Create a new module. A name for the first menu in the module
must be specified. The module is placed in the first group of mod-
ules in the biochem discipline.
Syntax: Define_Module module_name menu_name
Input: module_name (Sstring): name of new module
menu_name (Sstring): name of first menu in new module
End_Macro
Stop definition of a new macro.
Syntax: End_Macro
Fgets
Read a string of characters from a file. Reads up to end_of_file,
new_line, or specified limit. Attempts to open the file if not already
open. Use the Close command when finished reading.
Syntax: Fgets file_name char_count param
Input: file_name (Lstring): data file to read
char_count (Int): maximum number of characters to
read.
3up to 511 for Vlstring variable
param(Sstring): name of string variable to contain in-
put
data
Returns 1: successfully executed
0: execution failed, or beyond end of
file
Error: Invalid param_name, unable to open user file_name
Example:Fgets /tmp/list.data 40 $string
ForEach
Loop through an array or loop by an index.
Syntax: Form 1: Array
FullScreen
Enables or disable FullScreen mode. In FullScreen mode, the
graphics window takes over the entire computer screen.
Syntax: FullScreen status
Input: status (Logical ON/OFF): new FullScreen mode
Goto
Jump execution to a specified location. Every goto statement needs
a matching label followed by a (:), but not every label requires a
matching goto statement. Labels are not case sensitive and they
are a string of 19 or less characters. Any valid character can be part
of a label, e.g., 99999, exit, goodbye, done, begin_.
Syntax: goto label
Input: label (Sstring): name of label
If
Conditionally execute statements up to the associated End state-
ment based on a logical test. If statements may be nested.
Syntax: if (Logical_Test)
statements
End
The If statement can have an optional Else statement, which also
has an associated End. If the logical test fails, only statements after
the Else statement are executed.
Syntax: If (Logical_Test)
statements
End
Else
statements
End
The ElseIf statement provides an alternate form of the If..Else..
statement. This is useful when a series of tests need to be per-
formed. As soon as one of the tests succeeds, the statements below
the test, up to the next test (or end) are executed and control jumps
to the statement following the End.
Syntax: If (Logical_Test)
statement
ElseIf (Logical_Test)
statement
End
Make_File_List
Fill a file list value-aid that has already been attached to a param-
eter. More flexible than Param_Add_File_List. Typically used in
callback macros.
Syntax: Make_File_List File_List_Clear
value-aid path file_ext
Input: File_List_Clear (Logical): whether to clear value-aid parameter
value-aid (Sstring): value-aid name
path (Lstring): directory path where all files are lo-
cated
file_ext (Lstring): file extensions to search for,
comma separated
Returns: Number of file names added to the
value-aid.
Example: status = {Make_File_List File_List_
Clear Files . “bcl,log”}
Message_Print_Error
Display an error dialog with a message that you specify. The dia-
log has two buttons, “Done” and “Explain”. “Done” closes the
dialog. “Explain” closes the dialog and opens another dialog that
contains additional explanatory text.
Syntax: Message_Print_Error err_text explain_text
Input: err_text(Lstring): error message
explain_text(3Lstring): additional explanation
Param_Add_File_List
Attaches a value-aid to a parameter containing a list of files in the
current working directory with names ending in the specified suf-
fixes.
Syntax: Param_Add_File_List param suffixes
Input: param (Sstring): name of Lstring or Vlstring param
suffixes (Sstring): comma separated list of extensions
Example:Param_Add_File_List FileName “bcl,log”
Param_Comment
Add a line of text above a parameter in a parameter block.
Syntax: Param_Comment param comment justification
Input: param (Sstring): parameter name
comment (Sstring): text remark
justification (enumer): “Left”, “Center”, or “Right”
Param_New_Column
Start a new column in the parameter block. The specified parame-
ter is placed at the top of the next column. No check is made if too
many columns are created. We recommend that you use a maxi-
mum of four columns.
Syntax: Param_New_Column param
Input: param(Sstring): parameter name
Param_Pack
Add a double line beloe the specified parameter.
Syntax: Param_Pack param
Input: param(Sstring): parameter name
Param_Set_Style
Modify the appearance of a parameter in a parameter block. Lists
and Enumers may be displayed as popup option menus. Idents,
Lstrings and Vlstrings can be displayed as a single scrolling line.
Syntax: Param_Set_Style param style
Input: param(Sstring): parameter name
style(Sstring): PARAM_POPUP or
PARAM_HSCROLL
Errors: mismatched parameter type and style
Place_Valuator
Link a value-aid to a parameter. The Ruler and Palette are two pre-
built value-aids.
Syntax: Place_Valuator param value_aid location
Input: param (Sstring): target parameter name
value-aid (Sstring): value-aid name
location (enumer): location (side parameter block
only)
Default: normal placement
Top: top of the parameter block
Bottom: bottom of the parameter block
Preview_Command
Attach a callback to be run before the parameter block appears.
The callback is a macro with no parameters and no return value.
The callback accesses the command’s parameters with Get_ and
Setv_ statements. Note that only the last callback registered is
called.
Syntax: Preview_Command macro
Input: macro (Sstring): callback macro name
Error: command not found or it is not a BCL command
Preview_Function
Associates a callback with a parameter. The callback is called when
the parameter’s value is changed as a result of picking, focus
Print
The print statement prints an expression to the info area and text-
port. BCL will attempt to identify and print the expression in an
appropriate type.
Syntax: Print expression [expression]
Input: expression (Vlstring): variable, constant, expression
ExamplePrint “index = “ $index
Error: Invalid expression
Printf
Formatted print statement. See Write statement for Output For-
mats.
Syntax: Printf format_string expression [expression]
Input: format_string (Vlstring): user specified format string
expression (Vlstring): variable, constant, expression
Example:Printf “Index = \t%d\nlength = \t%d\n” $index $length
Error: Invalid format string, invalid expression
Prop_Exists
Determine if an Attr property is already assigned to an object.
Syntax: Prop_Exists property class object_spec
Input: property(Sstring): name of attr property
class (Enumer): Class of object that this property can
be
applied to: Atom, Monomer, or Mol
object_spec (Ident): Object to test
Returns: 1 if property set, otherwise 0
Example:If ({Prop_Exists MyMarker Mol CRN})
Prop_Register
Declare a new property. Two types of properties can be declared,
Attr and Func. An Attr property can be set and retrieved. A Func
property can only be retrieved. Func properties are registered with
an additional macro_name argument, which is executed each time
the property is requested with Prop_Get. Attr properties are main-
tained at the molecule level.
Syntax: Prop_Register type property class datatype [ macro_name]
Input: type (Enumer): Attr (r/w) or Func (ro)
property (Sstring): name of new property
class (Enumer): Class of object that this property can
be
applied to: Atom, Monomer, or Mol
datatype (Enumer): Bool, Int, Float or Str
macro_name (Sstring): name of macro that will be called
(if this is a Func property)
Returns: 1 if created successfully or if it is already registered the same
way
otherwise 0
Prop_Remove
Remove a user defined property from Insight II. Free all memory
used by an Attr property.
Syntax: Prop_Remove property class
Input: property (Sstring): name of new property
class (Enumer): Class of object that this property can
be
applied to: Atom, Monomer, or Mol
Returns: 1 on success, otherwise 0
Errors: system property, does not exist
Example:Prop_Remove Marker Base_Object
Read
Reads data from a specified file and assigns the data to variables.
Syntax: Read file_name format_string var [var]
Input: file_name (Vlstring): data file read
format_string (Vlstring): user specified format string
var (Sstring): variable to store value
Returns 1: successfully executed
0: execution failed, or beyond end of
file
Example:Read /usr/tmp/input.dat “%d %f” $index $length
Error: Invalid format_string, unable to open user file_name
Remove_Enum
Clears all entries from an Llist or Enumer parameter.
ONLY AVAILABLE IN CALLBACKS.
Syntax: Remove_Enum param
Input: param(Sstring): parameter name
Error: param is not an enumerated or list type
Return
Exit a macro before End_Macro. Required in function macros to
send a value back to calling macro; the argument must match the
return type declared in the Define_Macro statement.
Syntax: Return [expression]
Examples:Return # no return value
Return $center # return variable center
Return ($x+$y) # return an expression
Run_Bkgd_Job
Launch a background job.
Syntax: Run_Bkgd_Job job pathname file_of_files args
Input: job(Sstring): A unique name for the job that is
used in the commands in the Background_Job pulldown.
pathname (Lstring): The program to be run. If the direc-
tory where the program exists is in your PATH environment
variable, then you do not need to specify the directory path to the
program. Otherwise, this path specification is needed.
file_of_files (Lstring): The pathname of a file containing a
list of files needed by the background job. Each filename should
be listed on a separate line. Only needed if running on a remote
host, otherwise, specify “None”.
args (up to 30 Lstring’s): Background job command argument
list.
Returns: zero on error
Screen_Update
Sets graphics refresh policy. By default, the graphics are only
updated when a macro completes. If Screen_Update is enabled,
refreshes take place during execution. Policy remains in effect
until reset with another Screen_Update.
Syntax: Screen_Update display_mode
Input: display_mode: (logical) ON/OFF
ON: refresh after each statement
OFF: refresh at end of macro (default)
Setv_Focus
Shift keyboard input focus to a parameter from a callback.
ONLY AVAILABLE IN CALLBACKS.
Syntax: Setv_Focus paramindex
Input: param (Sstring): parameter name
index (int): Offset (1, 2, or 3) for coord parame-
ters
(0 for other types)
Setv_Precision
Set number of places shown after decimal in float parameter.
ONLY AVAILABLE IN CALLBACKS.
Syntax: Setv_Precision param places
Input: param (Sstring): parameter name
place (int): number of places after the decimal
point
Setv_Trigger
Make a parameter the trigger. When the trigger is filled by a pick,
value-aid or explicit “Enter”, the command executes. See the Trig-
ger statement.
ONLY AVAILABLE IN CALLBACKS.
Syntax: Setv_Trigger param
Input: param (Sstring): parameter name
Set_Param_Pick
Add a picking function and related value-aid to parameters. The
picking functions enable the parameters to be filled in with the
specification of the object the user picks from the screen with the
mouse. The value-aids permit selecting from a list of objects.
Syntax: Set_Param_Pick Param Template [Screen_Only Object]
Input: Param (Sstring): parameter name of appropriate
type
Template (Sstring): see Picking Templates below
Object (Sstring): see Picking Object below
Set_Rand
Seed the rand() Intrinsic Function random number generator. If
set_rand is not called before calling rand (), set_rand will be called
automatically with default value of 1 as the seed.
Syntax: Set_Rand starting_seed
Input: starting_seed (int): random generator seed
Error: Invalid starting_seed
Set_Random
Seed the random() Intrinsic Function random number generator. If
set_random is not called before calling random (), set_random will
be called automatically with default value of 1 as the seed.
Syntax: Set_Random starting_seed
Input: starting_seed (int): random generator seed
Error: Invalid starting_seed
Set_SideBlock
If set to off, display parameter block in multiple columns.
Syntax: Set_Sideblock state
Input: state (Logical):
ON: single column (default)
OFF: multi-column
Set_Slider
Determine the range of a slider value-aid. The start and stop values
are floating point and may be positive or negative.
Syntax: Set_Slider valuator_name start stop
Input: valuator_name (Sstring): valuator name
start (float): valuator staring point
stop (float): valuator ending point
Example:Set_Slider Ruler -50.0 50.0
Size_List
Set the number of rows displayed in an Llist parameter. The
default is 7. The allowable range is from 3 to 50.
Syntax: Size_List param rows
Input: param(Sstring): Llist parameter name
rows(int): Number of visible entries
Example:Size_List list_param 4
Switch
Conditionally execute code by matching a variable with a case.
The switch statement has a matching End statement. Cases can be
numeric or alpha-numeric, but must match the type of the Switch
variable. Each Case statement has a matching Breaksw statement.
An optional Default case may be specified.
Syntax: Switch $variable
Case 1:
statements
Breaksw
Case 2:
statements
Breaksw
Default:
statements
Breaksw
End
System_Fetch_Assy
Returns an array of assemblies satisfying the specification argu-
ment.
Syntax: System_Fetch_Assy object_spec
Input: object_spec (Ident): object specification for assemblies.
Returns: Array of assemblies or NULL.
System_Fetch_Atom
Returns an array of atoms satisfying the specification argument.
Syntax: System_Fetch_Atom object_spec
Input: object_spec (Ident): object specification for the atoms.
Returns: Array of atoms or NULL
System_Fetch_Mol
Returns an array of molecules satisfying the specification argu-
ment.
Syntax: System_Fetch_Mol object_spec
Input: object_spec (Ident): object specification for molecules.
Returns: Array of molecules or NULL.
System_Fetch_Mono
Returns an array of monomers satisfying the specification argu-
ment.
Syntax: System_Fetch_Mono object_spec
Input: object_spec (Ident): object specification for monomers.
Returns: Array of monomers or NULL.
System_Fetch_Object
Returns an array of objects satisfying the specification argument
Syntax: System_Fetch_Object object_spec
Input: object_spec (Ident): object specification.
System_Fetch_Sketch
Returns an array of 2-D molecules satisfying the specification
argument.
Syntax: System_Fetch_Sketch object_spec
Input: object_spec (Ident): object specification for 2D mole-
cules.
Returns: Array of 2D molecules or NULL.
Test_Boolean
Convenience function for retrieving the state of a logical parame-
ter from a callback macro.
ONLY AVAILABLE IN CALLBACKS.
Syntax: Test_Boolean param
Input: param(Sstring): logical parameter name
Value: result (int): 1 if ON, else 0
Example:If ({Test_Boolean Set_Color})
Error: param is not a logical type
Test_Enum
Convenience function for comparing an Enumer parameter with a
value from a callback macro.
ONLY AVAILABLE IN CALLBACKS.
Syntax: Test_Enum param value
Input: param (Sstring): enumer parameter name
value (Sstring): parameter value
Value: result (int): 1 if equal, else 0
Example:If ({Test_Enum File_Type “PDB”})
Error: param is not an enumerated type
value does not occur in param
Textport
Raise the textport window in the window stack, making it visible.
Useful if you are printing multiple lines of output to the textport.
Syntax: Textport display_status
Input: display_status (boolean): ON / OFF
ON: pop the textport
OFF: push the textport (default)
Trigger
Make a parameter the trigger. When the trigger is filled by a pick,
value_aid or explicit “Enter”, the command executes. If no explicit
trigger is set for a macro, the last parameter is the trigger.
Syntax: Trigger param
Input: param (Sstring): parameter name
Example:Trigger index # set parameter <index> as the trigger
Trigger ”” # remove trigger parameter
While
Loop until a logical test fails. The While statement has a matching
End statement.
Syntax: While (Logical_Test)
statements
End
Write
Formatted write to a text file If the file is not open, Write attempts
to open the file. If the file exists, Write appends to the file. If the
file does not exist, it will be created.
Both the format string and expression may contain the following
escape characters:
\n newline
\t tab
\\ literal backslash
\” literal quote
Param_Add_File_List 344
Param_Comment 344
Param_New_Column 344
Param_Pack 344
Param_Set_Style 345
Place_Valuator 345
Preview_Command 345
Preview_Function 345
Print 346
Printf 346
Prop_Exists 346
Prop_Get_Arr_Bool, Prop_Get_Arr_Int, Prop_Get_
Arr_Float, Prop_Get_Arr_Str 347
Prop_Get_Bool, Prop_Get_Int, Prop_Get_Float,
Prop_Get_Str 347
Prop_Register 348
Prop_Remove 349
Prop_Set_Bool, Prop_Set_Int, Prop_Set_Float, Prop_
Set_Str 349
Read 350
Remove_Enum 351
Return 351
Run_Bkgd_Job 351
Screen_Update 352
Setv_Boolean, Setv_Integer, Setv_Coord, Setv_Real,
Setv_Sstring, Setv_Lstring, Setv_Vlstring, Setv_Ident,
Setv_Enum 352
Setv_Focus 352
Setv_Precision 353
Setv_Trigger 353
• Contour
• Inplot
In the following descriptions, the Purpose section is a brief
description of the function and applications for each utility. The
Syntax section describes how to use the utility. Examples demon-
strate correct usage. Finally, background and incidental informa-
tion about each utility is included in a Notes section.
Note that these utilities do not appear on the menus within the
Insight II program. Utilities must be invoked at the UNIX operat-
ing system prompt.
Contour
Purpose
The Contour utility allows you to contour two- or
three-dimensional grid data, such as electron density. It
requires an input file of data to be contoured and
produces an output file of contours, using linear
interpolation, that can be displayed by Insight II.
When the Contour utility is run, you specify the name
of the output file first, since information about the input
file is stored in a header record within the output file to
enforce consistent use of existing contour data. This
frees you from repeating setup information when
appending to an existing output file.
Syntax
contour [outputfilename [inputfilename]]
inputfilename Specifies a file containing
values at each of the points
in the grid. The values may
be entered with either x or
y as the fastest-varying co-
ordinate. It may also con-
tain other parameters
which are necessary to
align the contours with the
reference molecule. If the
necessary alignment pa-
rameters are not present in
the file, the Contour utility
attempts to compute them
if possible from the data
present within the file. If
this is not possible, you are
prompted for the neces-
sary parameters interac-
tively. The formats for the
INPUT FILES
There are essentially five types of input files, three
formatted and two unformatted (binary). Unformatted
files require less disk storage and can be read in
Formatted Files
The formatted files are either a standard grid file or a
torsion file. The first line in a formatted file is a title
or comment containing any combination of characters.
All lines in a .grd file must not exceed 132 characters.
1. Standard Formatted File
The standard grid file consists of five lines of pa-
rameters which precede the actual data. The first
line is the title as described above. The second line
is a format specifier (in FORTRAN style), en-
closed in parentheses. This line must begin in col-
umn 1, and specify the number of values on a line
in the file as well as the format of those values. An
implicit single field causes errors. A single field
must include the number 1. For example,
(1F10.6).
The third line specifies the unit cell parameters as-
sociated with the grid: the cell lengths a, b, and c
followed by the cell angles alpha, beta, and gam-
ma. These six values must be floating-point num-
bers, separated by spaces (no commas). If the grid
is not in the context of the molecule’s unit cell, a,
b, and c may be thought of as the distance the grid
spans in each direction, x, y, and z. For example,
if the grid spans the space from -20 to +10 in x,
then a is entered as 30.0. Alpha, beta, and gamma
are entered as 90.0 90.0 90.0.
The fourth line specifies the number of x, y, and z
intervals which are actually contained in the file.
Note that the width of an interval in x must be
Unformatted Files
Unformatted files are produced using the FORTRAN
write statement with only the logical unit specified.
1. Standard Unformatted
The standard unformatted file contains 2 lines of
parameters which precede the actual data. The first
line is a title or comment which may be up to 132
characters in length. The data may be 2- or 4-byte
integer, or 4-byte floating-point (single precision).
Each record in the file must contain all of the x val-
ues for a given y, or all of the y values for a given
x.
The second line contains the parameters necessary
for reading the file and for positioning the map rel-
ative to the molecule. The first three entries on this
line describe the contents of the file. The first entry
is a 4-byte integer. Set to 0, it specifies that x is the
fastest-varying coordinate, while set to 1 it speci-
fies that y is the fastest. The second entry is a 4-
byte integer giving the size of the data in bytes. Its
valid values are 2 or 4. The third entry is also an
integer. Set to 0 it specifies that the data is float-
ing-point, while set to 1 it specifies that the data is
integer.
The next twelve entries are 4-byte floating-point.
The first three are the cell lengths. If the cell
lengths do not correspond to the molecule’s unit
cell, then the cell lengths may be thought of as the
distance the grid spans in x, y, and z. Following the
three cell lengths are the three cell angles. The
next six entries are the fractional starting and end-
ing positions for x, y, and z. The fractional coordi-
EXAMPLE SESSION
This example uses a Discover rotors file named
acetyl.tor. Prompts provided by the utility are in
regular type; required responses are in boldface type:
> contour
Inplot
Purpose
This procedure creates various device-specific
command files from the intermediate plot file (.ipf)
created by Insight II (using the Export_Plot
command, in the File pulldown). To use this utility,
call the Inplot utility from either outside Insight II or
by using the Unix command.
Syntax
inplot device filename [portrait/landscape]
[scale value]
[color/gray]
[pen pen# [pen#...]/only
pen#]
[linewidth value]
[output filename]
[banner]
Examples
> inplot hpgl figure1 scale .75
Notes
x y
1 8 7 8 8
A B C D E
The first record after the begin character data control card contains
string length, font, and point size data encoded as follows:
x y
8 8 16
A B C
The format of files that are used by more than a single Insight II
product are documented separately in the Insight II Products Com-
mon File Formats documentation.
PDB Organization
name. Each such subdirectory contains all PDB files having those
two characters as the middle two of their four-character PDB iden-
tifiers. For example, the PDB entry 1crn can be found in the file
distr/cr/pdb1crn.ent.
> cd $INSIGHT_PDB
3. Put the first Brookhaven CD into the CDROM drive. Copy the
files under the distr subdirectory onto the hard disk:
Note that this can also be done from within Insight II as well
through the Session/Env_Var command.
The -r (recursive) option used with the cp and gzip commands in
this example causes those commands to operate recursively on the
specified directory and all files and subdirectories within them.
These commands may take minutes or tens of minutes, depending
on the speed of your hardware, when used on thousands of PDB
files.
The gzip program is recommended for compression of PDB files
because of its superior compression algorithm and because it can
recursively compress all files in a directory tree with a single com-
mand. It compresses PDB files by a factor of about 3.8 on average.
See Appendix 9, Using Compressed Files for instructions on how to
obtain gzip.
If you do not have the gzip program, you can compress your PDB
files with the standard UNIX compress command. Unfortunately
created files are read in when you start up Insight II from this local
directory.
If you would like to update the 98.0 release tree with these new
files, you need to copy them to the release tree. To do this, type:
and so forth for each file. Note that you need to have write permis-
sion in the $BIOSYM/data/insight directory. Check with your sys-
tem administrator if you do not.
Should you wish to regenerate only one specific file out of the four,
you can do so by giving the -f argument to the script, as in:
We have generated this file for you and installed it in the $BIO-
SYM/data/biopolymer directory of the current release distribu-
tion tree. This file was calculated from a subset of files in the April
1998 release of the PDB. The list of files used is in the file $BIO-
SYM/data/biopolymer/pdb_entry.dat. This list of entries is a
subset of the representative selection of PDB files created by
Hobohm and Sander (see Using a Representative Selection of PDB
Files on page C–396). It comprises all files in the “25% list”, from
Hobohm and Sander’s June 1998 version of their representative
selection. To use the loop search commands with this database,
you need to make sure that all of the PDB files listed in $BIOSYM/
data/biopolymer/pdb_entry.dat are accessible within or beneath
the directory pointed to by the environment variable INSIGHT_
PDB, as explained in Installing the PDB for use with Insight II Soft-
ware on page C–396.
You can skip the remainder of this section if you do not wish to
replace the database of alpha carbon distance matrices that we
have supplied.
If you wish to regenerate pdb_ca_distance.dat using a different list
of PDB entries, here are the steps to follow:
1. Create a selected list of high-resolution PDB files.
Create a text file containing the list of entries that you wish to
use for protein loop searches. A sample file resides in $BIO-
SYM/data/biopolymer/pdb_entry.dat. It simply lists the
names of the PDB files, one filename per line. If you wish, you
can list only the four-character PDB identifiers instead of the
complete filenames.
2. Make sure your PDB files are accessible to pdb_find_distance.
The program pdb_find_distance creates the distance matrix
file, and it requires that all the PDB files to be used for loop
searching be accessible within or beneath the directory pointed
to by the environment variable INSIGHT_PDB, as explained in
Installing PDB Files on page C–396.
3. At the UNIX prompt, run the pdb_find_distance utility pro-
gram by typing:
The links remain on your hard disk even if you remove the CD
from the CDROM drive. If you try to read a PDB file when the CD
is not in the drive, Insight II gives you an error message indicating
that it cannot open the file. When you put the CD back in, the files
are again readable.
If you have enough disk space, you can also use this command to
copy the files themselves onto your hard disk, rather than making
links. This is useful if you want to copy the first two CDs and make
links to the third. To do this you must specify the option -copy on
the command line. The full procedure to copy two CDs and link
the third is:
1. cd to the directory that will contain your PDB files and links.
This is the directory that your environment variable INSIGHT_
PDB points to.
2. Put the first Brookhaven CD into the CDROM drive.
3. Type this command at the UNIX command prompt:
If you do not have enough space on your hard disk to copy the files
from the first two CDs, use the same procedure described above
but omit the -copy options from the first two link_pdb command
lines. You then have links for all the PDB files pointing to the
CDROM drive. Since only one CD can be in the CDROM drive at
any one time, those files on the other two CDs appear to be present
but are unreadable. If you try to access one of them via Molecule/
Get, Insight II gives you an error message indicating that the file
cannot be read. You must then change CDs and try to read the file
again. This approach may require frequent changing of the CDs,
and is therefore inconvenient, but it does give you access to all of
the latest PDB files. Note that if you set up your PDB directory in
this way, you cannot run the pdb_find_distance utility, unless all
of the files in pdb_entry.dat are first copied into your INSIGHT_
PDB directory (see Setting Up and Using the Protein Loop Search
Commands on page C–402).
Link_pdb can also be used to update your links or copies each time
you get a new release of the PDB. To do this, just run link_pdb in
the directory that contains your old links or copies. Link_pdb
always replaces old copies with new ones. It replaces an old link
with a new one only if the old link does not point to a valid loca-
tion in the new PDB release. If an old link points to a file that has
become obsolete (and therefore is not present in the latest PDB
release), link_pdb does not delete the old link. Obsolete files there-
fore appear to be present but are unreadable. To be sure to elimi-
nate these obsolete links, you must first delete all of your old links
before creating new ones for your new PDB release. The easiest
way to do this is to delete your PDB directory and its contents with
the recursive remove command:
> rm -r pdb_directory
You must then recreate your pdb directory, cd into it, and run link_
pdb to create the new links. Be sure the environment variable
INSIGHT_PDB points to the directory containing the links.
Note that when you add to this file, you may use
any of the defined
Insightdescriptors
II/Marchto2000
identify a new
409
fragment. Note also that the relative ordering of
the entries for each class of fragment determines
D. Fragment Definitions
* H* * O*
2.5
* H* * S*
2.5
* N* * O*
3.0
* N* * S*
3.7
* O* * O*
3.0
Note that these follow standard naming conventions, with the exceptions that:
21 becomes 21
and:
1 becomes 1b
1 (P 1) 2)
2 (P 1b) 24 (I 21
3 (P 2) 21 21)
4 (P 21) 25 (P m m
5 (C 2) 2)
6 (P m) 26 (P m c
7 (P c) 21)
8 (C m) 27 (P c c
9 (C c) 2)
10 (P 2/m) 28 (P m a
11 (P 21/ 2)
m) 29 (P c a
12 (C 2/m) 21)
13 (P 2/c) 30 (P n c
14 (P 21/ 2)
c) 31 (P m n
15 (C 2/c) 21)
16 (P 2 2 32 (P b a
2) 2)
17 (P 2 2 33 (P n a
21) 21)
18 (P 21 34 (P n n
21 2) 2)
19 (P 21 35 (C m m
21 21) 2)
20 (C 2 2 36 (C m c
21) 21)
21 (C 2 2 37 (C c c
2) Insight II/March 2000
2) 419
22 (F 2 2 38 (A m m
2) 2)
F. Space Group Names
2) n m a)
40 (A 63 (C m c
m a 2) 64 (C m c
41 (A 65 (C m m
b a 2) 66 (C c c
42 (F 67 (C m m
m m 2) 68 (C c c
43 (F 69 (F m m
d d 2) 70 (F d d
44 (I 71 (I m m
m m 2) 72 (I b a
45 (I 73 (I b c
b a 2) 74 (I m m
46 (I 75 (P 4)
m a 2) 76 (P 41)
47 (P 77 (P 42)
m m m) 78 (P 43)
48 (P 79 (I 4)
n n n) 80 (I 41)
49 (P 81 (P 4b)
c c m) 82 (I 4b)
50 (P 83 (P 4/m
b a n) 84 (P 42/
51 (P 85 (P 4/n
m m a) 86 (P 42/
52 (P 87 (I 4/m
n n a) 88 (I 41/
53 (P 89 (P 4 2
m n a) 90 (P 4 2
54 (P 91 (P 41
c c a) 92 (P 41
55 (P 93 (P 42
b a m) 94 (P 42
56 (P 95 (P 43
c c n) 96 (P 43
57 (P 97 (I 4 2
b c m) 98 (I 41
58 (P 99 (P 4 m
n n m) 100 (P 4 b
59 (P 101 (P 42
m m n) 102 (P 42
420 Insight II/March 2000 60 (P 103 (P 4 c
b c n) 104 (P 4 n
61 (P 105 (P 42
108 (I 4 c m) 156
109 (I 41 m d) (P 3 m
110 (I 41 c d) 1)
111 (P 4b 2 m) 157
112 (P 4b 2 c) (P 3 1
113 (P 4b 21 m) m)
114 (P 4b 21 c) 158
115 (P 4b m 2) (P 3 c
116 (P 4b c 2) 1)
117 (P 4b b 2) 159
118 (P 4b n 2) (P 3 1
119 (I 4b m 2) c)
120 (I 4b c 2) 160
121 (I 4b 2 m) (R 3
122 (I 4b 2 d) m)
123 (P 4/m m m) 161
124 (P 4/m c c) (R 3
125 (P 4/n b m) c)
126 (P 4/n n c) 162
127 (P 4/m b m) (P 3b
128 (P 4/m n c) 1 m)
129 (P 4/n m m) 163
130 (P 4/n c c) (P 3b
131 (P 42/m m c) 1 c)
132 (P 42/m c m) 164
133 (P 42/n b c) (P 3b
134 (P 42/n n m) m 1)
135 (P 42/m b c) 165
136 (P 42/m n m) (P 3b
137 (P 42/n m c) c 1)
138 (P 42/n c m) 166
139 (I 4/m m m) (R 3b
140 (I 4/m c m) m)
141 (I 41/a m d) 167
142 (I 41/a c d) (R 3b
143 (P 3) c)
144 (P 31) 168
145 (P 32) (P 6)
146 (R 3) 169
147 (P 3b) (P 61)
148 (R 3b) 170
149 (P 3 1 2) (P 65)
150 (P 3 2 1) 171
151 (P 31 1 2) Insight II/March 2000 (P
42162)
152 (P 31 2 1) 172
F. Space Group Names
174 (P 6b)
175 (P 6/m)
176 (P 63/m)
177 (P 6 2 2)
178 (P 61 2 2)
179 (P 65 2 2)
180 (P 62 2 2)
181 (P 64 2 2)
182 (P 63 2 2)
183 (P 6 m m)
184 (P 6 c c)
185 (P 63 c m)
186 (P 63 m c)
187 (P 6b m 2)
188 (P 6b c 2)
189 (P 6b 2 m)
190 (P 6b 2 c)
191 (P 6/m m m)
192 (P 6/m c c)
193 (P 63/m c m)
194 (P 63/m m c)
195 (P 2 3)
196 (F 2 3)
197 (I 2 3)
198 (P 21 3)
199 (I 21 3)
200 (P m 3b)
201 (P n 3b)
202 (F m 3b)
203 (F d 3b)
204 (I m 3b)
205 (P a 3b)
206 (I a 3b)
207 (P 4 3 2)
208 (P 42 3 2)
209 (F 4 3 2)
210 (F 41 3 2)
211 (I 4 3 2)
212 (P 43 3 2)
213 (P 41 3 2)
214 (I 41 3 2)
215 (P 4b 3 m)
216 (F 4b 3 m)
Example:
The template (>C (=O) (-O(-H)) (-*)) describes the
carbon in the following group:
anything
/
O=C
\
O-H
The closing parenthesis for an atom does not indicate
that there may not be any more bonds out of the atom,
only that no further specific bonds are required for a
match. Thus the template (>N) matches any nitrogen,
no matter what its bonded neighbors are.
Brackets around an atom are used when you wish to
indicate that the connectivity must match the template
exactly. Thus the template [>Ca] can be used for ionic
calcium, and will not match a calcium with atoms
bonded to it. When an atom with substructures is
bracketed, it is only that atom, not all the substructures,
which is limited in its connectivity.
Example:
The template (>C[:N(-*)]) matches a carbon in the
following groups:
H
C N
H
C H
C N
H
but not:
H
C N
H
Note that for the matching to work correctly the
subtrees at any level must be ordered from most
specific to most general. This prevents an atom that is
necessary for a specific subtree match from being
incorrectly paired with an earlier wildcard.
Example:
(-N(-H)(-C)) before (-N(-H)(-*)) before (-N) before (-
*)
Atom Tests
Atom tests are used to refine the matching criteria by
placing further restrictions on the atoms being
matched. Each test refers to an atom in the template,
using the order in which it appears in the template. The
atom tests are of the following form:
atom_test:x
.
.
tests
.
.
end_test
Element Test
The element test allows you to specify which elements
are permitted or not permitted at this location in the
template. Using element tests only makes sense for
template atoms of the wildcard (*) type. It has two
forms:
allowed_atoms: ..list..
and
disallowed_atoms: ..list..
In both cases, the list is a list of atomic symbols (i.e., C,
Si, Br, H) separated by commas indicating which
elements are allowed or disallowed.
Hybridization Test
The hybridization test allows you to specify what
hybridization state(s) an atom may have and still match
the atom in the template. The form is:
hybridization: ..list..
where the list is a comma-separated list of
hybridization types from among sp, sp2, sp3.
Aromaticity Test
This test allows specification of whether the atom is to
be aromatic or not. Its form is:
aromaticity: aromatic
or:
aromaticity: non_aromatic
Ring Test
The ring test allows you specify ring size and ring
geometry requirements for the atom. Either the size or
geometry requirement can be wildcarded to indicate
that that property of the ring is not constrained. The
form of the ring test is:
ring: geometry(size)
where geometry is planar, non_planar, or *. The size is
an integer or the wildcard *.
Precedence Tree
The precedence tree is used to indicate which potential
types have priority over others in the case of multiple
template matches for a given atom. It is specified using
the same nested parenthetical style as the templates. To
properly resolve the precedence between a number of
matches there must be a path down from the root of the
tree (? in the example below) which contains all the
matches. The final potential type in this path will have
the highest precedence and be assigned. For example,
in the tree below there is a path that contains the
following set of matches: '', c', c=, and so an atom
matching these three types would be assigned c=.
However, if c1 were also matched for that atom, no
single path could contain the whole set of matches and
Insight II would report an error about being unable to
resolve the precedence. Notice that the path containing
the matches does not have to go all the way to the
lowest level of the tree, it must simply be a continuous
path starting at the root and containing all the matches.
The simple precedence tree (?(h?(hc))(c?(c1(c2))(c=)))
represents the following precedence relationships:
?
/ \
h? c? Increasi
Priority
/ / \
hc c= c1
\ \
c2
Note that the ordering of the subtrees is unim
It is the order as you descend down a path in
that defines the precedence. Thus the simpl
(?(Br)(br)(Si)) and (?(Si)(br)(Br)) are equiv
and indicate the same precedence for Br, br
However, the tree (?(Br(br))(Si)) indicates th
potential takes precedence over Br if both a
matched.
The format of the precedence tree section is
precedence:
.
.
tree
.
.
end_precedence
The actual tree can be broken into multiple li
punctuated with spaces and comments for
readability.
type: hc
template: (>H(-C))
! Matches a hydrogen single bonded to a car-
bon. No
! restriction on what may be bonded to the
carbon.
end_type
type: h*
template: (>H[-O(-H)])
! Matches a hydrogen single bonded to an ox-
ygen which
! in turn has a hydrogen bonded to it. The
brackets
! around the OH prevent matches in the un-
likely
! situation of a charged oxygen which hap-
pens to have
! two hydrogens. With the brackets present
the oxygen
! must have only the bonds specified.
end_type
type: c
template: (>C)
atom_test: 1
hybridization: sp3
end_test
! The template matches any carbon. The atom
test is
! applied to atom 1 (in this case the only atom)
of
! the template string and restricts the match to
only
! sp3 carbons.
end_type
type: c2
template: (>C(-H)(-H)(-*)(-*))
type: c=
template: (>C(=*))
atom_test: 1
aromaticity: NON_AROMATIC
hybridization: sp2
end_test
! The template will match any carbon with a
double bond.
! To prevent matches to carbons in aromatic
rings there
! is an aromaticity test on the first atom of the
template (the
! carbon). The hybridization test somewhat
redundantly specifies
! that the carbon must be SP2.
end_type
type: o
template: (>O)
! Matches any oxygen
end_type
type: ?
template: (>*)
! Matches anything
end_type
The precedence tree for this small set of parameters
would be:
precedence:
(? (h(hc)(h*)) (c(c2)) (c=) (o) )
end_precedence
Graphically this looks like:
____?____
/ / \ \
h c c= o
/ \ |
hc h* c2
C=O aldehyde
// \\
C C benzene
\ /
C===C
type: cp
template: (>C)
atom_test: 1
hybridization: sp2
end_test
end_type
/ / \ \ \
h c c= o cp
/ \ |
hc h* c2
/ / \ \
h c cp o
/ \ | |
hc h* c2 c=
cvff_templates.dat
The following is a sample potential type template file
that does potential type assignment for the cvff.frc
library.
! cvff_templates.dat
! Template file of potential type assignment tem-
plates for the cvff
! forcefield
!
! Revision History:
! KWC 6/5/90 Initial version without ci and
ni types
! DWS 8/13/90 Fixes for beta bugs, addition
of ci,ni
! KWC 8/16/90 added o- templates for carbox-
ylate oxygens,
! changed precedence for Cl/cl
since brackets
! now work correctly for first
atom in template
! KWC 8/16/90 Fixed the error introduced into
the o-
! template covering O:*:O
type: ?
! anything
template: (>*)
end_type
type:h
! hydrogen bonded to carbon
template: (>H (-*) )
atom_test:2
allowed_elements:C,Si,H
end_test
end_type
type:hn
! hydrogen bonded to nitrogen
template: (>H(-N))
end_type
type:ho
! hydrogen bonded to oxygen
template: (>H(-O))
end_type
type:hp
! hydrogen bonded to phosphorous
template: (>H(-P))
end_type
type:hs
! hydrogen bonded to sulfur
template: (>H(-S))
end_type
type:h*
! hydrogen in water
template: (>H(-O(-H)))
end_type
type: lp
!lone pair
template: (>L (-*))
end_type
type:c
! generic SP3 carbon
template: (>C)
atom_test:1
hybridization:sp3
end_test
end_type
type: c=
! non aromatic double bonded carbon
template: (>C(=*))
atom_test:1
aromaticity:NON_AROMATIC
end_test
end_type
type:c'
! carbonyl (c=O) group
template (>C(=*))
atom_test: 2
allowed_elements: O,S
end_test
end_type
type:c'
! carbonyl (c:O) group
template (>C(:*)(~*)(~*))
atom_test: 2
allowed_elements: O,S
end_test
end_type
type:cp
! SP2 aromatic carbon
template:(>C)
atom_test:1
hybridization: SP2
aromaticity:AROMATIC
end_test
end_type
type:cp
type: c5
! SP2 aromatic in 5 membered ring
template:(>C)
atom_test: 1
hybridization: SP2
aromaticity:AROMATIC
ring:PLANAR(5)
end_test
end_type
type: cs
! SP2 aromatic in 5 membered ring next to S
template:(>C(-S))
atom_test: 1
hybridization: SP2
aromaticity:AROMATIC
ring:PLANAR(5)
end_test
atom_test: 2
hybridization: SP2
aromaticity:AROMATIC
ring:PLANAR(5)
end_test
end_type
type: cr
! c in guanidinium group
template: (>C (=N(-*)) (-N(-H)(-H)) (-N(-H)(-H)) )
end_type
type: c-
! c in charged carboxylate
template: (>C(:O)(:O))
end_type
type: c-
! c in charged carboxylate
! How do we indicate that the second O has nothing
bonded to it ?
! what makes it not match COOH ?
template: (>C(=O)[-O])
end_type
type: c1
! sp3 carbon with 1 h 3 heavies
template: (>C(-H)(-*)(-*)(-*))
atom_test:3
disallowed_elements:H
end_test
atom_test:4
disallowed_elements:H
end_test
atom_test:5
disallowed_elements:H
end_test
end_type
type: ca
! template: (>C(-H)(-C[~O])(-C)(-N(-H)))
template: (>C(-N(-*))(-C[~O])(~*)(~*))
end_type
type:c2
! sp3 carbon with 2 H's, 2 Heavy's
template:(>C(-H)(-H)(-*)(-*))
atom_test:4
disallowed_elements:H
end_test
atom_test:5
disallowed_elements:H
end_test
end_type
type: cg
template: (>C(-H)(-H)(-C[~O])(-N(-H)))
end_type
type: c3
type: ct
! sp nitrogen involved in a triple bond
template: (>C(#*))
end_type
type: n
! Billed as sp2 with 1 H but seems to be used for
sp2 with no H's as
! well in proline
template: (>N(-*))
atom_test:1
aromaticity: non_aromatic
hybridization:SP2
end_test
end_type
type: n1
!sp2 nitrogen in charged arginine
template: (>N(-C)(=C)(-H))
atom_test:1
hybridization:SP2
end_test
end_type
type: n2
!sp2 nittrogen with two hydrogens
template: (>N(-H)(-H))
atom_test:1
aromaticity: non_aromatic
hybridization:SP2
end_test
end_type
type: np
!sp2 sp2 aromatic
template: (>N)
atom_test:1
aromaticity:aromatic
hybridization:SP2
end_test
end_type
type: np
type: np
!
template: (>N(=O)(-O))
atom_test:1
aromaticity:non_aromatic
hybridization:SP2
end_test
end_type
type: n3
! sp3 nitrogen with 3 substituants
template: (>N(-*)(-*)(-*))
atom_test:1
hybridization:SP3
end_test
end_type
type: n4
! sp3 nitrogen with 4 substituants
template: (>N(-*)(-*)(-*)(-*))
atom_test:1
hybridization:SP3
end_test
end_type
type:n=
! sp2 nitrogen involved ina double bond (non-aro-
matic)
template:(>N(=*))
atom_test:1
aromaticity:NON_AROMATIC
hybridization:SP2
end_test
end_type
type:nt
! sp nitrogen involved in a triple bond
template:(>N(#*))
end_type
type:nz
! sp nitrogen in N2
template:[>N[#N]]
end_type
type: ni
! Nitrogen in charged imidazole ring
template:[>N(=C(-N(-C(=C))))(-H)(-C)]
atom_test:1
ring:PLANAR(5)
end_test
atom_test:2
ring:PLANAR(5)
end_test
atom_test:3
ring:PLANAR(5)
end_test
atom_test:4
ring:PLANAR(5)
end_test
atom_test:5
ring:PLANAR(5)
end_test
atom_test:7
ring:PLANAR(5)
end_test
end_type
type: ni
! Nitrogen in charged imidazole ring
template:(>N(-C(=C(-N(=C)(-H))))(-C)(-*))
atom_test:1
ring:PLANAR(5)
end_test
atom_test:2
ring:PLANAR(5)
end_test
atom_test:3
ring:PLANAR(5)
end_test
atom_test:4
ring:PLANAR(5)
end_test
atom_test:5
ring:PLANAR(5)
end_test
atom_test:7
ring:PLANAR(5)
end_test
end_type
type: ci
type: ci
! Carbon in charged imidazole ring
template:(>C(-N(-C(=N(-H)(-C)))))
atom_test:1
ring:PLANAR(5)
end_test
atom_test:2
ring:PLANAR(5)
end_test
atom_test:3
ring:PLANAR(5)
end_test
atom_test:4
ring:PLANAR(5)
end_test
atom_test:6
ring:PLANAR(5)
end_test
end_type
type: ci
! Carbon in charged imidazole ring
template:(>C(=C(-N(-C(=N(-C)(-H))))))
atom_test:1
ring:PLANAR(5)
end_test
atom_test:2
ring:PLANAR(5)
end_test
atom_test:3
ring:PLANAR(5)
end_test
atom_test:4
ring:PLANAR(5)
end_test
atom_test:5
ring:PLANAR(5)
end_test
atom_test:6
ring:PLANAR(5)
end_test
end_type
type:o
! generic oxygen
template (>O)
! SP3 test removed by DWS 11/27/90
! atom_test:1
! hybridization:SP3
! end_test
end_type
type: o'
! oxygen in carbonyl group
template: (>O(=*))
atom_test:2
allowed_elements: N,C,S
end_test
end_type
type: o'
! oxygen in carbonyl group
template: [>O(:*(:*))]
atom_test:3
disallowed_elements: O
end_test
end_type
type: o-
! partial double oxygen bonded to something then
bonded to
! another partial double oxygen
template: [>O(:*[:O](-*))]
end_type
type: o-
! double bonded oxygen in charged carboxylate COO-
template: [>O(=C[-O](-*))]
end_type
type: o-
type: o-
! single bonded oxygen in incorrecly bond ordered
charged carboxylate COO-
! NOTE: the carbon will be flagged as having
unfilled valences
template: [>O[-C[-O](-*)]]
end_type
type: o-
! single bonded oxygen in incorrect nitro group
template: (>O(-N(=O)))
end_type
type: o-
! double bonded oxygen in incorrect nitro group
template: (>O(=N(-O)))
atom_test:1
hybridization:SP2
end_test
end_type
type oh
! oxygen bonded to hydrogen
template: (>O(-H)(-*))
end_type
type: op
! SP2 aromatic in 5 membered ring
template:(>O)
atom_test: 1
hybridization: SP2
aromaticity:AROMATIC
ring:PLANAR(5)
end_test
end_type
type: o*
!oxygen in water
template (>O(-H)(-H))
end_type
type: sh
template: (>S(-H)(-*))
atom_test:3
disallowed_elements:S
end_test
end_type
type: s1
! disufide
template: (>S(-S))
end_type
type: s
! methionine sulfur
template: (>S)
end_type
type: sp
! SP2 aromatic in 5 membered ring
template:(>S)
atom_test: 1
hybridization: SP2
aromaticity:AROMATIC
ring:PLANAR(5)
end_test
end_type
type: s'
! S in thioketone group
template: (>S(=*))
atom_test:2
allowed_elements: C
end_test
end_type
type: p
! General phosphorous atom
template: (>P)
end_type
type: ca+
! calcium ion
template: [>Ca]
end_type
type: f
!fluorine bonded to carbon
template: (>F (-*))
atom_test: 2
allowed_elements: C,F
end_test
end_type
type: cl
!chlorine bonded to carbon
type: Cl
!chlorine ion
template: [>Cl]
end_type
type: Na
!sodium ion
template: [>Na]
end_type
type: br
!bromine bonded to carbon
template: (>Br (-*))
atom_test: 2
allowed_elements: C,Br
end_test
end_type
type: Br
!bromine ion
template: [>Br]
end_type
type: i
!iodine
template: (>I (-*))
atom_test: 2
allowed_elements: C,I
end_test
end_type
type: si
!silicon
template: (>Si)
end_type
type: ar
! Argon
template: (>Ar)
end_type
precedence:
(?
(ca+)
(Cl) (cl)
(Br) (br)
(Na)
(p)
(si)
(f)
(i)
(h) (ho(h*)) (hn) (hp) (hs)
(lp)
(ct) (c=(ci)(c'(c-)) (cr)) (cp(c'(c-))) (c'(c-))
(cp(c5(ci)(c')(cs(c')))) (c(c1(ca)) (c2(ca(cg)))
(c3) (ca))
(o (o-) (oh(o*)) (op)) (o(o'(o-))) (o-)
(nt (nz))
(n(ni)(np(ni))(n2(n=))(n=(ni)(np(ni)(n1(ni)))))
(np(ni)) (n3(n4))
(s (sh) (s1) (sp) (s'))
(n(n=(n1(np(ni))(ni)))(n1(np(ni))(ni)))
(ar)
)
end_precedence
\
N-H 1
//
All other environments 0
------------------------------------
------------------
\
C C-- 1
//
\
C 1
/
\
C 1
/
where C=SP2
All other environments 0
------------------------------------
------------------
All other elements
All other environments 0
Line 1:
Columns 1-4, residue name
123456789_123456789_123456789_123456789_123456789_123456789_
123456789_123456789_
ALAnt 11
The first four columns make up the name of the residue, which
may be one to four characters in length.
Columns 6-7, number of atoms
123456789_123456789_123456789_123456789_123456789_123456789_
123456789_123456789_
ALAn 11
Line 2:
Columns 1-4, atom name
123456789_123456789_123456789_123456789_123456789_123456789_
123456789_123456789_
N pepN 3 1 0 1 1 4 5 1 1 1
The first four columns make up the name of each atom in the resi-
due, which may be one to four characters in length.
Columns 6-9, charge group
123456789_123456789_123456789_123456789_123456789_123456789_
123456789_123456789_
N pepN 3 1 0 1 1 4 5 1 1 1
123456789_123456789_123456789_123456789_123456789_123456789_
123456789_123456789_
N pepN 3 1 0 1 1 4 5 1 1 1
N pepN 3 1 0 1 1 4 5 1 1 1
N pepN 3 1 0 1 1 4 5 1 1 1
N pepN 3 1 0 1 1 4 5 1 1 1
N pepN 3 1 0 1 1 4 5 1 1 1
N pepN 3 1 0 1 1 4 5 1 1 1
The bond order of each bonded atom is listed in the same order as
the bonded atoms. Bond orders are as follows: 0 or 1 is a single
bond, 2 is a partial double bond, 3 is a double bond, 4 is a partial
triple bond, and 5 is a triple bond.
Example
(extracted from amino_template.dat)
ALA 10
N pepN 2 0 1 1 1 4 1 1
CA pepN 4 1 0 0 2 5 6 0 1 1 1 1
C pepC 2 0 1 1 3 1 3 1
O pepC 1 1 0 0 2 3
HN pepN 1 1 0 0 0 1
HA pepN 1 1 0 0 1 1
CB meB 4 1 0 1 7 8 9 1 1 1 1 1
HB1 meB 1 1 0 0 6 1
HB2 meB 1 1 0 0 6 1
HB3 meB 1 1 0 0 6 1
Fifth line:
PBC information IF present:
1-3 ‘PBC’
4-13 a in angstroms
14-23 b in angstroms
24-33 c in angstroms
34-43 alpha in degrees
44-53 beta in degrees
54-63 gamma in degrees
64-80 space group
The space group name adapted from
the Hermann-Manguin notation.
This notation is modified slightly to
accommodate a standard computer
character set by eliminating slashes,
subscripts, and bars over numbers.
A number with a bar over it is
denoted by the number with the
hyphen character (-) immediately
following. Subscripted numbers/let-
ters are represented by joining the
two characters together (non-sub-
scripted number/letters must have a
space between them). The entire
space group designation must be
enclosed within parentheses.
Sixth line - Nth line:
1-4 Atom name.
6-20 x Cartesian coordinate for the atom
(angstrom).
21-35 y Cartesian coordinate for the atom
(angstrom).
36-50 z Cartesian coordinate for the atom
(angstrom).
52-55 Name of residue containing atom.
56-60 Residue sequence number relative to
the
beginningof the current molecule.
62-65 Potential function atom type (left
justified)
(ignored; see Molecular Data File).
71-72 Element type.
74-79 Partial charge on the atom.
Final line for a given molecule:
1-3 The word end.
Final line for the entire molecular system input:
1-3 The word end.
Header Record
The first record of a molecular data file must be:
!BIOSYM molecular_data
Insight interprets this as being an ASCII file contain-
ing molecular data records as outlined above.
Comment Record
Comment lines begin with an ! and may occur any-
where after the first record. By convention Insight
inserts a system title and a date comment record after
the version record.
Example:
! I am a Sample Molecular Data File Com-
ment Record
! 3-FEB-1947
Atom Record
Atom records follow the version and any comment
records. Atom records form the core of the description
of the molecular systems. Atoms must be listed consec-
utively by molecule, residue, and charge group.
Example:
ATOM C c’ CO GLY 3 0.38 1 1
0 3 CA/1.0 O/2.0 GLY_4:N/1.0
* Note that the combination of residue-name and resi-
due-number must be unique within the molecule.
** It is necessary to remove all spaces in residue names
and numbers when specifying bonds so that the entire
atom specification can be read in as a unit during a free
format read.
End Record
Each molecule is separated from the previous molecule with an
end card. The end of all molecules in the atom based data is sig-
naled by an end system record.
Torsion Record
Names can be assigned to specific dihedral angles with the TOR-
SION record. It is possible to globally assign a name to all occur-
rences of a set of four atom names or to a specific set within one
residue.
Table 3. Torsion Record Definition
CONTENTS COMMENTS
TORSION Record identifier
residue-name The residue name of the
residue where the atoms
names are found (any
combination of up to 4
alphanumeric charac-
ters).
* means all residue
types.
residue-number(label) The residue number of
the residue where the
atoms names are found
(any combination of up to
4 alphanumeric charac-
ters).
* means all numbers.
angle-name The assigned name for
this dihedral which can
be any combination of up
to 4 alphanumeric char-
acters.
atom-name (x4) Four atom names.
Atoms must be con-
nected to each other in
the order given. The
dihedral named is that
angle formed by the
bonds connecting the
first with second and the
third with the fourth
atoms while looking
down the bond connect-
ing the second to the
third (the first atom being
closest to the viewer).
Atom names have one of
four possible forms:
1.molecule: residue_
number:atom
2.residue: atom
3.*:atom
4atom
where:
moleculeis an integer
molecule
number
residueis the residue
type name
_ must occur between
residue
and number
numberis the residue
instance
number
atomis the atom name
The first form specifies a
single particular atom in
the system. The second
form identifies an atom in
any instance of the spec-
ified residue. The third
form specifies an atom in
any residue. The final
form indicates an atom in
the same residue as the
torsion. Note that by
Example:
TORSION * * phi *:C
N CA C
TORSION VAL * chi1 N
CA CB CG1
Example:
PSEUDO 23 CYS_26:X A
or:
PSEUDO 10 XRES:X A
(_).
Example:
PSEUDOSETALA_38:NALA_38:CA ALA_38:C
PSEUDOSETALA_38:0
4–13 a in angstroms
14–23 b in angstroms
24–33 c in angstroms
34–43 alpha in degrees
44–53 beta in degrees
54–63 gamma in degrees
64–80 space group
Sixth line–Nth line:
1–4 atom name
6–20 x Cartesian coordinate for the atom
(angstroms)
21–35 y Cartesian coordinate for the atom
(angstroms)
36–50 z Cartesian coordinate for the atom
(angstroms)
52–55 name of residue containing atom
56–60 residue sequence number relative to
the
begin-
ning of the current molecule
62–65 potential function atom type (left
justified)
(ignored; see Molecular Data File)
66–75 partial charge on the atom
(ignored; see Molecular Data File)
76–80 absolute atomic sequence number
relative to the
beginning of the entire molecular
system
Final line for a given molecule:
1–3 the word “end”
Final line for the entire molecular system input:
1–3 the word “end”
the Files value-aid not only lists filenames ending in .psv, but also
those ending in .psv.Z and .psv.gz.
You can override the behavior just described, and force the soft-
ware to create the temporary file in a directory of your choice, by
setting the environment variable TMPDIR to the name of that
directory. For example, to force the creation of temporary files in
the directory /usr/local/tmp, you would type the command:
Caveats
A methodology 265
Annotate command
ACE User pulldown 131
Inhibitor Captopril 175 Apply command
pharmacophore model 197 Transform pulldown 122
Adams, N. 389 aromaticity test 428
Add command assembly
Assembly pulldown 128 equivalent to family 260
Add_To_Pulldown command
Assembly pulldown 86
Custom pulldown 134
Aldehyde 181 commands in 128
Assimilate 181
fragment 181
Alias command Associate command
Session pulldown 98 Assembly pulldown 128
AM_Analyze pulldown Atom pulldown
commands in 231 commands in 151
AM_Parameters pulldown in Builder module 151
commands in 229 atom tests 427
AM_Run pulldown auto-correlations 272
commands in 231 average plane evaluation 247
AM_Setup pulldown Axes command
commands in 228 Transform pulldown 121
amide Axes_Display command
bond 181, 193, 198, 203 Object pulldown 106
Ampac/Mopac 8 Axis_Function command
Ampac/Mopac command Trajectory pulldown 261
Module pulldown 91 methodology 264
Ampac/Mopac module 22
tutorial 235
Analysis 7 B
Analysis command background color 94
Module pulldown 92 background job
Analysis module 22 completion status 285
tutorial 266 default mode 284
Angiotensin Converting Enzyme (ACE) 176 execution mode 285
Angle command host 285
Measure pulldown 116 requirements for running on a remote host
Angle_Def command 281
Trajectory pulldown 261 Background_Job
Animate command application 282
Trajectory pulldown 252, 259 command summary 283
memory limitations 266 commands in 231, 264, 283
methodology 284 C
Background_Job pulldown
commands in 231, 264 Calculation command
in Analysis module 258 AM_Setup pulldown 228
Background_Job tutorial Cambridge
using the Ampac/Mopac module 287 data files 2
Baker, J. 212, 213, 389 Cambridge Crystal database
Banerjee, A. 214, 389 molecule from 49
Captopril 176, 177, 178, 195
Bergeron, D. 213, 389
Using Sketch 190
Binding_Site command carboxyl
Module pulldown 90 group 176, 192, 194, 198, 199, 204
Biopolymer command oxygen 198
Module pulldown 87 case sensitivity 100
Biopolymer module 22 Catalogue command
Biosym Command Language Custom pulldown 135
see also BCL 289 Cell command
with Custom pulldown 134 Assembly pulldown 128
Blank command Cell_display command
Object pulldown 106 Assembly pulldown 129
Blink command Center command
Object pulldown 106 Transform pulldown 121
Bond_Order command Cerjan, C. J. 214
Molecule pulldown 112 Change_directory command
Boolean command Session pulldown 100
Graph pulldown 274 Charge command
Bracewell Atom pulldown 151
reference 251 CHARMm 9
Brookhaven CHARMm command
Protein Data Bank 2 Module pulldown 90
Brookhaven database CharSize command
molecule from 49 Graph pulldown 276
Browse command Grid pulldown 235
Molecule pulldown 114 Charsize command
Buffer command Contour pulldown 143
Session pulldown 97 User pulldown 132
Clip command
Builder 2, 5, 176, 179, 190, 197
Transform pulldown 122
Builder command Close command
Module pulldown 87 Window pulldown 136
Builder module 22 Close_Layout command
Builder module 175 Window pulldown 138
Builder tutorial 173 Cluster command
bulk density 257 Trajectory pulldown 261
Bump command methodology 265
Measure pulldown 117 color
Button command use of 63
Session pulldown 99 Color command
I Layout command
Window pulldown 137
icon palette 27 Layout_Template command
icons Window pulldown 137
customizing 27 Licensescommand
pre-defined 24 Module pulldown 92
Import 102 Line_Fit command
Inactive Stereoisomer 202 Graph pulldown 275
Info command LineWidth command
Graph pulldown 278 Object pulldown 106
Inplot utility 380 link_pdb 406
Insight II startup file 285 List command
Insight_Help 138 AM_Setup pulldown 229
Integration command Assembly pulldown 130
Graph pulldown 275 Atom pulldown 154
interaction energy Contour pulldown 143
equation incorporating nonbond and elec Folder pulldown 102
239 Grid pulldown 235
Interface command Molecule pulldown 113
Subset pulldown 126 Object pulldown 106
intermediate plot file format 383 Spectrum pulldown 133
intermolecular bonds Subset pulldown 127
User pulldown 133
energies 242 List command, Pseudo_Atom pulldown 172
Intermolecular command
List_Properties command
Evaluate pulldown 243
Interpolation command Custom pulldown 135
log file
Graph pulldown 275
Invert command 166 WBLOGFILE 101
logfile
insight.log 29
J WBLOGFILE 29
WBLOGFILE.save 29
job number 284 Lower command
Window pulldown 136
Lower_Layout command
K Window pulldown 138
Kill_Bkgd_Job command, Background_Job Ludi command
pulldown 284 Module pulldown 89
L M
Label command Macro_Delete command
Contour pulldown 142 Custom pulldown 135
Graph pulldown 276 Macromolecule structures 2
Grid pulldown 234 macros
Molecule pulldown 111 with Custom pulldown 134
User pulldown 132 MBOND command
Langridge reference 237 Module pulldown 90
R S
R stereoisomer 202 Saddle command
radial distribution function 257 AM_Parameters pulldown 230
Raise command Save command
Window pulldown 136 Folder pulldown 101
Raise_Layout command Scale command
Window pulldown 137 Transform pulldown 122
RDF 257 Scale_Axis command
Remove command Graph pulldown 277
Assembly pulldown 128 SCF command
Folder pulldown 101 AM_Parameters pulldown 229, 230, 231
Fragment pulldown 155 Schrodinger equation 7, 8
Rename command Search_Compare 204
Atom pulldown 154 Search_Compare command
Object pulldown 106 Module pulldown 89
Rename command, Pseudo_Atom pulldown SecondaryRender command
172 Molecule pulldown 113
Select command
Render command
Forcefield pulldown 168
Molecule pulldown 112 Session pulldown 86
Repartition_Cluster command
commands in 93
Trajectory pulldown 260 Set_Defaults command
Repeat command Molecule pulldown 110
Fragment pulldown 155 Setup_Bkgd_Job command, Background_Job
Repeat command pulldown 283
Residue pulldown 410 Shepard, R. 389
Replace command side chain conformation 200
Atom pulldown 153 Simons, J. 389
Reset command Sketch 3, 151, 197
Transform pulldown 120 sketch facility 50
residue Sketch pulldown 175
library 152 Sketch/Edit 191
residue library 169
Sketch/Get 194, 202
Restore_Folder command Sketch/Put 194, 205
File pulldown 101 Sketcher 175
RGB mode 65
slab
Ribbon command also called viewing window 122
Molecule pulldown 112 position 16, 19, 122
RMS value thickness 16, 122
as basis for clustering 256 Sleep command
Rock command Session pulldown 100
Transform pulldown 123 Slice command
Rotate command Grid pulldown 234
Transform pulldown 122 Smoothing command
Run command Graph pulldown 276
AM_Run pulldown 231 Soak command
pulldowns in 86
tutorial 148
W
weight factors for each atom 257
Window pulldown 86, 136
X
x-ray crystal refinement
grid output 140
XYZ command
Measure pulldown 117
Z
Zhou, X. 390
zinc metallopeptidase 176
Zindo command
Module pulldown 91
Z-matrix 212
Zone command
Subset pulldown 126