#$+
RasMol V2.5

Molecular Visualisation Program

Roger Sayle
Glaxo Research and Development
Greenford, Middlesex, U.K.

Table of Contents

·	Introduction
·	Command Reference
·	Internal Parameters
·	Atom Expressions
·	Predefined Sets
·	Colour Schemes

+Copyright © 1992,1993,1994 by Roger Sayle (rasmol@ggr.co.uk) 

The information supplied in this document is believed to be true but no liability is assumed for its use or for the infringements of the rights of the others resulting from its use. 

Information in this document is subject to change without notice and does not represent a commitment on the part of the supplier. This package is sold/distributed subject to the condition that it shall not, by way of trade or otherwise, be lent, re-sold, hired out or otherwise circulated without the supplier's prior consent, in any form of packaging or cover other than that in which it was produced. No part of this manual or accompanying software may be reproduced, stored in a retrieval system on optical or magnetic disk, tape or any other medium, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording or otherwise for any purpose other than the purchaser's personal use. 

This product is not to be used in the planning, construction, maintenance, operation or use of any nuclear facility nor the flight, navigation or communication of aircraft or ground support equipment. The author shall not be liable, in whole or in part, for any claims or damages arising from such use, including death, bancruptcy or outbreak of war. 

+#$Introduction

RasMol2 is a molecular graphics program intended for the visualisation of proteins, nucleic acids and small molecules. The program is aimed at display, teaching and generation of publication quality images. RasMol runs on Microsoft Windows, Apple Macintosh, UNIX and VMS systems. The UNIX and VMS systems require an 8, 24 or 32 bit colour X Windows display (X11R4 or later). The program reads in a molecule co-ordinate file and interactively displays the molecule on the screen in a variety of colour schemes and molecule representations. Currently available representations include depth-cued wireframes, 'Dreiding' sticks, spacefilling (CPK) spheres, ball and stick, solid and strand biomolecular ribbons, atom labels and dot surfaces. 

+#$Command Reference

RasMol allows the execution of interactive commands typed at the "RasMol>" prompt in the terminal window. Each command must be given on a separate line. Keywords are case insensitive and may be entered in either upper or lower case letters. All whitespace characters are ignored except to separate keywords and their arguments. 

The commands/keywords currently recognised by RasMol are given below. 

backbone	background	centre	clipboard	
colour	connect	cpk	dots	
define	echo	exit	hbonds	
help	label	load	print	
quit	renumber	reset	restrict	
ribbon	rotate	save	script	
select	set	show	slab	
source	spacefill	ssbonds	strands	
structure	trace	translate	wireframe	
write	zap	zoom	

+##$KBackbone

Syntax:	backbone {<boolean>}
	backbone <value>

The RasMol backbone command permits the representation of a polypeptide backbone as a series of bonds connecting the adjacent alpha carbons of each amino acid in a chain. The display of these backbone `bonds' is turned on and off by the command paramater the same as the wireframe command. The command backbone off turns off the selected `bonds', and backbone on or with a number turns them on. The number can be used to specify the cylinder radius of the representation in either angstrom or rasmol units. A parameter value of 500 (2.0 angstroms) or above results in a "Parameter value too large" error. Backbone objects may be coloured using the RasMol colour backbone command. 

The reserved work backbone is also used as a predefined set and as a parameter to the set hbond and set ssbond commands. The RasMol command trace is synonymous with the command backbone. 

+#$KBackground

Syntax:	background <colour>

The RasMol background command is used to set the colour of the "canvas" background. The colour may be given as either a colour name or a comma separated triple of Red, Green and Blue (RGB) components enclosed in square brackets. Typing the command help colours will give a list of the predefined colour names recognised by RasMol. When running under X Windows, RasMol also recognises colours in the X server's colour name database. 

The background command is synonymous with the RasMol set background command. 

+##$KCentre

Syntax:	center {<expression>}
	centre {<expression>}

The RasMol centre command defines the point about which the rotate command and the scroll bars rotate the current molecule. Without a parameter the centre command resets the centre of rotation to be the centre of gravity of the molecule. If an atom expression is specified, RasMol rotates the molecule about the centre of gravity of the set of atoms specified by the expression. Hence, if a single atom is specified by the expression, that atom will remain `stationary' during rotations. 

Type help expression for more information on RasMol atom expressions. 

+#$KClipboard

Syntax:	clipboard

The RasMol clipboard command places a copy of the currently displayed image on the local graphics `clipboard'. Note: this command is not yet supported on UNIX or VMS machines. It is intended to make transfering images between applications easier under Microsoft Windows or on an Apple Macintosh. 

When using RasMol on a UNIX or VMS system this functionality may be achieved by generating a raster image in a format that can be read by the receiving program using the RasMol write command. 

+##$KColour

Syntax:	colour {<object>} <colour>
	color {<object>} <colour>

Colour the atoms (or other objects) of the selected region. The colour may be given as either a colour name or a comma separated triple of Red, Green and Blue (RGB) components enclosed in square brackets. Typing the command help colours will give a list of all the predefined colour names recognised by RasMol. 

Allowed objects are atoms, bonds, backbone, ribbons labels dots, hbonds, and ssbonds. If no object is specified, the default keyword atom is assumed. Some colour schemes are defined for certain object types. The colour scheme none can be applied all objects accept atoms and dots, stating that the selected objects have no colour of their own, but use the colour of their associated atoms (i.e. the atoms they connect). Atom objects can also be coloured by cpk, amino, chain, group, shapely, structure, temperature charge and user. Hydrogen bonds can also be coloured by type and dot surfaces can also be coloured by electrostatic potential. For more information type help colour <colour>. 

+#$KConnect

Syntax:	connect {<boolean>}

The RasMol connect command is used to force RasMol to (re)calculate the connectivity of the current molecule. If the original input file contained connectivity information, this is discarded. The command connect false uses an extremely fast heuristic algorithmm that is suitable for determing bonding in large bio-molecules such as proteins and nucleic acids.  The command connect true uses a slower more accurate algorithm based upon covalent radii that is more suitable for small molecules containing inorganic elements or strained rings. If no parameters are given, RasMol determines which algorithm to use based on the number of atoms in the file. Greater than 255 atoms causes RasMol to use the faster implementation. This is the method used to determine bonding, if necessary, when a molecule is first read in using the load command. 

+#$KDefine

Syntax:	define <identifier> <expression>

The RasMol define command allows the user to associate an arbitrary set of atoms with a unique identifier. This allows the definition of user-defined sets. These sets are declared statically, i.e. once defined the contents of the set do not change, even if the expression defining them depends on the current transformation and representation of the molecule. 

+#$KDots

Syntax:	dots {<boolean>}
	dots {<value>}

