Menu

#568 bug in NumericalSurface

master
closed
None
5
2016-08-12
2007-12-07
JohnB
No

If you try to calculate the surface area using NumericalSurface for protein 2UZO, you obtain the following results:

33401 with solvent_radius=1.4
303 with solvent_radius=0.1
0 with solvent_radius=0

The results for NumericalSurface don't seem to make sense. Using a radius of zero is supposed to give the vdw surface, but it does not. Protein is attached. Paths will need to be changed in the code below.

package pocket;

import java.io.File;

import java.io.FileReader;

import java.io.InputStream;

import java.util.List;

import org.openscience.cdk.ChemFile;

import org.openscience.cdk.geometry.surface.NumericalSurface;

import org.openscience.cdk.interfaces.IAtom;

import org.openscience.cdk.interfaces.IAtomContainer;

import org.openscience.cdk.interfaces.IBioPolymer;

import org.openscience.cdk.interfaces.IChemFile;

import org.openscience.cdk.interfaces.IChemModel;

import org.openscience.cdk.interfaces.IChemSequence;

import org.openscience.cdk.interfaces.IMonomer;

import org.openscience.cdk.io.IChemObjectReader;

import org.openscience.cdk.io.PDBReader;

import org.openscience.cdk.nonotify.NNChemFile;

import org.openscience.cdk.protein.data.PDBAtom;

import org.openscience.cdk.protein.data.PDBMonomer;

import org.openscience.cdk.protein.data.PDBPolymer;

import org.openscience.cdk.protein.data.PDBStrand;

import org.openscience.cdk.tools.manipulator.ChemFileManipulator;

/**

*

  • @author jb

*/

public class Main {

/* Creates a new instance of Main /

public Main() {

}

public void testProtein() throws Exception {

String filename = "C:/Documents and Settings/jb/My Documents/pocket/java/pocket/2UZO.pdb";

System.out.println(filename);

InputStream ins = this.getClass().getClassLoader().getResourceAsStream(filename);

System.out.println(ins);

//IChemObjectReader reader = new PDBReader(ins);

IChemObjectReader reader = new PDBReader(new FileReader(new File(filename)));

ChemFile chemFile = (ChemFile) reader.read(new NNChemFile());

//assertEquals(1, chemFile.getChemSequenceCount());

org.openscience.cdk.interfaces.IChemSequence seq = chemFile.getChemSequence(0);

//assertEquals(1, seq.getChemModelCount());

IChemModel model = seq.getChemModel(0);

//assertEquals(1, model.getMoleculeSet().getMoleculeCount());

IAtomContainer container = model.getMoleculeSet().getMolecule(0);

NumericalSurface surf = new NumericalSurface(container);

surf.calculateSurface();

double surfarea;

surfarea = surf.getTotalSurfaceArea();

System.out.println(surfarea);

IBioPolymer mol = (IBioPolymer)container;

//assertEquals(327, mol.getAtomCount());

System.out.println(mol.getAtomCount());

//assertEquals(46, mol.getMonomerCount());

System.out.println(mol.getMonomerCount());

//assertNotNull(mol.getMonomer("THRA1", "A"));

//assertEquals(7, mol.getMonomer("THRA1", "A").getAtomCount());

//assertNotNull(mol.getMonomer("ILEA7", "A"));

//assertEquals(8, mol.getMonomer("ILEA7", "A").getAtomCount());

IAtom nAtom = mol.getAtom(94);

//assertTrue(nAtom instanceof PDBAtom);

PDBAtom atom = (PDBAtom)nAtom;

System.out.println(atom.getSymbol());

//assertEquals("C", atom.getSymbol());

//assertEquals(95, atom.getSerial());

//assertEquals("CZ", atom.getName());

//assertEquals("PHE", atom.getResName());

//assertEquals("13", atom.getResSeq());

//assertEquals(1.0, atom.getOccupancy(), 0.001);

//assertEquals(6.84, atom.getTempFactor(), 0.001);

}

/**

  • @param args the command line arguments

*/

public static void main(String[] args) throws Exception{

Main fr = new Main();

fr.testProtein();

String filename = "C:/Documents and Settings/jb/My Documents/pocket/java/pocket/2UZO.pdb";

System.out.println(filename);

}

}

Related

Bugs: #568

