set name chem_array s_name [[index=]I_index]assigns specified names to each element of the chem_array . This names can be extracted with the Name( chem_array ) function.Example:read table mol "drugs.sdf"set name drugs 2 "aspirin"set name drugs.mol 2,25 "aspirin","cocaine" #n=Nof(drugs)set name drugs.mol Sarray(n,"drug")+Count(n)set name drugs.mol drugs.synonimIn the chemical tables there is a special column 'NAME_' to acceess chemical names. Normally this column is created automaticallycreated upon reading an .sdf file.You can sort, search in the column. All modifications made the 'NAME_' column willbe automatically synchronized with chemical names (and vice-versa)However, if the _NAME column is created manually, to convert it into a legitimate and synchronizeable name of a chemical one needs touse the set name command.Example:read table mol "t.sdf" name="t" # NAME_ is created automatically. It will be synchronized.t.NAME_[1] = "aspirin"print Name( t.mol[1] )setting names to chemical compounds in an array or a table
set name seqarray S_names Assigns names to elements of sequence parray. If array of names S_names is specified, it should have the same size as the sequence array.Setting the current object
set object [ os_newObj ] [stack]
assigns the current object status to the specified object. Switches to the next one by default. Option stack means that the in-object-stack will be extracted from the object into the shell. It is equivalent to the load stack object command.Examples: set object a_crn. # set it to object crn set object a_1. # set it to the first object set object # switch to the next or alternative set object a_2. stack # switch and extract its built-in stack See also: set type os_ s_type .
set occupancy
set occupancy as_select r_NewOccupancy
sets occupancy of selected atoms to or by a specified real value between 0.0 and 1.0
Examples: set occupancy a_/2:5/!ca,c,n,o 0.5 set occupancy a_/2:18/ca,c,n 1.
set plane
set plane [move] [ i_plane ] [ on ] [ name= s_planeName ]
toggles the specified graphics plane on and off. Up to seven planes can be set. Optional name is assigned to a plane. It is a convenient way to operate with complex composite images. Every image is assigned to a certain graphical "plane" when displayed. Different parts of the image can be assigned to different planes. For example, plane 1 may contain wire representation of molecule1, plane 2 its molecular surface ("surface") and plane 3 molecule2 in "xstick" representation. It can be achieved by pressing "F2" and "F3" (which are aliased to set plane 2 and set plane 3, respectively) before displaying surface and xstick respectively. Now by pressing "F1" , "F2" and "F3" one can toggle these three screens (or planes) to display any combination of them. It is much better than undisplaying and displaying them directly, especially for representations requiring serious computations like surface and skin . The main modes of the set plane command:
- set plane 2 : if plane2 is 'off', make current and switch it 'on'; if it is 'on', switch it off.
- set plane 3 on : switch the plane on, but do not change the current plane
- set plane 4 name="homologue" : just assign name to the plane, no switching
Examples: build string "se ala ala" # create a peptide set plane 2 # F2 with the cursor in the graphics window display surface set plane 3 # F3 with the cursor in the graphics window display xstick set plane 2 # switch off the surface set plane 2 # switch the surface back on set plane 3 # switch off the xstick set plane 3 # switch the xstick back on set pmf
set pmf
I_icmTypes [energy=
r_eDepth(-10.)] [margin=
r_maxDist(8.)] [function=
i_power(2)] [delete] this command sets the specified potential with the
r_eDepth value at distance = 0. and 0. at distances beyond r_maxDist for the
iIcmType :
iIcmType interactions for the types specified in the
I_icmTypes array. The functional dependence is defined by the function argument (the default is a quadratic function). The function is: E = r_eDepth *( 1. - x/r_maxDist ) ^ i_powerFor example if you want atoms of type 8 to attract each with a constant force (and linear dependence of the energy as a function of distance) use this:set pmf 8 function=1 deleteArguments and options:
- I_icmTypes the pmf force field will be assigned between pairs of atoms of the same type from the specified list. We usually prefer to use unused hydrogen types such as 7,8,9,28,29,32:40,44:48 . This will still make the artificial atoms visible (in contrast to the virtual atoms ) and will not affect any of the "real" atoms. Use set type as iType command to set the artificial typesCheck the icm.cod file for the available types.
- delete : makes sure that the specified types do not interact as van der Waals spheres, and incapacitates those atom types. See the suggested types above.
- energy = r_eDepth . see formulat above. The value of energy when two atoms of specified type are at the zero distance
- function = i_power . The exponent of the functional dependence above.
- margin = r_maxDist . The interatomic distance at which the "mf" term becomes zero.
Example:build smiles "C1=CC=CC=C1.C1CCCC1"set type a_//h?1 8set type a_//h?2 9set pmf 8,9 margin=6. energy=-5. function=3 deletedisplaycolor a_//C8 greencolor a_//C9 magentashow energy "vw,mf"See also:
- pmf
- show pmf
- read pmf file # e.g. ident.pnf in s_icmhome
set property
set property [ only ] [ on off ]
icmShellObject1 ..
prop1 prop2 ..
ICM shell objects of the following types: integers, reals, strings, sequences, alignments, profiles, maps, matrices, tables, grobs, iarrays, rarrays, sarrays have an array of property elements. This elements can be set to on and off from the shell the they influence visibility, edit-property and some other properties of a variable in the GUI environment.
Allowed property elements: bit_name description command
s indicates that the string contains ICM commands and is a script delete protects from the delete command display
T_ activates table actions such as double click, cursor and lockfield T_ makes the content of individual cells of a table un-editable factor T_ indicates that the table is a table of structure factors html s_ indicates that the string is an HTML document. It may contain internal links to scripts, images and slidesshow makes object name invisible in the Workspace, is off for system variables write indicated that object will be written in write binary all command. This option is 'on' by default.smiles indicated that elements of an sarray will be treated as smiles string and depicted on-the-fly in the table.
Option only resets the property mask to 0 before setting the specified bits. Example: ii = 1 2 2 3 group table t 1 2 3 "a" 3.3 3.3 4.4 "b" set property t only # clean up set property t ii write delete field off # protect the content More examples:s2 = "read pdb \"1crn\" delete\ndisplay ribbon yellow\n"set property command s2 # s2 will appear in Workspaceset table column options
set property
T_column field [onoff] [only]
- field allows one to edit cells
- fix freezes a column to always keep in sight during horizontal scrolling through a large number of columns
- new marks a column as having a new content (a flag to update a view)
- plot : converts cell-vectors into in-cell plots (e.g. add column t Matrix(3); set property plot t.A )
Note: to hide and show columns use set format
T_column show onSee also: set property chemical view, set formatset chemical view options
set property chemical view
chemicalColumn s_chemicalProperies [only] [off]sets various chemical view options for the molecular column of the ICM table.Each character in
s_chemicalProperies codes single chemical view option.
- "H" : Hetero-atom hydrogens
- "T" : Terminal hydrogens
- "S" : Atom stereo labels
- "X" : Do not show explicit hydrogens
- "A" : Aromatic rings"
- "C" : Show 'chiral/racemic' flag
- "3" : Do not show 3D as 2D
- "U" : Unique atom classes
- "N" : Atom numbers
- "F" : Full atom names (if any)
- "M" : Monochrome atom labels
- "W" : Don't show atom text labels. Colors half of the atom's adjustment bond with the element color (Like wire in 3D)
- "R" : Don't show atom text labels. Draw color square instead.
Exampleadd column t Chemical("CC(=O)OC(C=CC=C1)=C1C(O)=O")set property chemical view t.mol "HM" # monochrome labels + hetero atom hydrogensset property chemical view t.mol "M" off # turn off monochrome set property chemical view t.mol "A" # turn on aromatic ring view set alignment view options
set property
alig i_mask [only] [off]sets various view properties for the alignment:
- 512 : do not show consensus line
- 1024 : display tree
- 2048 : show alignment profile
- 8192 : do not show sequence offset
- 65536 : do not show alignment body. Useful if you want to export profile only.
- 524288 : show ruler
Multiple values can be combined used + operator.Example:set property myAlig 2048+65536 # show profile onlyset randomize : reset the randomSeed
set randomize
i_NewRandomSeed resets the random seed to the new value. If you run any procedure or function for the first time, it will show you the value of randomSeed . This value can be reset at any time later with the above command.
Example: Random(1,10) Info> randomSeed = 1055822291 4 set randomize 1055822291 Random(1,10) 4 set resolution
set resolution
os r set resolution of selected objects to a specified real value or individual values from the
R_NewResolution array.To assign individual resolution, provide a real array with resolutions for each object.Example:read pdb "1crn"print Resolution( a_ )[1]set resolution a_ 9.9print Resolution( a_ )[1]See also: Resolution
set stereo
set stereo [
i_plane ] [ off ] [ name=
s_planeName ]
this command allows one to reset the stereo mode from a command line or scripts. See also: GRAPHICS.stereoMode
set sstructure backbone
set
rs s_SecStructPattern assign the specified local secondary structure to the selected residues of an ICM-type object. Note that this command
changes the conformation of the selected residues, in contrast to the command assign sstructure .The
s_SecStructPattern string (e.g. "HHH___EEE" ) can be shorter than the number of selected residues. In this case the pattern will be applied multiple times.For example:set a_/A "E" # will set all residues to an extended conformation
The phi,psi angle values are changed according to the following code: ss_code phi,psi angles description _ -179.9,179.9 extended conformation E -139.0,135.0 antiparallel beta strand e -119.0,113.0 parallel beta strand H - 62.0,-41.0 alpha-helix G - 49.0,-26.0 G-helix (3/10) I - 57.0,-70.0 I-helix P - 78.0,149.0 poly-proline 2 helix L + 57.0,+47.0 Left-Alpha
Examples: build string "LLELGQAPGALHRVPLSRRESLRKKLRAQGQLTELWKSQNL" display ribbon residue labels set a_/2:8 "H" # all 6 residues will be assigned to a helix center set a_/1:12 "HHHHHH__EEEE" center set a_/A String("H", Nof(a_/A) ) center set a_/A String("_", Nof(a_/A) ) center # ONLY UNFIXED PHI,PSI VARIABLES ARE SET, SO pro IS BENT! set a_/A String("G", Nof(a_/A) ) center set a_/A String("E", Nof(a_/A) ) center
set sstructure to sequence
set sstructure
seq s_SSstring i_from i_to
set secondary structure
s_SSstring to the specified sequence. If
s_SSstring is an empty string, the secondary structure definition is removed.
Examples: a=Sequence("LLELGQAPGALHRVPLSRRESLRKKLRAQGQLTELWKSQNL") # 1st seq. b=Sequence("PLLEATQIKVPLKKIKSIREVLREKGLLGDFLKNHKPQ") # homologue set sstructure a "HHHHHHHHHHH______EEEEEEEE_____HHHHHHHHH__" l_showSstructure = yes show Align(a b)
set sstructure
seqarray S_sstructuresset secondary structure strings
S_sstructures to elements of sequence parray. Array sizes should match. set stack properties
set stack [
os] loopfast [off] set stack [
os] energy [
from to]
R_NewEnergies set stack [
os] number [
from to]
I_nVisits set stack [
os] all [
from to]
I_nTotalVisits resets stack display parameters, energy values, or number of visits, or total number of visits, for conformations stored in the stack . If the object is specified, the internal object stack is modified.New energy values may be useful for the subsequent sort stack command. set stack align [
from to] will set the total visits to 1 and will set the visits to 1,2,3,...This setting is convenient since now the visits can be used as and an ID of a conformationwhile the total visits at 1 is helpful for future compression (the compress stack willadd up those 'ones' into the total number of conformations compressed into one bin.If
from and
to are not specified, they are assumed to be 1 and Nof(stack) .
The stack display parameters.- loop equivalent to the loop option in the display stack command, it replays the stack until interrupted with the ICM interrupt.
- fast option prevents interpolation between stack conformations (the default is 20 interpolated frames)
See also:
- store conf command
- Nof( stack ) function
- sort stack
- compress stack
- compare command
- display stack
set swiss
set swiss
ms_proteinChains S_swissprotCodes set swissprot name (like IL2_HUMAN ) to one or several chains selected by
ms_proteinChains . To clear it just set it to an empty string.E.g.build string "AAAAAAA"set swiss a_ "SILLY_HUMAN"Name(a_A swiss)[1] SILLY_HUMANset swiss a_P "" # clear all previously set swiss IDsWarning: Uniprot/swissprot may change uniprot ids and they become obsolete.Swissprot IDs are at any given time unique but perishable, while the accession numbers AC are not unique (many different ACs for the same entry) but permanent. See also: Name(
ms_ swiss ) function.
set crystallographic symmetry group
set symmetry
os_object R_6cell s_symgroup i_symgroup [
i_NofChains ] set symmetry
os s_crysym_card # contains "group N Z a b c alpha beta gamma"
assigns symmetry and cell parameters to selected object(s). The combined crysym record is oftenavailable in exports.The set of parameters is be compatible with that provided in
CRYST1 PDB card:
- R_cell should be a 6-component real array, containing values of A, B, C, alpha, beta and gamma.
- s_symgroup is a string description of the space group. To check validity of the s_symgroup, use the Symgroup( s_symgroup )} function, which will return a number from 1 to 230 for a valid space group name. Fast Fourier transformations are currently supported for s_symgroups "P 1" and "P 21 21 21", but all the other commands ( make map cell transform etc.) will work on any space group defined in the International Tables for Crystallography.
- Z-value, the number of polymer chains in a unit cell, is extracted from the last integer parameter or assigned automatically according to the number of transformations of the symmetry group.
Examples: build string "se ala ala ala" name="z" # suppose this is my modified crambin set symmetry a_z. 40.96 18.65 22.52 90.0 90.77 90.0 "P 21" set biological symmetry to an object
set symmetry [append]
ms R_12N_transformations sets biological symmetry to selected chains of the object.The biological symmetry is applied to
all the molecules belongingto a certain chain. For that reason it is recommended to use the molecular selection by chain (e.g. a_Cabc for chains a,b,c ) and use the set chain command if required to assign one chain character to a group of molecules. By default, the previous biological symmetry will be overwritten. The append option tells the program to add a new biomolecule record.Example: read pdb "2ins" set chain a_a,b,zn "A" set symmetry a_CA Transform( a_ )[13:24]See also:
- makeBioMT macro in the _macro file
- Nof( os_1 "bio") # number of biomolecules
- Select( os_1 "bio" i_Biomol ) # molecules of i-th biomol.
- Transform( os_1 "bio" i_Biomol ) # transformations
set symmetry to a torsion
set symmetry 1
vs assigns rotational symmetry to selected variables. This symmetry will be used to automatically transform the value of a torsion angle into [ -180.0/symmetry , 180.0/symmetry ] range.
Options are the following:
- exact - impose exact symmetry (methyl groups=3, xi2_phe=2)
- heavy - impose exact symmetry as if there are no hydrogens
- pseudo- impose pseudo symmetry (no_hydrogens + xi2(his,asn,gln))
set table
set table t_theTableYouWantToWorkWith
assigns the current table status to the specified table (similar to set object
os_ to set the current molecular object).
set energy or penalty terms
set terms [ only ] [
s_termsString ]
set energy and/or penalty terms for further energy calculations. Each term has a two-character abbreviation. The terms are appended to the string unless option only is specified. The final energy-term string is returned in the s_out string
Examples: # vacuum terms, solvation and entropy set terms only "vw,14,hb,to,el,sf,en" set terms "tz" # add tethers to the list
set selftether
set selftether [
as [only] ] ["z""box""xyz"] [tether
R_xyzM_xyz] # copy x,y,z to selftethers set selftether delete [
as ] sets selftethers status and type ("xyz" by default, or "z", or "box"). Also, in the 'xyz' mode it sets the target coordinates for the specified atoms. These positions then can be used as selftethers. If the type of tether is "box" the energy calculation with the term ts needs the box defined by the TOOLS.tsShapeDatavariableOptions:
- only : delete all selftethers in the object and the set the specified ones
- tether : move destination coordinates from regular tethers to selftethers
- "box" : set ts type to "box" and use box definitions from TOOLS.tsShapeData
- "z" : set ts type to "z" and use atom specific z-coordinate of the destination atom or array
- "xyz" : set ts type to the standard spherical type controlled by 3 coordinates
Example:build string "AHWK"TOOLS.tsToleranceRadius = 3.TOOLS.tsWeight = 0.1set selftether a_//c* set selftether a_//n* only # clears the previous ones from object and sets nitrogen selftethersTOOLS.tsShapeData = Box( a_//o* 2 ) set selftether a_//o* "box" # clears the previous ones and sets nitrogen selftethersset selftether a_/lys/cz* "z" 0., 0., 30. # clears the previous ones and sets nitrogen selftethersdelete selftether # delete all selftethers in the current objectSee also:
- selftether
- delete selftether
- "ts" term
- TOOLS.tsToleranceRadius and TOOLS.tsWeight parameters.
set tether
set tether [ align
ali ] [ exact ] [ only ]
as_atomsToBePulled [
as_atomTargets ] set tether residue
rs_toBePulled rs_targets # no residue alignment is forced, residues are equivalenced sequentially set tether
P_atompairs [
os_ObjToBePulled }
this command sets tethers restraining atoms of ICM-object (selection
as_atomsToBePulled) to corresponding atoms of another object (
as_atomTargets). The
as_atomTargets selection may also contain only
one atom, in which case all
as_atomsToBePulled will be tethered to a single atom. If the second argument is not specified, all the
as_atomsToBePulled atoms are tethered to the origin (the 0. 0. 0. point). Option only signals that all previously imposed tethers must be deleted. The
residue alignment is controlled by the alignment options . If option residue is specified, it just takes the selected residue pairs in sequential order.If parray of atom pairs is specified (it can be created with the make distance command or with the GUI distance tool) the tethers are picked from suitable atom pairs of the specified
P_atompairs object. If the explicit tethered objectis not specified, it is assumed to be the current object .
In a residue pair the only the backbone atoms such as ca,c,n,o,ha,hn are tethered with the exception of
- identical residues: all atoms are tethered
- F with Y (all but the hydroxyl)
- D with N
- E with Q
The number of imposed tethers is saved in i_out .
See also: superimpose, alignment options, minimize tether.
Example (try this series of commands in one continuous session): build string "se glu ala" # a simple object set tether a_/2 # tether to the origin display tether wire virtual minimize v_//?vt* "tz" delete tether build string "se gln val" name="gv" # another object set tether a_2.//ca,c,n a_1.//ca,c,n exact # tether set to set display tether wire a_*. only minimize v_//?vt* "tz" delete tether set tether a_2.//ca,c,n a_1./1/ca # tether to a single atom display tether wire minimize v_//?vt* "tz" set tether append: Extending the identified substructure with neighboring atoms
set tether append [ all ]if maximal common chemical substructure was identified using the find molecule commandand tethers were imposed between the matching atoms, the initial set of tethered atoms canbe further propagated into the neighboring atoms. Without option all only suitable hydrogensare added to the initial match. With the all keyword heavy atoms will also be added.Note, that any two heavy atoms next to a tethered pair are considered a match and will be paired.Example: build string "H" rename a_ "his" build string "W" find molecule sstructure tether all a_his.//!h* a_//!h* set tether append a_ # add single hydrogens set tether append all a_ # add heavy neighbors
set atom type
set type [ mmff ] [
as i_type ]
assigns the specified atom type (see icm.cod or show atom type [mmff] ) to the selected atoms. Both the ICM- and the mmff- atom types may be manually adjusted to correct the automated set type mmff command. set type property : contributions of atoms types to the property grids.
set type "apolar""atomic""membrane"
R_sf_density_values_in_kcal_A2 reset the "atomic solvation" or "apolar" surface based implicit solvation energy densities.See also: surfaceMethod preference, icm.hdt file containing the default icm values. Example:surfaceMethod = "atomic solvation"x = 0.0080,0.0220,-0.0900,-0.2240,-0.1760,-0.0630,-0.0350,-0.2240,-0.0960,-0.1160,\ -0.0120,-0.0510,0.0080,0.0080,-0.0630,-0.0900,-0.0900,-0.1760,-0.0900,\ 0.0,0.0100,0.0100,0.0100,0.0100,0.0100set type "atomic" xset type property : contributions of atoms types to the property grids.
set type property
R_upToSevenWeights [only] [
I_listOfAtomTypes ] This command defines the contribution of