The RasMol dots command is used to generate a Van der Waal's dot surface around the currently selected atoms. Dot surfaces display regularly spaced points on a sphere of Van der Waals' radius about each selected atom. Dots that would are `buried' within the Van der Waal's radius of any other atom (selected or not) are not displayed. The command dots on deletes any existing dot surface and generates a dots surface around the currently selected atom set with a default dot density of 100. The command dots off deletes any existing dot surface. The dot density may be specified by providing a numeric parameter between 1 and 1000. This value approximately corresponds to the number of dots on the surface of a medium sized atom. 

By default, the colour of each point on a dot surface is the colour of it's closest atom at the time the surface is generated. The colour of the whole dot surface may be changed using the colour dots command. 

+#$KEcho

Syntax:	echo {<string>}

The RasMol echo command is used to display a message in the RasMol command/terminal window. The string parameter may optionally be delimited in double quote characters. If no parameter is specified, the echo command displays a blank line. This command is particularly useful for displaying text from within a RasMol script file. 

+##$KHBonds

Syntax:	hbonds {<boolean>}
	hbonds <value>

The RasMol hbond command is used to represent the hydrogen bonding of the protein molecule's backbone. This information is useful in assessing the protein's secondary structure. Hydrogen bonds are represented as either dotted lines or cylinders between the donor and acceptor residues. The first time the hbond command is used, the program searches the structure of the molecule to find hydrogen bonded residues and reports the number of bonds to the user. The command hbonds on displays the selected `bonds' as dotted lines, and the hbonds off turns off their display. The colour of hbond objects may be changed by the colour hbond command. Initially, each hydrogen bond has the colours of its connected atoms. 

By default the dotted lines are drawn between the accepting oxygen and the donating nitrogen. By using the set hbonds command the alpha carbon positions of the appropriate residues may be used instead. This is especially useful when examining proteins in backbone representation. 

+#$KHelp

Syntax:	help {<topic> {<subtopic>}}
	? {<topic> {<subtopic>}}

The RasMol help command provides on-line help on the given topic. 

+##$KLabel

Syntax:	label {<string>}
	label <boolean>

The RasMol label command allows an arbitrary formatted text string to be associated with each currently selected atom.  This string may contain embedded `expansion specifiers' which display properties of the atom being labelled. An expansion specifier consists of a `%' character followed by a single alphabetic character specifying the property to be displayed (similar to C's printf syntax). An actual '%' character may be displayed by using the expansion specifier `%%'. 

Atom labelling for the currently selected atoms may be turned off with the command label off. By default, if no string is given as a parameter RasMol uses labels appropriate for the current molecule. RasMol uses the label "%n%r:%c.%a" if the molecule contains more than one chain, "%e%i" if the molecule has only a single residue (a small molecule) and "%n%r.%a" otherwise. 

The colour of each label may be changed using the colour label command. By default, each label is drawn in the same colour as the atom to which it is attached. The size of the displayed text may be changed using the set fontsize command. 

The following table lists the current expansion specifiers: 

%a	  	Atom Name	
%b	%t	B-factor/Temperature	
%c	%s	Chain Identifier	
%e	  	Element Atomic Symbol	
%i	  	Atom Serial Number	
%n	  	Residue Name	
%r	  	Residue Number	

+#$KLoad

Syntax:	load {<format>} <filename>
	
Load a molecule co-ordinate file into RasMol2. Valid molecule file formats are pdb (Brookhaven Protein Databank), mdl (Molecular Design Limited's MOL file format), alchemy (Tripos' Alchemy file format), mol2 (Tripos' Sybyl Mol2 file format), charmm (CHARMm file format) or xyz (MSC's XMol XYZ file format). If no file format is specified, pdb is assumed by default. Only a single molecule may be loaded at a time. To delete a molecule prior to loading another use the RasMol zap command. 

The load command selects all the atoms in the molecule, centres it on the screen and renders it as a CPK coloured wireframe model. If the molecule contains no bonds (i.e. contains only alpha carbons), it is drawn as an alpha carbon backbone. If the file specifies less bonds than atoms, RasMol determines connectivity using the connect command. 

+#$KPrint

Syntax:	print

The RasMol print command sends the currently displayed image to the local default printer using the operating system's native printer driver. Note: this command is not yet supported under UNIX or VMS. It is intended to take advantage of Microsoft Windows and Apple Macintosh printer drivers. For example, allowing images to be printed directly on a dot matrix printer. 

When using RasMol on a UNIX or VMS system this functionality may be achieved by either generating a PostScript file using the RasMol write ps or write vectps commands and printing that or generating a raster image file and using a utility to dump that to the local printer. 

+##$KQuit

Syntax:	quit
	exit

Exit from the RasMol program. The RasMol commands exit and quit are synonymous. 

+##$KRenumber

Syntax:	renumber {{-} <value>}

The RasMol renumber command sequentially numbers the residues in a macromolecular chain. The optional parameter specifies the value of the first residue in the sequence. By default, this value is one. For proteins, each amino acid is numbered consecutively from the N terminus to the C terminus. For nucleic acids, each base is numbered from the 5' terminus to 3' terminus. All chains in the current database are renumbered and gaps in the original sequence are ignored. The starting value for numbering may be negative. 

+#$KReset

Syntax:	reset

The RasMol reset command restores the original viewing transformation and centre of rotation. The scale is set to it default value, zoom 100, the centre of rotation is set to the geometric centre of the currently loaded molecule, centre all, this centre is translated to the middle of the screen and the viewpoint set to the default orientation. 

This command should not be mistaken for the RasMol zap command which deletes the currently stored molecule, returning the program to its initial state. 

+#$KRestrict

Syntax:	restrict {<expression>}

The RasMol restrict command both defines the currently selected region of the molecule and disables the representation of (most of) those parts of the molecule no longer selected.  All subsequent RasMol commands that modify a molecule's colour or representation effect only the currently selected region. The parameter of a restrict command is a RasMol atom expression that is evaluated for every atom of the current molecule. This command is very similar to the RasMol select command, except restrict disables the wireframe, spacefill and backbone representations in the non-selected region. 

Type "help expression" for more information on RasMol atom expressions. 

+##$KRibbons

Syntax:	ribbons {<boolean>}
	ribbons <value>

The RasMol ribbons command displays the currently loaded protein or nucleic acid as a smooth solid "ribbon" surface passing along the backbone of the protein. The ribbon is drawn between each amino acid whose alpha carbon is currently selected. The colour of the ribbon is changed by the RasMol colour ribbon command. If the current ribbon colour is none (the default), the colour is taken from the alpha carbon at each position along its length. 

The width of the ribbon at each position is determined by the optional parameter in the usual RasMol units. By default the width of the ribbon is taken from the secondary structure of the protein or a constant value of 720 (2.88 Angstroms) for nucleic acids. The default width of protein alpha helices and beta sheets is 380 (1.52 Angstroms) and 100 (0.4 Angstroms) for turns and random coil. The secondary structure assignment is either from the PDB file or calculated using the DSSP algorithm as used by the structure command. This command is similar to the RasMol command strands which renders the biomolecular ribbon as parallel depth-cued curves. 

+#$KRotate

Syntax:	rotate <axis> {-} <value>

Rotate the molecule about the specified axis. Permited values for the axis parameter are "x", "y" and "z". The integer parameter states the angle in degrees for the structure to be rotated. For the X and Y axes, positive values move the closest point up and right, and negative values move it down and left respectively. For the Z axis, a positive rotation acts clockwise and a negative angle anti-clockwise. 

+#$KSave

Syntax:	save {pdb} <filename>
	save alchemy <filename>

Save the currently selected set of atoms in either a Brookhaven Protein Database (PDB) or Alchemy(tm) format file. The distinction between this command and the RasMol write command has been dropped. The only difference is that without a format specifier the save command generates a PDB file and the write command generates a GIF image. 

+#$KScript

#Syntax:	script <filename>

The RasMol script command reads a set of RasMol commands sequentially from a text file and executes them. This allows sequences of commonly used commands to be stored and performed by single command. A RasMol script file may contain a further script command up to a maximum "depth" of 10, allowing compilicated sequences of actions to be executed. RasMol ignores all characters after the first '#' character on each line allowing the scripts to be annotated. Script files are often also annotated using the RasMol echo command. 

The most common way to generate a RasMol script file is to use the write script or write rasmol commands to output the sequence of commands that are needed to regenerate the current view, representation and colouring of the currently displayed molecule. 

The RasMol command source is synonymous with the script command. 

+#$KSelect

Syntax:	select {<expression>}

Define the currently selected region of the molecule. All subsequent RasMol commands that manipulate a molecule or modify its colour or representation, only effects the currently selected region. The parameter of a select command is a RasMol expression that is evaluated for every atom of the current molecule. The currently selected (active) region of the molecule are those atoms that cause the expression to evaluate true. To select the whole molecule use the RasMol command select all. The behaviour of the select command without any parameters is determined by the RasMol hetero and hydrogen parameters. 

Type "help expression" for more information on RasMol atom expressions. 

+#$KSet

Syntax:	set <parameter> {<option>}

The RasMol set command allows the user to alter various internal program parameters such as those controlling rendering options. Each parameter has its own set or permissible parameter options. Typically, ommiting the paramter option resets that parameter to its default value. A list of valid parameter names is given below. 

ambient	axes	background	bondmode	
boundbox	display	fontsize	hbonds	
hetero	hourglass	hydrogen	kinemage	
menus	mouse	radius	shadow	
slabmode	solvent	specular	specpower	
ssbonds	strands	unitcell	vectps	

+#$KShow

Syntax:	show information
	show sequence
	show symmetry

The RasMol show command display details of the status of the currently loaded molecule. The command show information lists the molecule's name, classification, PDB code and the number of atoms, chains, groups it contains. If hydrogen bonding, disulphide bridges or secondary structure have been determined, the number of hbonds, ssbonds, helices, ladders and turns are also displayed respectively. The command show sequence lists the residues that compose each chain of the molecule. 

+#$KSlab

Syntax:	slab {<boolean>}
	slab <value>

The RasMol slab command enables, disables or positions the z-clipping plane of the molecule. The program only draws those portions of the molecule that are further from the viewer than the slabbing plane. Values range  from zero at the very back of the molecule to 100 which is completely in front of the molecule. Intermediate values determine the percentage of the molecule to be drawn. 

+##$KSpacefill

Syntax:	spacefill {<boolean>}
	spacefill temperature
	spacefill user
	spacefill <value>

The RasMol spacefill command is used to represent all of the currently selected atoms as solid spheres. This command is used to produce both union-of-spheres and ball-and-stick models of a molecule. The command, spacefilll true, the default, represents each atom as a sphere of Van der Waals radius. The command spacefill off turns off the representation of the selected atom as spheres. A sphere radius may be specified as an integer in RasMol units (1/250th Angstrom) or a value containing a decimal point. A value of 500 (2.0 Angstroms) or greater results in a "Parameter value too large" error. 

The temperature option sets the radius of each sphere to the value stored in its temperature field. Zero or negative values causes have no effect and values greater than 2.0 are truncated to 2. The user option allows the radius of each spheres to be specified by additional lines in the molecule's PDB file using Raster 3D's COLOR record extension. 

The RasMol command cpk is synonymous with the spacefill command. 

+##$KSSBonds

Syntax:	ssbonds {<boolean>}
	ssbonds <value>

The RasMol ssbonds command is used to represent the disulphide bridges of the protein molecule as either dotted lines or cylinders between the connected cysteines. The first time that the ssbonds command is used, the program searches the structure of the protein to find half-cysteine pairs (cysteines whose sulphurs are within 3 angstroms of each other) and reports the number of bridges to the user. The command ssbonds on displays the selected `bonds' as dotted lines, and the command ssbonds off disables the display of ssbonds in the currently selected area. Selection of disulphide bridges is identical to normal bonds, and may be adjusted using the RasMol set bondmode command. The colour of disulphide bonds may be changed using the colour ssbonds command. By default, each disulphide bond has the colours of its connected atoms. 

