Package org.openscience.cdk.smiles
Class SmiFlavor
java.lang.Object
org.openscience.cdk.smiles.SmiFlavor
Flags for customising SMILES generation.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Output canonical SMILES with stereochemistry, atomic masses.static final int
Output atom-atom mapping for reactions and atom classes for molecules.static final int
Renumber AtomAtomMaps during canonical generationstatic final int
Output atomic mass on atoms.static final int
Deprecated.no longer needed, default CDK behaviour is now to pass through mass numbers if non-nullstatic final int
Output SMILES in a canonical order.static final int
Output 2D coordinates.static final int
Output 3D coordinates.static final int
Output atom labels, atom labels are specified byIPseudoAtom.getLabel()
.static final int
Output atom values, atom values are specified by the propertyCDKConstants.COMMENT
usingIChemObject.setProperty(Object, Object)
static final int
Output either 2D/3D coordinates.static final int
Output data Sgroups.static final int
Output enhanced stereo.static final int
Output fragment grouping for reactions.static final int
Output ligand order information.static final int
Output multicenter bonds, positional variation is specified withSgroup
s of the typeSgroupType.ExtMulticenter
.static final int
Output polymer repeat units is specified withSgroup
s.static final int
Output radicals, radicals are specified byIAtomContainer.getConnectedSingleElectronsCount(IAtom)
static final int
Output CXSMILES layers.static final int
Output CXSMILES layers and coordinates.static final int
Default SMILES output write Stereochemistry, Atomic Mass, and CXSMILES layers.static final int
Output non-canonical SMILES without stereochemistry, atomic masses.static final int
Output SMILES in a canonical order using the InChI labelling algorithm.static final int
Output non-canonical SMILES with stereochemistry, atomic masses.static final int
Output supported stereochemistry types.static final int
Output cis-trans stereochemistry specified by directional\
of/
bonds.static final int
static final int
Output extended tetrahedral stereochemistry on atoms as@
and@@
.static final int
Output tetrahedral stereochemistry on atoms as@
and@@
.static final int
Output canonical SMILES without stereochemistry, atomic masses.static final int
Output canonical SMILES with stereochemistry and atomic masses, This output uses the InChI labelling algorithm to generate a 'Universal SMILES' [O'Boyle, Noel. Journal of Cheminformatics. 2012. 4].static final int
Writes aromatic atoms as lower case letters. -
Method Summary
-
Field Details
-
Canonical
public static final int CanonicalOutput SMILES in a canonical order. The order is not guaranteed to be equivalent between releases.- See Also:
-
InChILabelling
public static final int InChILabellingOutput SMILES in a canonical order using the InChI labelling algorithm.- See Also:
-
AtomAtomMap
public static final int AtomAtomMapOutput atom-atom mapping for reactions and atom classes for molecules. The map index is set on an atom with propertyCDKConstants.ATOM_ATOM_MAPPING
usingIChemObject.setProperty(Object, Object)
.- See Also:
-
AtomicMass
public static final int AtomicMassOutput atomic mass on atoms. For historical reasons the atomic mass is often set on all atoms in a CDK molecule. Therefore to avoid SMILES like[12CH3][12CH2][16OH]
major isotopes are not generated. If you wish to generate SMILES with the major isotopes please use the flagAtomicMassStrict
this will output all mass numbers and only be omitted when the mass is unset (null).- See Also:
-
UseAromaticSymbols
public static final int UseAromaticSymbolsWrites aromatic atoms as lower case letters. For portability this option is not recommended.- See Also:
-
StereoTetrahedral
public static final int StereoTetrahedralOutput tetrahedral stereochemistry on atoms as@
and@@
.- See Also:
-
StereoCisTrans
public static final int StereoCisTransOutput cis-trans stereochemistry specified by directional\
of/
bonds.- See Also:
-
StereoExTetrahedral
public static final int StereoExTetrahedralOutput extended tetrahedral stereochemistry on atoms as@
and@@
. Extended tetrahedral captures rotations around a cumulated carbon:CC=[C@]=CC
.- See Also:
-
StereoExCisTrans
public static final int StereoExCisTrans- See Also:
-
AtomicMassStrict
Deprecated.no longer needed, default CDK behaviour is now to pass through mass numbers if non-nullGenerate SMILES with the major isotopes, only omit mass numbers when it is unset.- See Also:
-
Stereo
public static final int StereoOutput supported stereochemistry types. -
Cx2dCoordinates
public static final int Cx2dCoordinatesOutput 2D coordinates.- See Also:
-
Cx3dCoordinates
public static final int Cx3dCoordinatesOutput 3D coordinates.- See Also:
-
CxCoordinates
public static final int CxCoordinatesOutput either 2D/3D coordinates.- See Also:
-
CxAtomLabel
public static final int CxAtomLabelOutput atom labels, atom labels are specified byIPseudoAtom.getLabel()
.- See Also:
-
CxAtomValue
public static final int CxAtomValueOutput atom values, atom values are specified by the propertyCDKConstants.COMMENT
usingIChemObject.setProperty(Object, Object)
- See Also:
-
CxRadical
public static final int CxRadicalOutput radicals, radicals are specified byIAtomContainer.getConnectedSingleElectronsCount(IAtom)
- See Also:
-
CxMulticenter
public static final int CxMulticenterOutput multicenter bonds, positional variation is specified withSgroup
s of the typeSgroupType.ExtMulticenter
.- See Also:
-
CxPolymer
public static final int CxPolymerOutput polymer repeat units is specified withSgroup
s.- See Also:
-
CxFragmentGroup
public static final int CxFragmentGroupOutput fragment grouping for reactions.- See Also:
-
CxLigandOrder
public static final int CxLigandOrderOutput ligand order information.- See Also:
-
AtomAtomMapRenumber
public static final int AtomAtomMapRenumberRenumber AtomAtomMaps during canonical generation- See Also:
-
CxDataSgroups
public static final int CxDataSgroupsOutput data Sgroups.- See Also:
-
CxEnhancedStereo
public static final int CxEnhancedStereoOutput enhanced stereo.- See Also:
-
CxSmiles
public static final int CxSmilesOutput CXSMILES layers.- See Also:
-
CxSmilesWithCoords
public static final int CxSmilesWithCoordsOutput CXSMILES layers and coordinates.- See Also:
-
Generic
public static final int GenericOutput non-canonical SMILES without stereochemistry, atomic masses.- See Also:
-
Unique
public static final int UniqueOutput canonical SMILES without stereochemistry, atomic masses.- See Also:
-
Isomeric
public static final int IsomericOutput non-canonical SMILES with stereochemistry, atomic masses.- See Also:
-
Absolute
public static final int AbsoluteOutput canonical SMILES with stereochemistry, atomic masses.- See Also:
-
Default
public static final int DefaultDefault SMILES output write Stereochemistry, Atomic Mass, and CXSMILES layers. The ordering is not canonical.- See Also:
-
UniversalSmiles
public static final int UniversalSmilesOutput canonical SMILES with stereochemistry and atomic masses, This output uses the InChI labelling algorithm to generate a 'Universal SMILES' [O'Boyle, Noel. Journal of Cheminformatics. 2012. 4].
Unfortunately there are several issues and general use is not recommended:- MAJOR: Molecules with delocalised charges are generally non-canonical, e.g.
C(\C=C\N1CCCC1)=C/c2[n+](c3c(n2CC)nc4ccccc4n3)CC
will generate two different SMILES depending on input order - MINOR: Double bond '/' '\' assignment is different from the original paper (O'Boyle) and will not match universal SMILES generated by Open Babel
- MINOR: SMILES with '*' atoms can not be canonicalised by default, to avoid this we use the 'Rf' atom as a substitute. Structures with an 'Rf' atom can still be generated providing there are no '*' atoms.
- MINOR: The InChI library (v1.03) is not thread safe
- See Also:
- MAJOR: Molecules with delocalised charges are generally non-canonical, e.g.
-