[Sorry, I am still not getting Jmol-users messages. So I'm slow on the 
take here. I'll look through some recent archives for messages I might 
have something to say about]

Alan, the latest incarnation of Jmol, 11.1.17, includes just the sort of 
thing you want, although not sorted. (Come now, you can do that on your 
own, right? :) )

I will use 11.1.17 syntax since this wouldn't work on earlier versions 
anyway. Basically what you do is:

1) choose bondmodeOR = true or bondmodeOR = false and create a "bond 
set" for the atoms you are interested in. Then format the label for the 
set anyway you want.


bondmodeOR = true

theBonds = {_Si}.bonds.label("%2a1%-3i1 %2a2%-3i2  %6.3LENGTH")

The code in there is format code


%2a1   atom 1 identifier, 2 characters, right-justified
%-3i2  atom 2 index, 3 characters, left-justified
%6.3LENGTH   bond length set in 6 characters, right-justified, rounded 
to 3 decimal places

(another bond option is %ORDER)

now if you say

message @theBonds

you get your information:

 O11  Si10    1.605
 O9   Si5     1.614
 O8   Si7     1.605
Si7    O2     1.614
Si7    O9     1.605
 O6   Si5     1.605
 O4   Si7     1.614
Si3    O11    1.614
Si3    O4     1.605
 O2   Si1     1.605

Even easier, using the new Jmol.js jmolEvaluate() funcation (only at St. 
Olaf, I think? -- not sure if this got into the package), on your web 
page use:

var mybonds = new Array()

mybonds = jmolEvaluate('{_Si}.bonds.label("%2a1%-3i1 %2a2%-3i2  
%6.3LENGTH').split("\n")

Then you have them in a nice JavaScript array you can sort anyway you 
want to.

Bob

Alan Hewat
Sun, 25 Feb 2007 09:31:19 -0800

Jmol already calculates bond-lengths to decide which atoms are bonded
according to distance criteria. It would be very nice to be able to output
a list of these bond-lengths, sorted according to central bonded sites.
For example, the output obtained from
http://icsd.ill.fr/icsd/index.php?action=Bonds&id[]=72989 
<http://icsd.ill.fr/icsd/index.php?action=Bonds&id%5B%5D=72989>

Then of course it would be an extra bonus to be able to output a list of
the bond angles as well, as can be done from the above URL.

Finally :-) if you have a list of bond lengths, it would be very useful
for inorganic/ionic structures to be able to calculate the bond-valence
sum around the different cations. This is simply the sum of the individual
bond valences = exp((Ro-R)/B) where R is the bond length and Ro and B are
parameters for given cation-anion oxidation states obtained from a look-up
table such as http://icsd.ill.fr/icsd/help/valence.html

The valence states would be extracted from the CIF file, as used for
drawing ionic radii. (Actually in my calculation I have a self-consistency
loop, which assumes intial valence states, calculates the valence sum for
comparison, and then if it is significantly different, uses this new value
as the supposed valence state to select new Ro and B parameters).

The bond valence sum is a very important check on the correctness of a
structure. If it unreasonable then almost certainly something is wrong
(atom coordinates, disorder, stoichiometry etc...)

Alan.
_____________________________________________________________
Dr Alan Hewat, ILL Grenoble, FRANCE <[EMAIL PROTECTED]>fax+33.476.20.76.48
+33.476.20.72.13 (.26 Mme Guillermet) http://www.ill.fr/dif/people/hewat/
_____________________________________________________________


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV 
<http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV>
_______________________________________________
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users

    *
      [Jmol-users] Bond lengths & valence sum calculation with Jmol?
      Alan Hewat

    *
      Reply via email to


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users

Reply via email to