Revision: 21584 http://sourceforge.net/p/jmol/code/21584 Author: hansonr Date: 2017-05-07 00:35:31 +0000 (Sun, 07 May 2017) Log Message: ----------- Jmol.___JmolVersion="14.15.3"
bug fix: use of the less preferred name of Jmol token that has two optional forms ("fix" vs "fixed") as a VAR does not assign that variable name bug fix: set cartoonRibose misses the C1'-O4' and O3'-P(+1) edges bug fix: JVXL reader not reading Gaussian files with "1" in the third line, 5th field bug fix: CIP chirality test: load "$2,2'-dibromobiphenyl"; calculate chirality; print {*}.chirality.join("") bug fix: CIP chirality nearly fully validated on ACD/Labs AY-236 set, with some unimplemented aspects: var skip = ({27 229}) || // E/Z only; missing chirality ({95 96 98 99 100 101 102 103 104 108 109 110 111 112 200}) || // trigonal planar, square planar, or hypervalent ({32 33}) || // helicene ({201 202})|| // spirocyclic central (redundant) atom designation missing (axial designation option) ({212 213})|| // chiral conformation 1,4-benzene in a ring ({38 84}) || // ignore -- 38: Mancude for cyclopentadienyl; 84: unknown error with P compound ({203}) || // // chiral bridgehead amine Three structures appear to be in error in the IUPAC Blue Book 2013. ,"147":"r,,,R,,,,r,,,S" // r,,,R,,,,r,,,R chiral phosphine -- I think Jmol is right; disagrees with BB P-93.5.1.1.2 for S vs R ,"227":"SrSEErS" // S,,,,,,,r,S,,,,,,,E,,r,r // -- I think Jmol is right; disagrees with BB P-93.5.7.2 for S vs. r ,"230":"@2D RrRsR" // r,,,R,,,,s,,,R // p 1282 -- I believe Jmol is correct, disagrees with BB P-93.6 One structure awaiting full implementation of Rule 4b across all chirality types, R/S, M/P, and seqCis/seqTrans ,"170":"Spp" // Jmol is missing the S -- mix of R/S and M/P for Rule 4b Modified Paths: -------------- trunk/Jmol/src/org/jmol/symmetry/CIPChirality.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties Modified: trunk/Jmol/src/org/jmol/symmetry/CIPChirality.java =================================================================== --- trunk/Jmol/src/org/jmol/symmetry/CIPChirality.java 2017-05-06 21:50:42 UTC (rev 21583) +++ trunk/Jmol/src/org/jmol/symmetry/CIPChirality.java 2017-05-07 00:35:31 UTC (rev 21584) @@ -1907,14 +1907,16 @@ // resolved as "r" or "s" // but generally we will want to process this as "R" and "S" // note that this analysis cannot be done ahead of time - String aStr = rule4List[ia]; - String bStr = rule4List[ib]; - if (atoms[ia].nextChiralBranch != null) - aStr += atoms[ia].getMataList(getFirstRef(aStr), isRule5); - if (atoms[ib].nextChiralBranch != null) - bStr += atoms[ib].getMataList(getFirstRef(bStr), isRule5); - aStr = aStr.substring(1); - bStr = bStr.substring(1); + String aStr = rule4List[ia].substring(1); + String bStr = rule4List[ib].substring(1); + if (atoms[ia].nextChiralBranch != null) { + String s = atoms[ia].getMataList(getFirstRef(aStr), isRule5); + aStr = (s.indexOf("|") < 0 ? aStr + s : s); + } + if (atoms[ib].nextChiralBranch != null) { + String s = atoms[ib].getMataList(getFirstRef(bStr), isRule5); + bStr = (s.indexOf("|") < 0 ? bStr + s : s); + } if (Logger.debugging) Logger.info(dots() + this + " comparing " + atoms[ia] + " " + aStr + " to " + atoms[ib] + " " + bStr); @@ -1998,7 +2000,6 @@ if (rule4List[i] != null) { listA[--j] = rule4List[i]; } -// Arrays.sort(listA); if (aref == null) { aref = getMataRef(isRule5); } else { @@ -2099,7 +2100,7 @@ * @return 0 (TIED), -1 (A_WINS), 1 (B_WINS), Integer.MIN_VALUE (IGNORE) */ private int compareRule4PairStr(String aStr, String bStr, boolean isRSTest) { - if (true || Logger.debugging) + if (Logger.debugging) Logger.info(dots() + this + " Rule 4b comparing " + aStr + " " + bStr); doCheckPseudo = false; int n = aStr.length(); @@ -2248,7 +2249,7 @@ isBranch = true; s = "u"; subRS = ""; -// TODO: Why is this setting of ret to null? +// TODO: Why is this setting of ret to null? if (ret != null) ret[0] = null; break; @@ -2362,7 +2363,9 @@ return NOT_RELEVANT; // TODO: ?? this may not be true -- paths with and without O, N, C for example, that still have stereochemistry if (rs1.equals(rs2)) return TIED; - return checkEnantiomer(rs1, rs2, 1, n, " RS"); + + System.out.println("testing ~RS here with " + rs1 + " and " + rs2); + return checkEnantiomer(rs1, rs2, 1, n, "~RS"); } private int checkEnantiomer(String rs1, String rs2, int m, int n, String rs) { Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2017-05-06 21:50:42 UTC (rev 21583) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2017-05-07 00:35:31 UTC (rev 21584) @@ -61,9 +61,28 @@ forms ("fix" vs "fixed") as a VAR does not assign that variable name bug fix: set cartoonRibose misses the C1'-O4' and O3'-P(+1) edges bug fix: JVXL reader not reading Gaussian files with "1" in the third line, 5th field -bug fix: CIP chirality may not show M/P for atropisomeric atoms +bug fix: CIP chirality test: load "$2,2'-dibromobiphenyl"; calculate chirality; print {*}.chirality.join("") +bug fix: CIP chirality nearly fully validated on ACD/Labs AY-236 set, with some unimplemented aspects: + +var skip = ({27 229}) || // E/Z only; missing chirality + ({95 96 98 99 100 101 102 103 104 108 109 110 111 112 200}) || // trigonal planar, square planar, or hypervalent + ({32 33}) || // helicene + ({201 202})|| // spirocyclic central (redundant) atom designation missing (axial designation option) + ({212 213})|| // chiral conformation 1,4-benzene in a ring + ({38 84}) || // ignore -- 38: Mancude for cyclopentadienyl; 84: unknown error with P compound + ({203}) || // // chiral bridgehead amine + Three structures appear to be in error in the IUPAC Blue Book 2013. + +,"147":"r,,,R,,,,r,,,S" // r,,,R,,,,r,,,R chiral phosphine -- I think Jmol is right; disagrees with BB P-93.5.1.1.2 for S vs R +,"227":"SrSEErS" // S,,,,,,,r,S,,,,,,,E,,r,r // -- I think Jmol is right; disagrees with BB P-93.5.7.2 for S vs. r +,"230":"@2D RrRsR" // r,,,R,,,,s,,,R // p 1282 -- I believe Jmol is correct, disagrees with BB P-93.6 + + One structure awaiting full implementation of Rule 4b across all chirality types, R/S, M/P, and seqCis/seqTrans + + ,"170":"Spp" // Jmol is missing the S -- mix of R/S and M/P for Rule 4b + JmolVersion="14.15.2" // 4/29/17 bug fix: CIP chirality adds axial chirality (M/P[Ra/Sa], m/p[ra/sa]) for cumulenes This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Jmol-commits mailing list Jmol-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jmol-commits