Can you give us an example file or two? This would help us debug by reproducing 
the problem.

Thanks very much,
-Geoff


On Apr 24, 2013, at 11:01 AM, Pascal Muller <pascal.jm.mul...@gmail.com> wrote:

> Hi,
> 
> I have a little pybel script for generating Murcko scaffolds, which
> works well with 2.3.1, but fails on a few molecules ("Segmentation
> fault") with 2.3.2.
> 
> Depending on code modifications, the fault raises at different points,
> but I have no clue on why the bug is happening.
> 
> Below is my code shortened as much as I could.
> 
> Regards,
> Pascal
> 
> 
> 
> #!/usr/bin/env python
> # encoding: utf-8
> import sys
> import os, pybel
> import openbabel as ob
> 
> def GetMurckoFramework(mol):
>    haveAtomWithOneNeighbor,atomsWithOneNeighborList =
> checkIfIsOnlyOneNeighbor(mol)
>    while (haveAtomWithOneNeighbor):
>        for atomToDel in atomsWithOneNeighborList:
>            mol.OBMol.DeleteAtom(atomToDel) # delete atom which are
> not part of a cycle or a linker (terminal atoms)
>        haveAtomWithOneNeighbor,atomsWithOneNeighborList =
> checkIfIsOnlyOneNeighbor(mol)
>    return mol
> 
> def checkIfIsOnlyOneNeighbor(mol):
>    isAnAtomWithOneNeighbor = 0
>    atomWithOneNeighborList = []
>    for atom in ob.OBMolAtomIter(mol.OBMol):
>        if not atom.IsInRing():
>            neighborsCount = 0
>            for neighbor in ob.OBAtomAtomIter(atom):
>                neighborsCount = neighborsCount + 1
>            if (neighborsCount <= 1): # It is a terminal atom (only
> one neighbor) double bond
>                atomWithOneNeighborList.append(atom) # will be deleted
>                isAnAtomWithOneNeighbor = 1
>    return isAnAtomWithOneNeighbor, atomWithOneNeighborList
> 
> 
> def main():
>    if len(sys.argv) < 2:
>        print "No input file provided: Murcko.py filetosprocess.smi"
>        sys.exit(1)
> 
>    mol1 = pybel.readstring("smi", "C1(=Cc2cn(nc2)CC(=O)N)C(=O)NC(=O)S1")
>    mol2 = pybel.readstring("smi", "C1(=CC2=C(N=C(C2)C(=O)N)C)C(=O)NC(=O)S1")
>    li = [mol1, mol2]
> 
>    for mol in li:
>        mol = GetMurckoFramework(mol)
>        print mol
> 
> if __name__ == '__main__':
>    main()
> 
> ------------------------------------------------------------------------------
> Try New Relic Now & We'll Send You this Cool Shirt
> New Relic is the only SaaS-based application performance monitoring service 
> that delivers powerful full stack analytics. Optimize and monitor your
> browser, app, & servers with just a few lines of code. Try New Relic
> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr
> _______________________________________________
> OpenBabel-discuss mailing list
> OpenBabel-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/openbabel-discuss


------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr
_______________________________________________
OpenBabel-discuss mailing list
OpenBabel-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss

Reply via email to