Discussion

  • JohnB

    JohnB - 2007-12-07

    protein 2UZO

     
  • Egon Willighagen

    • Group: --> master
     
    • Rajarshi Guha

      Rajarshi Guha - 2016-08-11

      Gives a non-zero value when solvent radius = 0.

      Can you update the bug report to fixed/closed ?

      On Thu, Aug 11, 2016 at 4:03 AM, Egon Willighagen egonw@users.sf.net
      wrote:

      • Group: --> master

      Status: open
      Group: master
      Created: Fri Dec 07, 2007 07:35 PM UTC by JohnB
      Last Updated: Mon Oct 08, 2012 03:52 PM UTC
      Owner: Rajarshi Guha

      If you try to calculate the surface area using NumericalSurface for
      protein 2UZO, you obtain the following results:

      33401 with solvent_radius=1.4
      303 with solvent_radius=0.1
      0 with solvent_radius=0

      The results for NumericalSurface don't seem to make sense. Using a radius
      of zero is supposed to give the vdw surface, but it does not. Protein is
      attached. Paths will need to be changed in the code below.

      package pocket;

      import java.io.File;

      import java.io.FileReader;

      import java.io.InputStream;

      import java.util.List;

      import org.openscience.cdk.ChemFile;

      import org.openscience.cdk.geometry.surface.NumericalSurface;

      import org.openscience.cdk.interfaces.IAtom;

      import org.openscience.cdk.interfaces.IAtomContainer;

      import org.openscience.cdk.interfaces.IBioPolymer;

      import org.openscience.cdk.interfaces.IChemFile;

      import org.openscience.cdk.interfaces.IChemModel;

      import org.openscience.cdk.interfaces.IChemSequence;

      import org.openscience.cdk.interfaces.IMonomer;

      import org.openscience.cdk.io.IChemObjectReader;

      import org.openscience.cdk.io.PDBReader;

      import org.openscience.cdk.nonotify.NNChemFile;

      import org.openscience.cdk.protein.data.PDBAtom;

      import org.openscience.cdk.protein.data.PDBMonomer;

      import org.openscience.cdk.protein.data.PDBPolymer;

      import org.openscience.cdk.protein.data.PDBStrand;

      import org.openscience.cdk.tools.manipulator.ChemFileManipulator;

      /**

      *

      • @author jb

      */

      public class Main {

      /* Creates a new instance of Main /

      public Main() {

      }

      public void testProtein() throws Exception {

      String filename = "C:/Documents and Settings/jb/My
      Documents/pocket/java/pocket/2UZO.pdb";

      System.out.println(filename);

      InputStream ins = this.getClass().getClassLoader().
      getResourceAsStream(filename);

      System.out.println(ins);

      //IChemObjectReader reader = new PDBReader(ins);

      IChemObjectReader reader = new PDBReader(new FileReader(new
      File(filename)));

      ChemFile chemFile = (ChemFile) reader.read(new NNChemFile());

      //assertEquals(1, chemFile.getChemSequenceCount());

      org.openscience.cdk.interfaces.IChemSequence seq =
      chemFile.getChemSequence(0);

      //assertEquals(1, seq.getChemModelCount());

      IChemModel model = seq.getChemModel(0);

      //assertEquals(1, model.getMoleculeSet().getMoleculeCount());

      IAtomContainer container = model.getMoleculeSet().getMolecule(0);

      NumericalSurface surf = new NumericalSurface(container);

      surf.calculateSurface();

      double surfarea;

      surfarea = surf.getTotalSurfaceArea();

      System.out.println(surfarea);

      IBioPolymer mol = (IBioPolymer)container;

      //assertEquals(327, mol.getAtomCount());

      System.out.println(mol.getAtomCount());

      //assertEquals(46, mol.getMonomerCount());

      System.out.println(mol.getMonomerCount());

      //assertNotNull(mol.getMonomer("THRA1", "A"));

      //assertEquals(7, mol.getMonomer("THRA1", "A").getAtomCount());

      //assertNotNull(mol.getMonomer("ILEA7", "A"));

      //assertEquals(8, mol.getMonomer("ILEA7", "A").getAtomCount());

      IAtom nAtom = mol.getAtom(94);

      //assertTrue(nAtom instanceof PDBAtom);

      PDBAtom atom = (PDBAtom)nAtom;

      System.out.println(atom.getSymbol());

      //assertEquals("C", atom.getSymbol());

      //assertEquals(95, atom.getSerial());

      //assertEquals("CZ", atom.getName());

      //assertEquals("PHE", atom.getResName());

      //assertEquals("13", atom.getResSeq());

      //assertEquals(1.0, atom.getOccupancy(), 0.001);

      //assertEquals(6.84, atom.getTempFactor(), 0.001);

      }

      /**

      • @param args the command line arguments

      */

      public static void main(String[] args) throws Exception{

      Main fr = new Main();
      fr.testProtein();
      String filename = "C:/Documents and Settings/jb/My Documents/pocket/java/pocket/2UZO.pdb";
      System.out.println(filename);

      }

      }

      Sent from sourceforge.net because you indicated interest in
      https://sourceforge.net/p/cdk/bugs/568/

      To unsubscribe from further messages, please visit
      https://sourceforge.net/auth/subscriptions/

      --
      Rajarshi Guha | http://blog.rguha.net
      NIH Center for Advancing Translational Science

       

      Related

      Bugs: #568

  • Egon Willighagen

    • status: open --> closed