10 Commits

Author SHA1 Message Date
Brian Kelley
a7deb6fb8d Implements #8222 adds react_idx (index of reactant) to product atoms (#8231)
* Implements #8222 adds react_idx (index of reactant) to product atoms

* Remove react_idx from mol enumerator products

* Response to review, add test to ensure product only atoms aren't tagged

* Reenable tests
2025-02-06 17:07:55 +01:00
Hussein Faara
fb6219c77e MolEnumerator: use repeat counts for SRUs when present #6429 (#6938)
* MolEnumerator: use repeat counts for SRUs when present #6429

This fixes the reported bug by parsing the SRU label to infer the rnage
of allowed repetitions.

* fix build failure from wrong field initialization order

* fix build error from -Werror=sign-compare

* add tests for molblock
2023-11-28 06:52:37 +01:00
Greg Landrum
b325b3a9bb Support TautomerQuery and MolBundle queries in the cartridge (#6393)
* framework for extended query.

serialization works
to/from text doesn't work

* first pass at getting substructure search working

basic tests

improved error handling (try not to take down the server thread!)

* add serialization to MolBundle

* we really need to pickle mol properties

* basic support for molbundle

including substructure search

* tautomer and molbundle queries to JSON

* remove debug msg

* cleanup debug
initial index steps (not tested)

* remove indexing stuff since it wasn't working

will try to come back to that

* add xqm to update script

* add c++ testing for molbundle serialization

* add serialization of molbundles to python interface

* support expanding molbundles to arrays of tautomer queries

* edge cases

Signed-off-by: greg landrum <greg.landrum@gmail.com>

* change in response to review

* a bunch of updates

* make sure the mol props needed for XQMs are being serialized

* update update script

* fix binary string output from ExtendedQueryMols in python

* tautomer queries should serialize properties

* more testing never hurts

* combo of generic groups and generalized queries works

* Update Code/PgSQL/rdkit/adapter.cpp

Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>

* Update Code/PgSQL/rdkit/adapter.cpp

Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>

* Update Code/PgSQL/rdkit/adapter.cpp

Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>

* Fix weird quotes?

---------

Signed-off-by: greg landrum <greg.landrum@gmail.com>
Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>
2023-08-23 06:32:06 +02:00
Greg Landrum
7576ab9092 Fixes #6432 (#6433) 2023-06-03 06:37:15 +02:00
Eisuke Kawashima
27f711a658 Run clang-tidy (readability-braces-around-statements) (#4977)
https://github.com/rdkit/rdkit/pull/3024#discussion_r526549843
2022-03-10 08:00:10 +01:00
Greg Landrum
22da97b836 Add support for SRUs to MolEnumerator (#4563)
* preliminary first pass at SRU enumeration

* handle HH

* working
plus add a missing file... <doh!>

* passes basic tests for enumeration of multiple non-overlapping SRUs

* more SRU testing

* explore combining the SRU enumeration with enumerate()

* first step towards RepeatUnit in the python interface

* first pass at directly connected SRUs

* Fixes #4561

* make sure we don't try to enumeration SRU + LINKNODE
update python docs

* exception for ladders

* get a bit smarter about rejecting linknode enumerations

* turns out we actually *can* do ladders pretty easily

* update java wrappers

* make sure we can input from CXSMILES too

* some cleanup/documentation

* some refactoring

* response to review
2021-09-28 16:37:39 +02:00
Greg Landrum
5ab7952303 Fixes #3844: MolEnumerator and link nodes (#3845)
* backup

* Fixes #3844
2021-02-24 05:15:24 +01:00
Greg Landrum
36dea7d737 support enumerating from lists of enumerators (#3664)
support enumerating all supported operations for a molecule
2020-12-25 05:14:46 +01:00
Greg Landrum
9bcd28a4ff MolEnumerator::enumerate() should call updatePropertyCache() (#3420) 2020-09-23 17:28:45 -04:00
Greg Landrum
73d26036de Support enumerating some mol file features into MolBundles (#3257)
* backup

* compiles

* progress, but not there yet

* basics now working

* start towards adding another test

* test having two variation points

* add actual enumeration and the corresponding tests

* docs and cleanup

* cleanups to get the mac build working

* attempt to get win32 dll builds to work

* dlls are fun

* Add FixedMolSizeMolBundle class

* changes in response to review

Also: add warnings for bad input in ParseV3000Array

* a bit of refactoring

* additional testing

* does not work, backup

* LINKNODES work now

* cleanup

* allow silencing reaction validation warnings during initialization

* docs

* fix (and test) handling of empty enumerations

* silence warnings when doing alchemy

* first pass at a Python wrapper for the enumerator

* Add Java wrappers for MolBundle and the MolEnumerator

* cleanup some comment formatting
2020-07-11 12:54:23 +02:00