* handle the heavy-atom degree queries differently
* Fixes#1563
* add a test for the heavy atom degree option
* Support (and test) adjustHeavyDegree in the cartridge too.
* test results
* Adds RGroupDecomp free function and python wrapper
* Fixes subtle bug, adds new RGroupDecomp API
* Updates results for the subtle bug fix. Verified results were correct.
* Removes smilesCaching.
* Changes RGroupDecompose ordering, adds docstrings and more tests
* Fixes atom documentation
* Fixes#1461
This is a complicated one. Basically URANGE_CHECK when
used on unsigned integers has a problem when the size of
the range it’s checking is 0. The standard operations is
to check
URANGE(num, size-1)
Which (for unsigned integers) obviously rolls over.
This fixes all usage cases to be
URANGE(num+1, size)
And fixes the bugs found. (addBond and the mmff tests)
* Fixes#1461 - Updates URANGE_CHECK to be 0<=x<hi
* very basics
* add the version to get all matches
* better exceptions, including tests
* documentation and actually add the test code
* responses to review
* move detectBondStereoChemistry() into MolOps
* switch more code over to using the new function
* add an addStereoChemistryFrom3D() function. Needs testing still.
* add some tests
* cleanups and rename
This actually just causes the molecule processing to fail in a reasonable amount of time; it is not an actual fix to the underlying ring-finding problem
* Fixes#1550
* might as well update properties on the r groups too
* add option to remove Hs from sidechains;
expose a few more parameters to python;
expose ctor with parameter object to python
* first steps towards flexible colour palettes
* add B&W palette and a test for it
* add python support;
this is, once again, not the best API due to the inability to auto-translate boost::tuples at this point
* more palette control from python
* rename some of the swig-wrapped types to make them more consistent
* handle palettes that do not have a default value
* Fixes blanking of non-query atom data when QueryAtomData was being pickled
* Adds old version pickle test for properties
* Makes pickle py2 and py3 compatible
* switch from using `[D0]` to `[*]` to ensure single atom fragments are correctly handled in the pattern fingerprint;
Fixes#1496
* update expected reaction similarity results
* Adds canonicalization of atom maps
* Removes debugging statments and commented out code
* Fixed bad mapping of mmps with no cores (1-cut), remove sanitization
* First entry of the SubstructLibrary module
* Switch to shared_ptrs for memory safety
* run clang-format and add a test
* only build when threadsafe_sss is enabled, only test when test_multithreaded is enabled
* Adds PRECONDITION
* Adds exceptions for out of range errors
* Changes getQueryBits to makeQueryBits for clarity
* Adds API point to add Binary and Smiles directly
* Replaces 0 with NULL for clarity.
* Removes debugging code.
* Makes endIdx non-inclusive
* Adds substruct searching options
* Adds preconditions
* Small documentation cleanup and removes a line of code.
* Add DataStructs library dependency
* Actually uses passed in parameters
* Adds TrustedSmiles/Binary inputs
* Adds more api testing options/trusted smiles and binary inputs
* Finalizes API adds docs and doctests
* Minor copyright fixes and such
* Adds RDProps updateProps API point
* AdjustQuery now copies over original atom data to the query ato
* Preserves existing data on the replacing atom
* Exposes preserveProps to Python replaceAtom/Bond
* expose and test GetDrawCoords()
* very basics are working; still loads of work to do
* very basics are working; still loads of work to do
* symbols and arrows kind of work
* switch to Nadine's approach for drawing
needs more work (like arrows and pluses) but already is not too bad
* better, but agents still to close to arrow and arrow is too short
* add a test for rxns without agents
* fix picking of cid;
drawing reactions without reactants or without products should in theory now work, but additional work is needed to get the arrows to show up
* make reactions without reactants or without products draw properly
* tweak vshift a bit; would be good to have a better solution to this
* do not draw H2O as OH2
* add option to use highlighting to show atom maps
* highlight bonds too
* cleanup
* add drawReaction to the python wrapper
* docs
* remove some printing
* fix (for real) the drawing of degree zero atoms
* ensure ring finding gets done; add some more tests
* add some SMARTS-based tests; these do not work
* improve reactant highlighting in rxn drawing
- define default colors for highlighting of reactants, atom or bonds
in the drawing options
- make highlighting colors customizable through the API
* rename to test4 in prep for merge
* temporarily disable test4 since it does not work anyway
* fix some kekulization problems
* fix YA unicode problem
* remove a stupid typo
* Reset the numBonds count.
NumBonds needs to be reset in clear(). This has been around for a while (Nov 16?) and took Noel a couple of days to track down.
* add a test
* 3D Descriptors Dragons
* stripped down, not yet working
* get this building on a non C++-11 compiler
* move the python test to the python directory
* move the python test to the python directory
* add the python test
* now at least those tests runn
* warning comment
* some basic refactoring and cleanup
* get python wrapper "working" (completely untested)
* fix Name
* fixing AutoCorr & RDF
* AutoCorr test added
* RDF reviewed based on AutoCorr comments
* fix Morse code
* Morse reviewed
* Correct Morse & start Getaway
* correct MORSE test
* start Getaway clean up
* simplification of Whim
* better
* fix Getaway
* fix RCON
* merge repaired
* adding Dragon 2D autocorrelations descriptors
* fix the 3D autocorrelation descriptors based on the modification in
Dragon.
* Adding the 2D autocorrelation descriptors (no need of Eigen
dependency for this one)
* Adding 2D test case
* IState … no idea for the moment
* there is an error in 2D computation (memory error ???)
* fix the IState for molecules with Hs
* need to use getTotalNumHs(true) not getTotalNumHs()
* also need to remove Hs in both dv and d!
* fixing Rcov values
I fix the Rcov values
* fix Getaway
* remove push_back
* remove call to sum
* improve tests
* fix getaway
* adding precision parameter to GETAWAY
* adding rouding (1e-3)
* fix WHIM
* use void in declarations of function
* update MolDescriptors link
* remove print option in WHIM
* fix python wrapper to 3D descriptors.
- all modifications reduce computation time by a factor of 3!
* final fix for Getaway
* all output are fixed except the 2 first values due to clustering
approach.
* cluster cannot be fixed du tu float precision issue between Java &
c++
* best fix of ITH and ISH
* use the same algorithm as in Dragon 6 but there is still a deviation
* remove std::move
* std:move only works on c++ 11
* fixing issue based on Greg Comments
* auto2D still not working on my env
* update 3d test.py
* auto 2D not working after the first loop test
* tighten up the tests
* change name
* update, but still does not pass
* make this run (though it does not work)
* re-enable test3D
* some cleanup
* add GETAWAY test data. Note that the tests fail
* fix the ATS and ATSC autocorrelation 2D
Broto Moreau and Geary autocorrelation are not correct again a specificity of Dragon to compute them. The result are not consistant with Padel because we use the relative weigth not in Padel.
* one minor change to get things to compile
* fix the M & G matrix computation
fix inversion in the computation of the equations for both M & G matrixes
* update autocorr2d tests
* 192 examples
* fix issue in cluster 0.01 0.009 case
this is not correct all the cases
* update GETAWAY expected values to reflect the fact that we cannot reproduce the literature values exactly
fix a leak in GETAWAY
* fix the negative values in gamma
this is strickly the implementation that we find in the book molecular descriptors for chemoinformatics (except the case where an atom is already in the axis in this case it should be added in the symetric list which is not the case in this implementation)
* Update WHIM.cpp
adding the axis atoms to the symetrical list
* update WHIM tests
* add AUTOCORR2D to MolDescriptors and the python wrappers
* start adding tests
* test the python versions of the new descriptors
* update list of descriptors
* a bit of cleanup and modernization
* switch to -j3
* back to -j2
* disable static libs
* allow dynamic linking of swig wrappers
* turn off the py27 builds while we are testing
* Install java and SWIG
* re-enable python2.7
* add a test (currently fails, of course)
* backup, not really working
* Fixes#1240
* a bit more parameter tweaking to get some more structures to embed