On Sat, Dec 7, 2013 at 9:01 PM, Whitwell, George <[email protected]> wrote:
> I'm trying to get bond lengths from a collection of models from a
> Gaussian saddle point exploration (Cl Br exchange by SN2). I can get a
> single distance with the measure command (although not with the distance
> function, so far), but I've been unsuccessful in finding the key to getting
> the same value from the full set. I'm hoping for an equivalent to
> "getProperty modelInfo.models.energy", which returns the Gaussian energy
> for all 98 frames.
>
>
>
> I've found that "measure ({1}) ({2})", but not "measure ([1]) ([2])" will
> activate the desired measurement, but only in model 1.1. I can trace the
> atom pairs through the models by incrementing in a loop, if that's
> necessary. The analogous "x=distance [1] [2]", "x=distance ({1}) ({2})",
> "x=distance {1} {2}" and similar stylings and trial and error with the * in
> measure and distance statements produced only errors. Syntax or script
> help will be appreciated.
>
Atom selection can be confusing.
The commands such as
select, display, hide, restrict
that just take a single atom expression as an argument need no parentheses
or braces:
select atomno=3
select _H
Commands that take a variety of arguments need ( ) or { } around the
parameters that are atom sets:
if ( {atomno=3}.length > 1) ....
color {_H} red
measure {_C} {_O} allConnected
Here ( ) and { } are equivalent, but I recommend { }.
The constructions ({...}) and [{...}] are very special. They are "bit sets"
-- very concise ways of describing subsets
of atoms in the overall set of all loaded models. You will see this in
states that Jmol produces, and you can use them yourself if you know what
you are doing.
({0:2}) are the first three atoms.
[{0 2 4:5}] are the first, third, fifth, and sixth bonds.
So, first thing, realize that ({0}) is always "the first atom" -- one atom,
in the first model. Always.
In addition to this, you can append [n] or [n][m] to an atom expression
using braces:
select {_O}[1] // the first oxygen atom
select {_O}[0] // the last oxygen atom
select {_O}[1][-1] // the first through next-to-last oxygen atom
Note that this notation uses "1" for first and "0" for last. Sorry about
that.
Finally, you can also use "@" (like "AT-om") to substitute for "atomno=",
without any braces at all:
select @1 @3
measure @1 @2 allconnected
This is probably what you want, George, because "@1" will have an atom in
each of your models.
Bob
--
Robert M. Hanson
Larson-Anderson Professor of Chemistry
St. Olaf College
Northfield, MN
http://www.stolaf.edu/people/hansonr
If nature does not answer first what we want,
it is better to take what answer we get.
-- Josiah Willard Gibbs, Lecture XXX, Monday, February 5, 1900
------------------------------------------------------------------------------
Sponsored by Intel(R) XDK
Develop, test and display web and hybrid apps with a single code base.
Download it for free now!
http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk
_______________________________________________
Jmol-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-users