From: Jmol SMILES and Jmol SMARTS: specifications and applications
Note | Directive | Meaning | Jmol example |
---|---|---|---|
G | /atomComments/ | Add comments when generating SMILES strings that indicate the correlation between SMILES atoms and Jmol atoms | PRINT {*}.find(“SMILES/atomComments/”) SHOW SMILES/atomComments |
G | /hydrogens/ | Makes all hydrogens explicit in generating a SMILES string | LOAD $benzene PRINT {*}.find(“SMILES/hydrogens/”) c1([H])c([H])c([H])c([H])c([H])c1[H] |
G | /topology/ | Generate SMILES strings that represent all atoms as “*”, thus allowing SMARTS pattern matches without regard to specific elements | LOAD $indane SHOW SMILES/topology *1*2*****2**1 |
P | /firstMatchOnly/ | Return only the first match, not all occurrences of a match | LOAD $heptane SELECT ON search(“/firstMatchOnly/C”) 1 atom selected |
P | /groupByMolecule/ | 3D components are grouped by covalently-bonded sets (Jmol default) | LOAD “$carbetapentane citrate” SELECT on search(“/groupByMolecule/(C=O.C=O)”) (highlights the carbonyl groups of the citrate ion only, because carbetapentane has only one carbonyl group, and the indicated grouping requires that both be in the same component) |
P | /groupByModel/ | Consider each model in Jmol to be one component, regardless of how many covalently disjoint sets it contains | x = search(“/groupByModel, firstMatchOnly/(C).(C)”) (returns an atom set containing the first nonaromatic carbon of each model when there are two, or no atoms if there is only one model) |
GSP | /aromaticDouble/ | Double bonds between aromatic atoms must match explicitly for 3D molecule comparison—SMILES strings and SMARTS patterns with = between aromatic atoms will set this flag automatically during processing | LOAD files “$1,2-dihydroxybenzene” “:1,2-dihyroxybenzene” PRINT {1.1}.find(“SMILES”,{2.1}) == {1.1} true (because both NCI and PubChem have structures for these two compounds) PRINT {1.1}.find(“SMILES/aromaticDouble/”,{2.1}) == {1.1} false (because the two structures have different double-bonding patterns) |
GSP | /aromaticPlanar/ | Carry out a 3D analysis to define aromatic atoms | LOAD $quinone SELECT smiles(“/aromaticPlanar/c1ccccc1”) (will return “6 atoms selected” because Jmol’s default is to consider the planar ring of quinone to be aromatic) |
GSP | /aromaticDefined/ | Bonds to be matched as aromatic are already marked as such; make no attempt to determine aromaticity in the structure | LOAD :benzene CONNECT {*} {*} aromatic modify CALCULATE aromatic SELECT smiles(“/aromaticDefined/c1ccccc1”) (aromatic atoms have been pre-calculated) |