EMBL logo

Biological Small Angle Scattering Group

BioSAXS logo

HOME USER INFO BEAMLINE RESEARCH SOFTWARE COURSES
 

MASSHA manual

 Modelling of Atomic Structures and SHape Analysis

 

Introduction

Input/Output commands

Modeling (heterodimer, homodimer, multi body)

Hot keys

Information panel

Parameter panel

Transformations

Zooming

Troubleshooting

Oligomer modeling

References

Electronic reprint Copyright © IUCr

Introduction

MASSHA is a 3D graphic system to display and manipulate atomic structures and low resolution models. The program is coupled with computational modules to allow interactive and automated rigid body refinement against solution scattering data. MASSHA is compiled using Compaq Visual Fortran v. 6.6 with QuickWin graphics library and runs under MS Windows 9x/NT/2000/XP. 

All executable files should be copied into C:\ATSAS directory.

top

Input/Output Commands

File formats

MASSHA reads two types of models :

Atomic structures in a standard ASCII PDB file format (PDB-objects, extensions *.PDB or *.ENT) Those can be atomic structures from the Protein Data Bank [1] or e.g. the models produced by the ab inito programs DAMMIN and GASBOR.
NOTE: MASSHA reads and displays only CA or P atoms!!

Low-resolution envelopes represented as surfaces (binary files with the extension *.SLD, SLD-objects). These files are created by the program FLM2SLD from the spherical harmonics files (extension *.flm). The latter files are written on output by the programs SASHA and CRYSOL/CRYSON. The user may directly load an FLM file, in which case FLM2SLD will automatically be invoked by MASSHA

Loading an object

To load a new object, use the ADD BODY option from the main menu. By default, the objects are loaded to their absolute positions as specified in the input file, without any rotation and movement. The geometrical center of an object can be later moved to the origin or to the coordinates specified by the user (see TRANSFORMATIONS) The initial scale of the graphic window is selected using the gabarites of the first body.

By default, SLD-objects are rendered as wireframes and PDB-objects as connected C-alpha or P backbones. When launching the program from a console, the PDB or SLD filenames can be added as command line arguments.

NOTE: A maximum of nine objects can be displayed simultaneously.

Removing an object

To remove the last loaded object from MASSHA, use the REMOVE BODY option from the main menu. Subsequently using this button one can remove objects one by one. To remove all loaded objects at once and to clear the 3D graphic screen use CLEAR submenu option in the FILE menu.

PDB files saving

To save an active PDB-object in its current position use COMMANDS -> Save PDB. The object is saved into a file phsaveX.pdb where X is its number as loaded. If all objects are active ("0" in the upper left corner of the graphic window), all PDB objects will be saved. This option is convenient for saving the results of interactive or automated model building (see MODELLING).

NOTE :

The SLD objects are not saved.
If the file you loaded is "phsaveX.pdb", the program will name the saved file "phsaveX0.pdb"

PDB files saving

The FILE menu option provides several possibilities of saving graphic or text information. Use PRINT to print the content of a window. Use SAVE SCREEN to create a *.bmp file with the current program image, or use SELECT ALL (for selecting the entire window in graphic form), SELECT GRAPH ( for selecting a rectangular part of the window by double mouse click) or SELECT TEXT ( for selecting the text part of the window). The image will be copied onto a clipboard and can further be pasted to a graphical Windows application (Word, PowerPoint, Paintbrush etc).

NOTE : All these commands will address the currently active window, so be sure to select the graphic window by mouse if you wish to print/save this window.

Exit

MASSHA uses external program modules during the modelling.

IF YOU USE(D) MODELLING, ALWAYS TERMINATE MASSHA WITH THE FILE -> EXIT COMMAND.

If you do so with Windows commands (Alt+F4 or upper-right X), the computational modules may hang in memory and you will have to kill them manually

top

Modelling

This menu item permits to perform interactive and/or automated rigid body refinement against scattering data. The scattering amplitudes of the subunits must be precalculated and saved in the current directory onto the files with the same names as the structure files (*.pdb or *.alm) with the extension "*.alm". This is performed by the program "FLM2ALM" for SLD-objects and by the programs "CRYSOL/CRYSON" for PDB-objects.

Heterodimer

Rigid body refinement of a complex consisting of two unequal subunits (or equal subunits without assuming a 2-fold symmetry). These MUST be the first and the second loaded bodies

The parameters to be specified:

