Jul 1 2004
Contents
 
Introduction
 Release notes
 Brief history of ICM
 ICM distribution and support
 What can you do with ICM? (a program overview)
 Notational conventions
 Common abbreviations
 Getting started
Reference Guide
User's guide
References
Glossary
 
Index
Prev
1.1 Release notes
Next

LASTUPDATED .
In this section we keep track of all the latest changes in different modules of ICM.
ICM version currently under development: ICM 3.1 . The released version is 3.0.28g
some useful functions. June 4 2004
  • Matrix(Vector, rowLen)
  • Matrix(Vector, -colLen)

faster convert command June 4 2004
html tables with chemical information using Peter Ertl's JME class. June 3 2004 The web icmChemTable command can now create an html table with chemical compounds drawn with Peter Ertl's JME java classes. The s_javaCodeBase variable controls the path to the JME code. Example:
 
read table "drugs.sdf" # creates icm chem-table drugs 
s_javaCodeBase="/Java/"  # path to your Java code base 
web drugs "t"  # creates t.htm file 

predicting properties from 2D with the Predict(chem .. ) function June 2 2004 the Predict chem [S_functions] ) function returns a table of predicted compound properties. E.g.
 
tt = Predict(Parray({"c1cccc1","CCCCCCCC"})) 
 #>T 
 #>-logp--------logs------- 
    2.524651    -1.953948 
    4.671457    -3.669415 

showing amino-acid codes in selections June 2 2004 Now residue selections can contain information about both one-letter code of an amino acid and its number. The following syntax is now allowed:
 
 a_/2:4      # old style, still works fine 
 a_/^A2:^C4  # new style 
The residue output style is controlled by the l_showResCodeInSelection variable. Functions String(res_selection) or Sarray(res_selection) can return selections in both styles. Example:
 
String(a_/2:4,6:8 ) 
 a_BS.a1/^H2:^A4,^A6:^A8 
display a_/^H2 cpk 

some new functions June 2 2004 Iarray( iFrom iTo iStep ) -> I Random( I ) -> I_randomlyPermuted Random( iFrom iTo n ) -> I_nRandom
support for chiral smiles June 1 2004
improved ligand views. May 31 2004 GRAPHICS.hetatmZoom parameter determines the increase in the stick and ball radii of the ligand atoms (HETATM-type molecules) compared to protein atoms. Also, the carbond atoms of the ligands can have a different default color (see file icm.clr , field atom H color )
preservation of single/double bond info in aromatic rings. May 31 2004 the initial pattern of single and double bonds is now preserved upon reading and writing .sdf/.mol files.
randomSeed is more random now May 30 2004 if two copies of icm start at the same second the randomSeed would be the same. To make the randomSeed different even if two processes are started at the same time, we added the process id to the seed.
list parray and Type(parray 1) returns "mol" or "model". May 16 2004
append seq_group seq1 seq2 .. . May 26 2004 appending sequence to a sequence group E.g.
 
read sequence group "bunch.seq" name="xx" 
append xx my_seq 
group xx unique 
align xx 

support for the last blast format, compatibility with the formatdb tool. May 16 2004
fast database searches. May 12 2004 find database fast [ =i_speed] [output=s_file] [name=s_tabName] i_speed is an integer from 1 to 100. (e.g. find database fast=50 aaa "swissprot" unique output="aaaseqs" ) support of any blastable protein database.
Matrix(R n) to split into columns or rows. Mar 15 2004
timeLimit (hours) to interrupt loops and MC procedures. Mar 15 2004
Chemical functions. Mar 15 2004
working on the ICM chemical arrays (e.g. read table mol "a.sdf", them use a.mol array)
  • Nof( Chem, s_smart|S_smarts ) -> I_ |M_ # matching/counting chemical patterns
  • Nof( Chem, molecule|chiral|atom ) -> I_nOf
  • Index( Chem s_smart [select] ) -> I_indecesOfMatches
  • Index( Chem Chem2 [exact] ) -> I_indOfChemMatches
  • Index( Chem Chem2 dist_cutoff ) -> I_indOfSimilarities
  • Mass( Chem [exact] ) -> R_masses # exact: no isotope correction
  • Split( Chem_1mol, molecule ) -> ChemSeparate
  • Distance(Chem [Chem2] ) -> Mnn
  • Parray( S|s [smiles|mol] ) -> Chem
  • Sarray( Chem ) -> S_molFiles
  • Smiles( Chem ) -> S_smiles
  • String( Chem ) -> s_FirstMolFile
  • assign chiral chemArray # command to auto assign chirality

Score(En Dn wE wD) -> r_prediction_quality Mar 14 2004
sfWeight Mar 11 2004 A weighting factor, sfWeight , is introduced to control the surface_area-based solvation energy term. Previously it was only possible in the constant tension mode with the surfaceTension parameter.
individual stick radii Mar 10 2004 In order to modify the default values of stick/ball radii from the command line follow this example:
 
set xstick as_Residue_Selection r_newStickRadius 
set xstick as_Residue_Selection R_arrayWithNewStickRadii 
the ball radius will be changed according to the radio of the default parameters (e.g. GRAPHICS.ballRaduis/GRAPHICS.stickRadius ). See the set xstick command.
Version 3.0.28f released. Mar 10,2004
option align in superimpose/Rmsd .. improved. Mar 8, 2004 the align option now works correctly with selections in two chains which are linked to the same alignment.
Error(i_error_or_warning_code) -> yes/no. Mar 1 2004 function to return if a specific warning occured before. Useful for scripts including reading pdbs and tracking down certain pdb problems. To clear use clear error . To output all errors and warning messages use Error( number )
list find word search for a macro or a variable. Feb 13 2004 E.g. list find biomt
File(s_filename "time") function to compare file modification times. Feb 13 2004
MnArrays configurable limit for many-column tables. Feb 13 2004
IMAGE.writeScale Feb 10 2004 a parameter to increase the resolution of the image for the quick image write tool (a little camera). IMAGE.writeScale = 1 will preserve the size. The preference can be edited in Preferences.
Trim( R [r_percentile] [mode_0_or_1] ) -> R_trimmed Feb 7 2004 Clever auto-trim for arrays. It identifies true outlyers and scales them down while preserving all resonable values. E.g. Trim( R 0.9 1)
Index( T_rowSelection ) -> I_indeces Feb 5 2004 Example:
 
  m.age[ Index(m.name=="Max")[1] ] # returns Max's age 

