DINO: Visualizing Structural Biology
Table of Contents
Previous
Next
User Manual

6 Structure Dataset

The structure dataset is probably the most complex of all datasets present in DINO. Its most basic element is the atom. There are two different ways to think about the organization of atoms in this dataset. In one organization, all atoms are in a list and carry properties such as position, name, number, chemical-info (element, charge, vdW-radius), residue-name, residue-number, chain-id, model etc .... Another way is to envision a hierarchy where the structure dataset consists of of or more models, each model consists of one or more chains, each chain consists of one or more residues and each residue is build up from atoms, which carry atom-only properties such as position, chemical-info, name and number.

Most file-formats use the first representation. DINO internaly uses the second way to organize the structural data, but for selection and direct addressing purposes, its easier to think about it in the first way.

Additionally, a trajectory can be loaded into a structure dataset. A trajectory consists of a collection of frames, each with the same set of atoms but different coordinates for each atom (see also below). The trajectory can be played while retaining full interactivity.

Structure Dataset and Object Properties

Property

S1

G2

Description

Dataset Properties

center

X

X

center of rotation, default equals center of gravity

rot

X

X

rotation matrix

trans

X

X

translation vector

smode

X

X

selection mode, either atom or residue , default is atom

tfast

X

X

fast updates of trajectories, cannot be used with render mode custom, default is on

Object Properties

center

 

X

geometric center of object

Structure Dataset Element Properties

Property

S3

G4

L5

R6

Description

element properties shared between dataset and object; modified with .dataset set

aname

 

X

X

 

atom name as present in coordinate file

anum

 

X

X

X

atom number as present in coordinate file

bfac

 

X

X

X

crystallographic temperature factor (if present)

chain

 

X

X

 

alphanumeric chain id

class

 

X

 

 

class of structure: protein, na or misc

ele

 

X

X

 

chemical element symbol

model

 

X

X

X

model number

rname

 

X

X

 

residue name as present in coordinate file

rnum

 

X

X

X

residue number

rtype

X

X

X

 

residue type: coil (default), helix or strand

weight occ

 

X

X

 

weight or crystallographic occupancy (if present)

xyz

 

X

 

 

position of atom

x

 

 

X

X

x-coordinate of atom

y

 

 

X

X

y-coordinate of atom

z

 

 

X

X

z-coordinate of atom

element properties copied from dataset to object, setting on the dataset changes default

color

X

X

 

 

color, either a color name or an explicit {r,g,b} triplet

vdwr

X

X

X

X

VdWaals radius

6.1 Structure Objects

New structure objects are created with new . There are two object types for the structure dataset:

Syntax: .struct new [-name NAME][-type TYPE][-set SET] [-selection SEL]

NAME defaults to the dataset name. TYPE defaults to connect . Object properties that can be set are listed in Table 8 (P. 27). A selection with selectable atom properties (column L in Table 9 (P. 28)) can be given.

Example: load myo.pdb
         .myo new -name all
         .myo new -name ca -type trace
         .myo new -name prot -sel not rname=HEM
         .myo new -name helix1 -type trace -sel rnum=4:14

6.2 Structure Dataset Commands

Following are all structure dataset commands:

new : creates a new object (see "6.1 Structure Objects" on page 27)

set get : retrieves or modifies a dataset property (columns S and G in Table 8 (P. 27))

Syntax: .struct set PV[, PV ...] 
        .struct get P

restrict : shadow out a subset of the dataset which will not be considered in selection or property setting (see "5.1.7 Dataset Restriction" on page 25).

Syntax: .struct restrict SELECTION

delete : remove one or more objects

Syntax:.struct delete obj [obj2 ...]

load step play stop : trajectory related commands (see "6.6 Trajectories" on page 31)

grab reset fix center : transformation related commands (see "5.1.8 Transformation" on page 25) ; reset additionally can have the parameters all (default) or center , the latter will set the center of rotation back to the center of geometry after a modification with scene set center

