computational representation of biological molecules michel f. sanner the scripps research institute...

Download Computational Representation of Biological Molecules Michel F. Sanner The Scripps Research Institute La Jolla, California The Molecular Graphics Laboratory

If you can't read please download the document

Upload: kerrie-briggs

Post on 18-Jan-2018

220 views

Category:

Documents


0 download

DESCRIPTION

TSRI Tangible Models

TRANSCRIPT

Computational Representation of Biological Molecules Michel F. Sanner The Scripps Research Institute La Jolla, California The Molecular Graphics Laboratory CRBM Sept. 9-10, 2003 UCSD, San Diego, Ca TSRI Protein-Ligand Complex Assemblies Protein-Protein Molecular Surfaces AutoDock SurfDock MSMS HARMONY TSRI Tangible Models TSRI Augmented Reality TSRI The challengeVisualizationDockingMethods Folding ProteinEngineering SequenceAnalysis Modeling MM - MD Ab Initio Methods ElectrostaticsCalculations MolecularSurfaces Etc... TSRI Python to the rescue High level language as a scripting environment MolecularSurfacesMolecularSurfaces MoleculesMolecules DataBaseDataBase ElectrostaticsElectrostatics DelaunayDelaunay HomologyHomology CSGCSG 3DViewer3DViewer MM-MDMM-MD NewMethodNewMethod YourMethodYourMethod TSRI Software components MolKit: read/write/represent/manipulate and query molecules DejaVu: General purpose 3D geometry viewer ViewerFramework: Visualization application template Mslib, PyBabel, PyMead, SFF,... (Sophie I. Coon, Michel F. Sanner and Art J. Olson, Re-usable components for structural bioinformatic, (9th Python Conference 2001) TSRI from MolKit.pdbParser import PdbParser parser = PdbParser(1crn.pdb) mols = parser.parse( ) from MolKit.pdbParser import PdbParser parser = PdbParser(1crn.pdb) mols = parser.parse( ) PDB Mol2 PQR... Parser MoleculeSet PDB parserMOL2 parser Molecule Chain Residue Atom Molecule Chain Residue Atom Molecule Residue Atom Molecule Atom MolKit TSRI MolKit Numeric MolKit TreeNode.parent.children... TreeNode adopt(child) TreeNodeSet(ListSet) [TreeNode1, TreeNode2, ].__getattr__(self, name).top.elementType TreeNode [ TreeNode1.name, TreeNode2.name, ] returns.name TSRI TreeNode, TreeNodeSet TreeNodeSet: Boolean operation uniq( ) split( ) sort( ) NodesFromName( ) findChildrenOfType( ) findParentOfType( ) TreeNode: adopt( ) / remove( ) full_name( ) NodeFromName( ) split( ) / merge( ) getParentOfType( ) findType( ) compare( ) assignUniqIndex( ) isAbove( ) / isBelow( ) TSRI TreeNode and TreeNodeSet specialization TSRI Examples >>> from MolKit import Read >>> molecules = Read(./1crn.pdb) # Read returns a ProteinSet >>> mol = molecules[0] >>> print mol.chains.residues.name >>> print mol.chains.residues.atoms[20:85].full_name() >>> from MolKit.molecule import Atom >>> allAtoms = mol. findType(Atom) >>> set1 = allAtoms.get(lambda x: x.temperatureFactor >20) >>> allResidues = allAtoms.parent.uniq() >>> import Numeric >>> for r in allResidues:... coords = r.atoms.coords... r.geomCenter = Numeric.sum(coords) / len(coords) MolKit TSRI MolKit Features Pdb, PQR, mol2 parsers Support for Sets Selection mechanism using Python syntax Secondary Structure Amber parameters assignment Atomic radii assignment (regexp) TSRI MolKit Critic: BAD No well defined API Hierarchy of proteins Danger of stamping over attributes Slow for large structures Hierarchical structure not used much Requires a Python interpreter Severe Mild TSRI MolKit Critic: GOOD Clever PDB parser Lightweight and Platform independent Dynamic (on the fly creation of attributes) Introspection Support for Set and Set operations Python syntax-based selection Re-usable component (has been combined with many Python packages developed independently) TSRI DEMO