By default disulphide bonds are drawn between the sulphur atoms within the cysteine groups. By using the set ssbonds command the position of the cysteine's alpha carbons may be used instead. 

+#$KStrands

Syntax:	strands {<boolean>}
	strands <value>

The RasMol strands command displays the currently loaded protein or nucleic acid as a smooth "ribbon" of depth-cued curves passing along the backbone of the protein. The ribbon is composed of a number of strands that run parallel to one another along the peptide plane of each residue. The ribbon is drawn between each amino acid whose alpha carbon is currently selected. The colour of the ribbon is changed by the RasMol colour ribbon command. If the current ribbon colour is none (the default), the colour is taken from the alpha carbon at each position along its length. The colour of the central and outermost strands may be coloured independently using the colour ribbon1 and colour ribbon2 commands respectively. The number of strands in the ribbon may be altered using the RasMol set strands command. 

The width of the ribbon at each position is determined by the optional parameter in the usual RasMol units. By default the width of the ribbon is taken from the secondary structure of the protein or a constant value of 720 for nucleic acids (which produces a ribbon 2.88 Angstroms wide). The default width of protein alpha helices and beta sheets is 380 (1.52 Angstroms) and 100 (0.4 Angstroms) for turns and random coil. The secondary structure assignment is either from the PDB file or calculated using the DSSP algorithm as used by the structure command. This command is similar to the RasMol command ribbons which renders the biomolecular ribbon as a smooth shaded surface. 

+#$KStructure

Syntax:	structure

The RasMol structure command calculates secondary structure assignments for the currently loaded protein. If the original PDB file contained structural assignment records (HELIX and SHEET) these are discarded. Initially, the hydrogen bonds of the current molecule are found, if this hasn't been done already. The secondary structure is the determined using Kabsch and Sander's DSSP algorithm. Once finished the program reports the number of helices, strands and turns found. 

+#$KTranslate

Syntax:	translate <axis> {-} <value>

The RasMol translate command moves the position of the centre of the molecule on the screen. The axis parameter specifies along which axis the molecule is to be moved and the integer parameter specifies the absolute position of the molecule centre from the middle of the screen. Permited values for the axis parameter are "x", "y" and "z". Displacement values must be between -100 and 100 which correspond to moving the current molecule just off the screen. A positive "x" displacement moves the molecule to the right, and a positive "y" displacement moves the molecule down the screen. The pair of commands translate x 0 and translate y 0 centres the molecule on the screen. 

+#$KWireframe

Syntax:	wireframe {<boolean>}
	wireframe <value>

