On 08/11/2010 10:41, Andrew Dalke wrote:
> On Nov 6, 2010, at 9:33 PM, Chris Morley wrote:
>> The data file with corrected data is attached and can just replace the 
>> original in OpenBabel v2.3.0 and earlier.
>
> This raises an interesting problem in my fingerprint generation tool.
>
> I have a version string which looks like
>
>    OpenBabel-MACCS/1
>
> The idea is that tools can do a string comparison of the version fields of 
> two data sets and figure out if they are compatible. With this change I can 
> bump up the version number to
>
>    OpenBabel-MACCS/2
>
> and I can autodetect the environment by doing a simple fingerprint generation 
> and test for certain bits.
>
> However, it would be nice if there was a way to query the fingerprint plugin 
> to get a unique version number for it.
>
> I'm also curious - is there a programmatic way from Python to get the list of 
> available fingerprint plugins, and

On the commandline
   obabel -L fingerprints verbose
will give you a list of fingerprints and as much information as is 
exposed - which is not much. Missing out the verbose hardly makes any 
difference.

FP2    Indexes linear fragments up to 7 atoms.

FP3    SMARTS patterns specified in the file patterns.txt
PatternFP is definable

FP4    SMARTS patterns specified in the file SMARTS_InteLigand.txt
PatternFP is definable

MACCS    SMARTS patterns specified in the file MACCS.txt
PatternFP is definable

In C++
std::string OBPlugin::ListAsString
               (const char* PluginID, const char* param=NULL);
gives similar functionality, but I don't know whether it is exposed in 
Python.

The Descriptions of many plugin classes (which is what are presented 
here) have been expanded recently, but the fingerprints seem to have 
missed out on this and could clearly do with the kind of information 
you mentioned. The most straightforward way would be in the second 
line of the string provided by Description(). Would that be acceptable?

 > figure out how many bits they generate? For example, I don't see
 > any way to find that FP2 generates 1021 bits.
The size of the vector returned by GetFingerprint() gives an 
indication (rounded up to a power of 2).

Incidentally, "PatternFP is definable" is used in the facility to 
define your own fingerprint (without recompiling OpenBabel) from 
SMARTS patterns in a text file (choice of three formats).

Chris

------------------------------------------------------------------------------
The Next 800 Companies to Lead America's Growth: New Video Whitepaper
David G. Thomson, author of the best-selling book "Blueprint to a 
Billion" shares his insights and actions to help propel your 
business during the next growth cycle. Listen Now!
http://p.sf.net/sfu/SAP-dev2dev
_______________________________________________
OpenBabel-discuss mailing list
OpenBabel-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss

Reply via email to