Limit the size of shortest paths discovered.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Limit the size of initial cycles discovered.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Parse a length limit to the cycle finding algorithm.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Adapt the cycle finding to use the length.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Explain the minimum length is chosen if a constructor and method limit are provided.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Constructor should still be private - debugging from last commit.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
A filter to only return cycles without a chord.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Container may be null (allowed) use the default length limit (|V|) from the graph instead.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
The rotatable bond count descriptor should not include C-N amides and terminal hydrogen- and hetero-atoms for the extended Lipinki's rule of five implementation (see Veber, D.F. et al., 2002. Journal of medicinal chemistry, 45(12), pp.2615–23). The parameters for the rotatable bond counts descriptor have been modified to that end and an option has been added to exclude simple C-N amides (ignoring tautomeric or charged constitutions).

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
The Vertex Adjacency Magnitude descriptor requires the number of heavy atom - heavy atom bonds as input. The current incorrect calculation retrieves the number of heavy atoms instead. Correct bond number estimation and test cases have been added.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Storage and manipulation of an independent edge-set, a matching. A matching can be used to represent pi bond placement in conjugated/aromatic systems.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
DisjointSetForest generally useful - move to cdk-standard. Left in the same package for now.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Maximum matching using Edmond's blossom algorithm.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Utility in the Matching API provides simplified procedure to assigning a perfect matching.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
We can correctly define the descriptors exported by each module.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Move resources files required by cdh-hash to that module and eliminates dependence on testdata.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Move the hash resources files to the same package as the test that needs them.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Dependencies that can be safely removed from cdk-group and cdk-hash.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
We can remove the dependence on cdk-extra and valency check by not use the MoleculeFactory. Using cdk-data (test) isn't ideal but is better than extra.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Move test resources to be local to the test that requires them. These files in particularly have been reused in pcore/io so the originals have been left in place for the moment.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>