set swiss ms_ s_swissCode|S_swissCodes . Feb 4 2004 PDB-chains in most cases do not have references to Swissprot entries. This command allows to set the codes to PDB-molecules. The code can them be used for convenient loading/alignment from GUI.
new table commands: Feb 3 2004 group by table column; split a table column append a table by shared column
string //= string operation introduced Jan 27 2004
new topological representation for proteins. ribbonStyle="cylinders" Jan 26, 2004 ICM has a new algorithm to find helical axes, decide where to split a helix and draw adaptive-size cylindrical helices. It shows alpha-helices, 3/10 helices and Pi helices. From GUI display toolbar: see the submenu of the ribbon representation.
Name(ms_ swiss ) returns swissprot names or an empty string. Jan 25 2004
PDB table has HETATM names and swisprot sequence IDs. Jan 26, 2004
better hbond display. Jan 23, 2004 Hydrogen bonds are shown with little spheres if they bridge two atoms represented as "balls-and-xsticks".
better skin starting from a ribbon display Jan 21, 2004 a_//DD selection is improved to include C- and N- terminal backbone atoms if ribbon is displayed. Previously, displaying skin starting from a ribbon display in ICM objects generated skin with gaps near C- and N- termini. Now this problem (as well as the skin) is "patched" :-) .
new view preferences: GRAPHICS.hydrogenDisplay . Jan 25, 2004 non-polar or all hydrogens can be hidden, see GRAPHICS.hydrogenDisplay . From GUI: see the Presets in the Display toolbar.
inserting rows with add table command. Jan 15, 2004 The add table i_row [ table_selection ] command will insert or duplicate rows.
Reading a chemical table from a subset of mol-file entries. Jan 15, 2004 Large mol/sdf-files can be indexed with the ICM write index tool, and a subset of these entries can be loaded into ICM as molecular objects. Now a subset of compounds can also be loaded into a chemical table.
 
read index "Chem04" 
read table Chem04[{11,123,444}] # a table: pictures+properties 
read mol Chem04[{11,123,444}]   # creates 3 objects 

Finding ICMversion and the version of binary file. Jan 8, 2004 Now the program version is recorded in the binary file and can be extracted from it.
 
Version( s_binaryFile binary ) # string version of binary file 
Version( s_binaryFile gui    ) # version of ICM which saved this file  

read binary list to make a table of content for a binary file. Dec 29, 2004
 
read binary list "file.icb" name="table_of_obj_names" 

export to mol2 format improved. Dec 29, 2003 residue names are written in upper case, N-HN bond type is fixed.
Representing PI- and 3/10-helices in alignment and sequence view. Dec 22, 2003 Pi-helices are now wider and 3/10 narrower in alignment views. They also are shown with a different color which can be edited in the icm.clr file (piRibbon and threetenRibbon)
Copying the SITE/FEATURE information upon convertion and copy object. Dec 22, 2003
montecarlo output option for shorter output. Dec 22, 2003 The new option in the montecarlo command shortens the output by displaying only the DY lines, as well as steps which reach any of simulation limits.
Fixed bugs Dec 20, 2003
  • alignment of many identical sequences is now correct
  • crashes associated with deleting maps are fixed
  • selection by 'Pi' helix, code I, is enabled ( a_/SI )

New funcitons for BIOMT transformations. Dec 15, 2003 The following functions can generate all BIOMOLECULES of an object:
  • Nof(os_1 "bio") or Nof(symmetry) # the number of BIOMOLECULES in the current
  • Select(os_1 "bio" i_biomol) # selects molecules which need to be transformed
  • Transform( os_1 "bio" i_biomol) # N*12 vector with transformations.

Name of linked sequence or alignment. Dec 15, 2003
 
Name( a_molsel sequence ) 
Name( a_molsel alignment ) 
return an array of sequence names, or array of alignment names.
Control light with GRAPHICS.light and display new reflection. Dec 14, 2003 New real array controls the properties of light in molecular graphics. The Display toolbar has four sliders to control the light preferences. See: GRAPHICS.light .
Select by chain with a_Cabc . Nov 17, 2003
Fading display images in and out. Nov 17, 2003 display intensity= will dim the picture and merge it with the background.
Deleting sequences from the alingment without deleting them from the shell. Nov 9, 2003 E.g.
 
  delete sh3 only Fyn Spec  # removes sequences Fyn and Spec from alignment sh3 