1. Input data file

Input file containing experimental data to be fitted. This name may also be selected with a file chooser by clicking on the "Select" option.

2. Scale for s-vector

Abscissa units in the input file:

Value

Meaning

Units

1

4*pi*sin(theta)/lambda

1/angstrom

2

4*pi*sin(theta)/lambda

1/nm

3

2* sin(theta)/lambda

1/angstrom

4

2* sin(theta)/lambda

1/nm

3. Fitting range

Which portion of the experimental data to fit (as a fraction of sMax)

4. Output file

The file containing the currently plotted fit

5,7.

The *.alm file names of the first and the second subunits of the complex

6,8

The amplitudes of the 1st and 2nd subunit will be multiplied by these factors (e.g. contrasts) to compute the total intensity

MASSHA warns the user if the given information is incorrect or incomplete.

The <COMPUTE> button runs the program "alm22int", calculating the complex scattering intensity. The fit to the experimental data is plotted in a separate Curve Fit window and remains on the display at the user's disposal. The user may change positions of the two subunits by manipulating the objects in the 3D window and then recalculate the fit by clicking <COMPUTE>. The user may move/rotate either the first or the second body, or both of them.

The <REFINE>button runs the program "dimref" which performs an automated rigid body refinement around the current position. The position of the second subunit is varied aroung the current position by deltaX=deltaY=deltaZ=+-(Space Increment) (i.e. three points in each direction). The default increment is computed by MASSHA from the dimensions of the first body (see PARAMETERS), can be changed by PARAMETERS -> Space Increment. The orientation of the second subunit is varied aroung its current orientation by rotating aroung X, Y and Z by +-2*(Angle Increment) (i.e. five points for each rotation) The default angle increment is 5 degrees, and can be changed by PARAMETERS -> Angle Increment. After the refinement, the fit is plotted and the refined position of the second body is displayed; its old position is also displayed as the third body. After the refinement, the user may manupulate the second body manually and press <COMPUTE>, or re-launch <REFINE>from the current position. The user may also re-select the rotation center of the second body (see TRANSFORMATIONS)

The structure of the entire refined heterodimer corresponding to the INITIAL position of the first body is saved onto a file "dimref.pdb".

The <HIDE PLOT>button removes the CURVE FIT graphic window.

The <CANCEL>button hides the dialog window.

NOTE : When the rotation center does not coincide with the center of mass, minor deviations may be observed between COMPUTE and REFINE (due to termination effects)

Homodimer

A special mode for rigid body refinement of a homodimeric complex assuming 2-fold symmetry. The monomer MUST be the first loaded body

The parameters to be specified are similar to those for the HETERODIMER. The difference is that the amplitudes for the second body are automatically computed from those of the first body.

To use the HOMODIMER option, load the first body, select it to be active and position it to the origin using the TRANSFORMATION option. Then move the body along X by -DX/2 where DX is the approximate distance between the monomers. After pressing HOMODIMER, the second momomer is generated automatically assuming Y to be the 2fold symmetry axis. Specify the parameters required (see HETERODIMER) with the exception of the second body amplitudes and factor.

MASSHA warns the user if the information is incorrect or incomplete.

The <COMPUTE>button runs the program "alm2in2" calculating the complex scattering intensity. The fit to the experimental data is plotted in a separate Curve Fit window. The user may change position/orientation of the first body and then recalculate the fit by clicking <COMPUTE>.

