Hi,

Here are some comments regarding my commits from yesterday.

The type used to represent automorphisms has been changed from
std::vector< std::map<unsigned int, unsigned int> > to std::vector<
std::pair<unsigned int, unsigned int> >. This makes a huge difference
in performance but might require small changes in code using it (code
in svn is updated of course). When doing an automorphisms search for a
multiple fragment molecule, each fragment is treated separately and
the resulting set of automorphisms is simply the union of the
individual results. In other words, not all automorphisms will have
the same size and cover the whole molecule. Substructure search should
now also be much faster using OBIsomorphismMapper compared to smarts
although I haven't tested this yet.

The canonical labeling code now uses memory more efficiently and also
treats connected fragments individually. Performance analysis shows
that precomputing and caching stereo descriptors would be the next
part to optimize and I'll do this tonight together with some other
smaller improvements. If anyone still encounters problematic cases
(now or later), they can always send me the cases.

The canonical order is now "stable" and I'll add a unit test to check
this tonight.

Still todo: Add square-planar stereochemistry + isotopes

I've added a DataCache class to help with storing symmetry classes,
automorphisms and stereogenic units as generic data. The class uses
graph invariants and bitvec masks to check if the data needs to be
recalculated. I still need to document this although we might want to
keep this as private API?

That's it for now, feel free to ask more questions...

Tim

------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
OpenBabel-Devel mailing list
OpenBabel-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbabel-devel

Reply via email to