Commit Graph

22 Commits

Author SHA1 Message Date
Greg Landrum
8c3d698472 remove some compiler warnings 2015-03-22 18:13:58 +01:00
Greg Landrum
73213276e9 add getO3AForProbeConfs()
This is part of #445
2015-03-12 06:10:23 +01:00
Greg Landrum
d421f475b9 make the O3A multithreading tests run a bit faster (do not need to do quite so many reps) 2015-03-12 06:09:09 +01:00
ptosco
13bb831dd5 - removed a few spurious, though non harmful, "const" keywords from
Code/ForceField/MMFF/Params.h, Code/ForceField/UFF/Params.h,
  Code/GraphMol/ForceFieldHelpers/MMFF/AtomTyper.cpp
  and Code/GraphMol/ForceFieldHelpers/MMFF/AtomTyper.h (I realized
  their uselessness thanks to a warning issued by Intel C++ compiler)
- refactored O3A code
- added the possibility to set weighted constraints on selected
  atom pairs
- added an option to carry out local-only optimization
2014-04-15 22:13:54 +01:00
ptosco
bc88b4393d - Fixed a bug in Code/GraphMol/MolAlign/testMolAlign.cpp which caused
data races in the multithreaded test
- Removed a spurious #include in Code/ForceField/Wrap/ForceField.cpp
- Restored caching in Code/GraphMol/Descriptors/Crippen.cpp
2014-01-24 14:20:34 +01:00
Greg Landrum
c73792bb21 passing all tests 2014-01-24 05:16:56 +01:00
ptosco
18bfae88b7 - Refactored the O3A code to allow for different cost, weight
and scoring functions

- Added cost, weight and scoring functions using atom-based
  Crippen logP contributions

- Added relevant tests for the new functionality

Important points:
-----------------

- The constructors now accept optional pointers to
  MolHistogram objects instead of pointers to arrays of
  double. I think it is better for performance, since
  rebuilding the histogram involves running through two
  nested loops over all atoms, even though the
  3DDistanceMat is provided to the O3A constructor.
  This change breaks binary compatibility with previous
  C++ programs linking to RDKit MolAlign library; I do not
  think this is big issue, and while I was there I made
  other changes which cause binary incompatibility.
  If needed, we may preserve binary compatibility
  reverting the MolHistogram change and the other ones.

- From Python, nothing changed in the interface to previous
  MMFFO3A functionality. It MIGHT be more appropriate to
  change the "GetO3A()" function into "GetMMFFO3A()", but
  I have not done that to avoid breaking existing scripts;
  the choice is yours

- As of now, the code contains a number of conditional
  compilation directives checking for the
  USE_O3A_CONSTRUCTOR macro; if USE_O3A_CONSTRUCTOR is
  defined, then the code is built with an alternative O3A
  constructor which allows choosing whether one wishes
  to use MMFF or Crippen descriptors. Otherwise, no
  alternative constructor is built, but rather two
  functions which return a pointer to an O3A object.
  I prefer by far the first solution (namely, with
  USE_O3A_CONSTRUCTOR defined), but again, the choice is
  yours. The code is tested and works in both cases.

- Custom cost, weight and scoring functions can easily
  be defined in external programs without need to rebuild
  the RDKit, allowing flexibility. The new custom
  functionality can be accessed by calling the "bigger"
  O3A constructor.
2014-01-22 19:30:29 +01:00
Greg Landrum
b8b5263fc3 update data 2013-12-06 05:10:51 +01:00
Greg Landrum
64f01f7506 sync with master 2013-12-06 03:56:07 +01:00
ptosco
170c88ae03 - the RMSD value returned by O3A::align() and O3A::trans() is now
computed in the usual way, while previously the value computed
  by MolAlign::AlignMol(), which incorporates weights, was returned
- the C++ and Python test results were updated accordingly
2013-12-04 23:18:21 +01:00
Greg Landrum
e3b7aa74d2 support providing a distance matrix to the O3A ctor 2013-12-04 15:22:15 +01:00
Greg Landrum
5c99bd0da6 Test O3A thread safety (it passes);
Fixes #161
2013-11-20 07:08:39 +01:00
Greg Landrum
2f6c55f8cc O3A memory leak plugged
Part of #159
2013-11-20 04:29:14 +01:00
Greg Landrum
31e310cd3a merge an O3A patch from Paolo T. 2013-10-12 06:35:21 +02:00
Greg Landrum
b6029fc3ee some small cleanups 2013-10-06 06:56:16 +02:00
ptosco
42cba63468 - propagated the changes in the master branch to the O3A branch 2013-10-01 23:36:35 +02:00
Greg Landrum
b92ac7daa0 this passes all tests 2013-09-30 05:47:48 +02:00
ptosco
d557fc29cc - implemented Open3DALIGN-like alignment functionality (from both
C++ and Python)
- added relevant C++/Python tests
2013-09-29 17:03:14 +02:00
Greg Landrum
f3fbef45c5 update copyright statements 2010-09-26 17:04:37 +00:00
Greg Landrum
fe6b29fec1 dos2unix 2008-02-22 17:57:57 +00:00
Greg Landrum
5d03333c22 setup svn keywords (should have done this before import... grn) 2006-05-06 22:54:39 +00:00
Greg Landrum
75a79b6327 initial import 2006-05-06 22:20:08 +00:00