If the FIRST body is active, the second body is re-generated using the 2-fold symmetry transformation.
NOTE : only rotations around the center of mass are allowed (the center residue is automatically reset to "0" in the HOMODIMER mode")

If BOTH bodies are active, the entire dimer is moved/rotated.
NOTE : only rotations around Y and movements along Y are allowed in this mode! The SECOND body cannot be active!

The <REFINE>button runs the program "dimref2" that performs automated rigid body refinement around the current position. For the definition of the spatial and angular increments increments, see description of HETERODIMER. The position of the first subunit is varied aroung the current position by deltaX =+-2*(Space Increment) (a total of five points along X). The orientation of the first subunit is varied aroung the current orientation by rotating aroung X, Yand Z by +-5*(Angle Increment) (i.e. eleven rotations around each axis) After the refinement, the fit is plotted, the second body is re-generated from the refined position of the first one. The old position of the first body is displayed as the third body.

The structure of the entire refined homodimer is saved onto a file "dimref2.pdb".

The <HIDE PLOT> button removes the CURVE FIT graphic window. The <CANCEL> button hides the dialog window.

Multi body modeling

Before starting 'Multibody' modelling one has to select an active group of bodies which will be moved and/or rotated. This can be done with 'Active Body' menu, in this dialog box the user has to spesify the sequence of active bodies (using the following string: 1;2;4 etc., active bodies must be separated by semicolon), the rotation center can be the geometrical center of all selected bodies (if both body center=0 and residue center=0), or the geometrical center of one of the selected bodies (in this case body center>0, and residue center=0) or altenatively around the specific residue of one of the selected bodies (in this case body center>0, residue center>0)

'Multibody' menu is designed for rigid body modelling of multi domain (or multi subunit) protein structures. It is possible to use up to seven loaded bodies. In the dialog box the following parameters must be specified:

1. Input data file

Input file containing experimental data to be fitted. This name may also be selected with a file chooser by clicking on the "Select" option.

2. Scale for s-vector

Abscissa units in the input file:

Value

Meaning

Units

1

4*pi*sin(theta)/lambda

1/angstrom

2

4*pi*sin(theta)/lambda

1/nm

3

2* sin(theta)/lambda

1/angstrom

4

2* sin(theta)/lambda

1/nm

3. Fitting range

Which portion of the experimental data to fit (as a fraction of sMax)

4. Output file

The file containing the currently plotted fit

5

The *.alm file names of all different subunits of the complex

6

The amplitudes of the different subunits will be multiplied by these factors (e.g. contrasts) to compute the total intensity

MASSHA warns the user if the given information is incorrect or incomplete.

The <COMPUTE> button runs the program "groupref", calculating the complex scattering intensity. The fit to the experimental data is plotted in a separate Curve Fit window and remains on the display at the user's disposal. The user may change positions of the active subunits by manipulating the objects in the 3D window and then recalculate the fit by clicking <COMPUTE>. The user may move/rotate either the one body, the selected group of bodies or all of them.

The <REFINE> button runs the program "groupref" which performs an automated rigid body refinement around the current position. The position of the active selected group of subunits is varied aroung the current position by deltaX=deltaY=deltaZ=+-(Space Increment) (i.e. three points in each direction). The default increment is computed by MASSHA from the dimensions of the first body (see PARAMETERS), can be changed by PARAMETERS -> Space Increment. The orientation of the second subunit is varied aroung its current orientation by rotating aroung X, Y and Z by +-2*(Angle Increment) (i.e. five points for each rotation) The default angle increment is 5 degrees, and can be changed by PARAMETERS -> Angle Increment. After the refinement, the fit is plotted and the refined position of the active group of bodis is displayed; its old position is also displayed by pressing button 'Load previous'. After the refinement, the user may manupulate the active group of bodies manually and press <COMPUTE>, or re-launch <REFINE> from the current position. The user may also re-select the rotation center of the active group of bodies (see TRANSFORMATIONS and the beginning of the paragraph)

The <HIDE PLOT> button removes the CURVE FIT graphic window.

The <CANCEL> button hides the dialog window.

NOTE: When the rotation center does not coincide with the center of mass, minor deviations may be observed between COMPUTE and REFINE (due to termination effects)

top

Oligomer modeling

 

A special mode for rigid body refinement of a oligomeric omplex assuming different types of symmetry (P2, P3, P4, P5, P6 P32, P42, P52, P62, P222). The monomer MUST be the firs loaded body.

The parameters to be specified are similar to those for the HETERODIMER. The difference is that the amplitudes for the second body are automatically computed from those of the first body according to the type of the symmetry.

To use the OLIGOMER option, load the first body, select it to be active and position it in appropriate way. After pressing OLIGOMER and P?? symmetry, the second monomer is generated automatically assuming P?? symmetry. Specify the parameters required (see HETERODIMER) with the exception of the second body amplitudes and factor.

MASSHA warns the user if the information is incorrect or incomplete.

The <COMPUTE> button runs the program "almsymm" calculating the complex scattering intensity. The fit to the experimental data is plotted in a separate Curve Fit window. The user may change position/orientation of the first body and then recalculate the fit by clicking <COMPUTE>.

If the FIRST body is active, the second body is re-generated using the appropriate (P2,P3,P4,P5,P6,P32,P42,P52,P222) symmetry transformation. NOTE: only rotations around the center of mass are allowed (the center residue is automatically reset to "0" in the OLIGOMER mode")

If BOTH bodies are active, the entire oligomer complex is moved/rotated.

The <REFINE> button runs the program "dimsymm" that performs automated rigid body refinement around the current position. For the definition of the spatial and angular increments increments, see description of HETERODIMER. The position of the first subunit is varied aroung the current position by deltaX =+-2*(Space Increment) (a total of five points along X). The orientation of the first subunit is varied aroung the current orientation by rotating aroung X, Yand Z by +-5*(Angle Increment) (i.e. eleven rotations around each axis) After the refinement, the fit is plotted, the second body is re-generated from the refined position of the first one. The old position of the first body is displayed as the third body.

The structure of the entire refined homodimer is saved onto a file "dimsymm.pdb".

The <HIDE PLOT> button removes the CURVE FIT graphic window. The <CANCEL> button hides the dialog window.

top

Hot Keys

All hotkey transformations and some other hotkeys (F2,F3,F7, P, S, +/-, see below) are applied to a currently active object (or to all objects if ALL are active). The ordial number of the active object is displayed in the upper left corner of the 3D window (zero means ALL).
Shifts and rotations can also be performed with the TRANSFORMATION dialog box (see TRANSFORMATIONS)

TABLE OF TRANSFORMATION HOTKEYS

If an object is active, it iz rotated around its center (center of mass by default); if all objects are active, they are all rotated around the origin.

Arrow Up

Rotate around X axis (clockwise)

Arrow Down

Rotate around X axis (counterclockwise)

Arrow Left

Rotate around Y axis (clockwise)

Arrow Right

Rotate around Y axis (counterclockwise)

z

Rotate around Z axis (clockwise)

x

Rotate around Z axis (counterclockwise)

Ctrl + Arrow Up

Move up along Y

Ctrl + Arrow Down

Move down along Y

Ctrl + Arrow Left

Move left

Ctrl + Arrow Right

Move right

TABLE OF GRAPHIC PRESENTATION HOTKEYS

F1

to display a brief HELP about hotkeys

F2

to toggle SLD TYPE (front -> contour -> front+back)

F3

to toggle PDB TYPE (chain -> circles)

F4

to display INFORMATION window

F5,F6

ZOOM In/Out the picture in the graphic window

F7

to display residue NUMBERS for PDB objects

F8

to toggle BACKGROUND (black -> white)

F9

to toggle GRID mode

F11,F12

to change the angular and space INCREMENTS

P,p

to FILL in active PDB bodies displayed as circles

S,s

to FILL in active SLD bodies

+/-

to increase/decrease the atom RADIUS by 0.5 A

1-9

to select the ACTIVE body from loaded structures

0

to make ALL bodies active

The information about the current positions of the objects is displayed in the information window (called by F4).

The transformation center can be fixed to a specified residue with the Residue dialog box in TRANSFORMATIONS submenu option of the OPTIONS menu. (only for PDB-objects).

top

Information Panel

The 'INFORMATION' window called by the hotkey F4 displays the following information:

1. Ordial number of the object
2. Activity indicator (* if active, blank if not)
3. File name associated with the object
4. Current position of the object: (i) absolute coordinates of its center of rotation and (ii) Euler angles of rotation with respect to the initial orientation)
5. The residue number defining the current center of rotation of the rotation center ( if 0, the center coincides with the center of mass)
6. Number of atoms (CA or P) in the PDB structure

The items 5 and 6 are meaningless for the SLD objects (0 is displayed)

To refresh the information after manipulating the bodies press F4 again. To remove the information window choose the HIDE TEXT submenu in the COMMANDS menu.

top

Parameter Panel

The PARAMETERS submenu in the COMMANDS menu permits one to change parameters of graphic presentation. One can set the angular and space increment for rotating and moving the structures. The Grid length can be defined in Angstroms and showed with F9 hot key. Also there is opportunity to change the active body and define the atom radius for each structure.

Angle increment:

angular step in degrees used by rotation hotkeys and by the homo- and heterodimer refinement programs (default value: 5 degrees)

NOTE: This value can also be changed using the F11 hotkey

Space increment:

spatial step in Angstroms used in movement hotkeys and by the homo- and heterodimer refinement programs (default value: is computed by the program from the size of the first loaded object)

NOTE: This value can also be changed using the F12 hotkey

Dummy atom radius:

radius of a (CA or P) atom in Angstrom. Takes effect only for the currently active PDB body(ies)

Grid length:

grid size in Angstroms (default value 20). To toggle the grid display mode, press F9.

Active body:

ordial number of the currently active body Zero means that ALL bodies are active

Brightness:

this parameter influences only solid body representations of the PDB and SLD objects (hotkeys 'P' and 'S', respectively). The default brightness values for all colors are selected to yield best quality of the screen images. For some printers, these values should be changed to avoid too bright or too dark printounts for some colors. The brightness parameter affects the current color, see below.

Color:

selects the color for the currently active object

NOTE: to implement the changes, click on the "Apply" button or press CR. To discard the changes, click "Cancel". The button "Cancel" MUST also be used to terminate the dialog and return to the 3D window

The HOTKEY transformations are applied to the currently active object (or to all objects if ALL are active). The ordial number of the active object is displayed in the upper left part of the 3D window. "0" means that all objects are active.

top

Transformations

The TRANSFORMATIONS submenu in the COMMANDS menu performs absolute/relative shifts and rotations of the objects The action will be applied to the currently active body.

X0, Y0, Z0-center :

coordinates of the rotation center of the object

Alpha, Beta, Gamma:

Euler angles of rotation

Absolute shift :

clicking of these button will rotate the object by Euler angles Alpha, Beta, Gamma and move it so that its rotation center will have the coordinates X0, Y0, Z0

Relative shift :

clicking of these button will rotate the object by Euler angles Alpha, Beta, Gamma and move it by X0, Y0, Z0 from its current position

Residue:

the number of residue whose coordinates define the current rotation center of the object. If "0", the center is given by the coordinates of the center of mass. Relevant for PDB-objects only.

Active body:

ordial number of the currently active body Zero means that ALL bories are active.

NOTE: to implement the spatial transformation, the user MUST click either "Absolute shift" or "Relative shift" button. The "Apply" button changes only the Residue and the Active body assignments. To discard the changes, click "Cancel". The button "Cancel" MUST also be used to terminate the dialog and return to the 3D window

HINT: To return an active object to its initial position use the menu option RESET. If ALL ojbects are active, they will all be reset. The command RESET also resets the rotation center to the center of mass!

Align PDB

This command aligns two PDB objects. The second body is moved and rotated to best match the first one by running the program SUPREF (Kozin & Svergun, 2000).No information about correspondence between the points in the two bodies are required. The number of CA or P atoms in the two objects can be arbitrary (but not less than two). The second object is replaced with the object named aligned.pdb and displayed as the second body. You may modify the position of this body manually and run the program and again again (the name will be "align0.pdb", then again "align.pdb" and so on). The result can be saved using the Save PDB option under the name "phsave2.pdb".

NOTE: the program minimizes the so-called normalized spatial discrepancy starting from the current position of the second body. As SUPREF can be trapped in a local minimum, it is recommended that this initial approximation is properly selected by visual criteria.

top

Zooming

The graphic library used to write MASSHA does not permit to resize windows by dragging their corner by a mouse. To change the size of the 3D graphic window, the buttons Zoom In/Zoom Out are provided. They will change the physical size of the 3D window as opposed to the hotkey commands F5/F6 (the latter commands zoom in/out the 3D picture inside the fixed frame.

HINT: The commands Zoom In/Zoom Out may also be useful if the 3D window remains inactive and the hotkeys seem not to work. This may happend from time to time on due to problems with windows focus transfer. Using Zoom In/Out may help to 'reanimate'the 3D window.

top

troubleshooting

Known problems, date 15/04/04:

If the graphics window does not want to be active (hotkeys do not work) try pressing Zoom In/Zoom Out

If MASSHA is started with the files loaded from the command line, the graphics window may show a slower response. The effect is removed by Zoom In/Zoom Out

In some cases, first hotkey is ignored when returning from a Modelling dialogue to the 3D graphic screen

if the program was terminated abnormally when using Modelling, processes Alm22int, Dimref, Alm2int2 or Dimref2 may hang in memory and should be removed manually. Also, some auxiliary files (dimref.err), normally deleted by Massha, may be kept and they also should be removed manually, otherwise, the modelling would not work in this directory!

top

References

1- Bernstein F.C. et al (1977). J. Mol. Biol., 112, 535-542.

 

 

Last edited :

Thursday, 10 August, 2006

© Copyright BioSAXS Group 2004