The RasMol wireframe command represents each bond within the selected region of the molecule as either a cylinder, a line or depth-cued vector. The display of bonds as depth-cued vectors (drawn darker the further away from the viewer) is turned on by the command wireframe or wireframe on. The selected bonds are displayed as cylinders by specifying a radius either as an integer in RasMol units or containing a decimal point as a value in Angstroms.  A parameter value of 500 (2.0 angstroms) or above results in an "Parameter value too large" error. Bonds may be coloured using the colour bonds command. 

+#$KWrite

Syntax:	write {<format>} <filename>

Write the current image to a file in a standard raster format. Currently supported image file formats include "gif" (Compuserve GIF), "ppm" (Portable Pixmap), "ras" (Sun rasterfile), "ps" and "epsf" (Encapsulated PostScript), "monops" (Monochrome Encapsulated PostScript), "bmp" (Microsoft bitmap) and "pict" (Apple PICT). The write command may also be used to generate command scripts for other graphics programs. The format script writes out a file containing the RasMol script commands to reproduce the current image. The format molscript writes out the commands required to render the current view of the molecule as ribbons in Per Kraulis' Molscript program and the format kinemage the commands for David Richardson's program Mage. 

The distinction between this command and the RasMol save command has been dropped. The only difference is that without a format specifier the save command generates a PDB file and the write command generates a GIF image. 

+#$KZap

Syntax:	zap

Deletes the contents of the current database and resets parameter variables to their initial default state. 

+#$KZoom

Syntax:	zoom {<boolean>}
	zoom <value>

Change the magnification of the currently displayed image. Boolean parameters either magnify or reset the scale of current molecule. An integer parameter between 10 and 200 specifies the desired magnification as a percentage of the default scale. 

+#$Internal Parameters

RasMol has a number of internal parameters that may be modified using the set command. These parameters control a number of program options such as rendering options and mouse button mappings. 

A complete list of internal parameter names is given below. 

ambient	axes	background	bondmode	
boundbox	display	fontsize	hbonds	
hetero	hourglass	hydrogen	kinemage	
menus	mouse	radius	shadow	
slabmode	solvent	specular	specpower	
ssbonds	strands	unitcell	vectps	

+#$KSet Ambient

KSyntax:	set ambient {<value>}

The RasMol ambient parameter is used to control the amount of ambient (or surrounding) light in the scene. The ambient value must be between 0 and 100 that controls the percentage intensity of the darkest shade of an object. For a solid object, this is the intensity of surfaces facing away from the light source or in shadow. For depth-cued objects this is the intensity of objects furthest from the viewer. 

This parameter is commonly used to correct for monitors with different "gamma values" (brightness), to change how light or dark a hardcopy image appears when printed or to alter the feeling of depth for wireframe or ribbon representations. 

+#$KSet Axes

KSyntax:	set axes <boolean>

The RasMol axes parameter controls the display of orthogonal co-ordinate axes on the current display. The co-ordinate axes are those used in the molecule data file, and the origin is the centre of the molecule's bounding box. The set axes command is similar the the commands set boundbox and set unitcell that display the bounding box and the crystallographic unit cell respectively. 

+#$KSet Background

KSyntax:	set background <colour>

The RasMol background parameter is used to set the colour of the "canvas" background. The colour may be given as either a colour name or a comma separated triple of Red, Green, Blue (RGB) components enclosed in square brackets. Typing the command help colours will give a list of the predefined colour names recognised by RasMol. When running under X Windows, RasMol also recognises colours in the X server's colour name database. 

The command set background is synonymous with the RasMol command background. 

+#$KSet BondMode

KSyntax:	set bondmode and
	set bondmode or

The RasMol set bondmode command controls the mechanism used to select individual bonds. When using the select and restrict commands, a given bond will be selected if i) the bondmode is or and either of the connected atoms is selected, or ii) the bondmode is and and both atoms connected by the bond are selected. Hence an individual bond may be uniquely identified by using the command "set bondmode and" and then uniquely selecting the atoms at both ends. 

+#$KSet BoundBox

KSyntax:	set boundbox <boolean>

The RasMol boundbox parameter controls the display of the current molecules bounding box on the display. The bounding box is orthogonal to the data file's original co-ordinate axes. The set boundbox command is similar the the commands set axes and set unitcell that display orthogonal co-ordinate axes and the bounding box respectively. 

+#$KSet Display

KSyntax:	set display selected
	set display normal

This command controls the display mode within RasMol. By default, set display normal, RasMol displays the molecule in the representation specified by the user. The command set display selected changes the display mode such that the molecule is temporarily drawn so as to indicate currently selected portion of the molecule. The user specified colour scheme and representation remains unchanged. In this representation all selected atoms are shown in yellow and all non selected atoms are shown in blue. The colour of the background is also changed to a dark grey to indicate the change of display mode. This command is typically only used by external Graphical User Interfaces (GUIs). 

+#$KSet HBonds

KKKSyntax:	set hbonds backbone
	set hbonds sidechain

The RasMol hbonds parameter determines whether hydrogen bonds are drawn between the donor and acceptor atoms of the hydrogen bond, set hbonds sidechain or between the alpha carbon atoms of the protein backbone and between the phosphorous atoms of the nucleic acid backbone, set hbonds backbone. The actual display of hydrogen bonds is controlled by the hbonds command. Drawing hydrogen bonds between protein alpha carbons or nucleic acid phosphorous atoms is useful when the rest of the molecule is shown in only a schematic representation such as backbone, ribbons or strands. his parameter is similar to the RasMol ssbonds parameter. 

+#$KSet FontSize

KSyntax:	set fontsize {<boolean>}

The RasMol set fontsize command is used to control the size of the characters that form atom labels. This value corresponds to the height of the displayed character in pixels. The maximum value of fontsize is 32 pixels, and the default value is 8 pixels high. To display atom labels on the screen use the RasMol label command and to change the colour of displayed labels, use the colour labels command. 

+#$KSet Hetero

KSyntax:	set hetero <boolean>

The RasMol hetero parameter is used to modify the `default' behaviour of the RasMol select command, i.e. the behaviour of select without any parameters. When this value is false, the default select region does not include an heterogenous atoms (refer to the predefined set hetero ). When this value is true, the default select region may contain hetero atoms. This parameter is similar to the RasMol hydrogen parameter which determines whether hydrogen atoms should be included in the default set. If both hetero and hydrogen are true, select without any parameters is equivalent to select all. 

+#$KSet HourGlass

KSyntax:	set hourglass {<boolean>}

The RasMol hourglass parameter allows the user to enable and disable the use of the `hour glass' cursor used by RasMol to indicate that the program is currently busy drawing the next frame. The command set hourglass on enable the indicator, whilst set hourglass off prevents RasMol from changing the cursor. This is useful when spinning the molecule, running a sequence of commands from a script file or using interprocess communication to execute complex sequences of commands. In these cases a `flashing' cursor may be distracting. 

+#$KSet Hydrogen

KSyntax:	set hydrogen <boolean>