Merging grobs into one with the double-slash (//) operator Nov 9, 2003
Displaying Hydrogen Bonds between heavy atoms (X-ray style) Nov 6, 2003
fast findSymNeighbors macro to generate symmetry neighbors Nov 4, 2003
correct recognition and treatment of rhombohedral and hexagonal lattices Oct 30,2003
Selecting table rows by an array of values. Oct 23, 2003 T.number == {3 1 14} will select all rows with the number column equal to either 3 1 or 14. Similarly for real arrays.
new symmetry and transformation functions plus some reshuffling. Oct 17, 2003
  • transform a_ i_symm_transformation [translate]
  • set symmetry obj R_3_6_abcAlphaBetaGamma s_symGroup_or_i_Group
  • set symmetry map i_SpaceGroupNumber
  • Transform( s_group| iGroup | obj | map )-> R_12N_all_transformations
  • Transform( s_group| iGroup | obj | map iTrans )-> R_12_transformation_i
  • Transform( s_symbolic_transformation )-> R_12
  • Transform( R_6 )-> R_12
  • Transform( M_4x4 or M_3x3 ) -> R_12_transformation
  • Transform( R_12 inverse )-> R_12_inverse_transformation
  • Transform( R_12xNfractional R_6cell ) -> R_12xNabsolute
  • Symgroup( s_group | i_groupNumber | object | map ) -> s_uniqueGroupName
  • Symgroup( s_group | i_gr | obj | map number ) -> i_canonicalNumber1to230
  • String( R_12N transform ) -> s_symbolic_transformations"
  • Xyz( [as_| grob ] ) -> M_xyz
  • Xyz( M_xyz, R_3_6cell, [cell|reverse]) ->M_xyz1_to|from_fractional
  • Xyz( M_xyz, obj_, [cell|reverse]) ->M_xyz1_to|from_fractional
  • Xyz( M_xyz, i_symm_transformation, s_sym_group, R_6_cell [translate]) ->M_xyz_transformed
  • Xyz( R_x1y1z1x2y2z3...)->M_xyz
  • Cell( as_ r_margin ) -> {a b c 90. 90. 90.} # helps set symmetry

Name family of functions
  • Name( os_ | ms_ | rs_ | as_ [ atom | residue | molecule | object ] ) -> array of names
  • Sarray( as_ [residue] ) -> array of atom or residue strings


color grob as_ Oct 7, 2003 After voting Green for Peter Miguel Camejo, the color g_grob as_selection color was added. It finds a patch at GROB.atomSphereRadius around the atom selection and colors it.
read separate library files Sep 30,2003 the read library command has been extended to read or re-read individual library files, e.g.
 
 LIBRARY.res = {"icm","/home/jack/jack.res"} 
 read library residue  
 
 read library atom "new.cod" 
 read library color "new.clr" 
 read library drestraint "new.cnt" 
 read library vrestraint "new.rst" 
 read library charge "new.bci" 

GRAPHICS.displayMapBox Sep 18,2003 Parameter GRAPHICS.displayMapBox controls if the bounding box of a map is displayed.
superimpose by one or two atoms Aug 28,2003 the superimpose command has been extended to allow superposition by a single atom (e.g. superimpose a_1./2/ca a_2.//ca) or by a pair of atoms forming an axis (e.g. superimpose a_2./2/ca,cb a_2.//ca,cb ).
Selections for molecules with linked sequences ( a_Q ) and linked alignments ( a_C ) July 17,2003

version 3.24 released July 9, 2003
read pdb sequence corrected to generate chain IDs consistent with read pdb July 9,2003 Now in both read pdb and read pdb sequence the numerical chain IDs are changed into literal chain IDs ( 0 becomes a , 1 becomes b etc.). Example:
 
read pdb "1afb" 
 a_1afb.b,c,d chains are created 
read pdb sequence resolution "1afb" 
 1afb_b19 1afb_c19 1afb_c19 sequences are extracted. 1.9A is resolution 

full het-molecule names in read pdb: parsing HETNAM July 2, 2003 The names of ligands stored in the HETNAM records are not parsed and shown. They also are stored in ICM objects.
print bar s_ mxNumIter July 2, 2003 shell command to see progression bar Example:
 
l_commands = no 
print bar " Start" 100 
for i=1,100 
  read pdb "1crn" 
  print bar "." 100 
endfor 
print bar " End\n" 

Substrings of sarrays and inverted sarrays. July 2, 2003 Sarray (S,3,5) extracts substrings from 3 to 5. If the order of boundaries is inverted, the strings will be inverted too.
Chemical arrays. July 2, 2003 (see also Chemical Spreadsheets below). an ICM array of objects is introduced. We called it parray (array of pointers). It will be able to carry a list of objects of different kind. The first object implemented is a chemical object (a.k.a. mol object) which can be read from an sdf file (see read table mol). Note that these mol-objects do not exist in ICM shell as individual 3D molecular objects. Function Nof will return the number of occurencies of a smart string in each molecule of an array. This iarray can be added to a table as a descriptor. Other functions to add descriptors of molecules from a parray are being added.
The following functions have been added to deal with molecular arrays:
keyworddescriptionsyntax
parrayarray of pointers to molecules (P)ls parray
Parray()returns parray of moleculesParray(S|s smiles|mol)->P
Nof()returns the number of smarts in mol-arrayNof ( P { atom | s_smart })
Sarray(P)returns sarray of mol-filesSarray(P)->S
Smiles(P)returns a sarray of smilesSmiles(P)->S
read molcreates a separate ICM objectread mol input=String(P[i])

Name( s_ simple ) function July 2, 2003 removes all non-alpha-numeric simbols from a string and replaces them by underscore. Example:
 
  Name( " %^23 a 2,3 xreno-77-butadien" simple)     
 23_a_2_3_xreno_77_butadien 
 

improved String( rs_ ) function July 1, 2003 String( rs_ ) returns residue ranges selected. Now it breaks the range for residues which are sequential in structures but with the discontinuous numbers. Also, the function is more compact for multiple single-residue molecules. Example:
 
read pdb "1eye" 
String( a_/* )  
  a_1eye.a/5:50,65:274|a_1eye.2:247  # numbers break between 50 and 65 

Chemical Spreadsheets: read table mol June 25, 2003
the read table mol command reads an sdf file and converts it into an ICM table. The mol-file part of each entry is stored in a separate column which is visualized as a molecular drawing. Other fields are parsed and the type is determined. The resulting table can be manipulated with in ICM-GUI and saved with the write table mol command.
Rarray( ali [ simple ] ) June 19, 2003 symmetrical average pairwise conservation for each position in a multiple alignment.
Score( rs_ [ simple ] ) June 19, 2003 linked-alignment-derived conservation score array for the selected residues. Take a Mean( Score ( rs_ simple )) to calculate an average measure of conservation.
set randomize i_newRandomSeedValue June 13, 2003 new command to reset and activate the randomSeed value in the middle of a session. It will affect all commands and functions using random values.
Trim( S_sourse, all ) July 12, 2003 removes white space from both ends of each string in an array.
new Matrix function. June 11, 2003 To make a matrix from the shell directly, you can now provide a rarray and row-length. Example:
 
icm/def> Matrix({1. 2. 3. 4. 5. 6.}, 3) 
#>M 
1. 2. 3. 
4. 5. 6. 
icm/def> Matrix({1. 2. 3. 4. 5. 6.}, 4) 
 Error>  non-matchind dimension [4] and vector size [6] 

reading and writing csv and tsv table formats. June 1, 2003
 
read table separator="," "tt.csv"   # will now understand csv/tsv formats 
ICM also supports extended csv format with line commends under option comment=s (for example: read table separator="," "tt.csv" comment="#" ). See read table separator...
direct reading of individual stack conformations from compressed files. June 1, 2003 The new stacks now support direct reading of separate conformations, and the write binary method uses the compressed format as well.
read map xplor; write map xplor; read map "ccp4_format" fixed. May 30 2003 read and write in text xplor format has been fixed. Also ICM can now read more versions of the ccp4 binary maps.
Further acceleration of compress stack fast. May 22 2003 an additional step is added to the fast stack compression to speed up compression in stacks where conformations similar in energy has higher changes of being similar according to the compare command. Also, the conformations are now not refixed everytime a new conformation is loaded.
Selecting residues and molecules with numerical names. May 21 2003 Sometimes, the names of molecules or residues in the PDB look like an integer. Consequently ICM interprets selections looking like a_999 or a_/142 as selection by number rather than by name . Now to select molecules with numerical names you can use backslash, e.g. a_\999 or a_/\142 .
find database name=s_tableName output=s_outputFileNameRoot distance=i_MaxNofMutations . May 7 2003 find database commands was extended and new options added:
  1. find database [ name=s_tableName ] # an option added
  2. find database exact [ distance=i_MaxNofMutations ] [ name=s_tableName ] # two options added
  3. find database now creates a table with results (previously it only saved the search results to a file.
Also the search result table now has a header which allows you to download and display a structure by double-clicking on the table record.
Force field: Correct torsion potential for xi3 of Methionine derived and implemented. May 1 2003 We analyzed the database of high resolution crystallographic structures and derived the new torsion potential for Methioinine. File icm.tot has been modified to include the new torsion type.
find database [protein|nucleotide|type] . May 1 2003 the find database command is extended to avoid matching a database sequence of the wrong type. That was necessary since PDB blast files contain both protein and nucleic acid sequences.
read conf i_ "compressedStack.cnf" . May 1 2003 Direct reading of conformations from a compressed stack is now possible. The compressed format becomes the default stack format.
write stack : highly compressed stack files. April 29 2003 Large stack files containing multiple conformations can be now saved in a highly compressed form. New syntax:
 
 write stack simple .. # will save stack in old uncompressed format 
 write stack           # will save stack in new compressed format 

compress stack fast. April 24 2003 Compression of large stacks speeded up for very large stacks from hours to seconds.
Rmsd( as_tetheredAtoms ). April 18 2003 Rmsd function extended to return RMSD AFTER superposition by tethers.
superimpose by tethers. April 18 2003 New superimpose as_atomsByTethers allows to superimpose by equivalences defined via tethers.
version 3.019 released Apr 16, 2003
option virtual added to the strip command. April 10 2003 the strip command is extended to delete virtual atoms
linked sequences and alignments presented in the workspace. April 5 2003
version 3.018 released Apr 1, 2003
new options of the Energy ( rs_ [ simple | base | s_energyTerms ] ) Apr 1, 2003 allows to calculate standard normalized energy values for residues (option simple). Also allows to dynamically redefine the terms for which the residue energies are calculated.
read pdb assigns bond types to compounds. March 29 2003 read pdb now uses a new file called comp.cif to assign bond types correctly upon reading a pdb entry. (Note: the pdb entries do not contain bond type descriptions). However, the formal charges still need to be edited manually, and only after that the build hydrogen command can be applied to the pdb-heter-compounds.
improvements of Energy ( rs_ ) and over 100 fold speed up of the energy strain calculations Mar 28, 2003 surface, entropy and grid energy terms added to the residue energies (see the Feb 24,2003 note). The calcEnergyStrain macro switched to the new method for calculating the residue energies which led to a dramatic speed up.
bug in undisplay skin fixed. March 25, 2003
Max( grob | macro | sequence | alignment | profile | table | map ) March 22 2003 shell limits (to increase modify icm.cfg file).
Matrix( M, rowFrom rowTo colFrom colTo ) extracting a sub-matrix March 12 2003 use 0 to skip (meaning all the values).
Rarray( M, i_flag ) matrix to array transformations March 11 2003 The Rarray ( M [i_flag] ) function is extended to allow extraction of different groups of elements of the matrix. The possibilities are the following: elements by rows, by columns, the upper and lower triangles, the diagonal elements, the upper and lower triangles without diagonal elements
Matrix( n, R_diagonal ), Histogram ( R n|R_ruler R_Weights ) and Rarray(from to step) March 11 2003
Nof(grob {1|2|3}) March 10 2003 to return the number of dots, lines and triangles respectively
compress grob [*selection] March 8 2003 returns new number of dots in i_out and r_out. Syntax extended to allow all grobs, selections and explicit lists.
coloring pockets by electrostatic potential. March 8 2003 Any grob (or 3D-mesh) can be colored by electrostatic potential. Since for molecular surface the potential is calculated in a direction away from the surface. color grob potential [ reverse | simple ] now calcualtes the mean and rmsd of the electrostatic potential at the surface. Also, there is option reverse to temporarily invert the normals for the electrostatic potential calculation and option simple to ignore correction by normals.
Example:
 
read pdb "1est" 
delete a_!1 
convert 
icmPocketFinder a_ 4.6 yes no 
display g_pocket1 
make boundary 
color g_pocket1 potential reverse 

Distance( as_ [ r_default ] ) : function to return the tether length of for each atom improved (to fit the new Group function) . March 8 2003 Now it is guaranteed to return an element for each selected atom.
Group : new function allowing to project an atomic property to residues. March 8 2003
Group( rarray | iarray , as_atom_selection , "min"|"max"|"avg"|"rms"|"sum"|"first"|"count" ) (count does not require the first argument). Example:
 
  read pdb "2ins" 
  Group( Mass( a_A//c* ), a_A//c* , "sum" )   # computes residue masses 

Improvements of the convert command. March 6 2003
  • oxt C-terminus recognized and recreated by the convert command
  • hydrogens for Cd atom or proline are correctly built

New soft van der Waals and soft electrostatics. March 3 2003 Better soft electrostatics functions are implemented to match the soft van der Waals. They work in both distance dependent mode and the Columb mode (see electroMethod ). It is activated automatically if vwMethod is set to "soft" and matches the vwSoftMaxEnergy parameter.
Recognition of the C-terminus by the IcmSequence function and the convert command. Feb 24 2003 Now you can use IcmSequence( a_/* "nter","@cter" ) function and the C-terminal residue after the special @ symbol will be added only of atom oxt is found in the last residue of a molecule. Without ampersend it will always be added.
The new fast residue energy function: Energy(a_/* ). Feb 24 2003 An improved and fast residue energy function helping to compute the energy strain much faster than before. It also covers all energy terms except the grid map terms.
Strength for multiple alignments (a new function) Feb 17 2003 A function to measure the strength of a multiple alignment is introduced. The strength can be computed with either normalized residue comparison matrix or with an "exact" un-normalized matrix. In the second case a conserved tryptophan, for example, returns a higher value, than conserved alanine. The function can be called as: Rarray( ali_ [ *exact ] )
ICM version 3.016 released. Feb 21 2003
sequenceColorScheme preference introduced for alignment coloring Feb 17 2003
It uses the new CONSENSUSCOLOR table values and allows multiple styles of alignment coloring. sequenceColorScheme = "greyscale" 1 = "no color" 2 = "residue type" 3 = "icm-combo" 4 = "consensus strength" 5 = "greyscale" <-- current choice

option mute for the icm read command Feb 17 2003
tethers can apply a constant force to atoms under tzMethod = "function" Feb 2 2003
name= s_ option in the read alignment {fasta|msf} command Jan 29 2003
Next( as_ tree ) Jan 24 2003
The tree option allow to select icm-obj-atoms next in the tree.
better atom labels (displaying formal charges and chirality with atomLabelStyle=6) Jan 24 2003 also new option type= for display atom label command
selection for phase angles of chiral centers V_//FC Jan 24 2003 e.g.
 
set chiral a_//ca 3 
unfix V_//FC 
display atom label type=6 

recognizing up/down prolines in IcmSequence (better regularization). Jan 20 2003
new display option: displaying transparent skins, ribbons and sticks. Jan 13 2003 display a_2 ribbon transparent display skin transparent display stick transparent
read from http extended to all platforms (Windows, LINUX, Unix). Jan 13 2003
compress grob [r_minEdgeLength=0.5] Jan 8 2003 a new algorithm to drastically reduce the complexity of 3D meshes/grobs. For example, if you want to simplify the skin surface, do the following read pdb "1crn" make grob skin smooth compress g_1crn 1. # 1A minimal size
write sequence select Dec 21 2002
separater width parameters for different graphics representations Dec 20 2002 GRAPHICS.clashWidth , GRAPHICS.grobLineWidth , GRAPHICS.hbondWidth , GRAPHICS.mapLineWidth.
Sarray( rs [name|residue] ) functions Dec 19 2002 to display residue selections
GRAPHICS.displayLineLabels preference Dec 21 2002 to control the appearence of distance labels.
Grob("distance",as,[as]) function Dec 18 2002
evolutionary-tree display Dec 15 2002
read sequence [group [=s_name] ] Dec 10 2002 read sequences and group them on the fly
clashThreshold parameter Dec 10 2002 When you display clashes, a clash is defined as an interatomic distance below clashThreshold*(sum of van der Waals radii) Not there is a shell parameter clashThreshold = 0.82 which controls the threshold.
write binary, read binary and list binary command and icm-projects Dec 10 2002 The following objects can now be written in one file as binary objects: table grob integer real string iarray rarray sarray. The default file extension is .icb (icm binary) Example:
 
write binary table grob integer real string iarray rarray sarray "file"   
quit 
.. 
icm 
list binary "file.icb" 
read binary "file.icb" 

mutating terminal residues Dec 10 2002 The modify command extended and patched to allow replacement of nucleotides.
mute option in read object Dec 10 2002 Allows to temporarily switch the overwrite mode on
delete option in build and build string Dec 10 2002 Allows to temporarily switch the overwrite mode on
set stereo [on|off] Dec 9, 2002 to toggle the stereo mode from scripts and from the command line.
set table .. [ i_size| auto] Dec 6, 2002 set table will extend, align or shorten a table
appending to arrays or table arrays Dec 6, 2002
 
a //= 1   # appends to an iarray or creates a new iarray  
b //= 1.1 # appends to an rarray or creates a new rarray  
s //= "a" # appends to an sarray or creates a new sarray  
# 
global group table t Sarray(0) "name" Rarray(0) "value" 
t.name  //= "unite"  # adds 1st name element 
t.value //= "0."     # adds 1st value element 
Other new in place operations:
 
i += 1    # or -= 
r += 1.1  # or -= 
s += "string"  

creating a global table from inside a macro Dec 6, 2002 declaration
 
global group table ...  
will create a global table even if you run this command from inside a macro
delete mute .. Dec 5, 2002 temporarily sets l_confirm to no
new selections for GUI Nov 18, 2002 To assist selection of either GUI-selected or all- displayed atoms/residues we added new function: Select([residue|molecule|object]) Also, a_/DD and a_//DD will select residues or atoms, respectively displayed by either atomic or residue representations (previously the same selection was written like this: a_/D | a_//D ) i_out returns the number of selected atoms.
Path(last) and File(last) function No 18, 2002
to return the absolute path of the last icm shell script called. to return the script file name: File(last)
Info(display) function Nov 12, 2002
Info(display) function returns the commands which allow to restore the view. It is used in the writeProject macro.
superimpose in arbitrary order Nov 8, 2002
superimpose os1 os2 I_atomNumbers1 I_atomNumbers2
automated exclusion of virtual atoms from superimpose/Rmsd/Srmsd, the virtual option. No 8, 2002
new tzMethod : tethers/distance restraints Oct 28, 2002 new tzMethod = "function" applies a upper/lower bound drestraint function to tethers. The parameters of the function are controlled by properties of the object to which the tethers are directed:
  • bfactor : local tz weight
  • area : upper bound
  • charge : lower bound

direct extraction of object comments from multiple object file Oct 18, 2002
Namex ( s_MultiObjectFile )
Molecular selections by chemical formula Oct 18, 2002
you can now select molecules by chemical formula, with prefix 'F' e.g. a_FSO4,FNO2
new options for read object and read pdb Oct 16, 2002
 
read object s_file [name=s_newObjName] # to redefine obj name 
read object s_file [delete]            # to temporarily switch off l_confirm  
read pdb s_file [delete]  

move command extended from one molecule to objects and multiple molecules Oct 16, 2002
box/lasso selection of grobs added Oct 14, 2002
alignments: support for title, graphical mask/boxes and comments added Oct 13, 2002
set area rs_ {r_area|R_areaArray} Oct 8, 2002 the Date function to return the current day, month year and time Oct 8, 2002
pdbDirStyle = "PDB website" for easy access to the pdb files. Oct 4, 2002 E.g.
Name( s_root, unique ) to get a unique icm-shell object name . Oct 4, 2002
Max( s_root ) to get maximal numerical suffix value . Oct 2, 2002
File( s_filename, "length") to get the file length . Oct 1, 2002
File( icm_object ) to get the source file name for an object. Sep 28, 2002
Changing alignment coloring and consensus with CONSENSUS_strength . Sep 25, 2002
ICM 3.0 version released. Sep 12, 2002
  • the master view with multiple molecular objects, 3D meshes, sequences, alignments
  • cross-selection via 3D objects, sequences or alignments
  • multiple alignment viewer
  • dynamic pop-up menus for molecules, residues, sequences, alignment 3D meshes, etc.
  • convenient display dialog
  • stereo for LINUX
  • drag-and-drop

better map coloring Aug 25, 2002 maps are colored in more sensible way now. One can color both by relative values with respect to the mean and the standard deviation (the auto option), as well as by absolute map values. Electrostatic maps are colored by default so that the zero potential area is transparent, positive is blue and negative potential is red.
Path(directory) returns current working directory Aug 24, 2002
Saving iarray of atom numbers and selecting atoms by iarray. Aug 24,2002 Iarray ( as_ ) now returns integer array of relative atom numbers in this object. Select ( os_ iarray ) returns selection of specified atom numbers
Selecting atoms and residues by user-defined field values Aug 18,2002
User can define one atom field (see set field and Field ( selection [ i_field ]) ) and three residue fields. Now one can also select atoms or residues using the Select function with arguments looking like this: "u>3." for atoms. For residues "u", "v" and "w" values can be used for three user fields. Example:
 
 Select(a_/* "u>3.") # select residues with 1st user field greater than 3. 

improvement of split grob . Limit size of generated grobs 11,2002
Now you can specify the minimal size of a grob generated as a result of the the split command, e.g. split gg 500.0
extracting grob vertices with certain color Aug 11,2002
Grob( grob { from_R, to_R, from_G, to_G, from_B, to_B }) function which returns a grob with selection of points of the source grob. The selected points will have colors between the RGB values provided in the 6-dim. array of limits (from 0. to 1.).

set grob label s_Label Aug 10,2002
Assign a string label to a grob.
Name( object_type select ) August 10, 2002 Returns string array of names of the selected objects.
Nof( object_type select ) August 10, 2002 Counts the selected objects. Convenient for GUI scripting (see the icm.gui file).
sort objects and sort molecules July 30, 2002 You can now resort objects and molecules by a user field or by molecular mass. See sort objects or sort molecules.
Access to the warning messages from shell: the Warning function July 24, 2002 Example:
 
if Warning() message = Warning(string) 

Permissions for tables: set property args table1 table2 .. July 24, 2002
tables can now have a number of properties: read only, edit the cells only, etc. See the set property command.
Error(string) Text of each error message and its numerical error code July 24, 2002
Now all icm error messages you can extract the full text of the message. Example:
 
if Error errorMessage = Error(string) 
print i_out  # the numerical code of the message 

Remove unwanted characters. Trim( s_sourse, s_listOfOkCharacters ) July 18, 2002
Revert order in arrays July 18, 2002
 
  Iarray( {1 2 3} reverse)  # returns {3 2 1} 
  Sarray( S reverse) 
  Rarray( R reverse) 

Unique atomic ordering for chemical compounds: the make unique command. July 15, 2002
Fast refinement into electron density (the gcMethod preference ). July 15, 2002
explicit sequence type for the Sequence( s_seq [ nucleotide | protein ] ) function. April 22, 2002
option box in make grob map April 10, 2002 It controls addition of the surrounding box to the contoured map.
averaging two matching arrays: Mean ( R1 R2 ) April 9, 2002
minimize loop command and making loop optimization movies April 9,2002 The build model command may not be able to find a perfectly matching loop. Two sorts of problems may appear: the imperfections of the loop attachments and the clashes of the loop to the body of the model. They are resolved with the minimize loop i_loopNumer command.
window={minValue,maxValue} range for color mapping April 8, 2002 Now the display and color commands in which you color a selection by a matching array of values, can be told what range of values the array is clamped to. A single digital value can also be used as a color with the window option. Example:
 
  color ribbon a_/ Bfactor(a_/ simple) window=-0.5//2.  
  color ribbon a_/14 0.8 window=-0.5//2. # single value coloring 
This command will clamp Bfactor(a_/ simple) values which are normally around zero, but may range from large negative values to large values, to the [-0.5,2.] range.
relative B-factor. April 3, 2002 In read pdb now the average B-factor for all non-water atoms is calculated for X-ray objects. The normalized B-factor ( (b-b_av)/b_av ) is now returned by the Bfactor( as_ simple ) function. This is much better for coloring ribbons by B-factor since it only depends on ratios to the average. We recommend to use:
 
 color ribbon a_/ Trim(Bfactor( a_/ simple ),-0.5,3.)//-0.5//3. # or 
 color a_// Trim(Bfactor( a_// simple ),-0.5,3.)//-0.5//3.  # for atoms 
This scheme will give you a full sense of how bad a particular part of the structure is.
save tab- and comma delimited tables. April 3, 2002 s_fieldDelimiter="," or "\t" will be now affecting write table You can also specify it in the command line like this:
 
write table separator="," # or separator="\t", etc. 
write table header separator="," # will save column names 

Atom chirality April 1, 2002 (not a joke!) Atom chirality flags have been introduced. Each atom can have a chirality flag set to:
  • zero - non-chiral center
  • 1 - left topoisomer
  • 2 - right topoisomer
  • 3 - racemic mixture of both isomers
Here is a short summary of new commands and functions associated with chirality:
i/ochirality flag is read from a mol file or ICM object.
set chiral as_ flag set chirality flag to a selection
a_//X[1230LRB] select chiral atoms, e.g. a_//X1 for left atoms, a_//X is equivalent to a_//X123
show as_ shows a new Xi field with the chirality value
l_racemicMC this flag allows to switch chirality in icm global optimization

Dot-separated chemical formula for multiple molecules March 30,2002
Use String( dot, selection ) to get a dot separated chemical formula ( String( all, selection ) will give the total formula).
Setting, storing and extracting user-defined properties of atoms, residues, molecules and objects March 22. 2002
User can now store real properties of atoms, residues, molecules and objects directly in the object.
LevelMax.Nof_fields example
Atom1set field a_//c* Mass(a_//c*)
Residue3set field a_/trp 1. number=2
Molecule16set field a_W Random(1.,10.,Nof(a_W)) number=12
Object16set field a_*. Rarray(Count(Nof(a_*.)))


Version() function to report the license codes. March 12. 2002 The Version function now returns one-character license codes (e.g. " H D ").
 
  Version() 
  Version(full) 

parsing more PDB object types. March 9, 2002 ICM now recognizes more object types as specified by the EXPDTA card of a pdb-file, see Type ( os_ 2 ):
"ICM" ready for energy calculations. Those objects are either built in ICM or converted to the ICM-type.
"X-Ray" determined by X-ray diffraction
"NMR" determined by NMR
"Model" theoretical model (watch out!)
"Electron" determined by electron diffraction
"Fiber" determined by fiber diffraction
"Fluorescence" determined by fluorescence transfer
"Neutron" determined by neutron diffraction
"Ca-trace" upon reading a pdb, ICM determines if an object is just a Ca-trace.
"Simplified" special object type for protein folding games.

Passing arguments to an ICM script: icm -a string option March 8, 2002 You can initialize s_icmargs string with the icm -a 'args' option. Example:
 
% icm -s -a 'a1.sdf a2.sdf' 
 s_icmargs 
 a1.sdf a2.sdf 
 args = Split(s_icmargs) 
 for i=1,Nof(args) 
   print args[i] 
 endfor 

String( { as_ | rs_ | ms_ | os_ } i_number ) March 1, 2002 Function String ( selection ) is further extended to print i-th element of a selection. It is convinient in scripts. For atoms it will also show the full information about an atom, rather than only the ranges of atom numbers.

Detecting if pmf parameters (Nof(pmf). Feb 16, 2002 Nof(pmf) function reports the number pmf types.
Converting selections to strings. String( as_ | rs_ | ms_ | os_ ) function extended. Feb 14, 2002 Now you can make a selection at any level and the String function will return a selection string which can be stored in variables, arrays and tables. Note, that the chemical formula is now returned by the String( all as_ ) or String( dot as_ ) function (keyword may be the last arugment as well).
Accumulating numbers of visits in the compress stack command. Feb 12, 2002 Now when you compress the conformation stack, the number of visits after the compression will be the total number of visits from all.
"Ca-trace" objects. Feb 9, 2002 Frequently Ca-trace-only objects in PDB create problems in automated database analysis scripts. Now this type is identified upon readin and it can be checked with the Type( a_ 2 ) command. Also if you try to convert the "Ca-trace" object to the ICM type, the convert command returns an error. If the object is mixed and contains both all atom models and Ca-traces, the Ca-traces will be skipped.
improvements of the convert command. Feb 6, 2002 Previously when the convert command was applied to an object with missing atoms in the backbone, the convert command had problems and generated ICM objects deviated from their pdb-templates significantly. This problem is now fixed. Also, ICM reports the deviation from the template and it is returned in the r_out command.
Unification of the a_// and a_1.// selections. Feb 12, 2002 There was a discrepancy between short forms of selections of all residues and all atoms. Now for the selections have the same level (e.g. a_// or a_1.// select all atoms in the current or the first object, respectively)
setting number of visits and energy for stack conformations. Jan 29, 2002 You can now specify the number of visits and the energy manually in the store conf command.
writing sequence groups into fasta/msf files. Jan 27, 2002 groups of sequences can be now saved or shown to fasta or msf files.
uncompressing bzip2 on the fly. Jan 25, 2002 Seemless treatment of the .bz2 compressed files is added. E.g.
 
 read sequence "aaa.seq.bz2" 
 364255 sequences loaded: 

setting b-factors at residue level. Jan 20, 2002 Previously b-factors were always assigned at the atom level. Now, if you have a real array of residue energies (e.g. returned by the Energy(rs_) function, you can assign b-factors at the residue level with a simple command:
set bfactor rs_ R_resBfactors
reading .sdf .mol files Jan 18, 2002
Features from multiple sdf files are now extracted into the S_out string array upon reading. E.g.
 
 read mol "aaa.mol" 
 logp = Rarray(Field(S_out,"logp",1,"\n")) # rarray of logp values 
 can_numbers = Trim(Field(S_out,"cas_rn",1,"\n"))  

selecting water Jan 17, 2002
Selecton a_W selects both water molecules and deuterated waters. This may now replace less rigorous a_w* expressions in macros. E.g. delete a_W This selection is equivalant to the longer Mol( a_/hoh,dod ) expression.

selecting aromatic atoms. Jan 15, 2002
Selection a_//R will select aromatic atoms. It selects all heavy atoms connected by aromatic bonds and hydrogens attached to them.
moving selections from one object to another Jan 11, 2002
Frequently a selection of atoms, residues of molecules need to be tranferred from one object to another. Now there is a function Select( selection, os_targetObject ). Example :
 
 read pdb "2ins" 
 copy a_  "bb" 
 aa = a_1.2,4,5//c* 
 bb = Select(aa,a_bb.)  # moves the selection 
This is useful in macros.

surface energy Jan 5, 2002
The surface energy can now be calculated using grid potentials.
preference GRID.gcghExteriorPenalty Jan 3, 2002
van der Waals grid energy outside van der Waals grids "gc" and "gh" used to be positive to push molecules back to the grid box. Now there is a preference: GRID.gcghExteriorPenalty which can be set to "repulsive" (the previous mode) or to "zero" to have no field outside the box.
zero-size rarrays and iarrays can be created. Jan 1, 2002
Rarray(0) and Iarray(0) now allow to create arrays of zero size.
convertObject macro extended to convert a selected set of molecules Dec 26, 2001
s_skipMessages allows to suppress printing of selected error and warning messages Dec 15, 2001
s_skipMessages is new shell string variable which contains a list of error/warning codes which you want to suppress in your icm output. Despite suppression of the message, the error is still generated and can be returned with the Error(string) function in i_out . Example:
 
 s_skipMessages = "[234][5243]" 


Macro to write sequences in the alignment order. Nov 28, 2001 Frequently you may want to renumber your object (which may contain omitted loops and ends) according to a full protein sequence. Now you can do it automatically with the
align number ml_ seq_
command.
Macro to reorder sequences in the alignment in the read order. Nov 26, 2001
The alignment changes the input order of sequences. To keep the order the same in an alignment, you may now use the
reorderAlignmentSeq( ali_ ) macro from the _bioinfo file.
See the Alignfunction for more details.
Macro to write sequences in the alignment order. Nov 24, 2001
A tiny macro wrSeqAli( file _macro ) allows to write sequences in the alignment order.
Type( seq_ 2 ) : type of a sequence Nov 22, 2001 find out the sequence type with the Type( seq_ 2 ) function.
normal distribution : Random( mean std N "gauss") Nov 14, 2001
Generate an array with normally distributed numbers with the Random() function, e.g. Random( 0., 1., 10, "gauss")
set grob reverse : inverting normals in grobs, Nov 9, 2001 Permanently change direction of normals of one or all grobs allows to change direction of lighting as well as influence the sign of Volume(grob). Now one can:
 
 set grob reverse # all grobs 
 set g_ reverse   # a specific grob 

full pairwise alignment with arbitrary positional weights, Nov 8, 2001 We introduced a new command to set custom sequence residue areas (e.g. set area 1crn_m {0.3,1.,1.3,0.8,..} ) . This 'areas' can be used by the Align(seq1,seq2,area) function for weighted pairwise alignment. Example:
 
 set area 1crn_m 0. 
 set area 1crn_m Random(0. 2. Length(1crn_m))  


New macros, Nov 7, 2001
icmCavityFinder to find closed cavities
icmPocketFinderto find open cavities


potential of mean force , Nov 4, 2001
A new energy term "mf" is added. It allows to establish interactions according to pairs of atoms types. This term can be used both for chemical superposition and pharmacophore modeling (e.g. you know several ligands to the same receptor and want to derive the pharmacophore model), or for scoring the docking solutions in virtual ligand screening. Example:
 
 read pmf "ident.pmf" 
 buildpep "his ; ala trp" # two molecules: his and ala-trp 
 fix v_//omg 
 montecarlo "mf"  

read pdb sequence chain case, Nov 2, 2001
Originally PDB was case insensitive. However, in some entries it is used to specify different chains, e.g. A and a in 1fnt . ICM now copes with this misdemeanor of PDB.
~/.icm/user_startup.icm file, Oct 28, 2001
font control in GUI terminal: Oct 25 , 2001
icm.cfg file can now be define the font size in the terminal window. The specification may look like this:
 
 XTermFont *-fixed-medium-*-*-*-24-*             

gui simple: keep the original terminal window and start gui , Oct 22 , 2001
Previously the gui command under Unix/Linux disabled the original terminal window and created a new one inside the GUI window. This new window had problems with font controls. Now you can keep the original window and start GUI.
 
% icmgl 
 gui simple 
   # or 
% icmgl -G 

Distance(alignment1 alignment2 exact) , Oct 21, 2001
a measure of differences between two alignments (see Distance( ali,ali,exact ) ) to evaluate the influence of alignment parameters on alignments, or to evaluate differences between a trial alignment and a 'golden' standard.

display origin , Oct 19, 2001
allows to display coordinate frame. Also: undisplay origin
set v_ reverse , Oct 18, 2001
modify internal coordinates while keeping the remote part of the molecule unmoved
copy a_ tether , Oct 18, 2001
the copy command is extended to allow simultaneous copying and imposing tethers to the copy. Also, now the default name of the copy-object is a_copy.
refineModel macro, Oct 17, 2001
refineModel macro from the _macro file allows to refine models resulting either from homology model (in this case it is supposed to be tethered to the target object) or any other source. It performs iterative energy refinement with appropriate annealing of the tethers. If you only want to improve the predicted side chains, use refineModel 0 yes
a_//Z selection for tether-target atoms, Oct 18, 2001
Previously one could select tethered atoms ( a_//T ) but not the atoms to which this atoms are tether . Now it can be done with the a_//Z selection.
montecarlo reverse, Oct 16, 2001
a new reverse option of the montecarlo command allows to make a more intellegent random move of a molecule fragment surrounded by other static molecules. It prevents the movement of the whole molecule if a backbone angle at N-terminus is changed.

Average gradient amplitudes of residues Oct 14, 2001
Gradient( rs_ | as_ ) now returns not only the array of gradient lengths for atoms ( e.g. Gradient(a_//* ) ) but also returns averaged gradient lengths for each selected residue if the selection is of residue level (e.g. Gradient( a_/* )). This can be used to color the ribbon or to direct a montecarlo procedure.
Easy coloring of 3D models by space averaged alignment strength. Oct 8,2001
see ribbonColorStyle
 
 ribbonColorStyle = "reliability" 
allows to color a ribbon model by alignment strength with 3D gaussian averaging of the conservation signal. selectSphereRadius controls the radius of the averaging.
Reading NMR entries with CRYST data .
Some new NMR entries in PDB have illegal CRYST ORIGX etc. data. Previously ICM complained about them. Now, it the experiment is NMR, the crystallographic symmetry fields are skipped.
Sampling with probabilities according to b-factors . Oct 5,2001
Now you can use a new bfactor option of the montecarlo command to sample 'hot' parts of structure with higher probabilities. The relative frequences are taken from the b-factors of the atoms belonging to the mc-variables. Example:
 
 buildpep "ala his trp glu"  # default b-factor=20 
 set bfactor a_/2  1000.     # make 2nd his hot 
 montecarlo bfactor 
To preserve the old bfactors, save them before the simulation and restore after. E.g.
 
 b_old = Bfactor(a_//*)   # save  
 .. 
 set bfactor a_/10:20 200.   
 montecarlo bfactor 
 .. 
 set bfactor a_//* b_old  # restore 


Detection of missing fragments in pdb-files. Oct 3,2001
ICM detects chain missing residues according to the differences between SEQRES sequence and the residues with coordinates and returns the total number of missing residues in the i_out system variable. E.g.
 
 read pdb "1amo.a/" 
 make sequence a_1.1  # sequence 1amo_1_a extracted 
 if(i_out>1) then 
   read pdb sequence "1amo"  # sequence 1amo_a read 
   a=Align(1amo_a 1amo_1_a) 
   build model 1amo_a a_1.1 a   # patch the missing fragments 
 endif 

Renumber residues in fragments. Oct 3, 2001 previously only renumbering of the whole protein chain was allowed Example:
 
 read pdb "1crn" 
 align number a_/10:20 101  # renumber a fragment starting from 101 

Total masses of residues, molecules, objects. Oct 3, 2001
The same extension as the one below was applied to the Mass function (e.g. Mass( a_/* ) returns masses of residues.
Total charges of residues, molecules, objects. Sep 14, 2001
Charge( os_ | ms_ | rs_ | as_ [formal | mmff] ) now returns the array of total charges for each selected unit (e.g. Charge( a_/* ) returns an array of total charges of each selected residue)
Numbers of atom arrays in residues, molecules, objects. Sep 13, 2001
 
 Nof( a_*.* atom ) # returns an iarray of number of atoms in each molecule 

Cheminformatics: Modifications of non-ICM objects Aug 10, 2001 Example:
 
 read mol "scaffold.mol" # contains r1 atoms 
 read mol "bblocks.sdf"  # contains blocks with attachment points atoms 
 modify a_1.//r1 a_2.//a # build a molecule 
 build hydrogen 
 set type mmff 
 set charge mmff 
 convert 

Modeling: tzMethod = "weighted" to use b-factors of atoms for weighting tethers. Aug 7, 2001 method of imposing and calculating tethers. The three alternatives are the following
  1. "simple" : equal weight tethers to 3D points (the old one)
  2. "weighted" : individual weights are calculated from atomic B-factors by dividing 8*PI2 by the B-factor value. All the weights additionally are multiplied by the tzWeight shell parameter.
  3. "z_only" : tethers are imposed only in the Z-direction towards the target Z-coordinate. These type of tethers allow to pull a molecule into a z-plane. This may be useful if you are trying to generate a flat projection of a three-dimensional molecule.

Modeling: tzMethod = "z_only" to tethers to the z-plane of other atoms. Aug 1, 2001
Distance restraints improvements. July 17, 2001.
Target distance allows to have a target not in the middle of upper and lower bounds.
v_//T and v_//F selections
New maps and binding site predictions- Sep. 01.
Two commands have been extended:
  • make map potential (no terms) . - calculates new map m_atoms. Can be used on pdb-objects
  • make grob map exact r_contourLevel . - allows to specify absolute (exact) contouring level

A new map with gaussian envelope around atoms can be quickly built for ICM and non-ICM objects and used to find semi-closed pockets. If contoured at 0.3 it gives
 
 buildpep "his arg" 
 make map potential Box( a_ 3.) solid 
 make grob m_atoms 0.2 exact  # contours near vw-raduis. 
 display cpk 
 display g_atoms 
To identify pockets: try different contouring levels and split the grobs.
bug fixes:
modify phase branch convert a_ "new name"

Prev
intro
Home
Up
Next
icmhistory

Copyright© 1989-2004, Molsoft,LLC - All Rights Reserved.
This document contains proprietary and confidential information of Molsoft, LLC.
The content of this document may not be disclosed to third parties, copied or duplicated in any form,
in whole or in part, without the prior written permission from Molsoft, LLC.