Package org.openscience.cdk.smiles
Class SmiFlavor
- java.lang.Object
-
- org.openscience.cdk.smiles.SmiFlavor
-
public final class SmiFlavor extends Object
Flags for customising SMILES generation.
-
-
Field Summary
Fields Modifier and Type Field Description static int
Absolute
Output canonical SMILES with stereochemistry, atomic masses.static int
AtomAtomMap
Output atom-atom mapping for reactions and atom classes for molecules.static int
AtomAtomMapRenumber
Renumber AtomAtomMaps during canonical generationstatic int
AtomicMass
Output atomic mass on atoms.static int
AtomicMassStrict
Deprecated.no longer needed, default CDK behaviour is now to pass through mass numbers if non-nullstatic int
Canonical
Output SMILES in a canonical order.static int
Cx2dCoordinates
Output 2D coordinates.static int
Cx3dCoordinates
Output 3D coordinates.static int
CxAtomLabel
Output atom labels, atom labels are specified byIPseudoAtom.getLabel()
.static int
CxAtomValue
Output atom values, atom values are specified by the propertyCDKConstants.COMMENT
usingIChemObject.setProperty(Object, Object)
static int
CxCoordinates
Output either 2D/3D coordinates.static int
CxDataSgroups
Output data Sgroups.static int
CxEnhancedStereo
Output enhanced stereo.static int
CxFragmentGroup
Output fragment grouping for reactions.static int
CxLigandOrder
Output ligand order information.static int
CxMulticenter
Output multicenter bonds, positional variation is specified withSgroup
s of the typeSgroupType.ExtMulticenter
.static int
CxPolymer
Output polymer repeat units is specified withSgroup
s.static int
CxRadical
Output radicals, radicals are specified byIAtomContainer.getConnectedSingleElectronsCount(IAtom)
static int
CxSmiles
Output CXSMILES layers.static int
CxSmilesWithCoords
Output CXSMILES layers and coordinates.static int
Default
Default SMILES output write Stereochemistry, Atomic Mass, and CXSMILES layers.static int
Generic
Output non-canonical SMILES without stereochemistry, atomic masses.static int
InChILabelling
Output SMILES in a canonical order using the InChI labelling algorithm.static int
Isomeric
Output non-canonical SMILES with stereochemistry, atomic masses.static int
Stereo
Output supported stereochemistry types.static int
StereoCisTrans
Output cis-trans stereochemistry specified by directional\
of/
bonds.static int
StereoExCisTrans
static int
StereoExTetrahedral
Output extended tetrahedral stereochemistry on atoms as@
and@@
.static int
StereoTetrahedral
Output tetrahedral stereochemistry on atoms as@
and@@
.static int
Unique
Output canonical SMILES without stereochemistry, atomic masses.static int
UniversalSmiles
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 int
UseAromaticSymbols
Writes aromatic atoms as lower case letters.
-
-
-
Field Detail
-
Canonical
public static final int Canonical
Output SMILES in a canonical order. The order is not guaranteed to be equivalent between releases.- See Also:
- Constant Field Values
-
InChILabelling
public static final int InChILabelling
Output SMILES in a canonical order using the InChI labelling algorithm.- See Also:
UniversalSmiles
, Constant Field Values
-
AtomAtomMap
public static final int AtomAtomMap
Output 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:
- Constant Field Values
-
AtomicMass
public static final int AtomicMass
Output 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:
- Constant Field Values
-
UseAromaticSymbols
public static final int UseAromaticSymbols
Writes aromatic atoms as lower case letters. For portability this option is not recommended.- See Also:
- Constant Field Values
-
StereoTetrahedral
public static final int StereoTetrahedral
Output tetrahedral stereochemistry on atoms as@
and@@
.- See Also:
Stereo
, Constant Field Values
-
StereoCisTrans
public static final int StereoCisTrans
Output cis-trans stereochemistry specified by directional\
of/
bonds.- See Also:
Stereo
, Constant Field Values
-
StereoExTetrahedral
public static final int StereoExTetrahedral
Output extended tetrahedral stereochemistry on atoms as@
and@@
. Extended tetrahedral captures rotations around a cumulated carbon:CC=[C@]=CC
.- See Also:
Stereo
, Constant Field Values
-
StereoExCisTrans
public static final int StereoExCisTrans
- See Also:
- Constant Field Values
-
AtomicMassStrict
@Deprecated public static final int 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:
- Constant Field Values
-
Stereo
public static final int Stereo
Output supported stereochemistry types.
-
Cx2dCoordinates
public static final int Cx2dCoordinates
Output 2D coordinates.- See Also:
- Constant Field Values
-
Cx3dCoordinates
public static final int Cx3dCoordinates
Output 3D coordinates.- See Also:
- Constant Field Values
-
CxCoordinates
public static final int CxCoordinates
Output either 2D/3D coordinates.- See Also:
- Constant Field Values
-
CxAtomLabel
public static final int CxAtomLabel
Output atom labels, atom labels are specified byIPseudoAtom.getLabel()
.- See Also:
- Constant Field Values
-
CxAtomValue
public static final int CxAtomValue
Output atom values, atom values are specified by the propertyCDKConstants.COMMENT
usingIChemObject.setProperty(Object, Object)
- See Also:
- Constant Field Values
-
CxRadical
public static final int CxRadical
Output radicals, radicals are specified byIAtomContainer.getConnectedSingleElectronsCount(IAtom)
- See Also:
- Constant Field Values
-
CxMulticenter
public static final int CxMulticenter
Output multicenter bonds, positional variation is specified withSgroup
s of the typeSgroupType.ExtMulticenter
.- See Also:
- Constant Field Values
-
CxPolymer
public static final int CxPolymer
Output polymer repeat units is specified withSgroup
s.- See Also:
- Constant Field Values
-
CxFragmentGroup
public static final int CxFragmentGroup
Output fragment grouping for reactions.- See Also:
- Constant Field Values
-
CxLigandOrder
public static final int CxLigandOrder
Output ligand order information.- See Also:
- Constant Field Values
-
AtomAtomMapRenumber
public static final int AtomAtomMapRenumber
Renumber AtomAtomMaps during canonical generation- See Also:
- Constant Field Values
-
CxDataSgroups
public static final int CxDataSgroups
Output data Sgroups.- See Also:
- Constant Field Values
-
CxEnhancedStereo
public static final int CxEnhancedStereo
Output enhanced stereo.- See Also:
- Constant Field Values
-
CxSmiles
public static final int CxSmiles
Output CXSMILES layers.- See Also:
- Constant Field Values
-
CxSmilesWithCoords
public static final int CxSmilesWithCoords
Output CXSMILES layers and coordinates.- See Also:
- Constant Field Values
-
Generic
public static final int Generic
Output non-canonical SMILES without stereochemistry, atomic masses.- See Also:
- Constant Field Values
-
Unique
public static final int Unique
Output canonical SMILES without stereochemistry, atomic masses.- See Also:
- Constant Field Values
-
Isomeric
public static final int Isomeric
Output non-canonical SMILES with stereochemistry, atomic masses.- See Also:
- Constant Field Values
-
Absolute
public static final int Absolute
Output canonical SMILES with stereochemistry, atomic masses.- See Also:
- Constant Field Values
-
Default
public static final int Default
Default SMILES output write Stereochemistry, Atomic Mass, and CXSMILES layers. The ordering is not canonical.- See Also:
- Constant Field Values
-
UniversalSmiles
public static final int UniversalSmiles
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].
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:
- Constant Field Values
- MAJOR: Molecules with delocalised charges are generally non-canonical, e.g.
-
-