The RasMol hydrogen parameter is used to modify the `default' behaviour of the RasMol select command, i.e. the behaviour of select without any parameters. When this value is false, the default select region does not include any hydrogen or deuterium atoms (refer to the predefined set hydrogen ). When this value is true, the default select region may contain hydrogen atoms. This parameter is similar to the RasMol hetero parameter which determines whether heterogenous atoms should be included in the default set. If both hydrogen and hetero are true, select without any parameters is equivalent to select all. 

+#$KSet Kinemage

KKSyntax:	set kinemage <boolean>

The RasMol set kinemage command controls the amount of detail stored in a Kinemage output file generated by the RasMol write kinemage command. The output kinemage files are intended to be displayed by David Richardson's Mage program. set kinemage false, the default, only stores the currently displayed representation in the generated output file. The command set kinemage true, generates a more complex Kinemage that contains both the wireframe and backbone representations as well as the co-ordinate axes, bounding box and crystal unit cell. 

+#$KSet Menus

KSyntax:	set menus <boolean>

The RasMol set menus command enables the canvas window's menu buttons or menu bar. This command is typically only used by graphical user interfaces or to create as large as image as possible when using Microsoft Windows. 

+#$KSet Mouse

KKKKSyntax:	set mouse rasmol
	set mouse insight
	set mouse quanta

The RasMol set mouse command sets the rotation, translation, scaling and zooming mouse bindings. The default value is rasmol which is suitable for two button mice (for three button mice the second and third buttons are synonymous); X-Y rotation is controlled by the first button, and X-Y translation by the second. Additional functions are controlled by holding a modifier key on the keyboard. [Shift] and the first button performs scaling, [shift] and the second button performs Z-rotation, and [control] and the first mouse button controls the clipping plane. The insight and quanta provide the same mouse bindings as other packages for experienced users. 

+#$KSet Radius

KSyntax:	set radius {<value>}

The RasMol set radius command is used to alter the behaviour of the RasMol dots command depending upon the value of the solvent parameter. When solvent is true, the radius parameter controls whether a true Van der Waal's surface is generated by the dots command. If the value of radius is anything other than zero, that value is used as the radius of each atom instead of it true VdW value. When the value of solvent is true, this parameter determines the `probe sphere' (solvent) radius. The parameter may be given as an integer in rasmol units or containing a decimal point in Angstroms. The default value of this parameter is determined by the value of solvent and changing solvent resets radius to its new default value. 

+#$KSet Shadow

KSyntax:	set shadow <boolean>

The RasMol set shadow command enables and disables raytracing of the currently rendered image. Currently only the spacefilling representation is shadowed or can cast shadows. Enabling shadowing will automatically disable the Z-clipping (slabbing) plane using the command slab off. Raytracing typically takes about 10s for a moderately sized protein. It is recommended that shadowing is normally disabled whilst the molecule is being transformed or manipulated, and only enabled once an appropiate viewpoint is selected, to provide a greater impression of depth. 

+#$KSet SlabMode

KKKKKKSyntax:	set slabmode <slabmode>

The RasMol slabmode parameter controls the rendering method of objects cut by the slabbing (z-clipping) plane. Valid slabmode parameters are "reject", "half", "hollow", "solid" and "section". 

+#$KSet Solvent

KSyntax:	set solvent <boolean>

The RasMol set solvent command is used to control the behaviour of the RasMol dots command. Depending upon the value of the solvent parameter, the dots command either generates a Van der Waal's or a solvent acessible surface around the currently selected set of atoms. Changing this parameter automatically resets the value of the RasMol radius parameter. The command set solvent false, the default value, indicates that a Van der Waal's surface should be generated and resets the value of radius to zero. The command set solvent true indicates that a `Connolly' or `Richards' solvent accessible surface should be drawn and sets the radius parameter, the solvent radius, to 1.2 Angstroms (or 300 RasMol units). 

+#$KSet Specular

KSyntax:	set specular <boolean>

The RasMol set specular command enables and disables the display of specular highlights on solid objects drawn by RasMol. Specular highlights appear as white reflections of the light source on the surface of the object. The current RasMol implementation uses an approximation function to generate this highlight. 

The specular highlights on the surfaces of solid objects may be altered by using the specular reflection coefficient, which is altered using the RasMol set specpower command. 

+#$KSet SpecPower

KSyntax:	set specpower {<value>}

The specpower parameter determines the shininess of solid objects rendered by RasMol. This value between 0 and 100 adjusts the reflection coeffient used in specular highlight calculations. The specular highlights are enabled and disabled by the RasMol set specular command. Values around 20 or 30 produce plastic looking surfaces. High values represent more shiny surfaces such as metals, while lower values produce more diffuse/dull surfaces. 

+#$KSet SSBonds

KKKSyntax:	set ssbonds backbone
	set ssbonds sidechain

The RasMol ssbonds parameter determines whether disulphide bridges are drawn between the sulphur atoms in the sidechain (the default) or between the alpha carbon atoms in the backbone of the cysteines residues. The actual display of disulphide bridges is controlled by the ssbonds command. Drawing disulphide bridges between alpha carbons is useful when the rest of the protein is shown in only a schematic representation such as backbone, ribbons or strands. his parameter is similar to the RasMol hbonds parameter. 

+#$KSet Strands

KSyntax:	set strands {<value>}

The RasMol strands parameter controls the number of parallel strands that are displayed in the ribbon representations of proteins. The permissible values for this parameter are 1, 2, 3, 4, 5 and 9. The default value is 5. The number of strands is constant for all ribbons being displayed. However, the ribbon width (the separation between strands) may be controlled on a residue by residue basis using the RasMol ribbons command. 

+#$KSet UnitCell

KSyntax:	set unitcell <boolean>

The RasMol unitcell parameter controls the display of the crystallographic unit cell on the current display. The crystal cell is only enabled if the appropriate crystal symmetry information is contained in the PDB data file. The RasMol command show symmetry display details of the crystal's space group and unit cell axes. The set unitcell command is similar the the commands set axes and set boundbox that display orthogonal co-ordinate axes and the bounding box respectively. 

+#$KSet VectPS

KSyntax:	set vectps <boolean>

The RasMol vectps parameter is use to control the way in which the RasMol write command generates vector PostScript output files. The command set vectps on enables to use of black outlines around spheres and cylinder bonds producing `cartoon-like' high resolution output. However, the current implementation of RasMol incorrectly cartoons spheres that are intersected by more than one other sphere. Hence `ball and stick' models are rendered correctly by not large spacefilling spheres models. Cartoon outlines can be disabled, the default, by the command set vectps off 

+#$Atom Expressions

RasMol atom expressions uniquely identify an arbitrary group of atoms within a molecule. Atom expressions are composed of either primitive expressions, predefined sets, comparison operators, within expressions, or logical (boolean) combinations of the above expression types. 

The logical operators allow complex queries to be constructed out of simpler ones using the standard boolean connectives and, or and not. These may be abbreviated by the symbols "&", "|" and "!" respectively. Parentheses (brackets) may be used to alter the precedence of the operators. For convenience, a comma may also be used for boolean disjunction. 

The atom expression is evaluated for each atom, hence protein and backbone selects protein bacbone atoms, not the protein and [nucleic] acid backbone atoms! 

Examples:	backbone and not helix	
         	within( 8.0, ser70 )	
         	not (hydrogen or hetero)	
         	not *.FE and hetero	
         	8, 12, 16, 20-28	
         	arg, his, lys	

·	Primitive Expressions
·	Predefined Sets
·	Comparison Operators
·	Within Expressions

