Commit Graph

20 Commits

Author SHA1 Message Date
Rachael Pirie
58023dd3b8 Add Double Cubic Lattice Volume (DCLV). (#7234)
* Add Double Cubic Lattice Volume (DCLV).

Method to compute the solvent accessible surface area and volume, van der Waals volume, compactness and packing density of a protein. Implemented from:  Frank Eisenhaber, Philip Lijnzaad, Patrick Argos, Chris Sander and Michael Scharf, "The Double Cubic Lattice Method: Efficient Approaches to Numerical Integration of Surface Area and Volume and to Dot Surface Contouring of Molecular Assemblies", Journal of Computational Chemistry, Vol. 16, No. 3, pp. 273-284, 1995.

* refactor

* DCLV is no longer a configuration option

* add to the docs

* standalone test has been removed

* reduce use of pointers as args

* DCLV to catch_tests

* update python wrapper

* add copyright statements

---------

Co-authored-by: greg landrum <greg.landrum@gmail.com>
2024-03-20 13:35:54 +01:00
Ric
880a8e5725 Reformat Python code for 2023.03 release (#6294)
* run yapf

* run isort

---------

Co-authored-by: Greg Landrum <greg.landrum@gmail.com>
2023-04-28 06:53:56 +02:00
Eisuke Kawashima
b9a5be5a2d miscellaneous updates (#4284)
* Remove accidentally tracked files and unset x flag

* Ignore ComicNeue

* Unify test tag to `reader`

* Trivial destructors

* Bump CMAKE_CXX_STANDARD to 14 (#4165)
2021-07-13 06:57:29 +02:00
Greg Landrum
df2b6c8a8c Fixes #4167 (#4174) 2021-05-27 07:30:06 -04:00
guillaume godin
df609d45f8 Add CoulombMat calculator (#2993)
* Coulomb Mat v0.1 issue on linux

* use static 3D molecule instead of generating 3D conf for testing

* fix tokenize

* fix issue removeHs

* update test for sdf 3D molecule

* strip things back to just do the basic coulomb matrix

* add RDKIT_DESCRIPTORS_EXPORT

* fix 3 typos and a missing const

* Update rdMolDescriptors.cpp

Co-authored-by: greg landrum <greg.landrum@gmail.com>
Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>
2020-03-15 17:38:21 +01:00
Brian Kelley
f518805f1f Remove redudant (and case sensitive) files 2020-03-05 09:17:27 -05:00
Brian Kelley
96353c3a8b Add BCUT 2D descriptors (#2957)
* [WIP] Add BCUT 2D descriptors

* Use the standard RDKit license

* Add Check for EIGEN3

* Add vector param, fix some formatting, remove debug print

* Add make_burden function, optimize symmetric eigenvalues

* Add some tests, finalize API

* Make the python API return tuples

* Updates docs

* Remove unused variable

* Fixed up C++ tests

* Remove std::pair wrapper, don't build BCUT when missing EIGEN

* Add bigger test case for BCUTs

* Accidentally removed the wrong code
2020-02-23 16:09:36 +01:00
Greg Landrum
99aab840e7 add test for inertial shape factor 2018-09-17 08:47:11 +02:00
Greg Landrum
4e877080e8 Add custom 3D Descriptors (#1867)
* 3D customs Descriptors

* some cleanups

* adding tests for 3D customs

* add WHIM out files

* fix div by zeros and add testcases

* add back a local change

* run clang-format

* switch to fabs
2018-05-14 15:07:55 +02:00
Greg Landrum
c85f33dc3b Add EEM partial charges (#1828)
* EEM implementation

* EEM

improve speed by a factor of 2
remove lapack

* Rename eem.out to eem1.out

* Add new test_data

* Delete set00.sdf

* Add files via upload

* Update testEEM.cpp

add testEEM2 not sure rdkit can read the zip file not tested... github cannot handle this large sdf file

* Add files via upload

* Delete setEEM2.sdf.zip

* Add files via upload

* Update testEEM.cpp

* cleaning EEM implementation

* few modifications on EEM imp

* remove compiler warnings; make tests actually test

* more cleanup

* unique_ptrs instead of bare ptrs

* more cleanup

* cleanup to get non-VC++ builds to work
2018-05-07 17:48:15 +02:00
Maciej Wójcikowski
10fbd483bb [MRG] Fix PDB reader + add argument to toggle proximity bonding (#1629)
* Add parameter to skip proximity bonding during PDB reading

* Test proximityBonding flag

* Remove multivalent Hs and bonds to metals in PDB

* Add tests for multivalent Hs and metal unbinding

* Remove covalent bonds to waters

* Test unbinding of HOHs

* Refactor funxtions

* Rename flag for cosistency

* Include flavor in double bond perception

* Add metalorganic test (APW ligand)

* Validate input foe IsBlacklistedPair and minor changes.
2017-11-15 06:53:31 +01:00
Greg Landrum
51b5ef89cc Add a collection of new 3D descriptors (#1467)
* 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
2017-07-02 11:28:48 +02:00
Greg Landrum
fb2c546948 Fix/github1262 (#1265)
* fix for calculation of prinicipal moments of inertia

* fix a typo
update expected values

* PMI and NPR tests working

* cleanup some of the other descriptors and tests

* Test against Moments.py descriptors

* add new tests from Brian

* remove some warnings
2017-01-22 05:49:52 +01:00
gedeck
0845573a45 Script PythonFormat uses yapf to check the formatting of Python files 2016-10-29 17:13:13 -04:00
gedeck
4ecbad332c yapf formatting of recent changes to Python code in rdkit and Code 2016-10-24 11:57:08 -04:00
Greg Landrum
4f2ec84e7b Add some 3D molecular descriptors (#1084)
* update .gitignore

* foundation for 3D descriptors
move PBF into core

* cleanup work

* a bit more cleanup

* move the principal moments calc to MolTransforms

* cleanup

* cleanups

* add caching of the principal moments and values

* do not include the 3D descriptors in MolDescriptors.h

* the properties are computed

* add PMI descriptors and tests

* add tests for NPR descriptors

* return 0 when the largest PMI is zero

* PMI edge case tests

* NPR edge case tests

* PBF edge case tests

* PBF edge case tests

* more edge cases

* add a few more 3d descriptors

* add defns to docs

* tests for the new descriptors

* add versions to new descriptors

* add 3d descriptors to python wrapper

* add eigen support to the travis build

* try to get non-windows builds working

* remove computeCovarianceMatrix() from java wrapper

* make pmi property names "private"
2016-10-10 08:34:08 -04:00
Greg Landrum
b9a78bb607 Fixes #351 2014-10-14 01:20:42 +02:00
Sereina Riniker
f7d03bfa01 implementation of USRCAT descriptor added 2013-08-22 14:56:00 +02:00
Sereina Riniker
8a5edebfaf c++ implementation of USR descriptor added 2013-08-21 16:07:22 +02:00
Greg Landrum
a39400242d add some ring count descriptors 2013-02-15 06:21:08 +00:00