Uppsala Software Factory

Uppsala Software Factory - LSQMAN Manual


1 LSQMAN - GENERAL INFORMATION

Program : LSQMAN
Version : 990301
Author : Gerard J. Kleywegt, Dept. of Cell and Molecular Biology, Uppsala University, Biomedical Centre, Box 590, SE-751 24 Uppsala, SWEDEN
E-mail : gerard@xray.bmc.uu.se
Purpose : alignment and comparison of macromolecules
Package : DEJAVU


2 REFERENCES

Reference(s) for this program:

* 1 * G.J. Kleywegt & T.A. Jones (1994). Halloween ... Masks and Bones. In "From First Map to Final Model", edited by S. Bailey, R. Hubbard and D. Waller. SERC Daresbury Laboratory, Warrington, pp. 59-66.

* 2 * G.J. Kleywegt & T.A. Jones (1994). A super position. CCP4/ESF-EACBM Newsletter on Protein Crystallography 31, November 1994, pp. 9-14. [http://alpha2.bmc.uu.se/usf/factory_4.html]

* 3 * G.J. Kleywegt & T.A. Jones (1995). Where freedom is given, liberties are taken. Structure 3, 535-540. [http://www.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=8590014&form=6&db=m&Dopt=r]

* 4 * G.J. Kleywegt (1996). Use of non-crystallographic symmetry in protein structure refinement. Acta Cryst D52, 842-857. [http://www.iucr.ac.uk/journals/acta/tocs/actad/1996/actad5204.html]

* 5 * G.J. Kleywegt (1996). Making the most of your search model. CCP4/ESF-EACBM Newsletter on Protein Crystallography 32, June 1996, pp. 32-36. [http://alpha2.bmc.uu.se/usf/factory_6.html]

* 6 * G.J. Kleywegt & T.A. Jones (1996). Phi/Psi-chology: Ramachandran revisited. Structure 4, 1395-1400. [http://www4.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=8994966&form=6&db=m&Dopt=r]

* 7 * G.J. Kleywegt & T.A. Jones (1997). Detecting folding motifs and similarities in protein structures. Methods in Enzymology 277, 525-545.

* 8 * G.J. Kleywegt (1999 ?). Experimental assessment of differences between related protein crystal structures. Submitted.

* 9 * G.J. Kleywegt & T.A. Jones (1999 ?). Chapter 25.2.6. O and associated programs. Int. Tables for Crystallography, Volume F. To be published.


3 VERSION HISTORY

931007 - 0.1 - initial version (READ, WRITE, QUIT, DELETE, ANNOTATE, LIST, ATOM_TYPES)
931008 - 0.2 - second version (EXPLICIT; IMPROVE without checking for fragment size so far)
931021 - 0.3 - continued (implemented minimum fragment length, various optimisation criteria, maximum number of optimisation cycles); works well !
931022 - 0.4 - continued (implemented sequential_hits_only option, rms-weight, fragment length decay, show-operator, edit-operator, save_operator, old-o-operator, OMACRO commands)
931023 - 1.0 - first production version (removed some minor bugs, wrote manual)
931027 - 1.1 - removed minor bugs; implemented on ESV and ALPHA; minor corrections to the manual; added OMacro WRite option
931103 - 1.2 - removed some bugs
931121 - 1.3 - implemented ATom_types ALl and NOn-hydrogen
931124 - 1.4 - open all PDB files with READONLY
931129 - 1.5 - added CHain_mode and TYpe_residues
931130 - 1.6 - pre-cooked SEt options; debugged use of empty chain identifiers (i.e., chain-id = space); added .lsq_stats_x_y datablock to O macro output
931206 -1.6.1- minor extension of allowed zone designators; proper clean-up when a molecule is DEleted
940323 - 1.7 - store XPLOR segment IDs; implement APply option
940519 - 1.8 - removed nasty bug from IMprove option (when using zones instead of wildcards)
940524 -1.8.1- removed another nasty bug (showed up on ALPHAs whenever the C-terminal residue in "mol 2" showed up in an alignment in the IMprove option)
940525 -1.8.2- use standard routine to print and analyse RT operators

(* code changes of intermediate versions lost due to disk crash *)
> 940901 -1.9.0- calculate RMS delta-B in case of EXplicit LSQ
> 940906 - 2.0 - implemented command RMsd_current_operator
> 940908 -2.0.1- SHow command prints a comment in case of NCS regarding
> the quality of the refinement (coordinates & B-factors)

941021 - 3.0 - calculate RMS delta-B for EXplicit and IMprove commands; remove bug which made that the first matched residue after IMprove was never listed; add comment w.r.t. con/restraints on position and Bs in case of NCS (i.e., SHow mol1 mol1); implemented RMsd_calc command; implemented PHipsi command
941218 -3.0.1- added more statistics to PHipsi command
941223 - 3.1 - added DIstance and delta-dihedral (DD) plots
941230 -3.1.1- DD plots now also contain |delta(X-X-X angle)| curve
950224 - 3.2 - new option to compare WAters in different models or chains
950331 -3.2.1- long-standing bug in superpositioning with ALL and NONH atom types fixed (I think); add O datablock header lines to plot files
950412 -3.2.2- add B-factor cut-offs to EXplicit and RMsd commands (set with command BFactor_range)
950413 - 3.3 - cell constants read from CRYST1 card; CEll command to set or alter cell constants; command ORthogonalise and FRactionalise to carry out superpositioning in fractional space (may help to detect spacegroup errors)
950528 - 4.0 - removed bug from ORthog and FRact commands (always used the CEll parameters of the first molecule); new options for multiple (NCS or NMR) alignment: MCentral to find the central chain/model; MAlign to align all chains/ models to one reference chain or model; MDihedral to analyse PHI and PSI angle distributions (and to plot SIGMA(phi) and SIGMA(psi) as a function of residue); MBfactors to analyse B-factors of a particular atom type (e.g., CA atoms) and to plot SIGMA(B) and RANGE(B) as a function of residue number.
950529 - 4.1 - minor bug fixes; CHain-mode BReak to delineate chains/ models by breaks in the subsequent numbering of residues, and CHain-mode LOwer which uses a drop in residue number between two subsequent residues to delineate chains; new option MRamachandran to produce a plot for multiple models/chains; MSidechains to analyse the distribution of CHI1 and CHI2 angles (and plot SIGMA(chi1) and SIGMA(chi2) as a function of residue number); MTorsions to produce a multiple CHI1/CHI2 plot; new option NOmenclature to enforce proper names for side-chain atoms of PHE, TYR, ASP, GLU and ARG residues (important for comparisons involving these atoms)
950530 -4.1.1- added option to produce MRama and MTor plots in a polar coordinate frame (add "P" as the last parameter)
950616 - 4.2 - improved multiple Ramachandran (MR) and multiple chi1/chi2 (MT) plots (no centroid if only two molecules; no more long lines across the plot). New HYdrogen command to keep or strip hydrogen atoms on reading/writing of PDB files (NOTE: the default behaviour of the program is now to STRIP them, since usually one is not interested in them and they slow down some parts of the program). New SUbtract_ave_b command to subtract the average chain B-factor in order to get meaningful RMS delta-B values and multiple-model B-factor plots (MB).
950705 -4.2.1- minor bug fix for connecting residues in multiple Ramachandran (MR) or side-chain torsion (MT) plots.
950830 -4.2.2- calc Maiorov-Crippen "rho" (not the scaled one) for EXplicit and IMproved superpositionings (use the SHow command to see the actual values). Reference: Proteins 22, pp. 273-283 (note: equation (16), the definition of rho, contains an error: R^2(B) should be 2*R^2(B)).
950913 - 4.3 - added D1/D2 plots
951031 -4.3.1- calc angle in RMsd command
960409 - 4.4 - implemented macro facility
960415 -4.4.1- minor bug fixes
960417 -4.4.2- minor bug fixes
960508 - 4.5 - new HIsto_disto command
960517 - 4.6 - implemented simple symbol mechanism
960710 -4.6.1- print average RMSD between chains in MCentral command
960729 - 4.7 - implemented FIx_atom_names command; fixed a long-standing bug in the EXplicit command if all (non-H) atoms were compared !!!
960801 -4.7.1- option MRama now uses our new definition of core regions in the Ramachandran plot
960804 -4.7.2- average dihedrals (phi, psi, chi1, chi2) properly, i.e., use <DIHE> = RTODEG * ATAN2 ( <SIN>, <COS> )
960821 -4.7.3- PHipsi command now also prints the correlation coefficient between the PHI angles of both chains and between the PSI angles of both chains
970127 - 4.8 - fixed two terrible bugs in the MAlign option (thanks to Tim Allison)
970131 - 5.0 - implemented BRute_force alignment option
970210 - 5.1 - fixed two more bugs in the DIstance and DDihedral plot commands, so that these commands now also work correctly for macromolecules other than proteins (see new example for DNA in the manual; thanks to Armin Maeder); improved BRute_force command a trifle; softened judgment of NCS restraint quality a tad; implemented HEtatm command
970221 - 5.2 - implemented ATom type SI(de_chain) which is any type except N, CA, C and O, OT1 etc. (i.e.: this includes hydrogen atoms if they have been read in !); also implemented ATom_type PH(osphorous) for DNA and RNA work; error traps if certain options are used with inappropriate atom types (e.g., IMprove with ALL, NONH or SIDE)
970505 - 5.3 - added optional "chain" parameter to the APply command
970626 - 5.4 - support initialisation macro (setenv GKLSQMAN macrofile)
970630 -5.4.1- removed small bugs which under exceptional circumstances led to wrong results for ALL atoms, NONHydrogens and SIDEchain atoms
970707 -5.4.2- improved statistics summary for MRama, MDihe, MSide and MTors commands
970722 - 5.5 - implemented VM and VS commands to plot the circular variance of phi,psi and chi1,chi2 for multiple models
970722 - 6.0 - new VRml commands !
970808 - 6.1 - default for SEquential hits is now ON; added frameshift correction to IMprove algorithm which is ON by default (toggle with SEt SHift); change convergence test in IMprove so that "no improvement" is used instead of "fit deteriorated" (this should speed up the BRute_force command slightly)
970827 -6.1.1- new optional chain_id parameter for the WRite command to enable writing of just a single chain or model (default = * = all chains/models); new VRml ALl_chains command to write VRML instructions for all chains/models of a molecule, each in a different colour
971111 -6.1.2- in the EXplicit command, a single residue may now be given as e.g. "A54" instead of "A54-54"
980901 - 6.2 - new INvert_ncs command to invert one or more O-style RT-operators (Cartesian space only)
981019 - 6.3 - new JUdge command to check how good a homology model is compared to both its TARGET and the PARENT structure from which it was (or could have been) derived
981021 -6.3.1- new ECho command to echo command-line input (useful in scripts)
981022 - 6.4 - implemented command history (# command)
981030 - 6.5 - new MOrph command to morph the transition between two conformational states (to make movies) - COOL !!!
981101 -6.5.1- continued with MOrph command
981102 -6.5.2- continued with MOrph command
981102 -6.5.3- continued with MOrph command
981103 - 6.6 - new ATom_types TRace command (selects CA atoms plus all non-hydrogen side chain atoms); changed ATom_type SIde_chain to exclude hydrogen atoms; implemented MOrphing using CA atoms plus all non-hydrogen side-chain atoms (using ATom_type TRace)
981104 -6.6.1- continued with MOrph command
981105 -6.6.2- continued with MOrph command
981106 - 7.0 - touched up MOrph command for general release
981108 -7.0.1- implemented SImilarity_plot command; extended functionality of the JUdge command
981111 -7.0.2- print histogram(s) for some of the plot commands (PHipsi, DIstance, DDihehral, and D1_D2)
981117 -7.0.3- DIstance_plot now also includes residues from mol1 that were not found in mol2 (distance plotted at a negative value)
981119 -7.0.4- trap when no atoms found in input PDB file; print D-values after IMprove
981123 -7.0.5- changed definition of D-value to %Matched(i)*%SeqID(i)/10000
981126 -7.0.6- skip alternative conformations when reading PDB files
981207 - 7.1 - new CAsp command to assess RMS distances and number of matching residues between sequence-identical residues as a function of distance cut-off
990119 -7.1.1- minor changes to CAsp command
990120 -7.1.2- added extra optional parameter to BRute_force command to speed up the calculations if the two molecules are different models of the same protein (i.e., same residue numbering)
990301 -7.1.3- echo some PDB header lines when reading a PDB file


4 START-UP MACRO

From version 5.4 on, LSQMAN can execute a macro at start-up (whether it is run interactively or in batch mode). This can be used to execute commands which you (almost) always want to have executed. To use this feature, set the environment variable GKLSQMAN to point to a LSQMAN macro file, e.g.:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 setenv GKLSQMAN /home/gerard/lsqman.init
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


5 INTRODUCTION

LSQMAN is a program for performing least-squares superpositioning of biomacromolecules. The program offers a superset of the LSQ- functionality inside O and removes some of the limitations and irritations of the LSQ-commands.

The "heart" of the program is Kabsch's subroutine U3BEST; see the following references:
W.KABSCH ACTA CRYST.(1976).A32,922-923
W.KABSCH ACTA CRYST.(1978).A34,827-828

Phi/Psi difference plots are discussed in: AP Korn & DR Rose, Prot. Engineering 7(8), 961-967 (1994)


6 FEATURES

Some of the features of LSQMAN:


6.1 chains


* when reading a PDB file, separate chains (XRAY) and separate models (NMR) are recognised and are automatically given chain identifiers A, B, ... Z (i.e., at most 26 chains or NMR models can be accomodated; this is the default behaviour)


6.2 zone definition


* definition of zones of a molecule is flexible:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   *      ... means all chains
   A*     ... means all residues in the first chain
   B3-36  ... means residues 3 through 36 in the second chain
   B3:36  ... means the same thing
   B3:B36 ... ditto
   A1-999 ... means all residues in chain A with numbers
              between 1 and 999 that exist (use this if
              you're not sure how many residues a protein
              contains)
   A1-B36 ... is NOT a valid zone selection (use two zones,
              one for each chain)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


6.3 atom types


* the atom types that are to be used for an explicit least- squares fit can be defined by the user; some types (for proteins) have been pre-defined, but if you want to fit 2 DNA molecules, or two ligands, this is just as easy


6.4 improving operators


* using the default settings, the improve option functions in a way similar to the LSQ_IMPROVE command in O (albeit considerably faster); however, there are lots of optional embellishments


6.5 O datablocks


* the program can read and write O-style datablocks containing (least-squares) rotation-translation operators


6.6 O macros


* the program can create macro files for O which will read the molecules that you are studying, apply the latest operator and display them


6.7 independence


* the operators from molecule A TO B and from B TO A are completely independent of one another


6.8 aligning multiple models


* from version 4.0 onwards, there are facilities for aligning multiple chains/models in a molecule. This can be used for analysis of NCS-related molecules or to create composite search models for Molecular Replacement.


6.9 analysing multiple, NCS and NMR models


* from version 4.0 onwards, there are several facilities for analysing and aligning multiple NCS chains and NMR models.


6.10 "ab initio" (brute force) alignment


* from version 5.0 onwards, there is a BRute_force command which will systematically try to align two molecules (chains), improve each alignment, and keep the one that gives the largest number of aligned residues


6.11 O compatibility


LSQMAN does also contain an equivalent of the LSQ_MOLECULE command in O, even though this may screw up your operators completely when you're analysing several molecules at the same time.

For consistency with O:

* RT-operators are used in Alwyn's "transpose-matrix" formalism

* when referring to an operator, the FIRST molecule is always the one that is FIXED and the SECOND is the one which will be brought on top of the first if the operator is applied


7 INTERFACE

LSQMAN uses the same simple and easy-to-use command interpreter that you know from MAMA, MAPMAN and other programs. The first two characters of (sub-)command names are unique; parameters may be supplied on the same line as the command, and if they are not, LSQMAN will prompt you for them (using fairly reasonable default values; to use a default, just hit RETURN at such a prompt).

NOTE: parameter values with SPACES in them MUST be delimited by "DOUBLE QUOTES" !

The program runs in interactive mode by default; it can be run in batch mode by supplying the -b flag when you start the program.

All new files are opened as UNKNOWN, so any existing files will be overwritten !


8 STARTUP

When you start the program, you see something like this:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN ***

Version - 980901/6.2 (C) 1992-98 Gerard J. Kleywegt, Dept. Mol. Biology, BMC, Uppsala (S) User I/O - routines courtesy of Rolf Boelens, Univ. of Utrecht (NL) Others - T.A. Jones, G. Bricogne, Rams, W.A. Hendrickson Others - W. Kabsch, CCP4, PROTEIN, E. Dodson, etc. etc.

Started - Sat Oct 17 01:24:42 1998 User - gerard Mode - interactive Host - sarek ProcID - 9351 Tty - /dev/ttyq17

*** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN ***

Reference(s) for this program:

* 1 * G.J. Kleywegt & T.A. Jones (1994). Halloween ... Masks and Bones. In "From First Map to Final Model", edited by S. Bailey, R. Hubbard and D. Waller. SERC Daresbury Laboratory, Warrington, pp. 59-66.

* 2 * G.J. Kleywegt & T.A. Jones (1994). A super position. CCP4/ESF-EACBM Newsletter on Protein Crystallography 31, November 1994, pp. 9-14. [http://alpha2.bmc.uu.se/usf/factory_4.html]

* 3 * G.J. Kleywegt & T.A. Jones (1995). Where freedom is given, liberties are taken. Structure 3, 535-540. [http://www.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=8590014&form=6&db=m&Dopt=r]

* 4 * G.J. Kleywegt (1996). Use of non-crystallographic symmetry in protein structure refinement. Acta Cryst D52, 842-857. [http://www.iucr.ac.uk/journals/acta/tocs/actad/1996/actad5204.html]

* 5 * G.J. Kleywegt (1996). Making the most of your search model. CCP4/ESF-EACBM Newsletter on Protein Crystallography 32, June 1996, pp. 32-36. [http://alpha2.bmc.uu.se/usf/factory_6.html]

* 6 * G.J. Kleywegt & T.A. Jones (1996). Phi/Psi-chology: Ramachandran revisited. Structure 4, 1395-1400. [http://www4.ncbi.nlm.nih.gov/htbin-post/Entrez/query?uid=8994966&form=6&db=m&Dopt=r]

* 7 * G.J. Kleywegt & T.A. Jones (1997). Detecting folding motifs and similarities in protein structures. Methods in Enzymology 277, 525-545.

* 8 * G.J. Kleywegt (1998 ?). Local density correlation and ... To be published.

* 9 * G.J. Kleywegt & T.A. Jones (1999 ?). Chapter 25.2.6. O and associated programs. Int. Tables for Crystallography, Volume F. To be published.

==> For manuals and complete references, visit: ==> http://alpha2.bmc.uu.se/usf

*** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN ***

Max nr of molecules : ( 8) Max nr of residues per molecule : ( 10000) Max nr of atoms per molecule : ( 100000) Max nr of atom types : ( 15) Max nr of chains/models per mol : ( 26)

Symbol PROGRAM : (LSQMAN) Symbol VERSION : (980901/6.2) Symbol START_TIME : (Sat Oct 17 01:24:43 1998) Symbol USERNAME : (gerard)

Initialising : (XVRML - 971120/0.6) Nr of predefined colours : ( 411)

LSQMAN options :

? (list options) ! (comment) QUit $ shell_command & symbol value & ? (list symbols) @ macro_file

REad mol file WRite mol file [chain] DElete mol ANnotate mol comment_string LIst [mol] CHain_mode mode TYpe_residues mol BFactor_range b_lo b_hi FRactionalise mol ORthogonalise mol CEll mol a b c al be ga SUbtract_ave_b mol HYdrogens keep_or_strip HEtatm keep_or_strip

FIx_atom_names mol1 range1 mol2 range2 mode how what [min_gain] [cut_off] NOmenclature mol INvert_ncs infile outfile

EXplicit mol1 range1 mol2 range2 IMprove mol1 range1 mol2 range2 BRute_force mol1 chain1 mol2 chain2 frag_length frag_step min_match

EDit_operator mol1 mol2 val1 ... SHow_operator mol1 mol2 SAve_operator mol1 mol2 file [name] APply_operator mol1 mol2_to_move [chain] OLd_o_operator mol1 mol2 file RMsd_calc mol1 range1 mol2 range2 PHipsi mol1 range1 mol2 range2 file DIst_plot mol1 range1 mol2 range2 file DDihe mol1 range1 mol2 range2 file WAters mol1 mol2 cut_off file D1_D2 mol1 range1 mol2 range2 file HIsto_dist mol1 mol2 cut_off bin

MCentral mol residue_range exp_imp MAlign mol residue_range exp_imp chain MDihedral mol chain file MRamachandran mol chain ps_file how MSide_chains mol chain file MTorsion mol chain ps_file how VMain_chain mol chain file VSide_chain mol chain file MBfactors mol chain file

ATom_types ? ATom_types CA ATom_types MAin_chain ATom_types SIde_chain ATom_types EXtended_main_chain ATom_types ALl ATom_types NOn_hydrogen ATom_types DEfine type1 [type2 ...] ATom_types PHosphorous

SEt ? SEt REset_defaults SEt COarse_6A_fit_defaults SEt INtermediate_4A_fit_defaults SEt FIne_tune_3A_fit_defaults SEt SImilar_mols_2A_fit_defaults

SEt MAx_nr_improve_cycles value SEt DIst_max value SEt MIn_fragment_length value SEt DEcay value SEt OPtimisation_criterion value SEt SEquential_hits on_off SEt RMs_weight value SEt FRagment_length_decay value SEt SHift_correction on_off

OMacro INit mol1 file OMacro APpend mol2 OMacro WRite o_command_string OMacro CLose_file

VRml SEtup central_atom max_dist backgr_col default_col VRml INit [filename] VRml COlour_list VRml ADd mol [chain] [colour] VRml ALl_chains mol

Max nr of molecules : ( 8) Max nr of residues per molecule : ( 10000) Max nr of atoms per molecule : ( 100000) Max nr of atom types : ( 15)

LSQMAN > ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


9 GENERAL COMMANDS


9.1 ? (list commands)


Print a list of all available commands and a summary of the dimensioning of the program (maximum number of molecules, etc.).


9.2 ! (ignored comment)


If the first character of a line is '!', then this line is treated as a comment line (for use in input files).


9.3 QUit (stop working with the program)


Stop working with the program.


9.4 ECho (toggle command-line echo on/off)


If you run the program with scripts, it is sometimes useful to see input commands echoed. The parameter to the ECho command may be ON, OFf, or ? (to list the echo status).


9.5 #


Command history. Possible uses (blank spaces are optional):
- # ? => list history of commands
- # ON => switch command history on
- # OFf => switch command history off
- # # => repeat previous command
- # 14 => repeat command number 14 from the list
- # 0 => repeat previous command
- # -1 => repeat penultimate command, etc.
- # 7 more => repeat command number 7, but add "more" to it (e.g., if command 7 was "$ ls" you could type "#7 -FartCos" to get "$ ls -FartCos")


9.6 $ (issue shell command)


Issue a shell command.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > $ ls -FartCos *.odb
   1 -rw-r--r--   1 gerard       297 Oct 22 20:38 rt_1ace_to_lipa.odb
   1 -rw-r--r--   1 gerard       297 Oct 22  1993 rt_1etu_to_eftu.odb
   1 -rw-r--r--   1 gerard       297 Oct 22  1993 rt_1lap_to_eftu.odb
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.7 @ (execute LSQMAN macro)


Execute a macro

Example of an LSQMAN macro:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 ! ana_ncs.lsqmac
 !
 ! do some basic NCS analyses
 !
 ! Enter LO for normal PDB files, or XP for X-PLOR PDB files:
 chain_mode
 !
 ! Enter PDB file name:
 read mymol
 !
 ! Enter PostScript file for sigma(phi),sigma(psi) plot:
 mdihedral mymol a
 !
 ! Enter PostScript file for multiple Ramachandran plot:
 mramachandran mymol a
 !
 ! Enter PostScript file for sigma(chi1),sigma(chi2) plot:
 mside_chains mymol a
 !
 ! Enter PostScript file for multiple chi1,chi2 plot:
 mtorsion mymol a
 !
 ! Enter PostScript file for sigma(B),range(B) plot:
 mbfactors mymol a
 !
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

When executed this gives:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > @ana_ncs.lsqmac
 ... Opened macro file : (ana_ncs.lsqmac)
 ... On unit : (      61)
 > (! ana_ncs.lsqmac)
 > (!)
 > (! do some basic NCS analyses)
 > (!)
 > (! Enter LO for normal PDB files, or XP for X-PLOR PDB files:)
 > (chain_mode)
 Select one of the following modes:
 REname   = chains are renamed A, B, .. Z
 ORiginal = chain names are not altered
 XPlor    = rename; SEGIds delineate chains
 BReak    = rename; use breaks in residue numbers
 LOwer    = rename; use drop in residue numbers
 Chain mode ? (LO)
 Chain-mode LOwer
 > (!)
 > (! Enter PDB file name:)
 > (read mymol)
 File name ? ( ) /nfs/pdb/full/1cbr.pdb
 Cell : (  41.440   41.440  202.800   90.000   90.000   90.000)
 New chain name |A| at residue PRO     1
 New chain name |B| at residue PRO     1
 Nr of lines read from file : (       2596)
 Nr of atoms in molecule    : (       2246)
 Nr of chains or models     : (          2)
 Stripped hydrogen atoms    : (          0)
 > (!)
 > (! Enter PostScript file for sigma(phi),sigma(psi) plot:)
 > (mdihedral mymol a)
 Multiple chain/model dihedral analysis
 Plot file ? (mymol_phi_psi_sigma.plt)
 Reference chain : (A)
 Residue range :     1 -   313
 PRO     1 |      0.0     0.0     0.0     0.0 |   -163.0     0.0  -163.0  -163.0 |   0  2
 ASN     2 |   -120.0     0.0  -120.0  -120.0 |     84.6     0.0    84.6    84.6 |   2  2
 ...
 Plot file written
 > (!)
 > (! Enter PostScript file for multiple Ramachandran plot:)
 > (mramachandran mymol a)
 Multiple Ramachandran plot
 PostScript file ? (mymol_multi_rama.ps)
 Reference chain : (A)
 Residue range :     1 -   313
 ...
 PostScript file written
 > (!)
 > (! Enter PostScript file for sigma(chi1),sigma(chi2) plot:)
 > (mside_chains mymol a)
 Multiple side-chain torsion analysis
 Plot file ? (mymol_chi12_sigma.plt)
 Reference chain : (A)
 Residue range :     1 -   313
 ...
 Plot file written
 > (!)
 > (! Enter PostScript file for multiple chi1,chi2 plot:)
 > (mtorsion mymol a)
 Multiple torsion plot
 PostScript file ? (mymol_chi12_dist.ps)
 Reference chain : (A)
 Residue range :     1 -   313
 ...
 PostScript file written
 CPU total/user/sys :       1.2       1.1       0.1
 > (!)
 > (! Enter PostScript file for sigma(B),range(B) plot:)
 > (mbfactors mymol a)
 Multiple chain/model B-factor analysis
 Plot file ? (mymol_bfac_multi.plt)
 Reference chain : (A)
 Residue range :     1 -   313
 Central atom type : ( CA)
 ...
 Nr of residues found : (        136)
 SIGMA(B) Ave, Sdv, Min, Max :      0.0     0.0     0.0     0.0
 RANGE(B) Ave, Sdv, Min, Max :      0.0     0.0     0.0     0.0
 Plot file written
 > (!)
 ... End of macro file
 ... Control returned to terminal
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


9.8 & (manipulate symbols)

This command can be used to manipulate symbols. These are probably only useful for advanced users who want to write fancier macros. The command can be used in three ways:
(1) & ? -> lists currently defined symbols
(2) & symbol value -> sets "SYMBOL" to "value"
(3) & symbol -> prompts the user to supply a value for "SYMBOL" (even if the program is executing a macro)

A few symbols are predefined:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > & ?
 Nr of defined symbols : (       4)
 Symbol PROGRAM : (LSQMAN)
 Symbol VERSION : (960517/4.6)
 Symbol START_TIME : (Fri May 17 20:34:27 1996)
 Symbol USERNAME : (gerard)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

The symbol mechanism is fairly simplistic and has some limitations:
- max length of a symbol name is 20 characters
- max length of a symbol value is 80 characters
- max number of symbols is 100
- symbols can not be deleted, but they can be redefined
- symbol values are accessed by supplying $SYMBOL_NAME as an argument on the command line; the line that you type on the terminal (or in a macro) is parsed once; if there are additional parameters which the program prompts you for, you cannot use symbols for those
- only one substitution per argument (e.g., "$file1 $file2" will lead to a substituion of the entire argument by the value of symbol FILE1 only !)
- command names (first argument on any command line) cannot be replaced by a symbol (e.g.: "$command $arg1 $arg2" is not valid)
- symbols may be equated to each other, e.g. "& file2 $file1" will give FILE2 the same value as FILE1
- symbol substitution is not recursive (e.g., if you set the value of FILE2 to be "$file1", any reference to $FILE2 will be replaced by "$file1", not by the value of FILE1
- symbols on comment lines (starting with "!") are not expanded
- symbols on system command lines (starting with "$") are not expanded


10 I/O AND BOOK-KEEPING COMMANDS


10.1 REad (read molecule into memory)


Read a molecule into memory. You must provide a NAME for the molecule (by which you will refer to it later) and the name of a PDB file.
Only ATOM/HETATM and MODEL (for multiple NMR structures) cards are handled. Every chain or NMR model gets a chain identifier, starting at A, B, ... Z. Therefore, no more than 26 chains or NMR models can be read into memory (unless you set CHain_mode to ORiginal).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ch xp
 Chain-mode XPlor
 LSQMAN > re m3 m12abcd.pdb
 XPLOR SEGId |GTAA| becomes chain A
 XPLOR SEGId |GTAB| becomes chain B
 XPLOR SEGId |GTAC| becomes chain C
 XPLOR SEGId |GTAD| becomes chain D
 Nr of lines read from file : (       7222)
 Nr of atoms in molecule    : (       7184)
 Nr of chains or models     : (          4)
 CPU total/user/sys :       6.4       5.7       0.6
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.2 WRite (write molecule to PDB file)


Write a molecule to a PDB file. The chain identifiers are those that were assigned during the READ step (see 2.5). All atoms are written as ATOM cards (i.e., HETATM information is lost). NMR models will be (re-)numbered 1, 2, ... 26.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > wr m1 q.pdb
 Number of atoms written : (        987)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.3 DElete (erase molecule from memory)


Delete a molecule from memory.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > del m2
 Deleted : (M2)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.4 ANnotate (comment string for molecule)


Edit the comment string for a molecule. If you supply the comment string on the command line, be sure to use "DOUBLE QUOTES" if your comment contains one or more spaces !

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > an m1
 Label ? (Read from 2aza.pdb) azurin 2aza
 LSQMAN > an m2 "azurin 1azu"
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.5 LIst (information about molecule)


List some information about any or all molecules currently in memory. If you don't supply a molecule name, the program will do this for all molecules (also if you enter an *asterisk*).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > li *

List : (M1) File : (q.pdb) Comment : (azurin 2aza) Nr of atoms in mol : ( 987) Multiple NMR models ? (F) Nr of chains/models : ( 1)

List : (M2) File : (1azu.pdb) Comment : (azurin 1azu) Nr of atoms in mol : ( 930) Multiple NMR models ? (F) Nr of chains/models : ( 1) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10.6 CHain_mode (naming of chains/models when read from PDB file)


Determine what LSQMAN should do with the various chains or NMR models in a given PDB file. You have the following choices:

REname = chains and NMR models are renamed A, B, .. Z

ORiginal = chain names are not altered

XPlor = chains are renamed A, B, ... Z; X-PLOR SEGIds delineate the chains

BReak = chains are renamed A, B, ... Z; breaks in the "i,i+1,i+2" numbering of residues are used to delineate chains (e.g., residue numbers 354, 355, 501, would introduce a new chain at residue 501)

LOwer = chains are renamed A, B, ... Z; breaks in the numbering where a residue has a residue number lower than that of the previous residue are used to delineate chains (e.g., if your protein is numbered 5-193 and your ligand 200 and waters 300-389, then all of these will be considered to be part of one single chain)

When you read one of your own PDB files in which the chains have names that you are familiar with, use ORiginal mode.
When you read PDB files that you're not familiar with, or PDB files containing multiple NMR models, REname is probably the best option.
When you read a PDB file created for or by X-PLOR, use the XPlor chain mode (in which X-PLOR SEGIds are used to recognise where one chain ends and the next begins).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ch
 Select one of the following modes:
 REname   = chains are renamed A, B, .. Z
 ORiginal = chain names are not altered
 XPlor    = rename; SEGIds delineate chains
 BReak    = rename; use breaks in residue numbers
 LOwer    = rename; use drop in residue numbers
 Chain mode ? (XP) re
 Chain-mode REname
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ch or
 Chain-mode ORiginal
 LSQMAN > re m1 m12abcd.pdb
 Old chain name |A| kept
 Old chain name |B| kept
 Old chain name |C| kept
 Old chain name |D| kept
 Nr of lines read from file : (       7222)
 Nr of atoms in molecule    : (       7184)
 Nr of chains or models     : (          4)
 CPU total/user/sys :       6.8       5.9       0.9
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ch re
 Chain-mode REname
 LSQMAN > re m2 m12abcd.pdb
 Old chain |A| becomes chain A
 Old chain |B| becomes chain B
 Old chain |C| becomes chain C
 Old chain |D| becomes chain D
 Nr of lines read from file : (       7222)
 Nr of atoms in molecule    : (       7184)
 Nr of chains or models     : (          4)
 CPU total/user/sys :       6.5       5.8       0.7
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ch xp
 Chain-mode XPlor
 LSQMAN > re m3 m12abcd.pdb
 XPLOR SEGId |GTAA| becomes chain A
 XPLOR SEGId |GTAB| becomes chain B
 XPLOR SEGId |GTAC| becomes chain C
 XPLOR SEGId |GTAD| becomes chain D
 Nr of lines read from file : (       7222)
 Nr of atoms in molecule    : (       7184)
 Nr of chains or models     : (          4)
 CPU total/user/sys :       6.4       5.7       0.6
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.7 TYpe_residues (list residues of molecule)


This will simply list the first atom of every residue in the selected molecule.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ty m3
 List of residues in : (M3)

1 1 CB ALA A 2 82.844 39.989 -7.039 1.00 68.35 2 6 N GLU A 3 83.214 36.859 -8.993 1.00102.90 3 15 N LYS A 4 84.386 34.656 -8.538 1.00 47.66 ... 883 7162 N ARG D 221 84.092 37.862 71.505 1.00 60.42 884 7173 N PHE D 222 84.004 35.762 73.551 1.00 92.91

CPU total/user/sys : 1.5 0.9 0.6 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10.8 BFactor_range (exclude atoms with undesired temperature factors)


Define a range of temperature factors for atoms to be used in the EXplicit and RMsd commands. All atoms with a B outside this range will be skipped (but not in the IMprove command).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ex m1 a1-999 m1 b1
 ...
 B-factor range used:    -1.00 - 10000.00 A2
 Nr of atoms to match  : (        370)
 Nr skipped (B limits) : (          0)
 The    370 atoms have an RMS distance of    0.759 A
 RMS delta B  =    4.459 A2
 Corr. coeff. =      0.8359
 ...
 LSQMAN > bf
 Lower B-factor cut-off ? (  -1.000000)
 Upper B-factor cut-off ? (   9999.999) 30
 Lower B cut-off : (  -1.000)
 Upper B cut-off : (  30.000)
 LSQMAN > ex m1 a1-999 m1 b1
 ...
 B-factor range used:    -1.00 -    30.00 A2
 Nr of atoms to match  : (        259)
 Nr skipped (B limits) : (        111)
 The    259 atoms have an RMS distance of    0.491 A
 RMS delta B  =    3.584 A2
 Corr. coeff. =      0.7609
 ...
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.9 CEll (edit cell constants of molecule)


Set or change the cell constants of a molecule.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > cel m1
 A axis (A) ? (   111.8900)
 B axis (A) ? (   111.8900)
 C axis (A) ? (   148.4900)
 Alpha (deg) ? (   90.00000)
 Beta (deg) ? (   90.00000)
 Gamma (deg) ? (   90.00000)
 Molecule : (M1)
 Cell axes (A) : ( 111.890  111.890  148.490)
 Angles (deg)  : (  90.000   90.000   90.000)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.10 FRactionalise (Cartesian to fractional)


Fractionalise the coordinates of a molecule. This may help you detect spacegroup errors or special translations. For example, for PDB entry 1CHR the spacegroup error (I4 with two-fold NCS is really I422 without NCS) is especially clear from the fractional operator (see below): the "NCS" operator relating the two molecules in fractional space is (X, -Y+1, -Z+1). Note that the program doesn't know if your coordinates are in fractional or orthogonal A coordinates (in principle you could read them in in fractional space) !!! The RMSD is therefore not very useful as a number !!!

NOTE: it may (or may not) also help in detecting origin differences and relations between molecules solved in the same spacegroup but within different asymmetric units of the cell.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1chr.pdb
 Cell : ( 111.890  111.890  148.490   90.000   90.000   90.000)
 ...
 LSQMAN > fr m1
 Operator : (   0.009    0.000    0.000    0.000    0.009    0.000
  0.000    0.000    0.007    0.483    0.643    0.751)
 Atom #1 before : (  11.840   26.637   68.001)
 Atom #1 after  : (   0.106    0.238    0.458)
 Fractionalised : (M1)
 LSQMAN > ex m1 a1-999 m1 b1
 ...
 The    370 atoms have an RMS distance of    0.006 A
 RMS delta B  =    4.459 A2
 Corr. coeff. =      0.8359
 Rotation    :   0.999999 -0.001595  0.000409
                -0.001594 -0.999992 -0.003703
                 0.000415  0.003702 -0.999993
 Translation :      0.001     0.999     1.001
 CPU total/user/sys :       2.0       2.0       0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

The two molecules in 1CEL are related by an almost perfect translation of (0.46,1/2,1/2):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1cel.pdb
 Cell : (  84.000   86.200  111.800   90.000   90.000   90.000)
 ...
 LSQMAN > fr m1
 Operator : (   0.012    0.000    0.000    0.000    0.012    0.000
  0.000    0.000    0.009    0.000    0.000    0.000)
 Atom #1 before : (  37.768   59.322   40.174)
 Atom #1 after  : (   0.450    0.688    0.359)
 Fractionalised : (M1)
 LSQMAN > ex m1 a1-999 m1 b1
 WARNING - mol1 == mol2 !
 ...
 The    434 atoms have an RMS distance of    0.001 A
 RMS delta B  =    2.201 A2
 Corr. coeff. =      0.9738
 Rotation    :   0.999859 -0.016626  0.002191
                 0.016642  0.999833 -0.007543
                -0.002066  0.007578  0.999969
 Translation :      0.461     0.497     0.503
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.11 ORthogonalise (fractional to Cartesian)


Orthogonalise the coordinates of a molecule.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > or m1
 Operator : ( 111.890    0.000    0.000    0.000  111.890    0.000
  0.000    0.000  148.490    0.009    0.000    0.000)
 Atom #1 before : (   0.106    0.238    0.458)
 Atom #1 after  : (  11.840   26.637   68.001)
 Orthogonalised : (M1)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.12 NOmenclature (check side-chain atom names)


Enforce proper nomenclature for the equivalent side-chain atoms of Asp, Glu, Phe, Tyr and Arg residues. This is important if these atoms are going to be used in a comparison (e.g., all-atom RMSD or side-chain torsion analyses).
Normally, this command would be used in conunction with the FIx_atom_names command.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m2 /nfs/alien/gerard/acbp/o/probe14.pdb
 ...
 LSQMAN > nomenclature m2
 Enforce proper nomenclature for : (M2)
 Nr of atoms    : (       9772)
 Nr of residues : (       1204)

Error in GLU A 10 ... Error in GLU A 11 ... Error in ASP A 21 ... ... Error in GLU N 79 ... Error in TYR N 84 ...

# of PHE checked : 42 # errors : 18 # of TYR checked : 56 # errors : 35 # of ASP checked : 98 # errors : 35 # of GLU checked : 140 # errors : 46 # of ARG checked : 14 # errors : 5 WARNING - any attached hydrogens NOT renamed LSQMAN > nomenclature m2 Enforce proper nomenclature for : (M2) Nr of atoms : ( 9772) Nr of residues : ( 1204)

# of PHE checked : 42 # errors : 0 # of TYR checked : 56 # errors : 0 # of ASP checked : 98 # errors : 0 # of GLU checked : 140 # errors : 0 # of ARG checked : 14 # errors : 0 No problem, mon ! ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10.13 FIx_atom_names (correct side-chain atom names)


When comparing two *PROTEINS* using all (non-hydrogen) atoms or side-chain torsion angles, a few residue types may have artificially large differences: Asp, Glu, Arg, Phe and Tyr. For example, if you have two-fold NCS and one Phe-ring is "flipped" in molecule 2 compared to molecule 1, the CD1,2/CE1,2 atoms may have an RMSD of ~1.5 A even though the superimpose perfectly. In this situation, the CHI2 torsions may also differ by ~180 degrees giving large spikes in chi1,2 plots !
The solution is to rename such atoms in molecule 2, i.e. to swap the labels CD1<->CD2 and CE1<->CE2.
A similar situation may arise for Asn, Gln and His, assuming that the crystallographer was unable to distinguish the N/O or C/N atoms unambiguously.
Note that this command is *hard-wired* for proteins !!!

The FIx_atom_names command takes the following arguments:
- mol1 range1 = molecule 1 and zone(s)
- mol2 range2 = molecule 2 and begin point of zone(s)
- mode = Strict (only check Asp, Glu, Arg, Phe, Tyr) or All (also check Asn, Gln and His)
- how = Sequential (assumes a 1:1 correspondence in the sequences of the zones) or Nearest (finds the residue in molecule 2 whose CA atoms after LSQ is nearest that of the residue in molecule 1; this is an unreliable method and should only be used if you are interested in all-atom comparisons of molecules with different sequences, which is not a good idea in the first place) if you use Nearest, you *MUST* have superimposed molecule 2 onto molecule 1 previously, since this operator is needed to find the nearest residue
- what = Rmsd (minimises the RMSD of the ambiguous atoms) or Torsion (minimises the absolute difference between the affected side-chain torsions, e.g. CHI2 for Asp, Phe, Tyr and CHI3 for Glu); if you use Rmsd, you *MUST* have superimposed molecule 2 onto molecule 1 previously, since this operator is needed to calculate the rmsd-values
- min_gain = optional parameter which defines how much must be gained (in terms of rmsd or torsion-angle differences) before the atoms are renamed (if you would gain 0.000001 A by renaming the atoms, it's not worth the trouble)
- cut_off = optional parameter, only used when "how" is set to "Nearest"; it defines the maximum allowable CA-CA distance before a residue in molecule 2 is matched to one in molecule 1

So, how would you go about in practice ?
- identical sequences, calculating all-atom RMSDs: NOmen m1; NOmen m2; ATom CA; EXplicit m1 a1-999 m2 a1; FIx m1 a1-999 m2 a1 str seq rmsd 0.01; ATom NOnh; EXplicit m1 a1-999 m2 a1
- NCS (identical sequences), comparing torsion angles: NOmen m1; FIx m1 a1-999 m1 b1 str seq tors 0.1; then repeat for each of the other NCS units (e.g., chains C, D, etc.); then use MSide or MTors to generate the plots
- different sequences: don't do all-atom comparisons

For example, if you look at PDB entry 1CEL, there are a few instances of swapped sidechains. Correcting for this reduces the all-atom RMSD by about a third !!!

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 1cel.pdb
 LSQMAN > at no
 LSQMAN > ex m1 a1-999 m1 b1
 ...
 The   3518 atoms have an RMS distance of    0.255 A
 ...
 LSQMAN > fix m1 a1-999 m1 b1 strict seq rmsd 0.01
 WARNING - mol1 == mol2 !
 Reference atoms M1 A1-999
 Fix atoms for   M1 B1
 Only fix Asp/Glu/Arg/Phe/Tyr
 Use sequential residues (1:1 correspondence)
 Minimise RMSD
 Minimum improvement : (   0.010)
 Applying current operator to Mol 2 ...

Nr of RT operators : 1

RT-OP 1 = 0.9998649 0.0163407 -0.0018067 38.703 -0.0163272 0.9998405 0.0072388 42.876 0.0019247 -0.0072083 0.9999722 56.158 Determinant of rotation matrix 1.000000 Column-vector products (12,13,23) 0.000000 0.000000 0.000000 Crowther Alpha Beta Gamma 104.01381 0.42750 -104.94973 Spherical polars Omega Phi Chi 155.42732 -165.51825 1.02912 Direction cosines of rotation axis -0.40219 -0.10388 -0.90943 Dave Smith -0.41475 89.88973 -0.93629 Rotation angle 1.029076

Zone : ( 1) Fix sidechain of ASP-B- 63 ( 1.48 versus 0.30) Fix sidechain of PHE-B- 146 ( 1.54 versus 0.24) Fix sidechain of TYR-B- 167 ( 1.54 versus 0.29) Fix sidechain of GLU-B- 217 ( 1.48 versus 0.18) Fix sidechain of TYR-B- 274 ( 1.55 versus 0.20) Fix sidechain of PHE-B- 280 ( 1.54 versus 0.30) Fix sidechain of TYR-B- 321 ( 1.54 versus 0.23)

Residues checked : ( 85) Residues fixed : ( 7) CPU total/user/sys : 2.6 2.6 0.0 LSQMAN > ex m1 a1-999 m1 b1 ... The 3518 atoms have an RMS distance of 0.164 A ... ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

The same effect can be observed if the torsion angles are used:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 1cel.pdb
 LSQMAN > ms m1 a m1_chi12_sigma.plt
 ...
 Nr of residues found : (        434)
 SIGMA(chi1) Ave, Sdv, Min, Max :      1.1     1.6     0.0    19.5
 RANGE(chi1) Ave, Sdv, Min, Max :      2.2     3.2     0.0    39.0
 SIGMA(chi2) Ave, Sdv, Min, Max :      2.3    10.5     0.0    89.9
 RANGE(chi2) Ave, Sdv, Min, Max :      4.6    21.0     0.0   179.8
 ...
 LSQMAN > fix m1 a1-999 m1 b1
 WARNING - mol1 == mol2 !
 Mode (Strict/All) ? (S)
 How (Sequential/Nearest) ? (S)
 Minimise what (Rmsd/Torsions) ? (R) t
 Reference atoms M1 A1-999
 Fix atoms for   M1 B1
 Only fix Asp/Glu/Arg/Phe/Tyr
 Use sequential residues (1:1 correspondence)
 Minimise torsion-angle differences
 Minimum improvement : (   0.100)

Zone : ( 1) Fix sidechain of ASP-B- 63 ( 177.25 versus 3.25) Fix sidechain of PHE-B- 146 ( 178.08 versus 2.68) Fix sidechain of TYR-B- 167 ( 172.27 versus 2.02) Fix sidechain of GLU-B- 217 ( 178.28 versus 0.91) Fix sidechain of TYR-B- 274 ( 182.81 versus 1.73) Fix sidechain of PHE-B- 280 ( 179.83 versus 1.79) Fix sidechain of TYR-B- 321 ( 173.46 versus 3.15)

Residues checked : ( 85) Residues fixed : ( 7) CPU total/user/sys : 2.7 2.6 0.0 LSQMAN > ms m1 a m1_chi12_sigma.plt ... Nr of residues found : ( 434) SIGMA(chi1) Ave, Sdv, Min, Max : 1.1 1.6 0.0 19.5 RANGE(chi1) Ave, Sdv, Min, Max : 2.2 3.2 0.0 39.0 SIGMA(chi2) Ave, Sdv, Min, Max : 1.1 2.7 0.0 32.3 RANGE(chi2) Ave, Sdv, Min, Max : 2.1 5.4 0.0 64.7 ... ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


10.14 HYdrogens (keep or strip when reading or writing)


By default, hydrogen atoms are STRIPPED when a PDB file is read or written by LSQMAN. You can change this with the HYdrogens command which takes as argument either KE(ep) or ST(rip).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > hy
 Select one of the following modes:
 KEep   = retain hydrogens on read/write
 STrip  = strip  hydrogens on read/write
 Hydrogen mode ? (STrip)
 Strip hydrogens
 LSQMAN > hy kee
 Keep hydrogens
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.15 HEtatm (keep or strip when reading)


By default, hetero atoms (on HETATM cards) are KEPT when a PDB file is read by LSQMAN. You can change this with the HEtatm command which takes as argument either KE(ep) or ST(rip). This mode switch does not influence the way PDB files are written (once read, *ALL* ATOMs and HETATMs will be written as ATOMs on output).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > het
 Select one of the following modes:
 KEep   = retain HETATMs on read
 STrip  = strip  HETATMs on read
 HETATM mode ? (STrip)
 Strip HETATMs
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.16 SUbtract_ave_b (subtract average temperature factor)


Calculation of RMS delta-B values between structures or NCS-related molecules make more sense if you correct for differences in overall temperature factors. This option will calculate the average B for every chain/model of a molecule, and subtract the average from all Bs of non-hydrogen atoms. The example below is for P2 myelin for which the 3 NCS-related molecules have different average Bs. Note that after subtraction, the RSM delta-B is almost zero, but that the correlation coefficient (which is insensitive to offsets and scales) has not changed !
Use this option prior to the MBfactors command as well !!!

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ex m4 b1-200 m4 c1
 ...
 B-factor range used: -1000.00 - 10000.00 A2
 Nr of atoms to match  : (        131)
 Nr skipped (B limits) : (          0)
 The    131 atoms have an RMS distance of    0.001 A
 RMS delta B  =   14.581 A2
 Corr. coeff. =      0.9975
 ...
 LSQMAN > mb m4 a ../b1.plt
 Multiple chain/model B-factor analysis
 ...
 Nr of residues found : (        131)
 SIGMA(B) Ave, Sdv, Min, Max :      6.5     0.3     5.0     6.6
 RANGE(B) Ave, Sdv, Min, Max :     14.6     0.9    10.6    14.8
 Plot file written
 LSQMAN > su m4
 Subtract average chain B for : (M4)
 Chain A # non-H atoms =   1039 <B> =  29.42 A**2
 Chain B # non-H atoms =   1039 <B> =  27.63 A**2
 Chain C # non-H atoms =   1039 <B> =  42.08 A**2
 LSQMAN > ex m4 b1-200 m4 c1
 ...
 B-factor range used: -1000.00 - 10000.00 A2
 Nr of atoms to match  : (        131)
 Nr skipped (B limits) : (          0)
 The    131 atoms have an RMS distance of    0.001 A
 RMS delta B  =    0.889 A2
 Corr. coeff. =      0.9975
 LSQMAN > mb m4 a ../b2.plt
 ...
 Nr of residues found : (        131)
 SIGMA(B) Ave, Sdv, Min, Max :      0.2     0.3     0.1     1.6
 RANGE(B) Ave, Sdv, Min, Max :      0.5     0.7     0.2     3.8
 Plot file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.17 ATom_types (select atom types to use in superpositioning)


Select which atom types you want to use during explicit least-squares superpositioning. Note that ONLY the FIRST of these will be used in the improvement steps (in other words, make sure that " CA " is the first atom type if you work with proteins) !
Also note that the atom types should conform to the PDB naming convention (e.g., C-alpha should be entered as " CA ") !
The following options are available:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 * ?  --- list the currently selected atom types
 * CA --- use only C-alpha atoms
 * MA --- use main-chain atoms " N  ", " CA " and " C  "
 * SI --- use all non-hydrogen atoms except N, CA, C, O, OT1, OT1, OTX, OXT
 * EX --- use extended main-chain atoms (N, CA, CB, C, O)
 * PH --- use phosphate " P  " for DNA and RNA molecules
 * DE --- define your own atom types
 * AL --- all atom types
 * NO --- all non-hydrogen atom types
 * TR --- all CA atoms plus all non-hydrogen side-chain atoms
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

The AL, SI, TR, and NO options only make sense when you are comparing identical molecules, e.g. before and after refinement, or NCS-related molecules. The atoms must have the SAME ORDER in both molecules ! Also, don't forget to reset the atom type to something sensible before using IMprove (e.g., to CA).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > at ca
 Nr of atom types : (       1)
 Type : ( CA)
 LSQMAN > ex m1
...
 Atom types     | CA |
 Nr of atoms to match : (         60)
 The     60 atoms have an RMS distance of    0.782 A
...
 LSQMAN > at def " ca " " n  " " c  " " co " " cb " " cg " "
 Nr of atom types : (       7)
 Type : ( CA)
 Type : ( N)
 Type : ( C)
 Type : ( CO)
 Type : ( CB)
 Type : ( CG)
 Type : ( CD)
 LSQMAN > ex m1
...
 Atom types     | CA | N  | C  | CO | CB | CG | CD |
 Nr of atoms to match : (        265)
 The    265 atoms have an RMS distance of    0.893 A
...
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.18 SEt (set parameters for operator-improvement algorithm)


Set, list or reset the various parameters for the least-squares improvement option. These are discussed in more detail below.
The following sub-options are available:

* ? --- list the current settings

* RE --- reset the program's default settings (makes the improve option behave like the LSQ_IMPROVE command in O)

* CO --- set suitable parameters for adjusting a very rough initial alignment (e.g., produced by DEJAVU)

* IN --- set parameters for refining an intermediately rough operator

* FI --- set parameters for fine-tuning an operator

* SI --- set parameters for refining an operator between very similar molecules

* MA --- maximum number of improvement cycles

* DI --- maximum distance between matched atoms (as in O)

* DE --- decay factor for the above

* MI --- minimum length of matched fragments (as in O)

* FR --- decay increment for the above

* OP --- the optimisation criterion to be used

* SE --- enforce sequential hits flag

* RM --- weight for the RMS distance in the calculation of the match index

* SH --- frameshift correction flag (used in IMprove and BRute_force); especially useful when you use a very high distance cut-off

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > set re
 Resetting program defaults
 LSQMAN > set ?
 Current parameters:
 Max matching distance (A) : (   3.800)
 Decay factor              : (   1.000)
 Min fragment length (res) : (       5)
 Fragment length decay     : (       0)
 Max nr of improve cycles  : (      10)
 Criterion (SI/MI/RM/NM)   : (SI)
 RMS weight (MI only)      : (   1.000)
 Sequential hits only      : (OF)
 LSQMAN > se opt
 Criterion (SI/MI/RMs/NMatch) ? (SI) mi
 Criterion : (MI)
 LSQMAN > set dec 0.95
 Decay factor : (   0.950)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.19 OMacro (used in macros created by DEJAVU, SPASM, etc.)


This command provides an interface to O in that it creates O macro files containing instructions to read, rotate/translate and display one or more molecules.
The following sub-options are available:

* IN --- select a new reference molecule, close the previous macro file and start a new one

* AP --- add instructions to the macro for a molecule which you have fit on top of the reference molecule defined in the INit step

* WR --- write one or more O commands to the macro file

* CL --- close the current macro file

These commands are used in the LSQMAN input files as produced by DEJAVU. They are not intended for interactive use (but, you're free to use them anyway, of course ;-).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > om in m1
 File name ? (lsq_m1.omac)
 O macro initialised
 LSQMAN > om ap m2
 O macro extended
 LSQMAN > om wr "print ... I don't like this fit"
 Written to O macro : (print ... I don't like this fit)
 LSQMAN > om close
 O macro file closed
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


10.20 INvert_ncs (invert one or more RT operators)


Use this command to invert one or more O-style Cartesian space RT-operators (e.g., NCS or inter-crystal). Provide the name of the operator file and the name of the output file with the inverted operator(s).


11 SUPERIMPOSING AND COMPARING TWO MOLECULES


11.1 EXplicit (explicit superpositioning of two molecules)


Do an explicit least-squares superposition (as LSQ_EXPLICIT in O). You must supply:
* the name of the molecule that is to be kept fixed
* one or more residue ranges
* the name of the molecule that is to be rotated/translated
* the first residue of each zone corresponding to the zones entered for the fixed molecule
Note that by using the ATom_types commands you can perform this fit using any type(s) of atom !
From version 3.0 onwards, the RMS difference between and the linear correlation coefficient of the temperature factors (Bs) of the matched atoms are also shown.
From version 3.2.2 onwards, a B-factor limit may be imposed with the BF command.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ex m1
 Range 1 ? (A1-10) "a4-10 a19-23 a28-36 a44-51 a53-66 a91-97 a106-111 a123:126"
 Mol 2 ? (M1) m2
 Range 2 ? (A1) "a4 a19 a28 a44 a53 a91 a106 a123"
 Explicit fit of M1 "A4-10 A19-23 A28-36 A44-51 A53-66 A91-97 A106-111 A123:126"
 And             M2 "A4 A19 A28 A44 A53 A91 A106 A123"
 Atom types     | CA | N  | C  | O  | CB |
 Nr of atoms to match : (        295)
 The    295 atoms have an RMS distance of    0.892 A
 Rotation    :  -0.956932  0.127723 -0.260706
                 0.170532 -0.479456 -0.860837
                -0.234946 -0.868222  0.437026
 Translation :     13.787    26.800    38.541
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.2 IMprove (improve alignment of two molecules)


Improve an existing operator between two molecules. As in 2.10, you must supply two molecule names and two ranges (usually, 'A*' for both molecules). This option is discussed in more detail below. Note that ONLY the first atom type is used now, since we want to compare the two structures on a residue-by-residue basis !
From version 3.0 onwards, the RMS difference between and the linear correlation coefficient of the temperature factors (Bs) of the matched atoms are also shown.
Version 6.1 made a number of changes (see version history).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > im m1 a* m2
 Range 2 ? (A1) a*
 Improve fit of  M1 A*
 And             M2 A*
 Atom type      | CA |
 Nr of atoms in mol1 : (        129)
 Nr of atoms in mol2 : (        126)

Found fragment of length : ( 126)

Cycle : ( 1) Distance cut-off (A) : ( 4.000) Min fragment length (res) : ( 3) The 126 atoms have an RMS distance of 0.906 A SI = RMS * Nmin / Nmatch = 0.90630 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.52458 Rotation : -0.95771867 0.11354620 -0.26435241 0.17979124 -0.48112354 -0.85801822 -0.22461088 -0.86926830 0.44036639 Translation : 13.5455 27.2343 38.5374

...

Found fragment of length : ( 102) Found fragment of length : ( 23)

Cycle : ( 10) Distance cut-off (A) : ( 2.521) Min fragment length (res) : ( 3) The 125 atoms have an RMS distance of 0.880 A SI = RMS * Nmin / Nmatch = 0.88718 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.52769 Rotation : -0.95701498 0.11345596 -0.26692718 0.18237905 -0.48019871 -0.85799015 -0.22552218 -0.86979133 0.43886536 Translation : 13.4690 27.2135 38.5830

Fragment CYS-A 3 <===> CYS-A 3 @ 2.00 A GLU-A 4 <===> SER-A 4 @ 1.15 A ALA-A 5 <===> VAL-A 5 @ 0.64 A ... LEU-A 127 <===> LEU-A 127 @ 0.83 A SER-A 128 <===> LYS-A 128 @ 1.76 A

Nr of residues in mol1 : ( 129) Nr of residues in mol2 : ( 126) Nr of matched residues : ( 125) Nr of identical residues : ( 77) % identical of matched : ( 61.600) % matched of mol1 : ( 96.899) % identical of mol1 : ( 59.690) % matched of mol2 : ( 99.206) % identical of mol2 : ( 61.111)

----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.3 BRute_force (find alignment of two molecules automagically)


With this command you can undertake a systematic attempt to align two molecules for which you don't know exactly which residue numbers will match, for example:
- comparing a protein from two different organisms
- comparing mutants
- comparing distantly related proteins
- comparing a partial model (e.g., a domain) to a complete one

You have to supply the molecule and chain names to be aligned, as well as values for the following parameters:
- length of fragments the program will attempt to match (e.g., 50 or 30)
- step size for trying different fragments (typically, about half the fragment length)
- the minimum number of matched residues between the two chains that would make you happy (e.g., 100)
- an optional parameter which tells the program if the two molecules are just models of the same protein (value S for Same), or if they are different proteins alltogether (value D for Different, default). In the former case, only matches of identical stretches of residues will be tried, making the matching process an order of magnitude faster. (Normally, EXplicit + IMprove is good enough in case like this, but not when you are evaluating some of the models submitted to CASP3 ...)

The algorithm is very simple. Suppose molecule 1 is numbered from 1 to 236, and molecule 2 from 36 to 85. If you use a fragment length of 50 residues and a step size of 10, the following will happen:
- the program will do an explicit superpositioning of residues 1 to 50 in molecule 1 and 36-85 in molecule 2. If the RMSD is less than 10 A, it will subsequently attempt to improve the alignment.
- when it's done, it will align 1 to 50 with 37-86 in molecule 2, and improve the alignment if possible, etc.
- in this way the fragment "1 to 50" of molecule slides over the entire sequence of molecule 2; for each alignment the RMSD is calculated, and the alignment is improved upon if possible.
- whenever an alignment leads to a larger number of matched residues than previously obtained, the alignment will be stored as the current best one
- when this is done, the program will "jump" 10 residues (the step size), and now attempt to align residues 11 to 60 of molecule 1 with molecule 2 36-85, 37-86, ....

If at any stage the number of matched residues exceeds the minimum number you said would make you happy, the operation stops and the alignment is stored as the current best operator bringing molecule 2 on top of molecule 1. To see which residues are matched, do an IMprove molecule1 molecule2.

The default values for the three parameters usually work well. If the similarity between the two molecules is very small, you can use a smaller value for the fragment length (e.g., 30 instead of 50).

If you want to do a more thorough search (slow !), use a small value for the step size, and a large value for the minimum number of residues to be matched.

In difficult cases, use a large number for the minimum number of residues to be matched (at least 100). The rationale for this is that for two large structures, there are often "false minima" involving a respectable number of matched residues. For example, aligning 1LTE to 1CEL with a value of 50 gives an incorrect solution; using a value of 100 gives the correct solution.

Note that you can use all the parameters that you can use for the EXplicit and IMprove commands (e.g., which atoms to use in the alignment, so it should also work for DNA, RNA, sugars, ...).

Example 1 - matching P2 myelin (1PMP) to cellular retinol-binding protein (1CBR). This is very easy, since the two proteins are structurally very similar, and the correct alignment is found within a second:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1pmp.pdb
 LSQMAN > re m2 /nfs/pdb/full/1crb.pdb
 LSQMAN > brute m2 a m1 a 50 25 50
 Brute-force fit of M2 A
 And                M1 A
 Atom types     | CA |
 B-factor range used: -1000.00 - 10000.00 A2

Try zone : (A1-50) Max match so far : ( 124) RMSD (A) : ( 1.350)

Max match : ( 124) RMSD (A) : ( 1.350) Mol 1 res : ( 1) Mol 2 res : ( 1)

Regenerating best alignment ... The 124 atoms have an RMS distance of 1.350 A SI = RMS * Nmin / Nmatch = 1.42589 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.40302 MC = Maiorov-Crippen RHO (0-2) = 0.09896 RMS delta B for matched atoms = 19.016 A2 Corr. coefficient matched atom Bs = 0.504 Rotation : 0.68867493 -0.70703316 -0.16072004 0.64643365 0.69910890 -0.30556563 0.32840583 0.10654055 0.93850875 Translation : -71.5652 -14.1618 -7.1147 LSQMAN > im m2 * m1 * ... Fragment PHE-A 4 <===> PHE-A 4 @ 0.75 A * ASN-A 5 <===> LEU-A 5 @ 1.00 A GLY-A 6 <===> GLY-A 6 @ 0.77 A * TYR-A 7 <===> THR-A 7 @ 0.74 A TRP-A 8 <===> TRP-A 8 @ 0.77 A * LYS-A 9 <===> LYS-A 9 @ 0.72 A * MET-A 10 <===> LEU-A 10 @ 0.66 A LEU-A 11 <===> VAL-A 11 @ 0.62 A ... Nr of residues in mol1 : ( 134) Nr of residues in mol2 : ( 393) Nr of matched residues : ( 124) Nr of identical residues : ( 44) % identical of matched : ( 35.484) % matched of mol1 : ( 92.537) % identical of mol1 : ( 32.836) % matched of mol2 : ( 31.552) % identical of mol2 : ( 11.196) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

Example 2 - matching cellular retinol-binding protein (1CRB) to the serum retinol-binding protein (1RBP). This is more difficult, since, although the proteins are related, their structures are rather different (10- versus 8-stranded beta-barrel; ~130 versus ~170 residues). Therefore, be a bit more conservative with the choice of parameters (although the default values give almost the same operator, but with only 61 aligned atoms and an RMSD of 1.55 Å, and is 4 faster):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > brute m2 a m3 a 30 15 100
 Brute-force fit of M2 A
 And                M3 A
 Atom types     | CA |
 B-factor range used: -1000.00 - 10000.00 A2

Try zone : (A1-30) Max match so far : ( 6) RMSD (A) : ( 1.399) Max match so far : ( 14) RMSD (A) : ( 1.702) Max match so far : ( 29) RMSD (A) : ( 1.953) Max match so far : ( 60) RMSD (A) : ( 1.671) Try zone : (A16-45) Try zone : (A31-60) Max match so far : ( 62) RMSD (A) : ( 1.595) Max match so far : ( 69) RMSD (A) : ( 1.725) Try zone : (A46-75) Try zone : (A61-90) Try zone : (A76-105) Try zone : (A91-120) Try zone : (A106-135) Try zone : (A121-150) Try zone : (A136-165) Try zone : (A151-180) Try zone : (A166-195) Try zone : (A181-210) Try zone : (A196-225) Try zone : (A211-240) Try zone : (A226-255) Try zone : (A241-270) Try zone : (A256-285) Try zone : (A271-300) Try zone : (A286-315) Try zone : (A301-330) Try zone : (A316-345) Try zone : (A331-360)

Max match : ( 69) RMSD (A) : ( 1.725) Mol 1 res : ( 31) Mol 2 res : ( 36)

Regenerating best alignment ... The 69 atoms have an RMS distance of 1.725 A SI = RMS * Nmin / Nmatch = 3.35045 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.19027 MC = Maiorov-Crippen RHO (0-2) = 0.14722 RMS delta B for matched atoms = 12.240 A2 Corr. coefficient matched atom Bs = 0.230 Rotation : -0.07855319 0.99690783 0.00203792 -0.75387448 -0.06074028 0.65420473 0.65230560 0.04985354 0.75631475 Translation : 2.2218 -28.6619 -51.8604 CPU total/user/sys : 64.5 64.5 0.1 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

Example 3 - a tough case is matching 1CEL and 1AYH. Both proteins have a similar core fold but they are not so easy to align. With conservative parameters, the program finds the correct alignment very quickly though:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1cel.pdb
 LSQMAN > re m2 /nfs/pdb/full/1ayh.pdb
 LSQMAN > br
 Mol 1 ? (M2) m1
 Chain 1 ? (A)
 Mol 2 ? (M1) m2
 Chain 2 ? (A)
 Fragment length ? (          50) 30
 Fragment step ? (          10) 15
 Min nr of residues to match ? (          50)
 Brute-force fit of M1 A
 And                M2 A
 Atom types     | CA |
 B-factor range used: -1000.00 - 10000.00 A2

Try zone : (A1-30) Max match so far : ( 15) RMSD (A) : ( 1.540) Max match so far : ( 17) RMSD (A) : ( 1.892) Max match so far : ( 27) RMSD (A) : ( 2.287) Max match so far : ( 30) RMSD (A) : ( 2.407) Try zone : (A16-45) Try zone : (A31-60) Max match so far : ( 33) RMSD (A) : ( 2.071) Try zone : (A46-75) Try zone : (A61-90) Try zone : (A76-105) Max match so far : ( 118) RMSD (A) : ( 1.632)

Max match : ( 118) RMSD (A) : ( 1.632) Mol 1 res : ( 76) Mol 2 res : ( 31)

Regenerating best alignment ... The 118 atoms have an RMS distance of 1.632 A SI = RMS * Nmin / Nmatch = 2.95980 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.21029 MC = Maiorov-Crippen RHO (0-2) = 0.11718 RMS delta B for matched atoms = 4.886 A2 Corr. coefficient matched atom Bs = 0.483 Rotation : -0.00117512 0.78378356 0.62103295 -0.99771070 0.04107324 -0.05372495 -0.06761657 -0.61967438 0.78194100 Translation : 47.5682 52.8404 46.9592 CPU total/user/sys : 36.1 36.0 0.1 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.4 EDit_operator (edit operator between two molecules)


Supply the names of the two molecules plus the twelve elements of the operator (note: this uses Alwyn's transpose-matrix formalism). The program checks:
* that all nine elements of the rotation matrix have values in between -1 and +1
* that the determinant of the rotation matrix lies in between 0.9995 and 1.0005
If both checks are successful, the operator is overwritten.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ed m1 m2
 Operator bringing : (M2)
 on top of         : (M1)
 Operator element  1 ? ( -0.9570150)
 Operator element  2 ? (  0.1134560)
 Operator element  3 ? ( -0.2669272)
 Operator element  4 ? (  0.1823791)
 Operator element  5 ? ( -0.4801987)
 Operator element  6 ? ( -0.8579901)
 Operator element  7 ? ( -0.2255222)
 Operator element  8 ? ( -0.8697913)
 Operator element  9 ? (  0.4388654)
 Operator element 10 ? (   13.46905) 13
 Operator element 11 ? (   27.21351) 27
 Operator element 12 ? (   38.58303) 39
 Determinant of rotation matrix =   1.000000
 Rotation angle                 = 177.671234
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.5 SHow_operator (show operator between two molecules)


List information about an operator. Note that the last LSQMAN command pertaining to this operator is also shown (to help remind you where the operator came from).
From version 3.0 onwards, the RMS difference between and the linear correlation coefficient of the temperature factors (Bs) of the matched atoms are also shown. In addition, if you compare two chains within one molecule (i.e., the case of non-crystallographic symmetry), the program will also tell you what it thinks of the way in which the NCS was con/restrained by whomever did the refinement of the structure.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > sh m2 m2
 Operator bringing : (M2)
 on top of         : (M2)
 Last command was  : (EX M2 A1-400 M2 B1)
 The   2324 atoms have an RMS distance of    0.338 A
 SI = RMS * Nmin / Nmatch             =      0.33790
 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} =      0.74744
 RMS delta B for matched atoms        =     9.455 A2
 Corr. coefficient matched atom Bs    =        0.707
 Rotation     :   0.27394941  0.93619686  0.22019802
                  0.93816668 -0.31052074  0.15303643
                  0.21164827  0.16465820 -0.96337569
 Translation  :      -3.6828     -0.9881     27.3222

Nr of NCS operators : 1

NCSOP 1 = 0.2739494 0.9381667 0.2116483 -3.683 0.9361969 -0.3105207 0.1646582 -0.988 0.2201980 0.1530364 -0.9633757 27.322 Determinant of rotation matrix = 1.000000 Crowther Alpha Beta Gamma 37.88222 164.44548 145.20091 Spherical polars Omega Phi Chi 82.22273 36.34090 179.58316 Direction cosines of rotation axis 0.79811 0.58715 0.13532 Dave Smith -170.30086 77.27934 -73.72193 Rotation angle = 179.583160

*POOR* - NCS not restrained *POOR* - NCS Bs not restrained ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.6 SAve_operator (write operator to O datablock file)


Save an operator in an O datablock file. Provide the names of the two molecules, a filename and, optionally, a datablock name.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > save m1 m2
 Operator bringing : (M2)
 on top of         : (M1)
 File name ? (rt_m2_to_m1.odb)
 Save in file   : (rt_m2_to_m1.odb)
 Datablock name : (.lsq_rt_m2_to_m1)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.7 OLd_o_operator (read operator from O datablock file)


Read an operator from an O datablock file. The same checks as listed for the EDit_operator command are applied here.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ol m1 m2
 Operator bringing : (M2)
 on top of         : (M1)
 File name ? (rt_m2_to_m1.odb)
 Opening O datablock : (rt_m2_to_m1.odb)
 Created by LSQMAN V. 931022/0.4 at Fri Oct 22 23:03:13 1993 for user gerard
 Datablock : (.LSQ_RT_M2_TO_M1)
 Data type : (R)
 Number    : (12)
 Format    : ((3F15.7))
 Operator : ( -9.570E-01   1.135E-01  -2.669E-01   1.824E-01  -4.802E-01
  -8.580E-01  -2.255E-01  -8.698E-01   4.389E-01   1.347E+01   2.721E+01
  3.858E+01)
 Determinant of rotation matrix =   1.000000
 Rotation angle                 = 177.671234
 Operator looks okay !
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.8 APply_operator (apply an operator to the coordinates of a molecule)


Apply an operator. The FIRST molecule is the one TO WHICH you want to align the SECOND molecule, using the current operator between them. In other words: the transformation is applied to the SECOND molecule !!! All operators involving the moved molecule will be reset !

From version 5.3, there is an optional "chain" parameter in case you want to apply an operator to only one chain of a molecule. The default is to apply it to all chains ("*").

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ap m1 m1 b
 Bring Mol 2 on top of Mol 1 ...
 Warning: mol1 == mol2 !
 Molecule 1 : (M1)
 Molecule 2 : (M1)
 Apply to mol 2 chain : (B)
 Nr of atoms moved : (       3518)
 Resetting ALL operators of mol 2 ...
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.9 RMsd_calc (calculate RMSD for subset of atoms with current operator)


With this command you can calculate the RMSD of any set of atoms using the *current* operator. This enables you, for instance, to improve an operator using CA atoms, and then to calculate the RMSD of all backbone atoms using the improved operator. The statistics are printed, but *not* stored (i.e., the numbers listed with the SHow command are not altered by this operation).
From version 3.2.2 onwards, a B-factor limit may be imposed with the BF command.
From version 4.3.1 onwards, the angle between the vectors spanned between the first and last selected atoms will be calculated. You can use this to find the angles between aligned helices and strands in different molecules. Note that it doesn't make any assumptions about things being regular helix or strand or anything, so that it will not try to fit a helical axis, for example; nevertheless, the answers are close enough for government work and the option will also work for non-proteins).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ex m2 a1-400 m2 b1
 WARNING - mol1 == mol2 !
 Explicit fit of M2 A1-400
 And             M2 B1
 Atom types     | CA |
 Nr of atoms to match : (        317)
 The    317 atoms have an RMS distance of    0.172 A
 RMS delta B  =    9.405 A2
 Corr. coeff. =      0.6226
 Rotation    :   0.273846  0.936356  0.219651
                 0.938231 -0.310304  0.153082
                 0.211497  0.164162 -0.963493
 Translation :     -3.689    -0.995    27.315
 LSQMAN > at no
 Nr of atom types : (       1)
 Type : (NONH)
 LSQMAN > rm m2 a1-400 m2 b1
 WARNING - mol1 == mol2 !
 Calculate RMSD of M2 A1-400
 And               M2 B1
 Atom types       |NONH|
 Nr of atoms to match : (       2324)
 The   2324 atoms have an RMS distance of    0.339 A
 RMS delta B  =    9.455 A2
 Corr. coeff. =      0.7071
 Rotation    :   0.273846  0.936356  0.219651
                 0.938231 -0.310304  0.153082
                 0.211497  0.164162 -0.963493
 Translation :     -3.689    -0.995    27.315
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > rmsd m1 a26-36 m2 a26
 Calculate RMSD of M1 A26-36
 And               M2 A26
 Atom types       | CA |
 B-factor range used: -1000.00 - 10000.00 A2
 Nr of atoms to match  : (         11)
 Nr skipped (B limits) : (          0)

The 11 atoms have an RMS distance of 0.333 A RMS delta B = 21.250 A2 Corr. coeff. = 0.1809 Rotation : -0.779411 -0.366070 -0.508440 0.275059 -0.929083 0.247278 -0.562905 0.052881 0.824829 Translation : 19.155 34.722 27.774

Vectors between first and last selected atoms: Mol 1 : ( 4.498 -1.028 14.570) Mol 2" : ( 4.050 -0.701 14.022) Angle between them (deg) : ( 1.524) ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.10 PHipsi (make delta-Phi, delta-Psi plot)


With this command you can compare the PHI/PSI angles of corresponding zones of residues in different, or NCS-related, molecules. The output is a plot file for O2D, plus the RMSD values for the two torsion angles. Note that this command does *not* require the two molecules to be superimposed, since the angles are independent of orientation.
For a further discussion of this type of plot, see:
AP Korn & DR Rose, Prot. Engineering 7(8), 961-967 (1994)

NOTE: from version 3.2.1 onward, commented-out O datablock headers are included in the plot files. This enables you to quickly convert the plot files into O datablocks, read them into O, and use them to colour your molecule.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ph m1 a5-190 m1 b5 3sdp_phipsi.plt
 WARNING - mol1 == mol2 !
 Plot of M1 A5-190
 And     M1 B5
 Nr of residues matched : (        186)
 RMS delta PHI       : (  69.041)
 Average |delta PHI| : (  49.626)
 Nr |delta PHI| > 10 : (     150)
 Percentage          : (  80.645)
 RMS delta PSI       : (  71.161)
 Average |delta PSI| : (  51.375)
 Nr |delta PSI| > 10 : (     148)
 Percentage          : (  79.570)
 Plot file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

The plot file may look as follows:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
REMARK Created by LSQMAN V. 941218/3.0.1 at Sun Dec 18 00:50:42 1994 for user gerard
XLABEL Residue number
YLABEL Delta PHI and Delta PSI
REMARK Plot of delta PHI (solid blue) and delta PSI (dotted red) as a function of residue nr
REMARK Values are those of mol M1 = file /nfs/pdb/full/3sdp.pdb
REMARK      minus those of mol M1 = file /nfs/pdb/full/3sdp.pdb
XYVIEW        4     191    -180     180
NPOINT      186
COLOUR        4
XVALUE *
     5     6     7     8     9    10    11    12    13    14    15    16
    17    18    19    20    21    22    23    24    25    26    27    28
    29    30    31    32    33    34    35    36    37    38    39    40
...
   173   174   175   176   177   178   179   180   181   182   183   184
   185   186   187   188   189   190
! MOLNAM_RESIDUE_DPHI R 186 (9f8.2)
YVALUE *
    0.00   -3.92    5.34  -59.37  139.44  155.28   92.02   -2.66  145.04
   87.80  149.14  -83.57   16.04   48.16   16.36   -0.47  -27.75  -53.48
...
   -9.94  -17.02  -20.24   68.48   27.43  138.36
REMARK RMS delta PHI =    69.04 +++ Average |delta PHI| =    49.63
REMARK Nr |delta PHI| > 10 =      150 +++ Percentage =    80.65
MORE
COLOUR        1
! MOLNAM_RESIDUE_DPSI R 186 (9f8.2)
YVALUE *
   42.14  -44.13  -64.43   39.98    0.63 -172.61 -112.61   35.95  174.50
...
   36.56   -7.45    9.34  -17.56   85.27    0.00
REMARK RMS delta PSI =    71.16 +++ Average |delta PSI| =    51.38
REMARK Nr |delta PSI| > 10 =      148 +++ Percentage =    79.57
END
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.11 DIst_plot (plot distance between atoms in two molecules)


With this command you can calculate and plot the distances of corresponding atoms in corresponding residues after superimposing two molecules. Note that only one type of atom can be compared at a time (the first type set with one of the ATom_types commands). Usually, these will be CA atoms, but it can also be used for DNA or RNA. Note that the two molecules must have been superimposed before you use this command.

NOTE: from version 3.2.1 onward, commented-out O datablock headers are included in the plot files. This enables you to quickly convert the plot files into O datablocks, read them into O, and use them to colour your molecule.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m2 /nfs/pdb/full/5rub.pdb
...
 LSQMAN > at ca
 Nr of atom types : (       1)
 Type : ( CA)
 LSQMAN > ex m2 a2-457 m2 b2
...
 The    432 atoms have an RMS distance of    0.909 A
 RMS delta B  =    5.001 A2
 Corr. coeff. =      0.9451
...
 LSQMAN > di m2 a2-457 m2 b2 5rub_cadist.plt
 WARNING - mol1 == mol2 !
 Central-atom distance plot
 Central atom type : ( CA)
 Plot of M2 A2-457
 And     M2 B2
 Nr of residues matched : (        432)
 Average distance : (   0.631)
 Minimum distance : (   0.028)
 Maximum distance : (   4.912)
 Plot file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.12 DDihe (delta-dihedral plots for CA backbone comparison)


With this command you can calculate delta-dihedral plots of corresponding atoms in corresponding residues. Note that only one type of atom can be compared at a time (the first type set with one of the ATom_types commands). Usually, these will be CA atoms, but it can also be used for DNA or RNA. Note that the two molecules need not be superimposed for this command.
Similar molecules should have similar CA dihedrals (and Phi/Psi angles); large differences mean that the chain trace differs considerably, which in the case of NCS-related molecules is more likely to be the result of low resolution and improper refinement practices than a manifestation of reality.
From version 3.1.1 onward, the |delta(X-X-X) angle| curve is also plotted.

NOTE: from version 3.2.1 onward, commented-out O datablock headers are included in the plot files. This enables you to quickly convert the plot files into O datablocks, read them into O, and use them to colour your molecule.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/3sdp.pdb
...
 LSQMAN > dd m1 a5-190 m1 b5 3sdp_cadihe.plt
 WARNING - mol1 == mol2 !
 Central-atom delta-dihedral plot
 Central atom type : ( CA)
 Plot of M1 A5-190
 And     M1 B5
 Nr of residues matched : (        183)
 RMS delta DIH       : (  54.345)
 Average |delta DIH| : (  35.837)
 Nr |delta DIH| > 10 : (     120)
 Percentage          : (  65.574)
 RMS |delta ANG|     : (  15.931)
 Average |delta ANG| : (  11.835)
 Nr |delta ANG| > 5  : (     124)
 Percentage          : (  67.760)
 Plot file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.13 SImilarity_plot (plot RMSD as a function of number of aligned residues)


A single RMSD value tends not to be very informative. Sanchez and Sali suggested to use a similarity curve instead. This command generates such a curve for you, by doing an automatic operator improvement for a range of distance cut-off values (e.g., 0.1 to 10.0 in steps of 0.1). Only the unique values are included in the plot (e.g., if cut-offs between 5.0 and 6.9 A all give the same number of matched residues and the same RMSD, only one "data point" will be included in the plot).

Note: the two chains you compare must already have been superimposed in some way (e.g., using the EXplicit or BRute_force commands).

Reference: R Sanchez and A Sali, Proteins, Suppl. 1, 50-58 (1997).

Note: on second thought, this is probably not the type of plot Sali & Sanchez described after all ...

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > sim m1 a m2 a
 Command > (sim m1 a m2 a)
 Plot file name ? (m1_m2_simil.plt)
 Similarity plot of M1 A
 And                M2 A
 Atom types     | CA |
 B-factor range used  -1000.00 - 10000.00 A2
 Cut-off start   0.10
 Cut-off end    10.00
 Cut-off step    0.10
 Nr of steps      100

# 1 Cut-off 0.10 Nmatch -1 RMSD 999.99 # 2 Cut-off 0.20 Nmatch -1 RMSD 999.99 # 3 Cut-off 0.30 Nmatch -1 RMSD 999.99 # 4 Cut-off 0.40 Nmatch 8 RMSD 0.15 # 5 Cut-off 0.50 Nmatch 41 RMSD 0.32 # 6 Cut-off 0.60 Nmatch 83 RMSD 0.38 # 7 Cut-off 0.70 Nmatch 104 RMSD 0.41 # 8 Cut-off 0.80 Nmatch 110 RMSD 0.43 # 9 Cut-off 0.90 Nmatch 125 RMSD 0.47 # 10 Cut-off 1.00 Nmatch 132 RMSD 0.49 ... # 99 Cut-off 9.90 Nmatch 157 RMSD 1.25 # 100 Cut-off 10.00 Nmatch 157 RMSD 1.25 Nr of unique valid plot points : ( 25) Plot file written LSQMAN > $ cat m1_m2_simil.plt Command > ($ cat m1_m2_simil.plt) Spawn system command : ( cat m1_m2_simil.plt) ! Created by LSQMAN V. 981108/7.0.1 at Sun Nov 8 17:55:42 1998 for gerard XLABEL Number of superimposed residues YLABEL RMSD of superimposed residues REMARK Similarity plot (Sanchez & Sali, 1997) REMARK Compared mol M1 = file m13a.pdb REMARK and mol M2 = file 1mup.pdb NPOINT 25 COLOUR 4 XYVIEW 0.00 172.70 0.00 1.38 XVALUE * 8 41 83 104 110 125 132 135 133 135 138 139 140 142 143 144 145 146 147 148 150 151 152 155 157 YVALUE * 0.15 0.32 0.38 0.41 0.43 0.47 0.49 0.51 0.49 0.51 0.55 0.56 0.57 0.61 0.63 0.65 0.67 0.69 0.73 0.76 0.83 0.88 0.94 1.08 1.25 END ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.14 WAters (compare solvent structure in two molecules)


With this command you can compare water molecules in different models or chains of similar or identical molecules.
You supply the names of the two molecules, a distance cut-off for matching water molecules and the name of a scatter-plot file for O2D. The program retrieves all water molecule oxygen atoms (atom names must begin with ' O' and residue names must be one of WAT, HOH, SOL, OHH, HHO, H2O, OH2, H3O, OH3, or EAU) in both molecules. If thereare more than two in both molecules, it will apply the current operator to bring the second molecule on top of the first. Then it will try to find a matching water for each of the waters in the first molecule.
Output consists of a list of matched water molecules, some statistics and a scatter-plot file for O2D with |delta-B| versus distance for the matched water molecules. Ideally, all matched waters should lie in the bottom-left corner of this plot, i.e. small distances and small differences in temperature factors. The plot file can be converted to PostScript with O2D or the "o2dps" script (remember that it's a SCatter plot !).

NOTE:: if you use too large a distance cut-off, some waters in the second molecule may be matched more than once against waters in the first molecule ! A suggested value for the cut-off is ~1-2 A.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ch re
 LSQMAN > re m1 /nfs/pdb/full/5rub.pdb
 LSQMAN > re m2 /nfs/pdb/full/2rus.pdb
 LSQMAN > at ext
 LSQMAN > ex m1 a1-999 m2 a1
 ...
 Atom types     | CA | N  | C  | O  | CB |
 Nr of atoms to match : (       2128)
 The   2128 atoms have an RMS distance of    0.545 A
 RMS delta B  =    4.905 A2
 Corr. coeff. =      0.9261
 ...
 LSQMAN > im m1 a* m2 a*
 LSQMAN > sh m1 m2
 LSQMAN > waters m1 m2
 Distance cut-off (A) ? (1.50)
 Plot file ? (m1_m2_dist_db.plt)
 Water comparison of mol 1 : (M1)
                 and mol 2 : (M2)
 Waters in mol 1 : (        736)
 Waters in mol 2 : (        714)
 Applying current operator to mol 2 : (   1.000    0.003   -0.004   -0.003
     1.000   -0.003    0.004    0.003    1.000   -0.189   -0.236    0.186)

1 HOH-C 4 <-> HOH-C 7 | D 0.20 | B 14.74 14.06 2 HOH-C 5 <-> HOH-C 8 | D 0.19 | B 21.94 13.00 3 HOH-C 6 <-> HOH-C 9 | D 0.17 | B 16.73 11.17 4 HOH-C 8 <-> HOH-C 601 | D 0.30 | B 24.66 30.83 5 HOH-C 10 <-> HOH-C 13 | D 0.41 | B 25.37 20.04 6 HOH-C 11 <-> HOH-C 14 | D 0.41 | B 25.49 44.41 ... 241 HOH-C 720 <-> HOH-C 311 | D 0.83 | B 73.33 57.27 242 HOH-C 727 <-> HOH-C 553 | D 0.90 | B 62.94 59.38 243 HOH-C 730 <-> HOH-C 713 | D 0.51 | B 48.13 32.37 244 HOH-C 733 <-> HOH-C 341 | D 0.77 | B 59.37 48.07

Nr of matched waters : ( 244) % matched waters mol 1 : ( 33.152) % matched waters mol 2 : ( 34.174) Average B of non-matched waters in mol 1 : ( 49.714) Average B of matched waters in mol 1 : ( 38.196) Average B of matched waters in mol 2 : ( 37.940) RMS distance (A) : ( 0.796) RMS delta-B (A2) : ( 10.949) Matching distances : Average : 0.70 St. dev. : 0.39 Minimum : 0.05 Maximum : 1.49 Delta-B values : Average : 8.37 St. dev. : 7.06 Minimum : 0.09 Maximum : 37.02 Correlation coefficient : ( 0.274) Plot file written CPU total/user/sys : 1.1 0.9 0.1 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
REMARK Created by LSQMAN V. 950224/3.2 at Sat Feb 25 02:50:29 1995 for user gerard
XLABEL Distance (A) between matched water molecules
YLABEL |Delta-B| (A2) of matched water molecules
REMARK Scatter plot of distance and abs(delta-B) of matched water molecules in two models or chains
REMARK Waters are those of mol 1 = M1 = file /nfs/pdb/full/5rub.pdb
REMARK Matched waters are from mol 2 = M2 = file /nfs/pdb/full/2rus.pdb
REMARK Distances ave/sdv/min/max =     0.70    0.39    0.05    1.49
REMARK |Delta-B| ave/sdv/min/max =     8.37    7.06    0.09   37.02
REMARK Correlation coefficient =     0.27
REMARK Cut-off distance used (A) =     1.50
REMARK Waters in mol 1, mol 2, matched      736     714     244
XYVIEW     0.00    1.60    0.00   38.00
NPOINT      244
COLOUR        4
XVALUE *
    0.20    0.19    0.17    0.30    0.41    0.41    0.52    0.57    0.60
...
    7.99   22.04   16.04    0.09    5.96    2.61   16.06    3.56   15.76
   11.30
END
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

You can also use this option to see how many waters obey the NCS, if present, and how well they do this. Simply do an explicit fit of two chains and run the WAters command. In the following example (PDB code 5RUB), only ~40 % of the waters have an "NCS-mate" within 1.5 A.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ex m1 a1-999 m1 b1
 LSQMAN > im m1 a* m1 b*
 LSQMAN > wa m1 m1
 WARNING - mol1 == mol2 !
 Distance cut-off (A) ? (1.50)
 Plot file ? (m1_m1_dist_db.plt)
 Water comparison of mol 1 : (M1)
                 and mol 2 : (M1)
 Waters in mol 1 : (        736)
 Waters in mol 2 : (        736)
 Applying current operator to mol 2 : (   0.390   -0.071    0.918   -0.045
    -0.997   -0.058    0.920   -0.019   -0.392    5.419   17.580   -7.606)

1 HOH-C 3 <-> HOH-C 59 | D 0.81 | B 41.96 39.42 2 HOH-C 4 <-> HOH-C 32 | D 0.44 | B 14.74 15.61 3 HOH-C 5 <-> HOH-C 116 | D 0.65 | B 21.94 23.09 4 HOH-C 6 <-> HOH-C 115 | D 0.70 | B 16.73 13.64 ... 298 HOH-C 695 <-> HOH-C 592 | D 1.41 | B 50.81 69.92 299 HOH-C 699 <-> HOH-C 486 | D 0.81 | B 61.57 41.81 300 HOH-C 709 <-> HOH-C 368 | D 1.21 | B 37.86 35.01 301 HOH-C 724 <-> HOH-C 456 | D 0.75 | B 57.56 46.63

Nr of matched waters : ( 301) % matched waters mol 1 : ( 40.897) % matched waters mol 2 : ( 40.897) Average B of non-matched waters in mol 1 : ( 50.817) Average B of matched waters in mol 1 : ( 38.783) Average B of matched waters in mol 2 : ( 37.359) RMS distance (A) : ( 0.949) RMS delta-B (A2) : ( 11.968) Matching distances : Average : 0.88 St. dev. : 0.36 Minimum : 0.09 Maximum : 1.50 Delta-B values : Average : 8.70 St. dev. : 8.22 Minimum : 0.05 Maximum : 46.68 Correlation coefficient : ( 0.142) Plot file written CPU total/user/sys : 1.1 1.0 0.2 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.15 HIsto_disto (histogram of distances)


Yet another way to assess the similarity of two molecules. In this case, for every atom in molecule #2, the distance to the nearest atom in molecule #1 (after applying the current operator) is calculated, and a histogram is printed. You have to supply a maximum distance and the bin size for the histogram.
This has the advantage that there doesn't have to be a 1:1 correspondence in the atoms compared (so you can compare a correct and a backwards traced model, for instance). It has the same disadvantages as all other distance-based measures (sensitive to operator, poor statistic when domain shifts occur).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > hi m1 m2 50 0.25
 Distance histogram of mol 1 : (M1)
                   and mol 2 : (M2)
 Applying current operator to mol 2 : (  -0.592   -0.646    0.482   -0.645
     0.021   -0.764    0.483   -0.763   -0.429  169.723  133.330   34.824)

Nr of matched atoms : ( 3092) Nr of atoms in mol 2 : ( 3092) % matched atoms mol 2 : ( 100.000) RMS distance (A) : ( 1.525)

Matching distances : Average : 1.22 St. dev. : 0.91 Minimum : 0.01 Maximum : 9.36

86 in [ 0.00- 0.25> = 2.78% (Cumul 2.78 %) 382 in [ 0.25- 0.50> = 12.35% (Cumul 15.14 %) 635 in [ 0.50- 0.75> = 20.54% (Cumul 35.67 %) 513 in [ 0.75- 1.00> = 16.59% (Cumul 52.26 %) 359 in [ 1.00- 1.25> = 11.61% (Cumul 63.87 %) 305 in [ 1.25- 1.50> = 9.86% (Cumul 73.74 %) ... 1 in [ 8.00- 8.25> = 0.03% (Cumul 99.97 %) 1 in [ 9.25- 9.50> = 0.03% (Cumul 100.00 %) CPU total/user/sys : 18.0 18.0 0.1 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

A somewhat better result:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 ...
 NOT MATCHED :CA    CA-C 440
 NOT MATCHED : O   HOH-C 441

Nr of matched atoms : ( 3518) Nr of atoms in mol 2 : ( 7038) % matched atoms mol 2 : ( 49.986) RMS distance (A) : ( 0.160)

Matching distances : Average : 0.11 St. dev. : 0.12 Minimum : 0.00 Maximum : 2.50

2227 in [ 0.00- 0.10> = 63.30% (Cumul 63.30 %) 945 in [ 0.10- 0.20> = 26.86% (Cumul 90.16 %) 216 in [ 0.20- 0.30> = 6.14% (Cumul 96.30 %) 64 in [ 0.30- 0.40> = 1.82% (Cumul 98.12 %) 24 in [ 0.40- 0.50> = 0.68% (Cumul 98.81 %) 10 in [ 0.50- 0.60> = 0.28% (Cumul 99.09 %) 8 in [ 0.60- 0.70> = 0.23% (Cumul 99.32 %) 6 in [ 0.70- 0.80> = 0.17% (Cumul 99.49 %) 3 in [ 0.80- 0.90> = 0.09% (Cumul 99.57 %) 5 in [ 0.90- 1.00> = 0.14% (Cumul 99.72 %) 2 in [ 1.00- 1.10> = 0.06% (Cumul 99.77 %) 1 in [ 1.10- 1.20> = 0.03% (Cumul 99.80 %) 4 in [ 1.20- 1.30> = 0.11% (Cumul 99.91 %) 2 in [ 1.50- 1.60> = 0.06% (Cumul 99.97 %) 1 in [ 2.40- 2.50> = 0.03% (Cumul 100.00 %) CPU total/user/sys : 95.2 93.8 1.4 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


11.16 D1_D2 (delta-1, delta-2 plot)


This plots differences in Delta-1 and Delta-2 torsion angles between two molecules or chains. They are defined as follows:
- Delta-1 = delta (PHI(i+1) - PSI(i)) mol 1 and 2
- Delta-2 = delta (PHI(i+1) + PSI(i)) mol 1 and 2
These plots should be less noisy than delta-Phi/delta-Psi plots in cases where differences between molecules are due to coupled torsions. I'm not convinced, but Alwyn thought they would be useful (they were suggested by a referee of a submitted paper about analysis and use of NCS).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > d1 m1 a1-999 m1 b1 cbh1_d1d2.plt
 WARNING - mol1 == mol2 !
 Delta-1/Delta-2 plot
 Plot of M1 A1-999
 And     M1 B1
 Nr of residues matched : (        434)
 RMS delta Delta-1   : (   2.137)
 Average |delta D-1| : (   1.455)
 Nr |delta D-1| > 10 : (       1)
 Percentage          : (   0.230)
 RMS delta Delta-2   : (   6.046)
 Average |delta D-2| : (   4.386)
 Nr |delta D-2| > 10 : (      37)
 Percentage          : (   8.525)
 Plot file written
 CPU total/user/sys :       1.1       1.0       0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > d1 m2 a1-999 m2 b1 3sdp_d1d2.plt
 WARNING - mol1 == mol2 !
 Delta-1/Delta-2 plot
 Plot of M2 A1-999
 And     M2 B1
 Nr of residues matched : (        186)
 RMS delta Delta-1   : (  57.323)
 Average |delta D-1| : (  40.262)
 Nr |delta D-1| > 10 : (     144)
 Percentage          : (  77.419)
 RMS delta Delta-2   : (  78.515)
 Average |delta D-2| : (  60.437)
 Nr |delta D-2| > 10 : (     160)
 Percentage          : (  86.022)
 Plot file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


11.17 JUdge (judge homology model by comparing with target and parent)


To be documented later !


11.18 CAsp (assess sequence-identical residues of model and target)


To be documented later !


11.19 MOrph (morph transition between two conformational states)

This command enables you to produce a set of models that show the transition between two conformational states. Examples include: a rigid-body domain motion (e.g., the open and closed conformation of ribose-binding protein, 1URP and 2DRI), the open and closed lid of lipase (1CRL and 1TRH), a loop movement, etc. Using these models you can animate the transition in O (or other programs), produce animated GIFs, etc.

Morphing can be done in two different ways, namely in internal and in Cartesian coordinate space. Internal coordinate space is usually to be preferred, except when any of the torsion angles changes to a very large extent (e.g., more than 60 degrees). In internal coordinate space, the central atom trace (central atom would be CA for proteins, but can be set to anything using the ATom_type command in LSQMAN) is represented as follows:

CA1---CA2---CA3---CA4

the coordinates for CA4 would be:
- 1 = distance (CA4,CA3)
- 2 = angle (CA4,CA3,CA2)
- 3 = torsion angle (CA4,CA3,CA2,CA1)

To morph the transtion from state A to state B, LSQMAN calculates the internal coordinates for each state, and then generates the intermediate values by simple linear interpolation. For instance, if the torsion angle (CA4,CA3,CA2,CA1) changes from 34 to 61 degrees, and if there are a total of 10 models (including start and end models), model 1 would have a torsion of 34 degrees. The torsion range is 27 degrees (for 9 more models), so model 2 would have a torsion of 34+(27/9) = 37 degrees, model 3 40 degrees, etc.

If one of the torsions changes a lot, this means that all residues C-terminal of it will swing with it, which may lead to very strange effects (e.g., try this out on the A and B molecules of PDB entry 1SHF). In those cases, morphing has to be done in Cartesian coordinate space. For this to work, the two molecules (start and end point) *must* be superimposed ! The algorithm is very similar, in that every atom moves in regular steps from its starting point to its end point. The disadvantage of Cartesian space morphing is that the geometry will almost definitely be distorted (in internal space, the distances and angles are usually essentially fixed, e.g. CA-CA distances will be ~3.8 Å with little variation). As a rule, try morphing in internal coordinate space first; if it gives a strange effect, do it in Cartesian space instead.

For internal coordinate morphing, only one atom type can be used (e.g., CA for proteins), and only those atoms will be written to the model PDB files. However, for Cartesian space morphing you may select any set of atoms (e.g., main-chain atoms or all atoms).

Specifically for proteins, if you select the ATom_type TRace, you can morph in internal coordinate space with both the CA trace and the non-hydrogen side-chain atoms. This enables you to visualise which residues change most drastically upon domain closure, ligand or substrate binding, or whatever. Of course, you want to use the NOmenclature and FIx commands to prevent artifactual changes (e.g., Phe-ring flip because of how you named the ring carbons). Usually, trace morphing will show large changes for surface residues, whereas you are probably more interested in the active site or ligand-binding residues. The solution is simple: prepare a PDB file which contains only the main-chain atoms of your protein PLUS those side-chain atoms that are of interest (can be done with a text editor, or with MOLEMAN2, for example). Trace morphing is the most complicated in terms of programming, but I think it should work in most cases (unless, again, there is a large change somewhere in one or more of the virtual CA torsions). It will not work very well for moieties that are not connected to your protein (e.g., waters, ligand), so you may want to exclude those.

PLEASE NOTE: simple morphing does NOT pretend to simulate a favourable pathway for effecting the conformational change ! It is merely a (suggestive) visualisation method !

HINT: if you really want to impress your boss, you could also "morph" the diffusion of a substrate etc. into an active site, binding site, or whatever. Generate your substrate inside the site, and a copy far away, and do a Cartesian morphing. The result will be your substrate floating into the binding site. (If you combine this with an internal morph of a domain motion, e.g. in ribose-binding protein: do the two morphs separately in LSQMAN, and append the morphed ligand to the morphed PDB file of the protein. You may want to reset all "B-factors" of the ligand. And you will want to draw all atoms of the ligand in O.)

The models' PDB files will only contain coordinates for the selected atoms (usually, CA atoms). Their B-factors will be replaced by the magnitude of the change of the torsion around each CA-CA bond, so that if you paint_ramp the CA model in O, the "hot spots" will be coloured towards red, whereas the parts of the structure that do not change much will be blue or green. (In Cartesian space, the B-factors will contain the distance for each central atom between its position in the starting and end model.)

LSQMAN creates a macro for itself. This macro will superimpose all morphing models onto the very first one. By default, the same residue range will be used as that given for molecule 1 in the MOrph command; if this is not appropriate (e.g., for ribose-binding protein, you could use residue 100 to 230 instead and see what happens), you can provide a different range as a parameter to the MOrph command.

LSQMAN also creates two O macros: basename_read.omac and basename_morph.omac . The first will read the models, paint_ramp them by B-factors, and draw the CA trace (or zone). The second contains the instructions to draw one model after the other so as to go from start to end and back to start again. Unfortunately, when O executes a macro, the display is not updated until the macro is finished, so you must cut and paste the instructions from the second macro into your O command window !!!

The parameters to the MOrph command are:
- molecule 1
- residue range 1
- molecule 2
- residue range 2
- the total number of morphing steps (including start and end)
- base name for output files (used for generating file names for the output PDB files, LSQMAN macro and O macros)
- morph type (internal or Cartesian)
- O molecule name suffix (one character; default is "M", but if you want to combine multiple morphs, you can use different characters, e.g. "X" for the protein and "Y" for the substrate)
- superpositioning range (default is same as "residue range 1"); this will be used in the LSQMAN macro to superimpose and improve the operator between all models and the first one; you can use this if you specifically want to superimpose on residues A100-230 since you know that these are rock-solid
- torsion angle range cut-off (default is not to use this facility by providing a number larger than 180 degrees here); if this number is smaller than 180 degrees, and if you do internal coordinate morphing, the program will attempt to replace central atom (CA-CA) bonds with too large torsions by pseudo-bonds to other atoms that yield smaller torsion changes. This sometimes solves the problem of "unfolding proteins" (e.g., molecule A and B from PDB entry 1SHF can be morphed successfully in this fashion), but not always. It can also introduce artefacts (broken bonds in particular). If straightforward internal coordinate morphing produces artefacts, the use of this parameter is worth a try. If it still doesn't work, consider morphing in Cartesian coordinate space. (NOTE: bonds will still be coloured correctly if this option is used, and the O macro will change the maximum allowed central-atom spacing to 15.0 A so as still to connect sequential central atoms that may become too widely apart during some of the morphing.)

For example, for 1URP and 2DRI (ribose-binding protein) we will trace morph the transition between the closed (ribose-bound) and open conformation:

(1) Only select the main-chain atoms plus those side-chain atoms that are near the ligand of 2DRI (using MOLEMAN2):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 MOLEMAN2 > re /nfs/pdb/full/2dri.pdb
 MOLEMAN2 > sel none
 MOLEMAN2 > sel or res rip
 MOLEMAN2 > select dist 0.0 8.0
 MOLEMAN2 > sel by_residue
 MOLEMAN2 > sel or class main
 MOLEMAN2 > sel and type prot
 MOLEMAN2 > wr 2dri.pdb pdb selected
 MOLEMAN2 > quit
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

(2) Do the trace morphing in LSQMAN (don't forget to fix the ambiguous side-chain torsions with the NOmenclature and FIx commands !):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 1urp.pdb
 ...
 LSQMAN > re m2 2dri.pdb
 ...
 LSQMAN > nomen m1
 Command > (nomen m1)
 Enforce proper nomenclature for : (M1)
 Nr of atoms    : (       2002)
 Nr of residues : (        271)

# of PHE checked : 7 # errors : 0 # of TYR checked : 3 # errors : 0 # of ASP checked : 21 # errors : 0 # of GLU checked : 11 # errors : 0 # of ARG checked : 6 # errors : 0 No problem, mon ! LSQMAN > fix m1 a1-999 m2 a1 strict seq torsion Command > (fix m1 a1-999 m2 a1 strict seq torsion) Reference atoms M1 A1-999 Fix atoms for M2 A1 Only fix Asp/Glu/Arg/Phe/Tyr Use sequential residues (1:1 correspondence) Minimise torsion-angle differences Minimum improvement : ( 0.010)

Zone : ( 1) Fix sidechain of PHE-A- 15 ( 164.38 versus 17.20) Fix sidechain of ASP-A- 52 ( 91.24 versus 88.01) Fix sidechain of GLU-A- 143 ( 93.35 versus 85.79) Fix sidechain of GLU-A- 246 ( 152.36 versus 26.93) Fix sidechain of GLU-A- 255 ( 112.10 versus 68.33)

Residues checked : ( 48) Residues fixed : ( 5) LSQMAN > at trace Command > (at trace) Nr of atom types : ( 1) Types : ( TRAC) LSQMAN > morph m1 a1-999 m2 a1 Command > (morph m1 a1-999 m2 a1) Number of steps ? ( 10) 25 Basename for output PDB files ? (morphy) trace Morph type (Internal/Cartesian) ? (internal) O mol name suffix ? (m) Superpositioning range ? (A1-999) a100-230 Torsion range cut-off ? ( 999.0000)

Morph in internal coordinate space Atom type(s) : ( TRAC) Morph CA and side-chain atoms Nr of atoms matched : ( 429) RMSD matching atoms : ( 47.653) Nr of CA atoms : ( 271) Nr of side-chain atoms : ( 158)

B-factors replaced by torsion angle differences: Average : ( 7.059) St.dev. : ( 14.452) Minimum : ( 0.012) Maximum : ( 150.835)

Morphing ... Creating LSQMAN macro : (trace.lsqmac) Creating first O macro : (trace_read.omac) Morph step number : ( 1) Morph step number : ( 2) Morph step number : ( 3) ... Morph step number : ( 25) Creating second O macro : (trace_morph.omac)

Morphing done ... execute the new LSQMAN macro to superimpose the morphed models ! CPU total/user/sys : 2.0 1.9 0.1 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

Note how little CPU time this operations requires (R10000) !

(3) Execute the LSQMAN macro to superimpose all morphing models on the first model:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > @trace.lsqmac
 ...
 LSQMAN > quit
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

(4) Now start a fresh O session; execute the macro that reads all models (@trace_read.omac). Then cut and paste instructions from the other macro (trace_morph.omac) into your O command window and impress your friends !!!


12 SUPERIMPOSING AND COMPARING MULTIPLE MOLECULES


12.1 MCentral (find central NCS or NMR structure)


Find the "central" structure in a molecule which contains multiple (NCS) chains or (NMR) models. The model which has the lowest value for RMS (RMSD) is considered to be the central one. You are to supply the molecule name, residue range (only one, and without a chain/model name !!) and the method to use (Explicit alignment only, or explicit followed by Improvement of the alignment). Note that all features of the EX and IM commands can be used here as well (e.g., ATom type selection, different SEttings, etc.).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1ldn.pdb
 Cell : (  84.900  118.200  135.500   90.000   96.070   90.000)
 Old chain |A| becomes chain A
 ...
 Old chain |H| becomes chain H
 Nr of lines read from file : (      21617)
 Nr of atoms in molecule    : (      20716)
 Nr of chains or models     : (          8)
 CPU total/user/sys :       5.0       4.9       0.1
 LSQMAN > at ca
 Nr of atom types : (       1)
 Type : ( CA)
 LSQMAN > set sim
 Setting defaults for 2 A fit of similar molecules
 LSQMAN > mc m1 1-999 im
 Find central chain/model

Aligning B to A The 312 atoms have an RMS distance of 0.353 A SI = RMS * Nmin / Nmatch = 0.35740 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.83930 RMS delta B for matched atoms = 14.206 A2 Corr. coefficient matched atom Bs = 0.262 Rotation : -0.81756556 0.23434444 -0.52599353 0.21982557 -0.71724868 -0.66123450 -0.53222477 -0.65622938 0.53488296 Translation : 60.9938 2.1685 22.1344

...

Chain/model A - RMSDs (A) to the others: 0.000 0.353 0.368 0.363 0.359 0.328 0.347 0.354 RMS(RMSD) for chain/model A = 0.353

...

Chain/model H - RMSDs (A) to the others: 0.354 0.324 0.336 0.319 0.326 0.324 0.319 0.000 RMS(RMSD) for chain/model H = 0.329

==> Central chain is G

CPU total/user/sys : 45.2 45.1 0.1 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


12.2 MAlign (align multiple NCS/NMR models)


Align all chains/models in a molecule to one particular one (e.g., to the central structure as determined with the MCentral option).
You are to supply the molecule name, residue range (only one, and without a chain/model name !!), the method to use (Explicit alignment only, or explicit followed by Improvement of the alignment), and the name of the chain/model to which all others should be aligned. Note that all features of the EX and IM commands can be used here as well (e.g., ATom type selection, different SEttings, etc.).

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > ma m1 1-999 im g
 Align all to one chain/model
 Chain/model A - RMSD (A) to the selected one =    0.347
 Applying operator to chain ...
 Chain/model B - RMSD (A) to the selected one =    0.335
 Applying operator to chain ...
 ...
 Chain/model H - RMSD (A) to the selected one =    0.319
 Applying operator to chain ...
 CPU total/user/sys :      12.7      12.7       0.0
 LSQMAN > wr m1 ../1ldn_aligned.pdb
 Number of atoms written : (      20716)
 CPU total/user/sys :       6.6       5.3       1.3
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.3 MDihedral (multiple-model phi, psi analysis for NCS/NMR models)


Analyse PHI and PSI dihedral angle distributions in multiple models or chains. For every residue the average, sigma, minimum and maximum value for PHI and PSI are listed (some black magic ensures that the program knows that -179 degrees is close to +173 degrees). Residues with large sigmas or ranges are very different in the various models.
A plot file of SIGMA(phi) and SIGMA(psi) as a function of residue number is also provided. Use this option to analyse how similar your NCS-related molecules or NMR models are.
A good and a poor example are given below:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m3 /home/gerard/proteins/cbh2/nati/o/m12.pdb
 Cell : (  49.100   75.800   92.900   90.000  103.200   90.000)
 ...
 LSQMAN > md m3 a cbh2_phi_psi_sigma.plt
 Multiple chain/model dihedral analysis
 Reference chain : (A)
 Residue range :    86 -   447
 #    86 |      0.0     0.0     0.0     0.0 |    -53.9     8.2   -62.0   -45.7 |   0  2
 #    87 |    -71.4     0.9   -72.3   -70.6 |    155.4     1.9   153.5   157.2 |   2  2
 #    88 |   -149.2     0.6  -149.7  -148.6 |    168.2     0.6   167.6   168.9 |   2  2
 ...
 #   445 |    -69.0     0.4   -69.4   -68.6 |    149.7     0.5   149.3   150.2 |   2  2
 #   446 |   -103.5     0.2  -103.7  -103.3 |    -25.8     0.8   -26.6   -25.1 |   2  2
 #   447 |    -82.7     1.4   -84.1   -81.2 |      0.0     0.0     0.0     0.0 |   2  0
 Nr of residues found : (        362)
 SIGMA(phi) Ave, Sdv, Min, Max :      1.4     1.3     0.0    11.7
 RANGE(phi) Ave, Sdv, Min, Max :      2.7     2.6     0.0    23.4
 SIGMA(psi) Ave, Sdv, Min, Max :      1.5     1.3     0.0     8.2
 RANGE(psi) Ave, Sdv, Min, Max :      2.9     2.5     0.0    16.3
 Plot file written
 CPU total/user/sys :       4.3       4.2       0.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m2 /nfs/pdb/full/3sdp.pdb
 Cell : (  81.900   49.100   61.700   90.000  106.800   90.000)
 ...
 LSQMAN > md m2 a 3sdp_phi_psi_sigma.plt
 Multiple chain/model dihedral analysis
 Reference chain : (A)
 Residue range :     5 -   191
 #     5 |      0.0     0.0     0.0     0.0 |     54.3    21.1    33.2    75.4 |   0  2
 #     6 |    -91.5     2.0   -93.5   -89.6 |    157.0    22.1   134.9   179.1 |   2  2
 #     7 |   -143.2     2.7  -145.9  -140.5 |     30.3    32.2    -1.9    62.5 |   2  2
 #     8 |    -76.9    29.7  -106.6   -47.3 |    191.9    20.0   171.9   211.9 |   2  2
 #     9 |   -228.6    69.7  -298.3  -158.9 |    142.7     0.3   142.4   143.0 |   2  2
 #    10 |   -138.2    77.6  -215.8   -60.5 |     61.1    86.3   -25.2   147.4 |   2  2
 #    11 |   -196.8    46.0  -242.9  -150.8 |    -95.7    56.3  -152.0   -39.4 |   2  2
 ...
 #   188 |   -128.1    34.2  -162.3   -93.8 |    129.6     8.8   120.8   138.4 |   2  2
 #   189 |   -130.0    13.7  -143.7  -116.3 |     24.8    42.6   -17.8    67.5 |   2  2
 #   190 |    189.9    69.2   120.7   259.1 |      0.0     0.0     0.0     0.0 |   2  0
 Nr of residues found : (        186)
 SIGMA(phi) Ave, Sdv, Min, Max :     24.8    24.0     0.0    88.5
 RANGE(phi) Ave, Sdv, Min, Max :     49.6    48.0     0.0   176.9
 SIGMA(psi) Ave, Sdv, Min, Max :     25.7    24.6     0.0    89.1
 RANGE(psi) Ave, Sdv, Min, Max :     51.4    49.2     0.0   178.1
 Plot file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.4 MBfactors (compare temperature factors for NCS models)


Analyse B-factor distributions for some atom type (e.g., CA) in multiple models or chains. For every residue the average, sigma, minimum and maximum value for B is listed.
A plot file of SIGMA(B) and RANGE(B) as a function of residue number is also provided. Use this option to analyse how similar your NCS-related molecules are.
A good and a poor example are given below:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m3 /home/gerard/proteins/cbh2/nati/o/m12.pdb
 Cell : (  49.100   75.800   92.900   90.000  103.200   90.000)
 ...
 LSQMAN > mb m3 a cbh2_b_sigma_range.plt
 Multiple chain/model B-factor analysis
 Reference chain : (A)
 Residue range :    86 -   447
 Central atom type : ( CA)
 #    86 |     26.4     2.9    23.5    29.3 |   2
 #    87 |     25.5     4.6    21.0    30.1 |   2
 #    88 |     20.8     5.0    15.8    25.8 |   2
 ...
 #   445 |     19.7     0.2    19.5    19.9 |   2
 #   446 |     22.6     0.8    21.9    23.4 |   2
 #   447 |     32.6     2.0    30.6    34.5 |   2
 Nr of residues found : (        362)
 SIGMA(B) Ave, Sdv, Min, Max :      1.8     1.2     0.0     8.6
 RANGE(B) Ave, Sdv, Min, Max :      3.7     2.5     0.0    17.2
 Plot file written
 CPU total/user/sys :       2.3       2.3       0.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1ldn.pdb
 Cell : (  84.900  118.200  135.500   90.000   96.070   90.000)
 ...
 LSQMAN > mb m1 a 1ldn_b_sigma_range.plt
 Multiple chain/model B-factor analysis
 Reference chain : (A)
 Residue range :     1 -   353
 Central atom type : ( CA)
 #    15 |     44.7     7.9    34.9    63.3 |   8
 #    16 |     49.8    11.0    29.9    63.3 |   8
 #    17 |     43.9    15.4    17.7    63.3 |   8
 #    18 |     45.5    12.2    23.5    63.3 |   8
 #    19 |     35.8    10.0    25.9    57.3 |   8
 #    20 |     29.7    12.1    11.1    48.3 |   8
 #    21 |     21.5     4.9    15.1    30.6 |   8
 #    22 |     17.2     7.7     7.6    35.5 |   8
 ...
 #   328 |     37.3    14.1    20.8    63.3 |   8
 #   329 |     39.8    14.1    20.6    61.6 |   8
 #   330 |     45.5    12.1    26.5    59.7 |   8
 Nr of residues found : (        316)
 SIGMA(B) Ave, Sdv, Min, Max :      8.9     2.7     3.7    18.8
 RANGE(B) Ave, Sdv, Min, Max :     27.8     8.7    10.6    62.8
 Plot file written
 CPU total/user/sys :       2.8       2.8       0.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.5 MRamachandran (multiple-model Ramachandran plot for NCS/NMR models)


Generate a Ramachandran plot for multiple models/chains. Every Gly is plotted as a square, all other residues as plus signs. In addition, every residue is connected by a line to the average phi/psi point for that residue. All angles have been mapped to the range -180 to +180 degrees, so that residues near an edge of the plot may gvie rise to a few very long lines.
If you add P(olar) as the last parameter, you will get a plot in a polar coordinate frame.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > mrama m2 a fasoonmr_multi_rama.ps
 Multiple Ramachandran plot
 Reference chain : (A)
 Residue range :     1 -    86
 => XPS_GRAF - GJK (2.1 @ 950215)
 Opened PostScript file : (fasoonmr_multi_rama.ps)
 Date    : (Mon May 29 19:39:13 1995)
 User    : (gerard)
 Program : (LSQMAN)
 #     1 |      0.0     0.0     0.0     0.0 |     76.4    66.6   -64.5   155.0 |   0 13
 #     2 |   -135.6    63.0  -217.0    28.3 |   -229.6    67.0  -342.0  -149.4 |  14 14
 ...
 #    85 |    121.3    24.3    93.4   190.8 |     54.1    38.9   -46.5    87.5 |  14 14
 #    86 |   -115.7    21.1  -139.4   -76.8 |      0.0     0.0     0.0     0.0 |  14  0
 Nr of residues found : (         86)
 SIGMA(phi) Ave, Sdv, Min, Max :     12.1    11.9     0.0    78.9
 RANGE(phi) Ave, Sdv, Min, Max :     42.1    38.0     0.0   245.3
 SIGMA(psi) Ave, Sdv, Min, Max :     13.0    16.1     0.0    92.1
 RANGE(psi) Ave, Sdv, Min, Max :     45.1    49.4     0.0   226.1
 PostScript file written
 CPU total/user/sys :       3.0       2.5       0.5
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.6 MSidechain (multiple-model chi1/chi2 analysis for NCS/NMR models)


Same as MDihedral but for side-chain CHI1/CHI2 torsions.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m3 /home/gerard/proteins/cbh2/nati/o/m12.pdb
 Cell : (  49.100   75.800   92.900   90.000  103.200   90.000)
 ...
 LSQMAN > mside m3 a ../cbh2_chi12_sigma.plt
 Multiple side-chain torsion analysis
 Reference chain : (A)
 Residue range :    86 -   447
 THR    87 |     60.5     3.7    56.8    64.3 |      0.0     0.0     0.0     0.0 |   2  0
 TYR    88 |     64.2     1.3    62.9    65.5 |    -81.8     1.6   -83.4   -80.2 |   2  2
 SER    89 |    113.4    49.8    63.5   163.2 |      0.0     0.0     0.0     0.0 |   2  0
 ASN    91 |   -171.4     1.7  -173.1  -169.7 |    -10.7     0.9   -11.6    -9.8 |   2  2
 ...
 SER   445 |   -176.8     0.8  -177.5  -176.0 |      0.0     0.0     0.0     0.0 |   2  0
 PHE   446 |    -81.8     1.9   -83.8   -79.9 |    -81.8     0.0   -81.8   -81.8 |   2  2
 LEU   447 |    -68.6     1.6   -70.2   -67.0 |    163.1     5.0   158.1   168.1 |   2  2
 Nr of residues found : (        362)
 SIGMA(chi1) Ave, Sdv, Min, Max :      3.2    10.1     0.0    82.5
 RANGE(chi1) Ave, Sdv, Min, Max :      6.3    20.1     0.0   165.0
 SIGMA(chi2) Ave, Sdv, Min, Max :      3.4    11.4     0.0    88.3
 RANGE(chi2) Ave, Sdv, Min, Max :      6.7    22.9     0.0   176.6
 Plot file written
 CPU total/user/sys :       7.4       7.3       0.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.7 MTorsion (multiple-model chi1, chi2 plot for NCS/NMR models)


Same as MRamachandran but for side-chain CHI1/CHI2 torsions.
If you add P(olar) as the last parameter, you will get a plot in a polar coordinate frame.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m2 /nfs/pdb/full/3sdp.pdb
 Cell : (  81.900   49.100   61.700   90.000  106.800   90.000)
 ...
 LSQMAN > mtor m2 a ../3sdp_chi12_dist.ps
 Multiple torsion plot
 Reference chain : (A)
 Residue range :     5 -   191
 => XPS_GRAF - GJK (2.1 @ 950215)
 Opened PostScript file : (../3sdp_chi12_dist.ps)
 Date    : (Mon May 29 23:13:11 1995)
 User    : (gerard)
 Program : (LSQMAN)
 PRO     5 |     11.4     1.5     9.9    12.9 |    -31.5     3.6   -35.0   -27.9 |   2  2
 PRO     6 |     24.1    21.5     2.6    45.5 |    -13.4    32.2   -45.7    18.8 |   2  2
 LEU     7 |   -123.9    17.7  -141.6  -106.3 |    102.1    71.3    30.8   173.4 |   2  2
 PRO     8 |     -3.8    31.8   -35.6    28.0 |     19.6    25.8    -6.2    45.4 |   2  2
 TYR     9 |   -150.8    14.4  -165.2  -136.4 |     20.5    23.8    -3.2    44.3 |   2  2
 HIS    11 |     99.1    70.5    28.7   169.6 |    -38.6    46.6   -85.3     8.0 |   2  2
 ...
 PHE   185 |   -178.3    39.2  -217.5  -139.2 |    -28.7    38.9   -67.6    10.2 |   2  2
 VAL   186 |     39.0    88.6   -49.6   127.6 |      0.0     0.0     0.0     0.0 |   2  0
 GLU   188 |    -65.5     1.0   -66.5   -64.5 |   -124.3    65.6  -189.8   -58.7 |   2  2
 GLU   189 |    -75.7    14.0   -89.8   -61.7 |     18.9    88.3   -69.3   107.2 |   2  2
 Nr of residues found : (        187)
 SIGMA(chi1) Ave, Sdv, Min, Max :     25.5    26.4     0.0    88.6
 RANGE(chi1) Ave, Sdv, Min, Max :     51.1    52.8     0.0   177.2
 SIGMA(chi2) Ave, Sdv, Min, Max :     22.4    28.4     0.0    88.3
 RANGE(chi2) Ave, Sdv, Min, Max :     44.7    56.8     0.0   176.5
 PostScript file written
 CPU total/user/sys :       2.0       1.9       0.1
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


12.8 VMain_chain (phi, psi circular variance plot for multiple models)


This command will plot the circular variance of phi and psi for a set of models (NCS or NMR). The circular variance of N observations of a dihedral angle is defined as:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
  CV = 1.0 - (1/N)*SQRT ( (SUM cos)**2 + (SUM sin)**2 )
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Hence, the circular variance lies between 0 and 1, with low values indicating a high degree of similarity between the various observations of the angle.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1ldn.pdb
 Cell : (  84.900  118.200  135.500   90.000   96.070   90.000)
 Old chain |A| becomes chain A
 Old chain |B| becomes chain B
 Old chain |C| becomes chain C
 Old chain |D| becomes chain D
 Old chain |E| becomes chain E
 Old chain |F| becomes chain F
 Old chain |G| becomes chain G
 Old chain |H| becomes chain H
 Nr of lines read from file : (      21617)
 Nr of atoms in molecule    : (      20716)
 Nr of chains or models     : (          8)
 Stripped hydrogen atoms    : (          0)
 Nr of HETATMs              : (       1132)
 CPU total/user/sys :       2.9       2.8       0.0
 LSQMAN > vm m1 a
 Main-chain circular variance plot
 Plot file ? (m1_phi_psi_cv.plt)
 Reference chain : (A)
 Residue range :     1 -   353
   Residue     <phi> S(phi)    Min    Max     <psi> S(psi)    Min    Max    #phi #psi    V(phi) V(psi)
 MET    15 |     0.0    0.0    0.0    0.0 |   132.4   10.1  118.4  149.1 |     0    8 |  -1.000  0.015
 LYS    16 |   -87.0   11.1 -103.3  -66.8 |    -9.8    8.7  -19.9    7.9 |     8    8 |   0.019  0.011
 ASN    17 |  -123.8    9.5 -139.7 -113.1 |    72.1    8.0   55.5   80.2 |     8    8 |   0.014  0.010
 ASN    18 |    51.4   11.3   34.3   76.3 |    62.5   13.0   39.1   78.6 |     8    8 |   0.019  0.025
 GLY    19 |  -167.8   10.4 -187.4 -149.8 |     5.4    8.5   -7.9   21.7 |     8    8 |   0.016  0.011
 GLY    20 |  -119.5   13.4 -134.9  -90.0 |  -144.5   11.6 -160.8 -127.9 |     8    8 |   0.027  0.020
 ...
 ALA   326 |   -48.9   11.6  -65.8  -30.3 |   -50.0   14.2  -70.6  -25.7 |     8    8 |   0.020  0.030
 ARG   327 |   -90.0   10.4 -102.0  -72.7 |   -10.6   15.5  -33.9   10.1 |     8    8 |   0.016  0.036
 ALA   328 |  -120.9   26.5 -162.0  -70.7 |    39.4   14.3   10.5   54.7 |     8    8 |   0.103  0.031
 PHE   329 |   -95.7    8.2 -106.7  -83.8 |   106.1   73.7   91.5  272.6 |     8    8 |   0.010  0.497
 THR   330 |    57.8   43.5  -20.0  149.0 |     0.0    0.0    0.0    0.0 |     8    0 |   0.241 -1.000
 Nr of residues found : (        316)
 SIGMA(phi) Ave, Sdv, Min, Max, # :     9.02    5.12    2.92   58.45     315
 RANGE(phi) Ave, Sdv, Min, Max, # :    28.52   17.95    9.94  189.73     315
 SIGMA(psi) Ave, Sdv, Min, Max, # :     8.91    6.06    2.54   73.71     315
 RANGE(psi) Ave, Sdv, Min, Max, # :    28.02   18.49    6.98  192.70     315
 CV(phi)    Ave, Sdv, Min, Max, # :    0.015   0.026   0.001   0.276     315
 CV(psi)    Ave, Sdv, Min, Max, # :    0.015   0.035   0.001   0.497     315
 Plot file written
 CPU total/user/sys :       4.4       4.3       0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Dihedrals for which there are no observations are listed as having a circular variance of -1.0 (to recognise them easily), but in the plot they will have values of 0.0. The plot file may look as follows:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
REMARK Created by LSQMAN V. 970722/5.5 at Tue Jul 22 19:22:45 1997 for user gerard
XLABEL Residue number
YLABEL CV(phi) and CV(psi)
REMARK Plot of CV(phi) (solid blue) and CV(psi) (dotted red) as a function of residue nr
REMARK Values are for mol M1 = file /nfs/pdb/full/1ldn.pdb
XYVIEW    14.00  331.00    0.00    1.00
NPOINT      316
COLOUR        4
XVALUE *
    15    16    17    18    19    20    21    22    23    24    25    26
...
   327   328   329   330
REMARK SIGMA(phi) ave, sdv, min, max     9.02    5.12    2.92   58.45
REMARK RANGE(phi) ave, sdv, min, max    28.52   17.95    9.94  189.73
REMARK CV(phi) ave, sdv, min, max     0.02    0.03    0.00    0.28
! MOLNAM_RESIDUE_CVPHI R 316 (9f8.3)
YVALUE *
   0.000   0.019   0.014   0.019   0.016   0.027   0.023   0.007   0.009
   0.007   0.006   0.006   0.014   0.013   0.010   0.007   0.006   0.014
...
   0.011   0.007   0.009   0.015   0.013   0.020   0.016   0.103   0.010
   0.241
MORE
COLOUR        1
REMARK SIGMA(psi) ave, sdv, min, max     8.91    6.06    2.54   73.71
REMARK RANGE(psi) ave, sdv, min, max    28.02   18.49    6.98  192.70
REMARK CV(psi) ave, sdv, min, max     0.02    0.04    0.00    0.50
! MOLNAM_RESIDUE_CVPSI R 316 (9f8.3)
YVALUE *
   0.015   0.011   0.010   0.025   0.011   0.020   0.012   0.009   0.007
   0.008   0.005   0.009   0.017   0.006   0.008   0.004   0.003   0.023
   0.011   0.006   0.007   0.008   0.008   0.010   0.007   0.007   0.011
...
   0.005   0.022   0.021   0.004   0.017   0.030   0.036   0.031   0.497
   0.000
END
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Convert plot files to PostScript with O2D.


12.9 VSide_chain (chi1, chi2 circular variance plot for multiple models)


This command will plot the circular variance of chi1 and chi2 for a set of models (NCS or NMR). See the VM command for further information.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1ldn.pdb
 ...
 LSQMAN > vs m1
 Side-chain circular variance plot
 Reference chain ? (A)
 Plot file ? (m1_chi12_cv.plt)
 Reference chain : (A)
 Residue range :     1 -   353
   Residue      <c1>  S(c1)    Min    Max      <c2>  S(c2)    Min    Max     #c1  #c2     V(c1)  V(c2)
 MET    15 |   -67.6   14.6  -85.9  -46.5 |  -166.7    9.5 -186.0 -153.8 |     8    8 |   0.032  0.014
 LYS    16 |   -75.8   22.0 -111.6  -31.8 |    32.9   43.9  -83.3   64.6 |     8    8 |   0.071  0.226
 ASN    17 |  -130.6   12.1 -150.8 -107.2 |  -109.6    6.4 -118.6  -95.3 |     8    8 |   0.022  0.006
 ASN    18 |   -44.0   10.4  -57.5  -23.3 |    56.0   10.0   40.4   66.8 |     8    8 |   0.016  0.015
 ARG    22 |   158.0   27.3  100.3  183.2 |   167.4   22.3  128.5  195.5 |     8    8 |   0.108  0.074
 VAL    23 |   175.3   13.1  147.6  195.6 |     0.0    0.0    0.0    0.0 |     8    0 |   0.026 -1.000
 VAL    24 |   174.3    9.5  156.9  186.6 |     0.0    0.0    0.0    0.0 |     8    0 |   0.014 -1.000
 VAL    25 |   175.1   10.4  157.1  192.3 |     0.0    0.0    0.0    0.0 |     8    0 |   0.016 -1.000
 ...
 ARG   327 |    38.2   28.4  -30.2   65.1 |   146.4   15.7  122.6  176.4 |     8    8 |   0.113  0.037
 PHE   329 |  -116.1   13.2 -143.2 -102.7 |   -43.4   13.0  -68.8  -30.4 |     8    8 |   0.026  0.025
 THR   330 |   161.9   46.8   53.3  226.5 |     0.0    0.0    0.0    0.0 |     8    0 |   0.269 -1.000
 Nr of residues found : (        316)
 SIGMA(chi1) Ave, Sdv, Min, Max, # :    13.45    8.54    3.32   46.78     254
 RANGE(chi1) Ave, Sdv, Min, Max, # :    43.02   29.38    9.66  173.23     254
 SIGMA(chi2) Ave, Sdv, Min, Max, # :    20.94   16.81    3.37   85.66     197
 RANGE(chi2) Ave, Sdv, Min, Max, # :    63.97   45.48   11.36  212.63     197
 CV(chi1)    Ave, Sdv, Min, Max, # :    0.036   0.048   0.002   0.276     254
 CV(chi2)    Ave, Sdv, Min, Max, # :    0.089   0.146   0.002   0.923     197
 Plot file written
 CPU total/user/sys :      16.9      16.9       0.0
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


13 VRML COMMANDS

From version 6.0 on, LSQMAN can produce VRML files of molecules in memory (VRML = Virtual Reality Modelling Language). Rather than writing a dedicated set of routines to display molecules, use of of VRML is trivial for the programmer, and easy for the user.

Some things you may need to know:
- VRML files have the extension ".wrl"
- use your favourite browser with VRML viewer plug-in to inspect the displays (you can launch it from inside LSQMAN, e.g.: "$ netscape test.wrl &")
- colours can be defined by name or by RGB values (red-green-blue, three numbers in the range 0-1). The VRml COlour_list command will list all (> 400) predefined colour names and their RGB values

A typical series of commands would be:
- read mol1 ..
- read mol2 ..
- superimpose mol2 onto mol1 (EX, BR)
- apply the operator to mol2
- VRml SEtup (if necessary)
- VRml INit filename
- VRml ADd mol1 [chain]
- VRml ADd mol2 [chain]

The VRML interface was written for two purposes:
- quick inspection of superimposed structures without the need to write the structures to new PDB files, fire up a separate graphics program, reading the molecules and displaying them; for this purpose you probably want to re-use the same file over and over (just hit the RELOAD button of your VRML browser when you have written new molecules to the file)
- creating files with superimposed molecules which you can include in your web pages (in this case, don't forget to compress the files with the "gzip" command to reduce their size !)

The options have been kept simple and fast. For fancier pictures you should use dedicated software (e.g., all-atom ball-and-stick models).


13.1 VRml SEtup (define some parameters)

With this command you can define the following parameters:

- the central atom type (" CA " for proteins)
- the maximum allowed distance between two subsequent central atoms for them to be connected on the display (4.5 Å is a reasonable cut-off for CA-CA distances in proteins)
- the background colour (default is black)
- the default colour for molecules (default is white)

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > vr set " CA " 4.5 white "0.35 0.87 1.0"
 Central atom type : ( CA)
 Max central atom distance : (   4.500)
 Background colour : (1.000000 1.000000 1.000000)
 Default colour : (0.3500000 0.8700000 1.000000)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > vr se
 Central atom type ? ( CA)
 Central atom type : ( CA)
 Max central atom distance ? (4.5)
 Max central atom distance : (   4.500)
 Background colour ? (1.000000 1.000000 1.000000) grey
 Background colour : (0.5000000 0.5000000 0.5000000)
 Default colour ? (0.3500000 0.8700000 1.000000) red
 Default colour : (1.000000 0.0000000E+00 0.0000000E+00)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


13.2 VRml INit (open a new VRML file)

This command opens a new VRML file (default: same file name as before if the file name is not provided). To actually write molecules to it, use the VRml ADd command

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > vr in test.wrl
 Open VRML file : (test.wrl)
 Opened VRML file
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


13.3 VRml COlour_list (list predefined colour names)

To help you find colours, more than 400 colour names have been predefined. This command will list their names and their RGB values.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > vr co
 Nr of colours : (        411)
 #   1 (black                ) =     12595212 RGB    0.000   0.000   0.000
 #   2 (red                  ) =     12596212 RGB    1.000   0.000   0.000
 #   3 (green                ) =     13619212 RGB    0.000   1.000   0.000
 #   4 (blue                 ) =   1061171212 RGB    0.000   0.000   1.000
 #   5 (yellow               ) =     13620212 RGB    1.000   1.000   0.000
 #   6 (magenta              ) =   1061172212 RGB    1.000   0.000   1.000
 #   7 (cyan                 ) =   1062195212 RGB    0.000   1.000   1.000
 #   8 (light_grey           ) =    852276012 RGB    0.800   0.800   0.800
 #   9 (grey                 ) =    537395712 RGB    0.500   0.500   0.500
 #  10 (dark_grey            ) =    222515412 RGB    0.200   0.200   0.200
 #  11 (white                ) =   1062196212 RGB    1.000   1.000   1.000
 #  12 (gainsboro            ) =    917351274 RGB    0.862   0.862   0.862
 #  13 (honeydew             ) =   1000330169 RGB    0.941   1.000   0.941
 #  14 (mistyrose            ) =    938355700 RGB    1.000   0.894   0.882
 ...
 # 407 (dodgerblue2          ) =    991454330 RGB    0.110   0.525   0.933
 # 408 (lightsteelblue3      ) =    855328391 RGB    0.635   0.709   0.803
 # 409 (green3               ) =     13417484 RGB    0.000   0.803   0.000
 # 410 (orangered4           ) =     12745261 RGB    0.545   0.146   0.000
 # 411 (mediumorchid1        ) =   1061582714 RGB    0.878   0.401   1.000
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


13.4 VRml ADd (add a molecule to the current VRML file)

Add a trace of the central atoms of a molecule or chain to the current VRML file. You can also provide the colour to use. If you don't provide a chain identifier (e.g., A, B, ...), all chains in the molecule will be drawn (chain = "*").

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/1azu.pdb
 ...
 LSQMAN > re m2 /nfs/pdb/full/2aza.pdb
 ...
 LSQMAN > br m1 a m2 a 50 25 100
 Brute-force fit of M1 A
 And                M2 A
 ...
 LSQMAN > im m1 * m2 *
 Improve fit of  M1 *
 And             M2 *
 ...
 LSQMAN > ap m1 m2
 Bring Mol 2 on top of Mol 1 ...
 Molecule 1 : (M1)
 Molecule 2 : (M2)
 Apply to mol 2 chain : (*)
 Nr of atoms moved : (       2263)
 Resetting ALL operators of mol 2 ...
 LSQMAN > vr in test.wrl
 Closed VRML file
 Open VRML file : (test.wrl)
 Opened VRML file
 LSQMAN > vr ad m1 a "0.705   0.322   0.803"
 VRML - Add mol M1         chain A
 Nr of central atoms written : (        126)
 LSQMAN > vr ad m2 a cornsilk3
 VRML - Add mol M2         chain A
 Nr of central atoms written : (        129)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


13.5 VRml ALl_chains (add each chain/model of a molecule to the current VRML file)

Add a trace of the central atoms of each chain/model of a molecule to the current VRML file. Each chain/model will be drawn in a different colour.

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > vr in
 Open VRML file : (lsqman.wrl)
 Opened VRML file
 LSQMAN > vr all m1
 VRML traces for mol : (M1)
 VRML - Add chain A colour yellow
 Nr of central atoms written : (        106)
 VRML - Add chain B colour green
...
 VRML - Add chain Y colour mint_cream
 Nr of central atoms written : (        106)
 VRML - Add chain Z colour bisque
 Nr of central atoms written : (        106)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


14 EXAMPLE

The following illustrates a simple LSQMAN session in which you want to superimpose 1AZU on top of 2AZA, improve the operator, create an O macro and execute this macro in O:


14.1 (1) read the molecules

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > read 2aza 2aza.pdb
 Nr of lines read from file : (       1211)
 Nr of atoms in molecule    : (        987)
 Nr of chains or models     : (          1)
 LSQMAN > read 1azu 1azu.pdb
 Nr of lines read from file : (       1041)
 Nr of atoms in molecule    : (        931)
 Nr of chains or models     : (          1)
 LSQMAN > li *

List : (2AZA) File : (2aza.pdb) Comment : (Read from 2aza.pdb) Nr of atoms in mol : ( 987) Multiple NMR models ? (F) Nr of chains/models : ( 1)

List : (1AZU) File : (1azu.pdb) Comment : (Read from 1azu.pdb) Nr of atoms in mol : ( 931) Multiple NMR models ? (F) Nr of chains/models : ( 1) LSQMAN > sh 2aza 1azu Operator bringing : (1AZU) on top of : (2AZA) Last command was : (none) The 0 atoms have an RMS distance of 1000.000 A SI = RMS * Nmin / Nmatch = 1000.00000 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 1000.00000 Rotation : 1.00000000 0.00000000 0.00000000 0.00000000 1.00000000 0.00000000 0.00000000 0.00000000 1.00000000 Translation : 0.0000 0.0000 0.0000 Determinant of rotation matrix = 1.000000 Rotation angle = 0.000000 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


14.2 (2) do the initial, explicit superposition


for example using an alignment obtained from DEJAVU

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > atom_types define " ca " " n  " " c  " " co " " cb " " cg &q
 Nr of atom types : (       7)
 Type : ( CA)
 Type : ( N)
 Type : ( C)
 Type : ( CO)
 Type : ( CB)
 Type : ( CG)
 Type : ( CD)
 LSQMAN > ex 2aza
 Range 1 ? (A1-10) "a4-10 a19-23 a28-36 a44-51 a53-66 a91-97 a106-111 a123:126"
 Mol 2 ? (2AZA) 1azu
 Range 2 ? (A1) "a4 a19 a28 a44 a53 a91 a106 a123"
 Explicit fit of 2AZA "A4-10 A19-23 A28-36 A44-51 A53-66 A91-97 A106-111 A123:126"
 And             1AZU "A4 A19 A28 A44 A53 A91 A106 A123"
 Atom types     | CA | N  | C  | CO | CB | CG | CD |
 Nr of atoms to match : (        265)
 The    265 atoms have an RMS distance of    0.893 A
 Rotation    :  -0.956401  0.130562 -0.261248
                 0.169145 -0.481603 -0.859912
                -0.238090 -0.866610  0.438522
 Translation :     13.816    26.765    38.539
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


14.3 (3) play with the improve option until you're happy

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > set dist 4
 Max matching distance (A) : (   4.000)
 LSQMAN > set decay 0.95
 Decay factor : (   0.950)
 LSQMAN > set min 10
 Min fragment length (res) : (      10)
 LSQMAN > set frag 0
 Fragment length decay (res) : (       0)
 LSQMAN > set max 25
 Max nr of improve cycles : (      25)
 LSQMAN > set opt mi
 Criterion : (MI)
 LSQMAN > set seq on
 Sequential hits : (ON)
 LSQMAN > set rms 0.5
 RMS weight : (   0.500)
 LSQMAN > im 2aza a* 1azu a*
 Improve fit of  2AZA A*
 And             1AZU A*
 Atom type      | CA |
 Nr of atoms in mol1 : (        129)
 Nr of atoms in mol2 : (        126)

Found fragment of length : ( 126)

Cycle : ( 1) Distance cut-off (A) : ( 4.000) Min fragment length (res) : ( 10) The 126 atoms have an RMS distance of 0.906 A SI = RMS * Nmin / Nmatch = 0.90630 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.68816 Rotation : -0.95771867 0.11354620 -0.26435241 0.17979124 -0.48112354 -0.85801822 -0.22461088 -0.86926830 0.44036639 Translation : 13.5455 27.2343 38.5374

...

Found fragment of length : ( 102) Found fragment of length : ( 23)

Cycle : ( 13) Distance cut-off (A) : ( 2.161) Min fragment length (res) : ( 10) The 125 atoms have an RMS distance of 0.880 A SI = RMS * Nmin / Nmatch = 0.88718 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.68894 Rotation : -0.95701498 0.11345596 -0.26692718 0.18237905 -0.48019871 -0.85799015 -0.22552218 -0.86979133 0.43886536 Translation : 13.4690 27.2135 38.5830

Found fragment of length : ( 34) Found fragment of length : ( 67) Found fragment of length : ( 23)

Cycle : ( 14) Distance cut-off (A) : ( 2.053) Min fragment length (res) : ( 10) The 124 atoms have an RMS distance of 0.862 A SI = RMS * Nmin / Nmatch = 0.87625 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.68773 Rotation : -0.95704645 0.11349409 -0.26679796 0.18196884 -0.48126674 -0.85747868 -0.22571975 -0.86919582 0.43994224 Translation : 13.4796 27.2430 38.5840

Fit deteriorated in this cycle ! Alignment based on previous operator !

Fragment CYS-A 3 <===> CYS-A 3 @ 2.00 A GLU-A 4 <===> SER-A 4 @ 1.15 A ALA-A 5 <===> VAL-A 5 @ 0.64 A ... PRO-A 104 <===> GLU-A 104 @ 1.13 A Fragment GLU-A 106 <===> GLU-A 106 @ 1.80 A ALA-A 107 <===> GLN-A 107 @ 1.82 A ... SER-A 128 <===> LYS-A 128 @ 1.76 A

Nr of residues in mol1 : ( 129) Nr of residues in mol2 : ( 126) Nr of matched residues : ( 125) Nr of identical residues : ( 77) % identical of matched : ( 61.600) % matched of mol1 : ( 96.899) % identical of mol1 : ( 59.690) % matched of mol2 : ( 99.206) % identical of mol2 : ( 61.111)

----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


14.4 (4) save the operator (just in case), create an O macro file


(and quit or go to another window to run O)

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > sav 2aza 1azu
 Operator bringing : (1AZU)
 on top of         : (2AZA)
 File name ? (rt_1azu_to_2aza.odb)
 Save in file   : (rt_1azu_to_2aza.odb)
 Datablock name : (.lsq_rt_1azu_to_2aza)
 LSQMAN > omac init 2aza
 File name ? (lsq_2aza.omac)
 O macro initialised
 LSQMAN > omac appe 1azu
 O macro extended
 LSQMAN > omac close
 O macro file closed
 LSQMAN > quit

*** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN ***

Version - 931022/0.4 Started - Fri Oct 22 23:28:21 1993 Stopped - Fri Oct 22 23:36:37 1993

CPU-time taken : User - 2.9 Sys - 0.6 Total - 3.5

*** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN ***

>>> This program is (C) 1993, GJ Kleywegt & TA Jones <<< E-mail: "gerard@xray.bmc.uu.se" or "alwyn@xray.bmc.uu.se"

*** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN *** LSQMAN ***

----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


14.5 (5) the O macro

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
! O macro lsq_2aza.omac
! Created by LSQMAN V. 931022/0.4 at Fri Oct 22 23:36:05 1993 for user gerard
!
o_setup off off on
!
print ... Analysing 2AZA
print ... From file 2aza.pdb
!
sam_at_in 2aza.pdb 2AZA
mol 2AZA obj c2AZA ca ; end_obj
!
paint_colour red
!
!
print ==========================================
!
print ... Comparing 1AZU
print ... From file 1azu.pdb
!
print ... Nr of matched residues          125
print ... RMS distance of these       0.88014
print ... Similarity index            0.88718
print ... Match index                 0.68894
!
sam_at_in 1azu.pdb 1AZU
!
db_create .lsq_rt_1AZU_to_2AZA 12 R
!
db_set_data .lsq_rt_1AZU_to_2AZA  1  1    -0.95701498
db_set_data .lsq_rt_1AZU_to_2AZA  2  2     0.11345596
db_set_data .lsq_rt_1AZU_to_2AZA  3  3    -0.26692718
db_set_data .lsq_rt_1AZU_to_2AZA  4  4     0.18237905
db_set_data .lsq_rt_1AZU_to_2AZA  5  5    -0.48019871
db_set_data .lsq_rt_1AZU_to_2AZA  6  6    -0.85799015
db_set_data .lsq_rt_1AZU_to_2AZA  7  7    -0.22552218
db_set_data .lsq_rt_1AZU_to_2AZA  8  8    -0.86979133
db_set_data .lsq_rt_1AZU_to_2AZA  9  9     0.43886536
db_set_data .lsq_rt_1AZU_to_2AZA 10 10    13.46904564
db_set_data .lsq_rt_1AZU_to_2AZA 11 11    27.21351051
db_set_data .lsq_rt_1AZU_to_2AZA 12 12    38.58302689
!
lsq_mol 1AZU_to_2AZA 1AZU ;
mol 1AZU obj c1AZU ca ; end_obj
paint_object c1AZU
!
! del_obj c1AZU ;
! db_kill *1AZU*
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


14.6 (6) run O and execute the macro

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 % 428 gerard rigel 19:30:13 progs/lsq > ono general.o

... Run 4d_ono

... Executing /nfs/taj/alwyn/o/bin/4d_ono general.o ... For gerard on rigel at Fri Oct 22 23:38:31 MDT 1993

O > Use of this program implies acceptance of conditions O > described in Appendix 1 of the O manual O > O version 5.9.1 , Tue Aug 10 18:33:27 MET DST O > Loading general.o O > Maximum inter-residue link distance = 2.00 O > There were 23 residues. O > 175 atoms. O > Do you want to use the display? [Yes]: O > Graphics board GL4DXG-4.0 O > O > Trackball on (F7KEY) O > @lsq_2aza.omac O > Macro in computer file-system. O > O > As4> ... Analysing 2AZA O > As4> ... From file 2aza.pdb O > O > Sam> File type is PDB Sam> Database compressed. Sam> Space for 47589 atoms Sam> Space for 10000 residues Sam> Molecule 2AZA contained 129 residues and 987 atoms O > O > O > O > O > O > As4> ========================================== O > O > As4> ... Comparing 1AZU O > As4> ... From file 1azu.pdb O > O > As4> ... Nr of matched residues 125 O > As4> ... RMS distance of these 0.88014 O > As4> ... Similarity index 0.88718 O > As4> ... Match index 0.68894 O > O > Sam> File type is PDB Sam> Database compressed. Sam> Space for 46151 atoms Sam> Space for 10000 residues Sam> Molecule 1AZU contained 127 residues and 931 atoms O > O > O > O > O > O > O > O > O > O > O > O > O > O > O > O > O > O > O > Paint> C1AZU ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


14.7 (7) centre on one of the atoms


and admire a beautiful fit !


15 IMPROVING OPERATORS


15.1 differences with Lsq_Improve in O

This section describes some of the niceties of the improve option in LSQMAN.
With the default settings, this option functions in a way that is similar to the LSQ_IMPROVE command in O. However, apart from being considerably faster, the performance of the algorithm can be further improved by playing around with its parameters. Some of the "extras" compared to O:

* you may use residues from just ONE chain without knowing the names of the first and last residues

* you may impose "sequentiality", i.e., if residue A12 in molecule 1 was matched with A34 in molecule 2, then residue A88 in molecule 1 may only be matched with a residue in molecule 2 which is > A34

* residues in the second molecule are NEVER used twice

* a choice of optimisation criteria (which also give a better control over the convergence behaviour of the algorithm)

* optional use of decaying parameters

* informative output regarding, for instance, the percentage of matched and identical residues in both molecules


15.2 (1) defining which atoms to use


- the FIRST of the selected ATOM_TYPES is used for all selected residues (i.e., make sure not to use ALl or NOnh atoms !)
- one or more ranges of residues can be defined, e.g.: "A1-45 A60:132" - defines two ranges of residues A3-130 - defines a single range of residues A* - defines all residues in chain or NMR model A * - defines all residues in all chains or NMR models


15.3 (2) sequentiality constraint


this can be switched ON and OFf with the SEt SEq option; you would use this constraint if you are comparing two very similar molecules, for example; if you have two very different molecules which just happen to share a common motif, you could switch this constraint OFf


15.4 (3) no double use of residues


in O, sometimes one residue in "the second molecule" is matched to two different residues in the first; this is confusing and screws up your statistics; therefore, in LSQMAN, there is a forced one-to-one correspondence


15.5 (4) optimisation criteria


the following criteria may be used to decide if an operator has really improved or not:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
     - NM - the number of matched residues (not normally used)
     - RM - the RMS distance of the matched atoms (not normally
            used)
     - SI - the similarity index; this is calculated as follows:

RMSD * min(N1,N2) SI = --------------------- Nmatched

where: N1,2 = nr of selected residues in molecule 1,2 Nmat = nr of matched residues RMSD = their RMS distance

SI assumes values >= 0.0; the lower the value of SI, the better the fit and the more similar the two molecules are - MI - the match index; this is calculated as follows:

(1 + Nmatched) MI = -------------------------------------- (1 + W * RMSD ) * (1 + min(N1,N2))

W is weight factor (SEt RMs_weight) which is > 0; the larger the weight, the bigger the influence of the RMSD on the value of MI (suggested values for W are between 0.1 and 1)

MI assumes values between 0 and 1, where "0" indicates a "perfect mis-match" and "1" a perfect match ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


15.6 (5) decaying parameters

the two parameters used in O are also employed here:

- SEt DIst = define the maximum distance between two atoms in order for them to be considered matched (default 3.8 A)

- SEt MIni = the minimum length of contiguous matching fragments of residues (default 5 residues)

in addition, however, both parameters may be allowed to "decay", i.e. their value may be changed slightly in every iteration:

- SEt DEcay = a factor by which the maximum distance is MULTIPLIED after every cycle (suggested values in the range 0.9 to 1.1)

- SEt FRagm = a value which is ADDED to the minimum fragment length after every cycle

hence, for example, you may start with a fairly small set of closely matched atoms and allow the distance to become larger in every cycle provided that this leads to larger fragments:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > set dis 3.5
 Max matching distance (A) : (   3.500)
 LSQMAN > set dec 1.1
 Decay factor : (   1.100)
 LSQMAN > set min 4
 Min fragment length (res) : (       4)
 LSQMAN > set fra 1
 Fragment length decay (res) : (       1)
 LSQMAN > se opt mi
 Criterion : (MI)
 LSQMAN > im lipa a* 1ace a*
 Improve fit of  LIPA A*
 And             1ACE A*
 Atom type      | CA |
 Nr of atoms in mol1 : (        317)
 Nr of atoms in mol2 : (        526)
...
 Cycle : (          1)
 Distance cut-off (A)      : (   3.500)
 Min fragment length (res) : (       4)
 The     85 atoms have an RMS distance of    1.959 A
 SI = RMS * Nmin / Nmatch             =      7.30601
 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} =      0.09140
 Rotation     :  -0.77263975 -0.28095514 -0.56929082
                  0.05460826  0.86400366 -0.50051534
                  0.63249171 -0.41780603 -0.65222114
 Translation  :     -24.2804    -17.6301    105.6828
...
 Cycle : (          2)
 Distance cut-off (A)      : (   3.850)
 Min fragment length (res) : (       5)
 The    135 atoms have an RMS distance of    2.061 A
 SI = RMS * Nmin / Nmatch             =      4.83898
 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} =      0.13973
 Rotation     :  -0.76273268 -0.28683752 -0.57962328
                  0.05579499  0.86373103 -0.50085485
                  0.64430255 -0.41435844 -0.64279181
 Translation  :     -25.1862    -17.7377    105.2635
...
 Cycle : (          3)
 Distance cut-off (A)      : (   4.235)
 Min fragment length (res) : (       6)
 The    129 atoms have an RMS distance of    2.043 A
 SI = RMS * Nmin / Nmatch             =      5.01958
 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} =      0.13436
 Rotation     :  -0.75659031 -0.31367165 -0.57374316
                  0.03643082  0.85584819 -0.51594251
                  0.65287358 -0.41125903 -0.63609910
 Translation  :     -24.4675    -17.0481    105.8078

Fit deteriorated in this cycle ! Alignment based on previous operator ! ... ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----


15.7 (6) informative output


at the end of an optimisation run, a list of matched residues is printed, together with information concerning the number and percentage of matched and identical residues in both molecules:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
...
 Fragment PRO-A  33 <===> VAL-A 111 @     3.09 A
          ILE-A  34 <===> MET-A 112 @     1.84 A
          LEU-A  35 <===> VAL-A 113 @     0.75 A
          LEU-A  36 <===> TRP-A 114 @     0.65 A
          VAL-A  37 <===> ILE-A 115 @     0.27 A
          PRO-A  38 <===> TYR-A 116 @     0.60 A
          GLY-A  39 <===> GLY-A 117 @     0.81 A
          THR-A  40 <===> GLY-A 118 @     1.03 A
 Fragment GLY-A  41 <===> SER-A 122 @     1.58 A
          THR-A  42 <===> GLY-A 123 @     1.54 A
          THR-A  43 <===> SER-A 124 @     0.95 A
          GLY-A  44 <===> SER-A 125 @     1.04 A
          PRO-A  45 <===> THR-A 126 @     1.71 A
          GLN-A  46 <===> LEU-A 127 @     2.01 A
...
 Nr of residues in mol1   : (     317)
 Nr of residues in mol2   : (     526)
 Nr of matched residues   : (     135)
 Nr of identical residues : (      11)
 % identical of matched   : (   8.148)
 % matched   of mol1      : (  42.587)
 % identical of mol1      : (   3.470)
 % matched   of mol2      : (  25.665)
 % identical of mol2      : (   2.091)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


16 IMPROVING ROUGH DEJAVU ALIGNMENTS

Gerard's recipe for improving rough DEJAVU alignments, tested using CBHI (1CEL) and 1LTE:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
chain_mode original
atom_types extended_main_chain
set reset
!
read cbh1 /nfs/taj/gerard/progs/secs/cbh1/a16.pdb
omacro init cbh1

! read 1lte /nfs/pdb/pre/1lte.pdb ! explicit cbh1 a118-122 a140-143 a287-295 a299-306 a359-365 a414-423 1lte 31 55 165 178 207 225 show cbh1 1lte ! set coarse imp cbh1 * 1lte * show cbh1 1lte ! set intermediate imp cbh1 * 1lte * show cbh1 1lte ! set fine imp cbh1 * 1lte * show cbh1 1lte ! omacro append 1lte ! omacro close ! quit ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

The initial, explicit fit (using 43 residues !) gives:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 The    212 atoms have an RMS distance of   10.609 A
 SI = RMS * Nmin / Nmatch             =     10.60882
 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} =      0.08614
 Rotation     :  -0.69291258 -0.10764210 -0.71294129
                  0.03076268 -0.99230647  0.11992305
                 -0.72036505  0.06116420  0.69089299
 Translation  :      49.1372     64.3310     50.8504
 Determinant of rotation matrix =   1.000000
 Rotation angle                 = 175.683167
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

After coarse improvement (note the big changes in the operator !):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 The    159 atoms have an RMS distance of    3.199 A
 SI = RMS * Nmin / Nmatch             =      4.80841
 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} =      0.25646
 Rotation     :  -0.57405788 -0.15695305 -0.80363131
                  0.22625503 -0.97364998  0.02853779
                 -0.78693473 -0.16544329  0.59444284
 Translation  :      52.3044     70.6993     52.1137
 Determinant of rotation matrix =   1.000000
 Rotation angle                 = 167.589386
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

After intermediate improvement:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 The    108 atoms have an RMS distance of    2.106 A
 SI = RMS * Nmin / Nmatch             =      4.66147
 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} =      0.22120
 Rotation     :  -0.57900333 -0.11083046 -0.80775720
                  0.21638666 -0.97607797 -0.02118141
                 -0.78608650 -0.18705200  0.58913463
 Translation  :      52.4746     71.2050     51.4827
 Determinant of rotation matrix =   1.000000
 Rotation angle                 = 169.411850
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

After fine-tuning:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 The     76 atoms have an RMS distance of    1.743 A
 SI = RMS * Nmin / Nmatch             =      5.48040
 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} =      0.17144
 Rotation     :  -0.57834578 -0.10955796 -0.80840164
                  0.19439344 -0.98090446 -0.00613647
                 -0.79229248 -0.16069698  0.58859926
 Translation  :      52.5953     70.5723     51.8284
 Determinant of rotation matrix =   1.000000
 Rotation angle                 = 170.172287
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

NOTE: with the BRute_force command (from version 5.0 onwards) you can get the same result without knowing anything beforehand about which residues align in the two molecules.


17 LSQMAN AND MACROMOLECULES OTHER THAN PROTEINS

Since the atom types to be used for alignment can be defined by the user, LSQMAN can easily be used for other types of macromolecule, such as RNA, DNA, and oligosaccharides. The exceptions are commands which are specific for proteins, such as MRama etc.

The following example shows how to analyse the NCS relation between two DNA molecules (PDB entry 130D) - in this case the phosphor atoms are used as "central atoms" (i.e., analogous to CA in proteins):

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > re m1 /nfs/pdb/full/130d.pdb
 ...
 LSQMAN > at de " P  "
 Nr of atom types : (       1)
 Type : ( P)
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Now use the BRute_force command to align the two chains:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > br m1 a m1 b 5 3 5
 WARNING - mol1 == mol2 !
 Brute-force fit of M1 A
 And                M1 B
 Atom types     | P  |
 B-factor range used  -1000.00 - 10000.00 A2
 Fragment length             5
 Fragment step size          3
 Min matched residues        5
 Mol 1 zone to try : (A1-12)
 Mol 2 zone to try : (B13-24)

Try zone : (A1-5) Max match so far : ( 10) RMSD (A) : ( 0.938)

Max match : ( 10) RMSD (A) : ( 0.938) Mol 1 res : ( 1) Mol 2 res : ( 13)

Regenerating best alignment ... The 10 atoms have an RMS distance of 0.938 A SI = RMS * Nmin / Nmatch = 1.03201 MI = (1+Nmatch)/{(1+W*RMS)*(1+Nmin)} = 0.47295 MC = Maiorov-Crippen RHO (0-2) = 0.07081 RMS delta B for matched atoms = 3.246 A2 Corr. coefficient matched atom Bs = -0.801 Rotation : 0.75101489 -0.66026980 -0.00451462 -0.65996760 -0.75084811 0.02588229 -0.02047909 -0.01645848 -0.99965483 Translation : 18.1981 48.0588 16.0850 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----

Plot the distances between corresponding P atoms in the two chains:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > di m1 a1-12 m1 b13 m1_m1_di.plt
 WARNING - mol1 == mol2 !
 Central-atom distance plot
 Central atom type : ( P)
 Plot of M1 A1-12
 And     M1 B13
 Nr of residues matched : (         11)
 Average distance : (   1.103)
 Minimum distance : (   0.550)
 Maximum distance : (   2.981)
 Plot file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   

Make a plot of the differences between the pseudo-angles and torsions defined by subsequent P atoms in the two chains:

      
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
 LSQMAN > dd m1 a1-12 m1 b13 m1_m1_dd.plt
 WARNING - mol1 == mol2 !
 Central-atom delta-dihedral plot
 Central atom type : ( P)
 Plot of M1 A1-12
 And     M1 B13
 Nr of residues matched : (          8)
 RMS delta DIH       : (  34.455)
 Average |delta DIH| : (  29.385)
 Nr |delta DIH| > 10 : (       7)
 Percentage          : (  87.500)
 RMS |delta ANG|     : (   9.706)
 Average |delta ANG| : (   7.767)
 Nr |delta ANG| > 5  : (       6)
 Percentage          : (  75.000)
 Plot file written
 ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE ----- EXAMPLE -----
   


18 KNOWN BUGS

(1) With atom types All or NOnh explicit alignment sometimes uses only a fraction of the atoms. Fixed in version 4.7.

(2) The MAlign command doesn't work sometimes. This bug is fixed in version 4.8.

If you run into these bugs, you may have an old version of the program.


Uppsala Software Factory Created at Tue Mar 2 00:20:33 1999 by MAN2HTML version 971024/1.6