·	Example Expressions

+#$KExample Expressions

The following table gives some useful examples of RasMol atom expressions. 

Expression	Interpretation

*	All atoms
cys	Atoms in cysteines
hoh	Atoms in heterogenous water molecules
as?	Atoms in either asparagine or aspartic acid
*120	Atoms at residue 120 of all chains
*p	Atoms in chain P
*.n?	Nitrogen atoms
cys.sg	Sulphur atoms in cysteine residues
ser70.c?	Carbon atoms in serine-70
hem*p.fe	Iron atoms in the Heme groups of chain P

+#$KPrimitive Expressions

RasMol primitive expressions are the fundamental building blocks of atom expressions. There are two types of primitive expression. The first type is used to identify a given residue number or range of residue numbers. A single residue is identified by its number (position in the sequence), and a range is specified by lower and upper bounds separated by a hyphen character. For example select 5,6,7,8 is also select 5-8. Note that this selects the given residue numbers in all macromolecule chains. 

The second type of primitive expression specifies a sequence of fields that must match for a given atom. The first part specifies a residue (or group of residues) and an optional second part specifies the atoms within those residues. The first part consists of a residue name, optionally followed by a residue number and/or chain identifier. 

A residue name typically consists of up to three alphabetic characters, which are case insensitive. Hence the primitive expressions SER and ser are equivalent, identifying all serine residues. Residue names that contain non-alphabetic characters, such as sulphate groups, may be delimited using square brackets, i.e. [SO4] 

The residue number is the residue's position in the macromolecule sequence. Negative sequence numbers are permited. For example, SER70 Care must be taken when specifying both residue name and number, it the group at the specified position isn't the specified residue no atoms are selected. 

The chain identifier is typically a single case-insensitive alphabetic or numeric character. Numeric chain identifiers must be distinguished or separated from residue numbers by a colon character. For example, SER70A or SER70:1 

The second part consists of a period character followed by an atom name. An atom name may be up to four alphabetic or numeric characters. 

An asterisk may be used as a wild card for a whole field and a question mark as a single character wildcard. 

+#$KComparison Operators

Parts of a molecule may also be distinguished using equality, inequality and ordering operators on their properties. The format of such comparison expression is a property name, followed by a comparison operator and then an integer value. 

The atom properties that may be used in RasMol are atomno for the atom serial number, elemno for the atom's atomic number (element), resno for the residue number, radius for the spacefill radius in RasMol units (or zero if not represented as a sphere) and temperature for the PDB anisotropic temperature value. 

The equality operator is denoted either "=" or "==". The inequality operator as either "<>", "!=" or "/=". The ordering operators are "<" for less than, "<=" for less than or equal to, ">" for greater than, and ">=" for greater than or equal to. 

Examples:	resno < 23
	temperature >= 900
	atomno == 487

+#$KWithin Expressions

KA RasMol within expression allows atoms to be selected on their proximity to another set of atoms. A within expression takes two parameters separated by a comma and surrounded by parenthesis. The first argument is an integer value called the "cut-off" distance of the within expression and the second argument is any  valid atom expression. The cut-off distance is expressed in either integer RasMol units or Angstroms containing a decimal point. An atom is selected if it is within the cut-off distance of any of the atoms defined by the second argument. This allows complex expressions to be constructed containing nested within expressions. 

For example, the command select within(3.2,backbone) selects any atom within a 3.2 Angstrom radius of any atom in a protein or nucleic acid backbone. Within expressions are particularly useful for selecting the atoms around an active site. 

+#$KPredefined Sets

KRasMol atom expressions may contain predefined sets. These sets are single keywords that represent portions of a molecule of interest. Predefined sets are often abbreviations primitive atom expressions, and in some cases of selecting areas of a molecule that could not otherwise be distinguished. A list of the currently predefined sets is given below. In addition to the sets listed here, RasMol also treats element names (and their plurals) as predefined sets containing all atoms of that element type, i.e. the command select oxygen is equivalent to the command select elemno=8. 

at	acidic	acyclic	aliphatic	
alpha	amino	aromatic	backbone	
basic	bonded	buried	cg	
charged	cyclic	cystine	helix	
hetero	hydrogen	hydrophobic	ions	
large	ligand	medium	neutral	
nucleic	polar	protein	purine	
pyrimidine	selected	sheet	sidechain	
small	solvent	surface	turn	
water	

+#$KAT Set

KThis set contains the atoms in the complementary nucleotides adenosine and thymidine (A and T respectively). All nucleotides are classified as either the set at or the set cg This set is equivalent to the RasMol atom expressions "a,t" and "nucleic and not cg" 

+#$KAcidic Set

KThe set of acidic amino acids. These are the residue types Asp and Glu. All amino acids are classified as either acidic, basic or neutral. This set is equivalent to the RasMol atom expressions "asp, glu" and "amino and not (basic or neutral)" 

+#$KAcyclic Set

KThe set of atoms in amino acids not containing a cycle or ring. All amino acids are classified as either cyclic or acyclic. This set is equivalent to the RasMol atom expression "amino and not cyclic" 

+#$KAliphatic Set

KThis set contains the aliphatic amino acids. These are the amino acids Ala, Gly, Ile, Leu and Val. This set is equiavlent to the RasMol atom expression "ala, gly, ile, leu, val" 

+#$KAlpha Set

KThe set of alpha carbons in the protein molecule. This set is approximately equivalent to the RasMol atom expression "*.CA" This command should not be confused with the predefined set helix which contains the atoms in the amino acids of the protein's alpha helices. 

+#$KAmino Set

KThis set contains all the atoms contained in amino acid residues. This is useful for distinguishing the protein from the nucleic acid and heterogenous atoms in the current molecule database. 

+#$KAromatic Set

KThe set of atoms in amino acids containing aromatic rings. These are the amino acids His, Phe, Trp and Tyr. Because they contain aromatic rings all members of this set are member of the predefined set cyclic. This set is equivalent to the RasMol atom expressions "his, phe, trp, tyr" and "cyclic and not pro" 

+#$KBackbone Set

KKThis set contains the four atoms of each amino acid that form the polypeptide N-C-C-O backbone of proteins, and the atoms the sugar phosphate backbone of nucleic acids. Use the RasMol predefined sets protein and nucleic to distinguish between the two forms of backbone. Atoms in nucleic acids and proteins are either backbone or sidechain. This set is equivalent to the RasMol expression "(protein or nucleic) and not sidechain" 

The predefined set mainchain is synonymous with the set backbone. 

+#$KBasic Set

KThe set of basic amino acids. These are the residue types Arg, His and Lys. All amino acids are classified as either acidic, basic or neutral. This set is equivalent to the RasMol atom expressions "arg, his, lys" and "amino and not (acidic or neutral)" 

+#$KBonded Set

KThis set contain all the atoms in the current molecule database that are bonded to atleast one other atom. 

+#$KBuried Set

KThis set contains the atoms in those amino acids that tend (prefer) to buried inside protein, away from contact with solvent molecules. This set refers to the amino acids preference and not the actual solvent acessibility for the current protein. All amino acids are classified as either surface or buried. This set is equivalent to the RasMol atom expression "amino and not surface" 

