Bones Overview

This group of commands allows the user to display and manipulate a skeletonized electron density ("Bones atoms"). A basic set of commands are available via the Bones pull-down menu system to control the creation of simple skeleton objects. More commands are available to the user via the O line interpreter. The skeleton offers a suitable data structure that is usefull in the preliminary tracing of a new structure in an electron density map. Tactics for making the first trace are discussed elsewhere.

The O skeleton is like a regular molecule but with some extra data blocks. Each skeleton, therefore, has an associated molecule name. One special datablock is a set of status codes or levels that can be changed by the user with the Bone_redefine command. Another datablock defines the connectivity of the skeleton. The skeleton can be edited by making and breaking bonds between skeleton atoms (Bond_make, Bond_break commands).

The skeleton is produced from an electron density map by running the program o_bones. A somewhat extended functionality is available in Gerard Kleywegt's mapman program. Atoms recieve a level code of 2 or 3 if they are assigned to be side chain or main atoms, respectively. This assignment is dependent on a number of parameters that the user must define when running the programs. The skeletonization algorithm depends on the setting of a base level density value and a step size. The step value is usually the sigma value of the map, but the base can vary somewhat. SUitable values for the base may be betweeen 1.25-1.5 sigma. If the value is too low, the skeleton will contain too many atoms and appear too connected. If the value is too high, there will be too few and look rather sparse. The assignment of side or main-0chains depends on how connected the skeleton is. Short branch points get classified as side-chain, and longer ones as main-chain.

Once the skeleton is made, the user is free to use any system of code assignments that may be applicable to the problem. Normally, in a simple system , one would assign level 1 to be the correct main chain trace.

The colour associated with each level is defined in the datablock .bones_colour and can be any of the possible X-windows colours.

The skeleton can also be used to form an envelope by associating radii to skeleton atoms of particular types. Skeletons can also be used with the Trace commands in O but require a starting map of excellent quality, or some preliminary editing of the skeleton.

Bone_setup

bone_setup <mol> <object> <radius> <level>

Setup necessary parameters. These define the skeleton molecule, the object name being created, the radius within which to display atoms, and what levels to use.

Bone_draw

bone_draw

Extract and draw the skeleton atoms on the screen using current parameters.


Bond_break

bond_break <id 2 atoms>

Break all bonds between 2 identified atoms. The 2 atoms must not form a closed connection. The new connectivity must be saved by the user with Save_DB or Stop. Do not make a lot of changes without hitting Save_DB.

 

Bond_make

bond_make <id 2 atoms>

Add a new bond between 2 atoms. The new connectivity must be saved by the user with Save_DB or Stop

Bone_undo

bone_undo

This command restores the connectivity prior to the last bond_break or bone_prune operation. Only one level of undo is maintained. Any objects that may exist will have to be remade by the user.

Bone_redefine

bone_redefine <id 2 atoms> <new level>

Redefine the 'bone level' of a set of connected Bones atoms. Must not be in a circular connection. The objects are redrawn with the new colours. NOTE: you can put any text up on the screen menu, so if you are doing skeleton editing, you might want to put the characters 1 2 3 as separate menu items.

Bone_branch

bone_branch <Id an atom>

An atom will be added to the object of the identified atom, connected to this atom but displaced (0.5, 0.5, 0.5) Å. It will be given the status code 2 (which usually specifies a side-chain) and will initially appear as a white bond (this will change to the users specified colour when the next object is created). This command is useful to indicate the desired position for a Ca atom when a branch point is lacking. It can also be used to extend a skeleton from a loose end (via repeated bond_branch and grab_atom commands).

Bone_excise

bone_excise <Id 2 atoms>

All bonds connecting the 2 identified atoms are broken, and replaced by a single direct bond. The atoms must be in the same skeleton molecule.

 

Bone_prune

bone_prune <Id 2 atoms>

This command attempts to create a tentative Ca trace. It modifies the connectivity of all atoms linking the 2 identified atoms, to more closely resemble a Ca trace. The two end-point atoms are kept, as are all atoms containing a branch. Connections from other/to other atoms are removed if the distance to the last tentative Ca atom is < 3.8Å. When an atom is found to be > 3.8Å from the last tentative Ca, it is shifted to make a more exact separation. Any remaining short separations between tentative Ca atoms are flagged in an object called warn.

Bone_Ca_zone

bone_ca_zone <Id 2 atoms> <molecule> <start residue> <direction>

This command is intended to help in the construction of Ca traces. It would normally be used after using the bone_prune command to create something that looks like a trace. All atoms between the identified atoms are taken to be Ca atoms of the molecule being constructed. The identified atoms cannot be joined in a circular connection. It is only necessary to specify the start residue of the molecule under construction. The direction can be forwards or backwards in the chain. If an object CA has been constructed, it will be redrawn.

Bone_mask

bone_mask <molecule> <codes> <radii>

This command is used to make a datablock called <molecule>_mask that contains coordinate and radii information for use in making a molecular mask. The option requests a set of skeleton codes and the associated radii. Only the specified coded skeleton atoms are used in making the mask datablock. Use the Bone_redefine command to set the desired codes. Computer programs are available to read the mask datablock and generate masks suitable for the A programs (Jones (1992)) or the newer RAVE programs (Kleiywegt & Jones,m to be published).

Bone_Ca_ID

bone_pick_Ca <mol> <start_residue> <direction> <id>i

When activated you must specify where you wish to start in the sequence and if you wish to go forward or backward through the sequence.You can then pick a Bone atom and its coordinates get associated with the Ca atom of the current residue shown in the prompt window. The identified atom is usually a skeleton atom but can in fact be any kind of atom. After the atom has been identified, an object called 'CA' will be updated, if it exists. At the start of building a new structure, there will be no sensible coordinates for any of the atoms in the molecule but the user should still create an object called 'CA' to see what happens when using this command. The 'CA' object can be created with the following commands

obj ca ca ; end

but no object will be seen on the screen until you start picking atoms.

The Baton_build command is an alternative (and often preferred way) of building a Ca trace.

Bone_repeat

bone_repeat

Backtrack one position in the sequence for Bone_Ca_ID.Depending on the choice of direction,you may be going forwards or backwards.

Bone_skip

bone_skip

Move forward (or backward, depending on choice of direction) one residue in the sequence for Bone_Ca_ID

Trace_setup

trace_setup <unmodified_skeleton> <modified_skeleton>

This command defines the two skeletons used in a trace filter operation. One skeleton will act as the input to the filter, the other is an output or a modification of an existing skeleton.

Trace_prune

trace_prune

This command takes an existing skeleton and modifes its connectivity so that only bones atoms with branch points (i.e. with at lest 3 bonds) can be seen. This means that if the connection between two branch point bones consisted of a number of short bonds, they are replaced by just one bond between the two atoms. The pruning action greatly simplifies the skeleton and often allows the user to recognise structural features. If the density lacks branching features, the prined skeleton will have very long connections, and some long connections in the original skeleton may be missing.

The command is intended as a step towards building a skeleton which ends up closely resembling a Ca trace.

It requires either a very good quality map, or a skeleton that has been pruned by hand.

Trace_fill_Ca

trace_fill_ca

This command needs both an input and output skeleton. For those atoms in a pruned skeleton that are too far apart for a pait of connected Ca atoms, extra atoms will be filled in between them at the correct separation. The filled in atoms will follow the connections of the input skeleton and the 'new' atoms will be exisitng atoms from that skeleton.


Trace_sphere

trace_sphere <radius>

All skeleton atoms within the specified radius move into the output skeleton, together with the connectivity.