OEChem - Python Theory Manual
Version 1.3.1
Previous:
Front Matter
Up:
OEChem - Python Theory
Next:
1. Python
Contents
Front Matter
1. Python
1.1 A Bit About Learning Python
2. Introduction
2.1 OEChem and Informatics
2.2 How to Read this Manual
2.3 Getting Started with OEChem Molecules
2.4 Atoms and Bonds
2.5 Getting Started with Python-OEChem
3. Manipulating Molecules
3.1 Creating Molecule Objects
3.2 Reusing Molecules
3.3 Creating a Molecule from SMILES
3.4 Generating a SMILES from a Molecule
4. Reading and Writing Molecules
4.1 Using OEChem oemolstreams
4.2 Reading Molecules with a Generator Method
4.3 Molecular File Formats
4.4 Molecule Input and Output with Files
4.5 Reading Multi-conformer molecules
4.6 Compressed Molecule Input and Output
4.7 Format control from the command line
4.8 Flavored Reading and Writing of Molecules
5. Properties of Molecules
5.1 Stored Properties of Molecules
5.1.1 Dimension
5.1.2 Energy
5.1.3 Rxn
5.1.4 Title
5.2 Derived Properties of Molecules
5.2.1 NumAtoms, NumBonds
5.2.2 GetMaxAtomIdx, GetMaxBondIdx
5.2.3 GetAtom(pred), GetBond(pred), GetBond(atom1, atom2)
5.3 Manipulating SD File Tagged Data
5.3.1 Storing SD Data on a Molecule
5.3.2 Retrieving SD Data from a Molecule
5.3.3 Copying SD Data
5.3.4 Deleting SD Data from a Molecule
5.3.5 SD Data Example
5.4 Properties of Multi-Conformer Molecules
5.4.1 GetConf and GetConfs
5.4.2 Use of the conformer state
5.4.3 Use of the conformers as first-class objects
6. Traversing the Atoms and Bonds in a Molecule
6.1 Looping over the Atoms and Bonds of a Molecule
6.2 Looping over the Bonds of an Atom
6.3 Looping over the Neighbors of an Atom
6.4 Looping over subsets of Atoms or Bonds
6.5 Using OEChem C++ Iterators Directly
7. Properties of Atoms
7.1 Stored Properties of Atoms
7.1.1 AtomicNum
7.1.2 FormalCharge
7.1.3 ImplicitHCount
7.1.4 Isotope
7.1.5 PartialCharge
7.1.6 Hyb
7.1.7 IntType
7.1.8 Name
7.1.9 Type
7.1.10 RxnRole
7.1.11 MapIdx
7.1.12 InRing
7.1.13 SymmetryClass
7.1.14 Aromatic
7.2 Derived Properties of Atoms
7.2.1 GetDegree
7.2.2 GetExplicitDegree
7.2.3 GetExplicitHCount
7.2.4 GetExplicitValence
7.2.5 GetHvyDegree
7.2.6 GetHvyValence
7.2.7 GetParent
7.2.8 GetTotalHCount
7.2.9 GetValence
7.2.10 GetIdx
7.2.11 IsCarbon
7.2.12 IsConnected
7.2.13 IsHalogen
7.2.14 IsHydrogen
7.2.15 IsMetal
7.2.16 IsNitrogen
7.2.17 IsOxygen
7.2.18 IsPhosphorus
7.2.19 IsPolarHydrogen
7.2.20 IsSulfur
8. Properties of Bonds
8.1 Stored Properties of Bonds
8.1.1 Order
8.1.2 Aromatic
8.1.3 InRing
8.1.4 IntType
8.1.5 Type
8.1.6 Bgn
8.1.7 End
8.2 Derived Properties of Bonds
8.2.1 GetBgnIdx
8.2.2 GetEndIdx
8.2.3 GetNbr
8.2.4 GetParent
8.2.5 IsRotor
9. Atom, Bond and Conformer Indices
10. Creating Atoms, Bonds and Conformers
10.1 Using NewAtom and NewBond
10.2 Implicit vs. Explicit Hydrogen Atoms
10.3 Updating Implicit Hydrogen Counts
10.4 Making Hydrogen Atoms Implicit
10.5 Making Hydrogen Atoms Explicit
10.6 Sprouting Hydrogens in 3D
10.7 Using NewConf
11. Connectivity Processing
11.1 Determining Bonds From 3D Coordinates
11.2 Kekule Form Assignment
11.3 Perceiving Bond Orders
12. Ring Processing
12.1 Cycle Membership
12.2 Number of Ring Bonds to an Atom
12.3 Testing for Membership in a Given Ring Size
12.4 Determining Smallest Ring Membership
12.5 Identifying Connected Components
12.6 Identifying Ring Systems
12.7 Smallest Set of Smallest Rings (SSSR) considered Harmful
13. Aromaticity Processing
13.1 Aromaticity and Hückel's 4n+2 rule
13.2 Aromaticity Models in OEChem
13.3 Clearing Aromaticity
14. Stereochemistry Processing
14.1 Atom Stereochemistry
14.2 Bond Stereochemistry
15. Atom and Bond Typing
15.1 Integer Atom Types and Type Names
15.2 Tripos Atom Typing
15.2.1 OETriposAtomTypes
15.2.2 OETriposAtomTypeNames
15.2.3 OETriposTypeNames
15.2.4 OETriposAtomNames
15.3 Tripos Bond Typing
15.4 Generic Tripos Type Functions
15.5 Writing a Sybyl mol2 file using OEWriteMol2File
15.6 MacroModel Atom Typing
15.7 Generic MacroModel Type Functions
16. Formal and Partial Charges
16.1 Assigning Formal Charges
16.2 Working with Partial Charges
16.3 Determining Net Charge on a Molecule
16.4 Calculating Gasteiger Partial Charges
17. Pattern Matching
17.1 Using SMARTS
17.2 Using Query Molecules
17.3 Maximum Common Substructure Search
17.4 Clique Search
18. Coordinate Handling
18.1 Getting and Setting Coordinates of Atoms and Molecules
18.1.1 C Array Wrappers
18.2 Coordinate Manipulation
18.2.1 High-level Transform Objects
18.2.2 Molecular Geometry Routines
18.2.3 Low-level Geometry Routines
19. Logging and Error Handling
19.1 OEErrorHandler
20. Periodic Table Functions
20.1 Obtaining the Atomic Symbol of an Atom/Element
20.2 Obtaining the Atomic Number from an Atomic Symbol
20.3 Properties of the Elements
20.3.1 OEGetAverageWeight
20.3.2 OEGetDefaultMass
20.3.3 OEGetCovalentRadius
20.4 Handling Isotopes
20.4.1 OEIsCommonIsotope
20.4.2 OEGetIsotopicWeight
20.5 Calculating Molecular Weight of a Compound
21. Predicate Functions
21.1 Callbacks
21.2 Predefined OEChem Functors
21.3 Writing your own Functors in Python
21.4 Composition Functors in OEChem
22. Molecular File Formats
22.1 SMILES File Format
22.1.1 OEParseSmiles
22.1.2 OECreateCanSmiString
22.2 MDL File Format (SD and Mol)
22.2.1 OEReadMDLFile
22.2.2 OEWriteMDLFile
22.3 Sybyl Mol2 File Format
22.3.1 OEReadMol2File
22.3.2 OEWriteMol2File
22.4 PDB File Format
22.4.1 OEReadPDBFile
22.4.2 OEWritePDBFile
22.5 MacroModel File Format
22.5.1 OEReadMacroModelFile
22.5.2 OEWriteMacroModelFile
22.6 XYZ File Format
22.6.1 OEReadXYZFile
22.6.2 OEWriteXYZFile
22.7 FASTA Sequence File Format
22.7.1 OEReadFastaFile
22.7.2 OEWriteFastaFile
23. Miscellaneous Utilities
23.1 OEStopWatch
23.2 OEDots
24. The SMILES Line Notation
24.1 Daylight SMILES
24.2 Extensions to Daylight SMILES
25. Biopolymer Residues
25.1 Ontology and Schema Fragility
25.1.1 Biological Hierarchies
25.1.2 Set Theory to the Rescue
25.1.3 OEChem Examples
25.1.4 Data Modeling Bibliography
25.2 Stored Properties of Residues
25.2.1 AlternateLocation
25.2.2 BFactor
25.2.3 ChainID
25.2.4 FragmentNumber
25.2.5 HetAtom
25.2.6 InsertCode
25.2.7 ModelNumber
25.2.8 Name
25.2.9 ResidueNumber
25.2.10 Occupancy
25.2.11 SecondaryStructure
25.2.12 SerialNumber
26. Valence Models
26.1 The MDL Valence Model
26.2 The OpenEye Valence Model
26.2.1 The OpenEye Charge Model
26.2.2 The OpenEye Hydrogen Count Model
27. SMARTS Pattern Matching
27.1 SMARTS Syntax
27.1.1 Atom Primitives
27.1.2 Bond Primitives
27.1.3 Logical Operators
28. Reactions
28.1 Normalization Reactions
28.2 Library Generation
29. OEChem Class Hierarchy: Why in the world are there 6 molecules?!
29.1 Atoms, Bond, Conformers, and Molecules
29.2 Objects and Free-Functions
29.3 Programming Layers: The Deep and Twisted Path
30. Appendix
30.1 Platform Notes
30.1.1 Python versions
30.1.2 General Installation Instructions
30.1.3 Linux, Redhat 7.2
30.1.4 Linux, RedHat 8, 9, RHEL 3
30.1.5 Alpha, OSF/1
30.1.6 SGI, Irix 6.5
30.1.7 Windows
30.1.8 Mac OS X
30.1.9 Installing Python from Source
31. Bibliography
Index
About this document ...
OEChem - Python Theory Manual
Version 1.3.1
Previous:
Front Matter
Up:
OEChem - Python Theory
Next:
1. Python
Documentation released on July 30, 2004.