Merging monomer libraries with different monomer properties
- Dominant language
- C++
- Stars
- 406
- Forks
- 134
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 24
Description
**Background**
TBD
**Requirements**
1. The user should be able to pass to Indigo two (or more) monomer libraries in KET or SDF formats, together with the library names.
> The library name will be used to differentiate where different monomer properties come from.
2. Indigo should merge those libraries, by matching any identical monomers and maintaining monomer information from all libraries.
> Exact syntax for the merged library to be decided by (and described by) the dev team.
3. Monomers should match if:
a. Their structures are the same (including the attachment points);
I. Same atoms (and their properties -- charge, isotope, etc.) and atom connectivity;
II. Same stereochemistry (if center S/R/E/Z -> match only with S/R/E/Z; if undefined -> match only with undefined);
III. Kekule/delocalised representation shouldn't stop a match;
IV. Presence of implicit/explicit hydrogens shouldn't stop a match;
b. Their attachment points are the same (the same attachment atom, the same leaving group atom, and the same R-number);
c. They are of the same monomer type (eg. base, amino-acid, CHEM).
4. KET and the custom SDF should be expanded to support properties described above.
5. On import/export form different formats, the user should be able to specify what libraries’ information is to be used.
> For example on HELM export Indigo uses the canvas content, the merged library, and the library name (to know what HELM codes to use).
Contributor guide
No contributing guide indexed for this repository
Research direction
No files, tests, or entry points are named. Start by clarifying the merged-library syntax and the required KET, SDF, and format-import/export behavior with the development team; completion cannot be determined until those design decisions are documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100