Revision: 18514
          http://sourceforge.net/p/jmol/code/18514
Author:   hansonr
Date:     2013-07-31 01:52:42 +0000 (Wed, 31 Jul 2013)
Log Message:
-----------
___JmolVersion="13.2.4_dev_2013.07.30"

bug fix: minimization can fail after MMFF switches to UFF.
bug fix: CIF reader fix for no element given "phenyl1" in ZjzxlegN.cif

Modified Paths:
--------------
    branches/v13_2/Jmol/src/org/jmol/adapter/readers/cifpdb/CifReader.java
    branches/v13_2/Jmol/src/org/jmol/minimize/Minimizer.java
    branches/v13_2/Jmol/src/org/jmol/viewer/Jmol.properties
    branches/v13_2/Jmol/src/org/jmol/viewer/Viewer.java

Modified: branches/v13_2/Jmol/src/org/jmol/adapter/readers/cifpdb/CifReader.java
===================================================================
--- branches/v13_2/Jmol/src/org/jmol/adapter/readers/cifpdb/CifReader.java      
2013-07-31 01:46:28 UTC (rev 18513)
+++ branches/v13_2/Jmol/src/org/jmol/adapter/readers/cifpdb/CifReader.java      
2013-07-31 01:52:42 UTC (rev 18514)
@@ -530,7 +530,8 @@
       return;
     }
     if (str.startsWith("_symmetry_equiv_pos")
-        || str.startsWith("_space_group_symop")) {
+        || str.startsWith("_space_group_symop")
+        || str.startsWith("_symmetry_ssg_equiv")) {
       if (ignoreFileSymmetryOperators) {
         Logger.warn("ignoring file-based symmetry operators");
         skipLoop();
@@ -1022,6 +1023,13 @@
         if (isAnisoData || !filterCIFAtom(atom, iAtom, assemblyId))
           continue;
         setAtomCoord(atom);
+        if (atom.elementSymbol == null && atom.atomName != null) {
+          String sym = atom.atomName;
+          int pt = 0;
+          while (pt < sym.length() && Character.isLetter(sym.charAt(pt)))
+            pt++;
+          atom.elementSymbol = (pt == 0 || pt > 2 ? "Xx" : sym.substring(0, 
pt));
+        }
         atomSetCollection.addAtomWithMappedName(atom);
         if (assemblyId != '\0') {
           if (assemblyIdAtoms == null)
@@ -1773,11 +1781,13 @@
 
   final private static byte SYMOP_XYZ = 0;
   final private static byte SYM_EQUIV_XYZ = 1;
-  final private static byte SYM_SSG_OP = 2;
+  final private static byte SYM_SSG_XYZ = 2;
+  final private static byte SYM_SSG_OP = 3;
 
   final private static String[] symmetryOperationsFields = {
       "_space_group_symop_operation_xyz", 
       "_symmetry_equiv_pos_as_xyz", 
+      "_symmetry_ssg_equiv_pos_as_xyz",
       "_space_group_symop_ssg_operation_algebraic"
   };
 
@@ -1800,6 +1810,11 @@
     while (tokenizer.getData()) {
       for (int i = 0; i < tokenizer.fieldCount; ++i) {
         switch (fieldProperty(i)) {
+        case SYM_SSG_XYZ:
+          // check for non-standard record x~1~,x~2~,x~3~,x~4~  kIsfCqpM.cif
+          if (field.indexOf('~') >= 0)
+            field = TextFormat.simpleReplace(field, "~", "");
+          //$FALL-THROUGH$
         case SYMOP_XYZ:
         case SYM_EQUIV_XYZ:
         case SYM_SSG_OP:

Modified: branches/v13_2/Jmol/src/org/jmol/minimize/Minimizer.java
===================================================================
--- branches/v13_2/Jmol/src/org/jmol/minimize/Minimizer.java    2013-07-31 
01:46:28 UTC (rev 18513)
+++ branches/v13_2/Jmol/src/org/jmol/minimize/Minimizer.java    2013-07-31 
01:52:42 UTC (rev 18514)
@@ -215,6 +215,7 @@
     if (minimizationOn)
       return false;
 
+    ForceField pFF0 = pFF;
     getForceField(ff);
     if (pFF == null) {
       Logger.error(GT._("Could not get class for force field {0}", ff));
@@ -234,6 +235,8 @@
 
     boolean sameAtoms = BSUtil.areEqual(bsSelected, this.bsSelected);
     this.bsSelected = bsSelected;
+    if (pFF0 != null && pFF != pFF0)
+      sameAtoms = false;
     if (!sameAtoms)
       pFF.clear();
     if ((!sameAtoms || !BSUtil.areEqual(bsFixed, this.bsFixed))

Modified: branches/v13_2/Jmol/src/org/jmol/viewer/Jmol.properties
===================================================================
--- branches/v13_2/Jmol/src/org/jmol/viewer/Jmol.properties     2013-07-31 
01:46:28 UTC (rev 18513)
+++ branches/v13_2/Jmol/src/org/jmol/viewer/Jmol.properties     2013-07-31 
01:52:42 UTC (rev 18514)
@@ -9,7 +9,11 @@
 #  Don't use ___ in your text, as that is the key for stripping out
 #  the information saved in the JAR version of this file.
 
-___JmolVersion="13.2.3"
+___JmolVersion="13.2.4_dev_2013.07.30"
+
+bug fix: minimization can fail after MMFF switches to UFF.
+bug fix: CIF reader fix for no element given "phenyl1" in ZjzxlegN.cif
+
 JmolVersion="13.2.3_dev_2013.07.27"
 
 bug fix: Gaussian cube format changed and not recognized (extra "1" in third 
line).

Modified: branches/v13_2/Jmol/src/org/jmol/viewer/Viewer.java
===================================================================
--- branches/v13_2/Jmol/src/org/jmol/viewer/Viewer.java 2013-07-31 01:46:28 UTC 
(rev 18513)
+++ branches/v13_2/Jmol/src/org/jmol/viewer/Viewer.java 2013-07-31 01:52:42 UTC 
(rev 18514)
@@ -5920,7 +5920,7 @@
       return;
     case T.forcefield:
       // 12.3.25
-      global.forceField = value;
+      global.forceField = value = ("UFF".equalsIgnoreCase(value)? "UFF" : 
"MMFF");
       minimizer = null;
       break;
     case T.nmrurlformat:

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent 
caught up. So what steps can you take to put your SQL databases under 
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
Jmol-commits mailing list
Jmol-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-commits

Reply via email to