Module AllChem
source code
Import all RDKit chemistry modules
|
TransformMol(mol,
tform,
confId=-1,
keepConfs=False)
Applies the transformation (usually a 4x4 double matrix) to a molecule... |
source code
|
|
|
ComputeMolShape(mol,
confId=-1,
boxDim=( 20, 20, 20) ,
spacing=0.5,
**kwargs)
returns a grid representation of the molecule's shape... |
source code
|
|
|
ComputeMolVolume(mol,
confId=-1,
gridSpacing=0.2,
boxMargin=2.0)
Calculates the volume of a particular conformer of a molecule
based on a grid-encoding of the molecular shape. |
source code
|
|
|
GenerateDepictionMatching2DStructure(mol,
reference,
confId=-1,
referencePattern=None,
acceptFailure=False,
**kwargs)
Generates a depiction for a molecule where a piece of the molecule
is constrained to have the same coordinates as a reference. |
source code
|
|
|
|
|
GetBestRMS(ref,
probe,
refConfId=-1,
probeConfId=-1,
maps=None)
Returns the optimal RMS for aligning two molecules, taking
symmetry into account. |
source code
|
|
|
|
|
|
|
|
|
ConstrainedEmbed(mol,
core,
useTethers=True,
coreConfId=-1,
randomseed=2342,
getForceField=<Boost.Python.function object at 0x577df280>,
**kwargs)
generates an embedding of a molecule where part of the molecule
is constrained to have particular coordinates |
source code
|
|
|
|
|
|
Imports:
rdBase,
RDConfig,
DataStructs,
rdGeometry,
ForceField,
numpy,
os,
warnings,
AddHs,
AddRecursiveQuery,
AdjustQueryParameters,
AdjustQueryProperties,
AdjustQueryWhichFlags,
AlignMol,
AlignMolConformers,
AssignAtomChiralTagsFromStructure,
AssignRadicals,
AssignStereochemistry,
Atom,
AtomMonomerInfo,
AtomMonomerType,
AtomNumEqualsQueryAtom,
AtomNumGreaterQueryAtom,
AtomNumLessQueryAtom,
AtomPDBResidueInfo,
AtomPairsParameters,
BRICS,
Bond,
BondDir,
BondStereo,
BondType,
BuildFeatureFactory,
BuildFeatureFactoryFromString,
CalcChi0n,
CalcChi0v,
CalcChi1n,
CalcChi1v,
CalcChi2n,
CalcChi2v,
CalcChi3n,
CalcChi3v,
CalcChi4n,
CalcChi4v,
CalcChiNn,
CalcChiNv,
CalcCrippenDescriptors,
CalcExactMolWt,
CalcFractionCSP3,
CalcHallKierAlpha,
CalcKappa1,
CalcKappa2,
CalcKappa3,
CalcLabuteASA,
CalcMolFormula,
CalcNumAliphaticCarbocycles,
CalcNumAliphaticHeterocycles,
CalcNumAliphaticRings,
CalcNumAmideBonds,
CalcNumAromaticCarbocycles,
CalcNumAromaticHeterocycles,
CalcNumAromaticRings,
CalcNumBridgeheadAtoms,
CalcNumHBA,
CalcNumHBD,
CalcNumHeteroatoms,
CalcNumHeterocycles,
CalcNumLipinskiHBA,
CalcNumLipinskiHBD,
CalcNumRings,
CalcNumRotatableBonds,
CalcNumSaturatedCarbocycles,
CalcNumSaturatedHeterocycles,
CalcNumSaturatedRings,
CalcNumSpiroAtoms,
CalcTPSA,
CanonSmiles,
CanonicalRankAtoms,
CanonicalRankAtomsInFragment,
CanonicalizeConformer,
CanonicalizeMol,
ChemicalFeatures,
ChemicalForceFields,
ChemicalReaction,
ChiralType,
Cleanup,
CombineMols,
CompositeQueryType,
Compute2DCoords,
Compute2DCoordsForReaction,
Compute2DCoordsMimicDistmat,
ComputeCanonicalTransform,
ComputeCentroid,
ComputeConfBox,
ComputeConfDimsAndOffset,
ComputeGasteigerCharges,
ComputeUnionBox,
Conformer,
CreateDifferenceFingerprintForReaction,
CreateStructuralFingerprintForReaction,
Crippen,
DeleteSubstructs,
Descriptors,
Draw,
EState,
EditableMol,
EmbedMolecule,
EmbedMultipleConfs,
EncodeShape,
ExplicitDegreeEqualsQueryAtom,
ExplicitDegreeGreaterQueryAtom,
ExplicitDegreeLessQueryAtom,
ExplicitValenceEqualsQueryAtom,
ExplicitValenceGreaterQueryAtom,
ExplicitValenceLessQueryAtom,
FastFindRings,
FastSDMolSupplier,
FeatFinderCLI,
FindAllPathsOfLengthN,
FindAllSubgraphsOfLengthMToN,
FindAllSubgraphsOfLengthN,
FindAtomEnvironmentOfRadiusN,
FindMolChiralCenters,
FindUniqueSubgraphsOfLengthN,
FingerprintType,
FormalChargeEqualsQueryAtom,
FormalChargeGreaterQueryAtom,
FormalChargeLessQueryAtom,
ForwardSDMolSupplier,
FragmentCatalog,
FragmentMatcher,
FragmentOnBRICSBonds,
FragmentOnBonds,
FragmentOnSomeBonds,
Fragments,
FreeChemicalFeature,
FunctionalGroups,
GenerateErGFingerprintForReducedGraph,
GenerateMolExtendedReducedGraph,
Get3DDistanceMatrix,
GetAdjacencyMatrix,
GetAlignmentTransform,
GetAngleDeg,
GetAngleRad,
GetAtomMatch,
GetAtomPairAtomCode,
GetAtomPairFingerprint,
GetBondLength,
GetConnectivityInvariants,
GetCrippenO3A,
GetCrippenO3AForProbeConfs,
GetDihedralDeg,
GetDihedralRad,
GetDistanceMatrix,
GetErGFingerprint,
GetFeatureInvariants,
GetFormalCharge,
GetHashedAtomPairFingerprint,
GetHashedAtomPairFingerprintAsBitVect,
GetHashedMorganFingerprint,
GetHashedTopologicalTorsionFingerprint,
GetHashedTopologicalTorsionFingerprintAsBitVect,
GetMACCSKeysFingerprint,
GetMolFrags,
GetMoleculeBoundsMatrix,
GetMorganFingerprint,
GetMorganFingerprintAsBitVect,
GetO3A,
GetO3AForProbeConfs,
GetPeriodicTable,
GetSSSR,
GetShortestPath,
GetSymmSSSR,
GetTopologicalTorsionFingerprint,
GetUFFAngleBendParams,
GetUFFBondStretchParams,
GetUFFInversionParams,
GetUFFTorsionParams,
GetUFFVdWParams,
GraphDescriptors,
Graphs,
HCountEqualsQueryAtom,
HCountGreaterQueryAtom,
HCountLessQueryAtom,
HasAgentTemplateSubstructMatch,
HasBoolPropWithValueQueryAtom,
HasBoolPropWithValueQueryBond,
HasDoublePropWithValueQueryAtom,
HasDoublePropWithValueQueryBond,
HasIntPropWithValueQueryAtom,
HasIntPropWithValueQueryBond,
HasProductTemplateSubstructMatch,
HasPropQueryAtom,
HasPropQueryBond,
HasReactantTemplateSubstructMatch,
HasReactionAtomMapping,
HasReactionSubstructMatch,
HasStringPropWithValueQueryAtom,
HasStringPropWithValueQueryBond,
HybridizationEqualsQueryAtom,
HybridizationGreaterQueryAtom,
HybridizationLessQueryAtom,
HybridizationType,
InNRingsEqualsQueryAtom,
InNRingsGreaterQueryAtom,
InNRingsLessQueryAtom,
InchiReadWriteError,
InchiToInchiKey,
IsAliphaticQueryAtom,
IsAromaticQueryAtom,
IsInRingQueryAtom,
IsReactionTemplateMoleculeAgent,
IsUnsaturatedQueryAtom,
IsotopeEqualsQueryAtom,
IsotopeGreaterQueryAtom,
IsotopeLessQueryAtom,
Kekulize,
LayeredFingerprint,
Lipinski,
LogErrorMsg,
LogWarningMsg,
MACCSkeys,
MCFF_GetFeaturesForMol,
MCS,
MMFFGetMoleculeForceField,
MMFFGetMoleculeProperties,
MMFFHasAllMoleculeParams,
MMFFOptimizeMolecule,
MMFFOptimizeMoleculeConfs,
MMFFSanitizeMolecule,
MQNs_,
MassEqualsQueryAtom,
MassGreaterQueryAtom,
MassLessQueryAtom,
MergeQueryHs,
MinRingSizeEqualsQueryAtom,
MinRingSizeGreaterQueryAtom,
MinRingSizeLessQueryAtom,
Mol,
MolAddRecursiveQueries,
MolChemicalFeature,
MolChemicalFeatureFactory,
MolFragmentToSmiles,
MolFromFASTA,
MolFromHELM,
MolFromInchi,
MolFromMol2Block,
MolFromMol2File,
MolFromMolBlock,
MolFromMolFile,
MolFromPDBBlock,
MolFromPDBFile,
MolFromQuerySLN,
MolFromSLN,
MolFromSequence,
MolFromSmarts,
MolFromSmiles,
MolFromTPLBlock,
MolFromTPLFile,
MolSurf,
MolToFASTA,
MolToHELM,
MolToInchi,
MolToInchiAndAuxInfo,
MolToMolBlock,
MolToMolFile,
MolToPDBBlock,
MolToPDBFile,
MolToSVG,
MolToSequence,
MolToSmarts,
MolToSmiles,
MolToTPLBlock,
MolToTPLFile,
MurckoDecompose,
NumRotatableBondsOptions,
O3A,
PDBWriter,
PEOE_VSA_,
ParseMolQueryDefFile,
PathToSubmol,
PatternFingerprint,
PeriodicTable,
PyMol,
QueryAtom,
QueryBond,
QuickSmartsMatch,
RDKFingerprint,
ROMolList,
RWMol,
RandomTransform,
Randomize,
ReactionFingerprintParams,
ReactionFromMolecule,
ReactionFromRxnBlock,
ReactionFromRxnFile,
ReactionFromSmarts,
ReactionToMolecule,
ReactionToRxnBlock,
ReactionToSmarts,
ReactionToSmiles,
Recap,
ReduceProductToSideChains,
ReducedGraphs,
RemoveHs,
RemoveMappingNumbersFromReactions,
RemoveStereochemistry,
RenumberAtoms,
ReplaceCore,
ReplaceSidechains,
ReplaceSubstructs,
ResonanceFlags,
ResonanceMolSupplier,
RingBondCountEqualsQueryAtom,
RingBondCountGreaterQueryAtom,
RingBondCountLessQueryAtom,
RingInfo,
SATIS,
SDMolSupplier,
SDWriter,
SMR_VSA_,
SaltRemover,
SanitizeFlags,
SanitizeMol,
Scaffolds,
SetAngleDeg,
SetAngleRad,
SetAromaticity,
SetBondLength,
SetConjugation,
SetDihedralDeg,
SetDihedralRad,
SetHybridization,
ShapeProtrudeDist,
ShapeTanimotoDist,
ShowMols,
SlogP_VSA_,
SmilesMolSupplier,
SmilesMolSupplierFromText,
SmilesWriter,
SplitMolByPDBChainId,
SplitMolByPDBResidues,
SupplierFromFilename,
TDTMolSupplier,
TDTWriter,
TotalDegreeEqualsQueryAtom,
TotalDegreeGreaterQueryAtom,
TotalDegreeLessQueryAtom,
TotalValenceEqualsQueryAtom,
TotalValenceGreaterQueryAtom,
TotalValenceLessQueryAtom,
TransformConformer,
UFFGetMoleculeForceField,
UFFHasAllMoleculeParams,
UFFOptimizeMolecule,
UFFOptimizeMoleculeConfs,
UnfoldedRDKFingerprintCountBased,
UpdateProductsStereochemistry,
WedgeMolBonds,
WrapLogs,
fmcs,
inchi,
pyPeriodicTable,
rdChemReactions,
rdChemicalFeatures,
rdDepictor,
rdForceFieldHelpers,
rdMMPA,
rdMolAlign,
rdMolChemicalFeatures,
rdMolDescriptors,
rdMolHash,
rdMolTransforms,
rdPartialCharges,
rdReducedGraphs,
rdShapeHelpers,
rdchem,
rdfragcatalog,
rdinchi,
rdmolfiles,
rdmolops,
rdqueries,
tossit
TransformMol(mol,
tform,
confId=-1,
keepConfs=False)
| source code
|
Applies the transformation (usually a 4x4 double matrix) to a molecule
if keepConfs is False then all but that conformer are removed
|
ComputeMolShape(mol,
confId=-1,
boxDim=( 20, 20, 20) ,
spacing=0.5,
**kwargs)
| source code
|
returns a grid representation of the molecule's shape
|
GenerateDepictionMatching2DStructure(mol,
reference,
confId=-1,
referencePattern=None,
acceptFailure=False,
**kwargs)
| source code
|
Generates a depiction for a molecule where a piece of the molecule
is constrained to have the same coordinates as a reference.
This is useful for, for example, generating depictions of SAR data
sets so that the cores of the molecules are all oriented the same
way.
Arguments:
- mol: the molecule to be aligned, this will come back
with a single conformer.
- reference: a molecule with the reference atoms to align to;
this should have a depiction.
- confId: (optional) the id of the reference conformation to use
- referencePattern: (optional) an optional molecule to be used to
generate the atom mapping between the molecule
and the reference.
- acceptFailure: (optional) if True, standard depictions will be generated
for molecules that don't have a substructure match to the
reference; if False, a ValueError will be raised
|
GenerateDepictionMatching3DStructure(mol,
reference,
confId=-1,
**kwargs)
| source code
|
Generates a depiction for a molecule where a piece of the molecule
is constrained to have coordinates similar to those of a 3D reference
structure.
Arguments:
- mol: the molecule to be aligned, this will come back
with a single conformer.
- reference: a molecule with the reference atoms to align to;
this should have a depiction.
- confId: (optional) the id of the reference conformation to use
|
GetBestRMS(ref,
probe,
refConfId=-1,
probeConfId=-1,
maps=None)
| source code
|
Returns the optimal RMS for aligning two molecules, taking
symmetry into account. As a side-effect, the probe molecule is
left in the aligned state.
Arguments:
- ref: the reference molecule
- probe: the molecule to be aligned to the reference
- refConfId: (optional) reference conformation to use
- probeConfId: (optional) probe conformation to use
- maps: (optional) a list of lists of (probeAtomId,refAtomId)
tuples with the atom-atom mappings of the two molecules.
If not provided, these will be generated using a substructure
search.
Note:
This function will attempt to align all permutations of matching atom
orders in both molecules, for some molecules it will lead to 'combinatorial
explosion' especially if hydrogens are present.
Use 'rdkit.Chem.AllChem.AlignMol' to align molecules without changing the
atom order.
|
GetConformerRMS(mol,
confId1,
confId2,
atomIds=None,
prealigned=False)
| source code
|
Returns the RMS between two conformations.
By default, the conformers will be aligned to the first conformer
of the molecule (i.e. the reference) before RMS calculation and,
as a side-effect, will be left in the aligned state.
Arguments:
- mol: the molecule
- confId1: the id of the first conformer
- confId2: the id of the second conformer
- atomIds: (optional) list of atom ids to use a points for
alingment - defaults to all atoms
- prealigned: (optional) by default the conformers are assumed
be unaligned and will therefore be aligned to the
first conformer
|
GetConformerRMSMatrix(mol,
atomIds=None,
prealigned=False)
| source code
|
Returns the RMS matrix of the conformers of a molecule.
As a side-effect, the conformers will be aligned to the first
conformer (i.e. the reference) and will left in the aligned state.
Arguments:
- mol: the molecule
- atomIds: (optional) list of atom ids to use a points for
alingment - defaults to all atoms
- prealigned: (optional) by default the conformers are assumed
be unaligned and will therefore be aligned to the
first conformer
Note that the returned RMS matrix is symmetrically, i.e. it is the
lower half of the matrix, e.g. for 5 conformers:
rmsmatrix = [ a,
b, c,
d, e, f,
g, h, i, j]
This way it can be directly used as distance matrix in e.g. Butina
clustering.
|
EnumerateLibraryFromReaction(reaction,
sidechainSets)
| source code
|
Returns a generator for the virtual library defined by
a reaction and a sequence of sidechain sets
>>> from rdkit import Chem
>>> from rdkit.Chem import AllChem
>>> s1=[Chem.MolFromSmiles(x) for x in ('NC','NCC')]
>>> s2=[Chem.MolFromSmiles(x) for x in ('OC=O','OC(=O)C')]
>>> rxn = AllChem.ReactionFromSmarts('[O:2]=[C:1][OH].[N:3]>>[O:2]=[C:1][N:3]')
>>> r = AllChem.EnumerateLibraryFromReaction(rxn,[s2,s1])
>>> [Chem.MolToSmiles(x[0]) for x in list(r)]
['CNC=O', 'CCNC=O', 'CNC(C)=O', 'CCNC(C)=O']
Note that this is all done in a lazy manner, so "infinitely" large libraries can
be done without worrying about running out of memory. Your patience will run out first:
Define a set of 10000 amines:
>>> amines = (Chem.MolFromSmiles('N'+'C'*x) for x in range(10000))
... a set of 10000 acids
>>> acids = (Chem.MolFromSmiles('OC(=O)'+'C'*x) for x in range(10000))
... now the virtual library (1e8 compounds in principle):
>>> r = AllChem.EnumerateLibraryFromReaction(rxn,[acids,amines])
... look at the first 4 compounds:
>>> [Chem.MolToSmiles(next(r)[0]) for x in range(4)]
['NC=O', 'CNC=O', 'CCNC=O', 'CCCNC=O']
|
ConstrainedEmbed(mol,
core,
useTethers=True,
coreConfId=-1,
randomseed=2342,
getForceField=<Boost.Python.function object at 0x577df280>,
**kwargs)
| source code
|
generates an embedding of a molecule where part of the molecule
is constrained to have particular coordinates
Arguments
- mol: the molecule to embed
- core: the molecule to use as a source of constraints
- useTethers: (optional) if True, the final conformation will be
optimized subject to a series of extra forces that pull the
matching atoms to the positions of the core atoms. Otherwise
simple distance constraints based on the core atoms will be
used in the optimization.
- coreConfId: (optional) id of the core conformation to use
- randomSeed: (optional) seed for the random number generator
An example, start by generating a template with a 3D structure:
>>> from rdkit.Chem import AllChem
>>> template = AllChem.MolFromSmiles("c1nn(Cc2ccccc2)cc1")
>>> AllChem.EmbedMolecule(template)
0
>>> AllChem.UFFOptimizeMolecule(template)
0
Here's a molecule:
>>> mol = AllChem.MolFromSmiles("c1nn(Cc2ccccc2)cc1-c3ccccc3")
Now do the constrained embedding
>>> newmol=AllChem.ConstrainedEmbed(mol, template)
Demonstrate that the positions are the same:
>>> newp=newmol.GetConformer().GetAtomPosition(0)
>>> molp=mol.GetConformer().GetAtomPosition(0)
>>> list(newp-molp)==[0.0,0.0,0.0]
True
>>> newp=newmol.GetConformer().GetAtomPosition(1)
>>> molp=mol.GetConformer().GetAtomPosition(1)
>>> list(newp-molp)==[0.0,0.0,0.0]
True
|
assigns bond orders to a molecule based on the
bond orders in a template molecule
Arguments
- refmol: the template molecule
- mol: the molecule to assign bond orders to
An example, start by generating a template from a SMILES
and read in the PDB structure of the molecule
>>> from rdkit.Chem import AllChem
>>> template = AllChem.MolFromSmiles("CN1C(=NC(C1=O)(c2ccccc2)c3ccccc3)N")
>>> mol = AllChem.MolFromPDBFile(os.path.join(RDConfig.RDCodeDir, 'Chem', 'test_data', '4DJU_lig.pdb'))
>>> len([1 for b in template.GetBonds() if b.GetBondTypeAsDouble() == 1.0])
8
>>> len([1 for b in mol.GetBonds() if b.GetBondTypeAsDouble() == 1.0])
22
Now assign the bond orders based on the template molecule
>>> newMol = AllChem.AssignBondOrdersFromTemplate(template, mol)
>>> len([1 for b in newMol.GetBonds() if b.GetBondTypeAsDouble() == 1.0])
8
Note that the template molecule should have no explicit hydrogens
else the algorithm will fail.
It also works if there are different formal charges (this was github issue 235):
>>> template=AllChem.MolFromSmiles('CN(C)C(=O)Cc1ccc2c(c1)NC(=O)c3ccc(cc3N2)c4ccc(c(c4)OC)[N+](=O)[O-]')
>>> mol = AllChem.MolFromMolFile(os.path.join(RDConfig.RDCodeDir, 'Chem', 'test_data', '4FTR_lig.mol'))
>>> AllChem.MolToSmiles(mol)
'COC1CC(C2CCC3C(O)NC4CC(CC(O)N(C)C)CCC4NC3C2)CCC1N(O)O'
>>> newMol = AllChem.AssignBondOrdersFromTemplate(template, mol)
>>> AllChem.MolToSmiles(newMol)
'COc1cc(-c2ccc3c(c2)Nc2ccc(CC(=O)N(C)C)cc2NC3=O)ccc1[N+](=O)[O-]'
|
ADJUST_EMPTY
- Value:
rdkit.Chem.rdmolops.AdjustQueryWhichFlags.ADJUST_EMPTY
|
|
ADJUST_IGNOREDUMMIES
- Value:
rdkit.Chem.rdmolops.AdjustQueryWhichFlags.ADJUST_IGNOREDUMMIES
|
|
ADJUST_RINGSONLY
- Value:
rdkit.Chem.rdmolops.AdjustQueryWhichFlags.ADJUST_RINGSONLY
|
|
ADJUST_SETALL
- Value:
rdkit.Chem.rdmolops.AdjustQueryWhichFlags.ADJUST_SETALL
|
|
ALLOW_CHARGE_SEPARATION
- Value:
rdkit.Chem.rdchem.ResonanceFlags.ALLOW_CHARGE_SEPARATION
|
|
ALLOW_INCOMPLETE_OCTETS
- Value:
rdkit.Chem.rdchem.ResonanceFlags.ALLOW_INCOMPLETE_OCTETS
|
|
CHI_TETRAHEDRAL_CCW
- Value:
rdkit.Chem.rdchem.ChiralType.CHI_TETRAHEDRAL_CCW
|
|
CHI_TETRAHEDRAL_CW
- Value:
rdkit.Chem.rdchem.ChiralType.CHI_TETRAHEDRAL_CW
|
|
COMPOSITE_AND
- Value:
rdkit.Chem.rdchem.CompositeQueryType.COMPOSITE_AND
|
|
COMPOSITE_XOR
- Value:
rdkit.Chem.rdchem.CompositeQueryType.COMPOSITE_XOR
|
|
SANITIZE_ADJUSTHS
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_ADJUSTHS
|
|
SANITIZE_CLEANUP
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_CLEANUP
|
|
SANITIZE_CLEANUPCHIRALITY
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_CLEANUPCHIRALITY
|
|
SANITIZE_FINDRADICALS
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_FINDRADICALS
|
|
SANITIZE_KEKULIZE
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_KEKULIZE
|
|
SANITIZE_PROPERTIES
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_PROPERTIES
|
|
SANITIZE_SETAROMATICITY
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_SETAROMATICITY
|
|
SANITIZE_SETCONJUGATION
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_SETCONJUGATION
|
|
SANITIZE_SETHYBRIDIZATION
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_SETHYBRIDIZATION
|
|
SANITIZE_SYMMRINGS
- Value:
rdkit.Chem.rdmolops.SanitizeFlags.SANITIZE_SYMMRINGS
|
|
UNCONSTRAINED_ANIONS
- Value:
rdkit.Chem.rdchem.ResonanceFlags.UNCONSTRAINED_ANIONS
|
|
UNCONSTRAINED_CATIONS
- Value:
rdkit.Chem.rdchem.ResonanceFlags.UNCONSTRAINED_CATIONS
|
|