RDKit - process

for atom in m.GetAtoms():
    print(atom.GetAtomicNum())

m.GetBonds()[0].GetBondType() # SINGLE
m.GetAtomWithIdx(0).GetSymbol() # 'C'
m.GetAtomWithIdx(0).GetExplicitValence() # 2

m.GetBondWithIdx(0).GetBeginAtomIdx() # 0
m.GetBondWithIdx(0).GetEndAtomIdx() # 1

m.GetBondBetweenAtoms(0,1).GetBondType() # rdkit.Chem.rdchem.BondType.SINGLE

Ring

m = Chem.MolFromSmiles('OC1C2C1CC2')
m.GetAtomWithIdx(0).IsInRing() # False
m.GetAtomWithIdx(1).IsInRing() # True
m.GetBondWithIdx(1).IsInRing() # True
m.GetAtomWithIdx(1).IsInRingSize(3) # True
# the smallest set of smallest rings (SSSR)
Chem.GetSymmSSSR(m)
Chem.GetSSSR(m)

Kekulize

still aromatic after kekulized, unless the flag is cleared.

restore flag

sanitize <-> kekulize

https://www.slideshare.net/baoilleach/we-need-to-talk-about-kekulization-aromaticity-and-smiles

2D conformation

coord values: maximize the clarity of the drawing

align with template

3D conformation

Pickleing

faster to build a molecule from a pickle than from a Mol file or SMILES string

Drawing

Substructure searching

By default, stereochemistry is not used in substructure searches.

Atom map

Last updated

Was this helpful?