Iterate

From PyMOLWiki
Revision as of 00:59, 23 February 2005 by Tree (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

DESCRIPTION

  "iterate" iterates over an expression with a separate name space
  for each atom.  However, unlike the "alter" command, atomic
  properties can not be altered.  Thus, "iterate" is more efficient
  than "alter".

  It can be used to perform operations and aggregations using atomic
  selections, and store the results in any global object, such as the
  predefined "stored" object.

  The local namespace for "iterate" contains the following names

     name, resn, resi, chain, alt, elem,
     q, b, segi, and type (ATOM,HETATM),
     partial_charge, formal_charge,
     text_type, numeric_type, ID

  All strings in the expression must be explicitly quoted.  This
  operation typically takes a second per thousand atoms.

=USAGE

  iterate (selection),expression

EXAMPLES

  stored.net_charge = 0
  iterate (all),stored.net_charge = stored.net_charge + partial_charge

  stored.names = []
  iterate (all),stored.names.append(name)

SEE ALSO

  Cmd iterate_state, Cmd alter, Cmd alter_state]