Syntax:.struct reset [all | center]
Example: .struct grab dials          // dial input moves dataset
         .struct set center=[$CS]
         // rotation now around current selection
         .struct reset center
         // rotation now around geometric center of dataset
         scene grab dials         // dial input back to camera

write : writes the dataset into a file ( taking restriction into account !)

Syntax: .struct write file.ext [-type T]

The type of the file is recognized by its extension if not explicitly given. Supported types with extensions are listed in Table 10 (P. 29).

connect : Adds a bond between two atoms (see "6.5 Connectivity" on page 31).

Structure Dataset Write formats

extension

type

description

.pdb

pdb

RCSB / Brookhaven PDB format

.xpl

xplorc

XPLOR / CNS format

.crd

charmm

CHARMM format

.xyzr

xyzr

suitable as input for MSMS

6.3 Structure Object Commands

Structure object commands are issued as:

Syntax: .struct.obj command [parameters]

Following is a list of all structure object commands:

renew : Similar to dataset command new , except the type and name are already determined, so only selection and setting is possible. If either selection or setting (or both) are omitted, the current selection resp. setting is maintained (see "5.1.5 Modifying Objects" on page 23).

Syntax: .struct.obj renew [-selection SEL] [-set SET]

show hide : turns display of the object in the graphics window on or off. Identical to clicking on the object name in the object menu (see "4.12 The GUI" on page 20).

Syntax: .struct.obj show
        .struct.obj hide

clear : removes all labels. Hint: use .struct.* clear to get rid of all labels.

set get : modify or retrieve structure object properties (columns S and G in Table 8 (P. 27) under structure object properties and see "5.1.5 Modifying Objects" on page 23).

Syntax: .struct.obj get P
        .struct.obj set PV [-selection SEL] [-range [src=SRC][,PROP=prop][val=VAL1:VAL2]]
Example: .myo.all set color=cyan -sel ele=C
         .myo.ca set color=green:purple -range prop=rnum,val=1:146

render : modifies the graphical appearance of an object (see "6.7 Render & Graphical Appearance" on page 32)

write : Similar to the the dataset command write , the same file-types are supported (see Table 10 (P. 29)). Only the atoms in the object are written and the dataset restriction is ignored.

Syntax: .struct.obj write file.ext [-type T]

If no command is given, then get center is used. This is an useful shortcut for e.g. centering the object in the graphics window:

Example: // these two are identical
         scene center [.myo.all get center]
         scene center [.myo.all]

6.4 Structure Element Commands

The syntax for addressing an element in a structure dataset is

Syntax: .struct:ELEMENT command [parameters]

The format of ELEMENT depends on the dataset itself, to be more precise whether chain and/or model are present. The general format is

ELEMENT = [model.][chain.][rnum.]aname

model , chain and rnum are only required if the structure dataset contains different models, chains and/or residues. The atom name is case sensitive and must be entered as present in the coordinate file.

// no chain or model
.struct:143.CA
// chain also present
.struct:B.99.N
// model and chain present
.struct:3.A.76.O
// model but no chain
.struct:2.81.CB

Since the dataset 'knows' if a chain or model is present, it expects a certain format. No wild-cards can be used.

The only command implemented so far is get, which retrieves an atom property:

Syntax: .struct:[model.][chain.][rnum.]aname get PROPERTY

If no command is given, get xyz (the coordinate of the atom) is assumed.

Example: scene center [.myo:148.FE] 
         // is equal to [.myo:148.FE get xyz]

6.5 Connectivity

auto-connectivity

As mentioned above, a structure dataset is automatically created when loading a file which contains coordinate-data. Although most coordinate-files do not contain explicit connectivity information, the connectivity is implicitly given by:

