Hi,
CVS version has changed again !
Some time ago the performance was discussed:
http://sourceforge.net/mailarchive/forum.php?thread_id=4857368&forum_id=26962
I've found another reason for a slower loading process.
All molecules uses (since that release) a unique SMILES hash code, which
enables uniqueness checkings.
This must be calculated at least once, so this requires also runtime.
1. for creating unique renumbering (Morgan), runtime ~O(N^3), because
it's a modified breadth first search (BFS).
2. hashing
And because the actual up/down auto-detection contained a bug, all hash
codes have changed. So, this is an offical warning for users using this
code as part of an ID or something else.
This should not in general used as primary key in a database, but for
uniqueness checking this is a fast possibility, if you store this value.
I think i will add a flag, use simple hashing or something else to be
available with the next release in JOEMol, which then will avoid the
'unique' hashing method.
But then also all auto-assign methods for cis/trans and up/down should
use joelib.util.IsomerismDetection which is not the case at the moment
(e.g. JOEMol2Smi has it's own method).
So i've replaced the actual auto-detection method in the SMILES
generator by the auto-detection method in
// if the autoAssignFlag is true also up/down flags are assigned
IsomerismDetection.isCisTransBond(bond, autoAssignFlag);
Kind regards, Joerg
--
Dipl. Chem. Joerg K. Wegner
Center of Bioinformatics Tuebingen (ZBIT)
Department of Computer Architecture
Univ. Tuebingen, Sand 1, D-72076 Tuebingen, Germany
Phone: (+49/0) 7071 29 78970
Fax: (+49/0) 7071 29 5091
E-Mail: mailto:we...@in...
WWW: http://www-ra.informatik.uni-tuebingen.de
--
Never mistake motion for action.
(E. Hemingway)
Never mistake action for meaningful action.
(Hugo Kubinyi,2004)
|