Jul 1 2004 |
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
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 styleThe 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)
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_arrayWithNewStickRadiithe 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
New funcitons for BIOMT transformations. Dec 15, 2003 The following functions can generate all BIOMOLECULES of an object:
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= 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
Name family of functions
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:
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 formatsICM 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:
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
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 elementOther 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:
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
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 coloringThis 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 atomsThis 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:
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.
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 ):
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 selectionThis 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
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 bfactorTo 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
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:
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_atomsTo identify pockets: try different contouring levels and split the grobs. bug fixes: modify phase branch convert a_ "new name"
|
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. |