Improve Conformational Sampling of Small and Large Ring Molecules (#2999)

* improvements for smal anr large ring conformer generation

* add documentation and reorder parameters in EmbedParam

* resolve merge conflict due to coordMap null pointer

* minor changes to address merge comments

* reorder variables in EmbedParameters

* add regression test for small ring and macrocycle torsion preferences

* not apply small ring torsions to bridged ring systems

* fix and test for bridged small rings torsion pattern exclusion

* add ETKDGv3 and srETKDGv3 option to keep compatiblity for original ETKDG

* EKTDG version 3 related minor fix

* add reference to doc string

* Java wrapper for ETKDGv3

* fix doc

* change CPCI to shared_ptr, but it seems to be much slower

* minor modifications to small bridged ring systems, and share_ptr from previous commit is fine

* rollback from shared_ptr(map) to just map

* run clang-format

Co-authored-by: Shuzhe Wang <shuwang@eu-login-10.euler.ethz.ch>
Co-authored-by: Shuzhe Wang <shuwang@eu-login-14.euler.ethz.ch>
Co-authored-by: Shuzhe Wang <shuwang@eu-login-17.euler.ethz.ch>
Co-authored-by: Shuzhe Wang <shuwang@eu-login-45.euler.ethz.ch>
Co-authored-by: Shuzhe Wang <shuwang@eu-login-05.euler.ethz.ch>
Co-authored-by: Shuzhe Wang <shuwang@eu-login-15.euler.ethz.ch>
Co-authored-by: greg landrum <greg.landrum@gmail.com>
This commit is contained in:
hjuinj
2020-03-23 21:57:46 +08:00
committed by GitHub
parent a6cafc4635
commit acdfe26dea
18 changed files with 1516 additions and 168 deletions

View File

@@ -66,6 +66,8 @@
%ignore RDKit::DGeomHelpers::ETDG;
%ignore RDKit::DGeomHelpers::ETKDG;
%ignore RDKit::DGeomHelpers::ETKDGv2;
%ignore RDKit::DGeomHelpers::ETKDGv3;
%ignore RDKit::DGeomHelpers::srETKDGv3;
%include <GraphMol/DistGeomHelpers/Embedder.h>
@@ -74,6 +76,8 @@
%newobject RDKit::DGeomHelpers::getETDG;
%newobject RDKit::DGeomHelpers::getETKDG;
%newobject RDKit::DGeomHelpers::getETKDGv2;
%newobject RDKit::DGeomHelpers::getETKDGv3;
%newobject RDKit::DGeomHelpers::getsrETKDGv3;
%inline {
namespace RDKit{
namespace DGeomHelpers {
@@ -89,6 +93,12 @@
EmbedParameters *getETKDGv2() {
return new EmbedParameters(ETKDGv2);
}
EmbedParameters *getETKDGv3() {
return new EmbedParameters(ETKDGv3);
}
EmbedParameters *getsrETKDGv3() {
return new EmbedParameters(srETKDGv3);
}
}
}
}