DINO uses an auto-connectivity routine that exploits both implicit and explicit connectivity rules. It contains an internal connectivity table for the 20 amino-acids and the 5 bases, including a rule which atoms connect residues n and n+17 . If an atom is encountered that is not defined by the internal connectivity table, it is connected to all atoms that lie within CUTOFF of its position; where CUTOFF is defined as the sum of the two van der Waals radii divided by two. Additionally, connectivity defined in the coordinate-file is considered (e.g. CONECT in PDB). As a consequence, disulfide bridges must be either explicitely defined with CONECT, or the atom name of the cystein sulfur (normally SG) must be changed to force distance-based connectivity (e.g. into SS).

manual connectivity

The structure dataset command connect can be utilized to connect two atoms together

Syntax: .struct connect ELEMENT1 ELEMENT2

ELEMENT is a structure dataset element in the form as explained in the direct access section above.

Example: .struct connect A.13.SG B.156.SG

6.6 Trajectories

Trajectories are an addition to a structure dataset. They provide a collection of frames which contain new coordinates for each atom of the structure dataset. First a trajectory needs to be loaded from a file

Syntax: .struct load file.ext [-type T] [-swap]

If the type is not given, it is guessed from the extension. Currently, CHARMM (extension .trj type charmm ) and CNS (extension .crd , type cns ) trajectories are supported The parameter -swap can be used to apply byte-order swapping to the trajectory.

Once trajectories are loaded, they can be played continuously or each frame can be looked at one by one.

Syntax: .struct play [-wait w] [-begin b] [-end e] [-step s] [-mode m]
        .struct stop
        .struct step [n]

wait denotes the number of wait-cycles until the next frame is displayed, default is 0. begin and end specify from which to which frame the trajectory shall run, default is 1 to max. mode can be loop (default) or rock .

While the trajectory is playing, full interactivity is available.

The structure dataset property tfast can be used to turn off the recalculation of internal parameters needed for render mode custom. This will considerably speed up trajectory display, but will only work if all structure dataset objects are not in render mode custom . This flag is true (fast trajectory) per default.

6.7 Render & Graphical Appearance

The command render modifies the graphical appearance of an object:

Syntax: .struct.obj render PV [,PV ...]

The render properties applicable to the structure dataset objects are given in Table 11 (P. 33). Depending on the type of object (connect or trace), several rendering modes are available, specified as

Syntax: .struct.obj render MODE

Modes:

Additionally, the command material can be used to change the material settings, this has been described above, see "5.1.6 Graphical Appearance" on page 24.

 

Structure Dataset Object Render Properties

Property

C

T

Description

Default

arrowt

 

X

width of arrow of strand in hsc rendering, expressed as ratio to strandw

0.5

bw

X

X

bondwidth, affects modes custom, tube and hsc

0.2

detail

 

X

number of spline interpolations for modes hsc, tube and sline, increase for better quality

5

detail2

X

X

number of spherical interpolations for spheres and circular subdivisions (per 90deg) for modes custom, hsc and tube

3

fast

X

X

turns off point and line antialiasing to increase drawing speed

 

helixt

 

X

helix thickness in mode hsc

0.3

helixw

 

X

helix width in mode hsc

1.0

intpol

 

X

if this flag is true, colors will be smoothly interpolated on segments for render modes sline , tube and hsc

true

lw

X

X

linewidth, will accept fractional values, but effect depends on hardware implementation

1.0

nice

X

X

point and line antialiasing is active

X

sr

X

 

sphere radius in custom mode

0.2

strandm

 

X

strand method in mode hsc, 0 is default, 1 causes smoothing

0

strandt

 

X

strand thickness in mode hsc

0.3

strandw

 

X

strand width in mode hsc

1.2

t

X

X

transparency, 1.0 is opaque, 0.0 fully transparent; works on lines in modes simple and sline ; works also for modes hsc and tube

1.0

tuber

 

X

axial ratio of tube cross section

1.0


1. indicates that this property can be modified with set

2. indicates that this property can be retrieved with get

3. indicates wether this property can bet changed with set

4. indicates wether this property can be retrieved with get

5. indicates a selectable property

6. indicates a property that can be used in a range statement

7. The structure of this internal table is quite simple.In a future version of DINO, users will be able to supply their own connectivity for custom residues.