+#$KCG Set

KThis set contains the atoms in the complementary nucleotides cytidine and guanoine (C and G respectively). All nucleotides are classified as either the set at or the set cg This set is equivalent to the RasMol atom expressions "c,g" and "nucleic and not at" 

+#$KCharged Set

KThis set contains the charged amino acids. These are the amino acids that are either acidic or basic. Amino acids are classified as being either charged or neutral. This set is equivalent to the RasMol atom expressions "acidic or basic" and "amino and not neutral" 

+#$KCyclic Set

KThe set of atoms in amino acids containing a cycle or rings. All amino acids are classified as either cyclic or acyclic. This set consists of the amino acids His, Phe, Pro, Trp and Tyr. The members of the predefined set aromatic are members of this set. The only cyclic but non-aromatic amino acid is proline. This set is equivalent to the RasMol atom expressions "his, phe, pro, trp, tyr" and "aromatic or pro" and "amino and not acyclic" 

+#$KCystine Set

KThis set contains the atoms of cysteine residues that form part of a disulphide bridge, i.e. half cystines. RasMol automatically determines disulphide bridges, if neither the predefined set cystine nor the RasMol ssbonds command have been used since the molecule was loaded. The set of free cysteines may be determined using the RasMol atom expression "cys and not cystine" 

+#$KHelix Set

KThis set contains all atoms that form part of a protein alpha helix as determined by either the PDB file author or Kabsch and Sander's DSSP algorithm. By default, RasMol uses the secondary structure determination given in the PDB file if it exists. Otherwise, it uses the DSSP algorithm as used by the RasMol structure command. 

This predefined set should not be confused with the predefined set alpha which contains the alpha carbon atoms of a protein. 

+#$KHetero Set

KThis set contains all the heterogenous atoms in the molecule. These are the atoms described by HETATM entries in the PDB file. These typically contain water, cofactors and other solvents and ligands. All hetero atoms are classified as either ligand or solvent atoms. These heterogenous solvent atoms are further classified as either water or ions. 

+#$KHydrogen Set

KThis predefined set contains all the hydrogen and deuterium atoms of the current molecule. This predefined set is equivalent to the RasMol atom expression "elemno=1" 

+#$KHydrophobic Set

KThis set contains all the hydrophobic amino acids. These are the amino acids Ala, Leu, Val, Ile, Pro, Phe, Met and Trp. All amino acids are classified as either hydrophobic or polar. This set is equivalent to the RasMol atom expressions "ala, leu, val, ile, pro, phe, met, trp" and "amino and not polar" 

+#$KIons Set

KThis set contains all the heterogenous phosphate and sulphate ions in the current molecule data file. A large number of these ions are sometimes associated with protein and nucleic acid structures determined by X-ray crystallography. These atoms tend to clutter an image. All hetero atoms are classified as either ligand or solvent atoms. All solvent atoms are classified as either water or ions. 

+#$KLarge Set

KAll amino acids are classified as either small, medium or large. This set is equivalent to the RasMol atom expression "amino and not (small or medium)" 

+#$KLigand Set

KThis set contains all the heterogenous cofactor and ligand moieties that are contained in the current molecule data file. At this set is defined to be all hetero atoms that are not solvent atoms. Hence this set is equivalent to the RasMol atom expression "hetero and not solvent" 

+#$KMedium Set

KAll amino acids are classified as either small, medium or large. This set is equivalent to the RasMol atom expression "amino and not (large or small)" 

+#$KNeutral Set

KThe set of neutral amino acids. All amino acids are classified as either acidic, basic or neutral. This set is equivalent to the RasMol atom expression "amino and not (acidic or basic)" 

+#$KNucleic Set

KThe set of all atoms in nucleic acids, which consists of the four nucleotide bases adenosine, cytidine, guanosine and thymidine (A, C, G and T respectively). All neucleotides are classified as either purine or pyrimidine. This set is equivalent to the RasMol atom expressions "a,c,g,t" and "purine or pyrimidine" 

+#$KPolar Set

KThis set contains the polar amino acids. All amino acids are classified as either hydrophobic or polar. This set is equivalent to the RasMol atom expression "amino and not hydrophobic" 

+#$KProtein Set

KThe set of all atoms in proteins. This consists of the RasMol predefined set amino and common post-translation modifications. 

+#$KPurine Set

KThe set of purine nucleotides. These are the bases adenosine and guanosine (A and G respectively). All nucleotides are either purines or pyrimidines. This set is equivalent to the RasMol atom expressions "a,g" and "nucleic and not purine" 

+#$KPyrimidine Set

KThe set of pyrimidine nucleotides. These are the bases cytidine and thymidine (C and T respectively). All nucleotides are either purines or pyrimidines. This set is equivalent to the RasMol atom expressions "c,t" and "nucleic and not pyrimidine" 

+#$KSelected Set

KThis set contains the set of atoms in the currently selected region. The currently selected region is defined by the preceding select or restrict command and not the atom expression containing the selected keyword. 

+#$KSheet Set

KThis set contains all atoms that form part of a protein beta sheet as determined by either the PDB file author or Kabsch and Sander's DSSP algorithm. By default, RasMol uses the secondary structure determination given in the PDB file if it exists. Otherwise, it uses the DSSP algorithm as used by the RasMol structure command. 

+#$KSidechain Set

KThis set contains the functional sidechains of any amino acids and the base of each nucleotide. These are the atoms not part of the polypeptide N-C-C-O backbone of proteins or the sugar phosphate backbone of nucleic acids. Use the RasMol predefined sets protein and nucleic to distinguish between the two forms of sidechain. Atoms in nucleic acids and proteins are either backbone or sidechain. This set is equivalent to the RasMol expression "(protein or nucleic) and not backbone" 

+#$KSmall Set

KAll amino acids are classified as either small, medium or large. This set is equivalent to the RasMol atom expression "amino and not (medium or large)" 

+#$KSolvent Set

KThis set contains the solvent atoms in the molecule co-ordinate file. These are the heterogenous water molecules, phosphate and sulphate ions. All hetero atoms are classified as either ligand or solvent atoms. All solvent atoms are classified as either water or ions. This set is equivalent to the RasMol atom expressions "hetero and not ligand" and "water or ions" 

+#$KSurface Set

KThis set contains the atoms in those amino acids that tend (prefer) to be on the surface of proteins, in contact with solvent molecules. This set refers to the amino acids preference and not the actual solvent accessibility for the current protein. All amino acids are classified as either surface or buried. This set is equivalent to the RasMol atom expression "amino and not buried" 

+#$KTurn Set

KThis set contains all atoms that form part of a protein turns as determined by either the PDB file author or Kabsch and Sander's DSSP algorithm. By default, RasMol uses the secondary structure determination given in the PDB file if it exists. Otherwise, it uses the DSSP algorithm as used by the RasMol structure command. 

+#$KWater Set

KThis set contains all the heterogenous water molecules in the current database. A large number of water molecules are sometimes associated with protein and nucleic acid structures determined by X-ray crystallography. These atoms tend to clutter an image. All hetero atoms are classified as either ligand or solvent atoms. The solvent atoms are further classified as either water or ions. 

+#$Colour Schemes

