Bob,

It looks like the problem is V2000 standards. V3000 has an actual CHG 
block. In V2000 atom block reference to charge, the following is used:

0 = uncharged or value other than these, 1 = +3, 2 = +2, 3 = +1,
4 = doublet radical, 5 = -1, 6 = -2, 7 = -3

Bizarre! Symyx reference:

http://www.symyx.com/downloads/public/ctfile/ctfile.jsp

Otis 

--


Otis Rothenberger

Department of Chemistry

Illinois State University
Normal, IL 61790-4160

http://chemagic.org


----------------------------------------
From: "Otis Rothenberger" <osrot...@chemagic.com>
Sent: Monday, January 10, 2011 2:17 PM
To: jmol-users@lists.sourceforge.net
Subject: [Jmol-users] Extract Molfile 

Bob,

I see that version 12.1.30_dev produces a more structured molfile on 
Extract that includes charge data. That's neat.

This did break one of my scripts, and I can't find the problem. The broken 
script involves a single model duplication. In this script, first the data 
is extracted:

    var modTxt = 'echo Copying model data...;mod1 = "' + 
jmolGetPropertyAsString("extractModel", "all") + '";javascript 
"dupMod2()";';
    jmolScript(modTxt);

dupMod2() then does the following:

    var scpt = 'delay 1;echo;var i = {*}.atomIndex.max + 1;var t = 
{*}.atomIndex.min;select within(branch, {atomIndex = i}, {atomIndex=t});var 
x = {selected}.size;var y={*}.size;var z = y - x;';
    scpt += 'if (y > 40 || z != 0){echo This feature is limited to a single 
model with|less than 40 atoms.;delay 3;echo;}';
    scpt += 'else{var sz = 5;if (y > 8){sz = 6};if (y > 11){sz = 7};if (y > 
30){sz = 9};set appendNew false;';
    scpt += 'select *;translateSelected {...@sz @sz 0};load APPEND "@mod1";';
    scpt += 'mod1="";hover off;' + loadScpt + 'select *;wireframe 
0.15;spacefill 23%;boundbox {*};centerat boundbox;javascript 
"getFormula();lnkSwitch()";}';
    jmolScript(scpt);

The global variable loadScpt is just some echo and label settings. For 
neutral models the above still works, but if I have an original  ion, I end 
up with charge problem. By way of example duplicating the 2-propyl cation 
results in the following (end of email) extracted molfile for the two 
models. Note the duplicated cation is now +3.

I've run into conflicting standards for charges in the molfile atom block 
before. Some standards use actual charges while others use an integer 
code!!! Is that what's going on here, or do you see a problem with my 
code??

Otis

string
__Jmol-12_01101114153D 1   1.00000     0.00000     0
Jmol version 12.1.30_dev  2010-12-06 22:36 EXTRACT: ({0:5 8:21})
 20 18  0  0  0  0              1 V2000
  -5.25897   2.94760  -5.22727 C   0  0  0  0  0  0
  -6.40696   3.88045  -4.97901 C   0  1  0  0  0  0
  -5.19679   2.67627  -6.29968 H   0  0  0  0  0  0
  -5.40453   2.03269  -4.62526 H   0  0  0  0  0  0
  -4.32125   3.44406  -4.91922 H   0  0  0  0  0  0
  -6.57636   4.30536  -3.56545 C   0  0  0  0  0  0
  -5.64464   4.81988  -3.22194 H   0  0  0  0  0  0
  -6.73390   3.40107  -2.92615 H   0  0  0  0  0  0
  -7.43260   4.98898  -3.43879 H   0  0  0  0  0  0
  -7.07100   4.22428  -5.77467 H   0  0  0  0  0  0
  -0.31570   0.36779   0.60032 C   0  0  0  0  0  0
   0.29552  -0.34440  -0.56970 C   0  3  0  0  0  0
   0.12635   0.01278   1.55223 H   0  0  0  0  0  0
  -1.40380   0.17640   0.60730 H   0  0  0  0  0  0
  -0.13472   1.45247   0.49351 H   0  0  0  0  0  0
  -0.23199   0.06232  -1.89775 C   0  0  0  0  0  0
  -0.05836   1.15762  -2.04269 H   0  0  0  0  0  0
  -1.33430  -0.12533  -1.92861 H   0  0  0  0  0  0
   0.25017  -0.49061  -2.72136 H   0  0  0  0  0  0
   1.07055  -1.10543  -0.45844 H   0  0  0  0  0  0
  1  2  1  0  0  0
  1  3  1  0  0  0
  1  4  1  0  0  0
  1  5  1  0  0  0
  2  6  1  0  0  0
  7  6  1  0  0  0
  8  6  1  0  0  0
  9  6  1  0  0  0
 10  2  1  0  0  0
 11 12  1  0  0  0
 11 13  1  0  0  0
 11 14  1  0  0  0
 11 15  1  0  0  0
 12 16  1  0  0  0
 17 16  1  0  0  0
 18 16  1  0  0  0
 19 16  1  0  0  0
 20 12  1  0  0  0
M  END

--


Otis Rothenberger

Department of Chemistry

Illinois State University
Normal, IL 61790-4160

http://chemagic.org 
 
------------------------------------------------------------------------------
Gaining the trust of online customers is vital for the success of any company
that requires sensitive data to be transmitted over the Web.   Learn how to 
best implement a security strategy that keeps consumers' information secure 
and instills the confidence they need to proceed with transactions.
http://p.sf.net/sfu/oracle-sfdevnl 
_______________________________________________
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users

Reply via email to