Revision: 20770
          http://sourceforge.net/p/jmol/code/20770
Author:   hansonr
Date:     2015-09-10 12:34:16 +0000 (Thu, 10 Sep 2015)
Log Message:
-----------
Jmol.___JmolVersion="14.3.16_2015.09.09"

new feature: SMILES/SMARTS atom designations [C(xxxx)]
   -- allows pointing to the same atom without connection numbers
   -- (xxxx) may be anything, including just ()
   -- definition may be anywhere in bracketed atom specification
   -- any additional primitives in referring expression will be ignored
   -- involves only a very simple addition to parser code
   -- Jmol is not currently creating these strings, just interpreting them  
   -- rationale:
   
      One basic aspect of SMILES is that it efficiently uses numbers to 
      indicate connectivity using a process of "opening" bonds and "closing" 
them.
      Along with radical (.) notation, this is totally sufficient for describing
      any connected network of atoms, including situations where the ordering
      of connections is critical (e.g., in describing stereochemistry). 
Basically, 
      one can simply list all the atoms in an arbitrary order as single-atom 
      components (separated by "."), then assign bonds as desired, in whatever
      order is desired.
      
      The problem comes when attempting to indicate stereochemistry for 
      centers with more than six substituents or with geometries that are
      outside the standard set of AL, TH, TP, SP, and OH. In such cases, 
      there may arise situations where the ordering of unbonded substituents 
      will be critical. An example is crystal structures of metals and metal
      alloys. In this situation there are no covalent bonds. The need is to 
      be able to compare two such crystal structures. 
      
      The solution is to create SMARTS and SMILES strings for complex 
      "atomic environments" consisting of a central atom and any number of
      nearby atoms, using a cutoff radius rather than a bonding pattern.
      One possibility is to create a "pseudobond" that connects the central 
      atom to all of its connected atoms, but this is not really necessary and
      slows processing significantly. Instead, the [@PHn] syntax proposed here
      allows the polyhedral environment to be specified only for the polyhedron
      itself, exclusive of the central atom. 

      By providing a means of referring to a specific previously defined atom 
in a
      SMILES or SMARTS string, we can allow an atom in such an arrangement 
      to be part of two different polyhedra.   
        
      Thus, although isolated polySMARTS can be implemented without atom 
referents, 
      extending that to more complex multi-atom polySMARTS searches requires 
them.
            
   -- example, simple branched organic
      
                $ load $t-butylmethylether
                $ select on search("[O][C(a)H0].[C(a)]C")
                
                5 atoms selected
                
      same as
      
                $ select on search("[O][CH0](C)")
                        
   -- note that [C(2)] and [O(2)] are not sensible and may be disallowed. 
      

code: javajs.util reconciled with swingjs project

bug fix: polyhedra.stereoSmiles --> polyhedra.polySmiles

new feature: polyhedron.polySmiles adds central atom

  -- example:
  
                load SF6.smol -1
                polyhedra
                calculate symmetry polyhedra
                x = {polyhedra}.polyhedra.polySmiles
                print x

                //* S1 #1 *//   [S@PH6].
                //* F6 #7 *//   [F]1234.
                //* F2 #3 *//   [F]5672.
                //* F3 #4 *//   [F]849%10.
                //* F4 #5 *//   [F]%11%10%126.
                //* F1 #2 *//   [F]937%12.
                //* F5 #6 *//   [F]8%1151

            print  polyhedron(x).atomname

                S1                                                              
                                                             
JmolVersion="14.3.16_2015.09.08"

code: Efficient JSON parser javajs.util.JSONParser
  -- requires object being parsed to be an object (bounded by "{" and "}")

Modified Paths:
--------------
    trunk/Jmol/src/org/jmol/viewer/Jmol.properties

Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties
===================================================================
--- trunk/Jmol/src/org/jmol/viewer/Jmol.properties      2015-09-10 12:32:35 UTC 
(rev 20769)
+++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties      2015-09-10 12:34:16 UTC 
(rev 20770)
@@ -64,7 +64,9 @@
    -- allows pointing to the same atom without connection numbers
    -- (xxxx) may be anything, including just ()
    -- definition may be anywhere in bracketed atom specification
-   -- any additional primitives in referring expression will be ignored  
+   -- any additional primitives in referring expression will be ignored
+   -- involves only a very simple addition to parser code
+   -- Jmol is not currently creating these strings, just interpreting them  
    -- rationale:
    
       One basic aspect of SMILES is that it efficiently uses numbers to 

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


------------------------------------------------------------------------------
Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
Get real-time metrics from all of your servers, apps and tools
in one place.
SourceForge users - Click here to start your Free Trial of Datadog now!
http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
_______________________________________________
Jmol-commits mailing list
Jmol-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-commits

Reply via email to