The RasMol colour command allows different objects (such as atoms, bonds and ribbon segments) to be given a specified colour. Typically this colour is either a RasMol predefined colour name or an RGB triple. Additionally RasMol also supports cpk, amino, chain, group, shapely, structure, temperature, charge and user colour schemes for atoms, a hbond type colour scheme for hydrogen bonds and electrostatic potential colour scheme for dot surfaces. The currently predefined colour names are listed below with their corresponding RGB triplet. 

blue	[0,0,256]	black	[0,0,0]	
cyan	[0,255,255]	green	[0,255,0]	
greenblue	[46,139,87]	magenta	[255,0,255]	
orange	[255,165,0]	purple	[160,32,240]	
red	[255,0,0]	redorange	[255,69,0]	
violet	[238,130,238]	white	[255,255,255]	
yellow	[255,255,0]	

+#$KAmino Colours

The RasMol amino colour scheme colours amino acids according to traditional amino acid properties. The purpose of colouring is to identify amino acids in an unusual or surprising environment. The outer parts of a protein that are polar are visible (bright) colours and non-polar residues darker. Most colours are hallowed by tradition. This colour scheme is similar to the shapely scheme. 

ASP, GLU	bright red	[230,10,10]	
LYS, ARG	blue	[20,90,255]	
CYS, MET	yellow	[230,230,0]	
SER, THR	orange	[250,150,0]	
PHE, TYR	mid blue	[50,50,170]	
ASN, GLN	cyan	[230,230,0]	
GLY	light grey	[235,235,235]	
LEU, VAL, ILE	green	[15,130,15]	
ALA	dark grey	[200,200,200]	
TRP	pink	[180,90,180]	
HIS	pale blue	[130,130,210]	
PRO	flesh	[220,150,130]	

+#$KChain Colours

The RasMol chain colour scheme assigns each macromolecular chain a unique colour. This colour scheme is particularly useful for distinguishing the parts of multimeric structure or the individual `strands' of a DNA chain. 

+#$KCPK Colours

The RasMol cpk colour scheme is based upon the colours of the popular plastic spacefilling models which were developed by Corey, Pauling and later improved by Kultun. This colour scheme colour `atom' objects by the atom (element) type. This is the scheme conventionally used by chemists. The assignment of element type to colours is given below. 

Carbon	light grey	[200,200,200]	
Oxygen	red	[240,0,0]	
Hydrogen	white	[255,255,255]	
Nitrogen	light blue	[143,143,255]	
Sulphur	yellow	[255,200,50]	
Phosphorous	orange	[255,165,0]	
Chlorine	green	[0,255,0]	
Bromine, Zinc	brown	[165,42,42]	
Sodium	blue	[0,0,255]	
Iron	purple	[160,32,240]	
Calcium, Metals	dark grey	[128,128,144]	
unknown	deep pink	[255,20,147]	

+#$KGroup Colours

The RasMol group colour scheme colour codes residues by their position in a macromolecular chain. Each chain is drawn as a smooth spectrum from blue through green, yellow and orange to red. Hence the N terminus of proteins and 5' terminus of nucleic acids are coloured red and the C terminus of proteins and 3' terminus of nucleic acids are drawn in blue. If a chain has a large number of heterogenous molecules associated with it, the macromolecule may not be drawn in the full `range' of the spectrum. 

+#$KShapely Colours

The RasMol shapely colour scheme colour codes residues by amino acid property. This scheme is based upon Bob Fletterick's "Shapely Models". Each amino acid and nucleic acid residue is given a unique colour. The shapely colour scheme is used by David Bacon's Raster3D program. This colour scheme is similar to the amino colour scheme. 

+#$KStructure Colours

The RasMol structure colour scheme colours the molecule by protein secondary structure. Alpha helices are coloured magenta, [240,0,128], beta sheets are coloured yellow, [255,255,0], turns are coloured pale blue, [96,128,255] and all other residues are coloured white. The secondary structure is either read from the PDB file (HELIX and SHEET records), if available, or determined using Kabsch and Sander's DSSP algorithm. The RasMol structure command may be used to force DSSP's structure assignment to be used. 

+#$KTemperature Colours

The RasMol temperature colour scheme colour codes each atom according to the anisotropic temperature (beta) value stored in the PDB file. Typically this gives a measure of the mobility/uncertainty of a given atom's position. High values are coloured in warmer (red) colours and lower values in colder (blue) colours. This feature is often used to associate a "scale" value [such as amino acid variability in viral mutants] with each atom in a PDB file, and colour the molecule appropriately. 

The difference between the temperature and charge colour schemes is that increasing temperature values proceed from blue to red, whereas increasing charge valuse go from red to blue. 

+#$KCharge Colours

The RasMol charge colour scheme colour codes each atom according to the charge value stored in the input file (or beta factor field of PDB files). High values are coloured in blue (positive) and lower values coloured in red (negative). Rather than use a fixed scale this scheme determines the maximum and minimum values of the charge/temperature field and interpolates from red to blue appropriately. Hence, green cannot be assumed to be `no net charge' charge. 

The difference between the charge and temperature colour schemes is that increasing temperature values proceed from blue to red, whereas increasing charge valuse go from red to blue. 

If the charge/temperature field stores reasonable values it is possible to use the RasMol colour dots potential command to colour code a dot surface (generated by the dots command) by electrostatic potential. 

+#$KUser Colours

The RasMol user colour scheme allows RasMol to use the colour scheme stored in the PDB file. The colours for each atom are stored in COLO records placed in the PDB data file. This convention was introduced by David Bacon's Raster3D program. 

+#$KHBond Type Colours

The RasMol type colour scheme applies only to hydrogen bonds, hence is used in the command "colour hbonds type" This scheme colour codes each hydrogen bond according to the distance along a protein chain between hydrogen bond donor and acceptor. This schematic representation was introduced by Belhadj-Mostefa and Milner-White. This representation gives a good insight into protein secondary structure (hbonds forming alpha helices appear red, those forming sheets appear yellow and those forming turns appear magenta). 

Offset	Colour	Triple	
  +2	white  	[255,255,255]	
  +3	magenta	[255,0,255]	
  +4	red    	[255,0,0]	
  +5	orange 	[255,165,0]	
  -3	cyan   	[0,255,255]	
  -4	green  	[0,255,0]	
default	yellow	[255,255,0]	

+#$KPotential Colours

The RasMol potential colour scheme applies only to dot surfaces, hence is used in the command "colour dots potential" This scheme colours each currently displayed dot by the electrostatic potential at that point in space. This potential is calculated using Coulomb's law taking the temperature/charge field of the input file to be the charge assocated with that atom. This is the same interpretation used by the colour charge command. Like the charge colour scheme low values are blue/white and high values are red. The table below shows the static assignment of colours using a dielectric constant value of 10. 

 25 < V      	red   	[255,0,0]	
 10 < V <  25	orange	[255,165,0]	
  3 < V <  10	yellow	[255,255,0]	
  0 < V <   3	green 	[0,255,0]	
 -3 < V <   0	cyan  	[0,255,255]	
-10 < V <  -3	blue  	[0.0.255]	
-25 < V < -10	purple	[160,32,240]	
        V < -25	white 	[255,255,255]