Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wishlist/ideas for rewrite (major refactoring) #137

Open
kjappelbaum opened this issue Nov 1, 2022 · 0 comments
Open

Wishlist/ideas for rewrite (major refactoring) #137

kjappelbaum opened this issue Nov 1, 2022 · 0 comments

Comments

@kjappelbaum
Copy link
Owner

kjappelbaum commented Nov 1, 2022

While it does its job, it became bloated and slow. Much of this boils down to the fact that special cases are handled all across the code.

what should be changed

  1. Porphyrin handling is the main pain point, mostly because we start fragmentations on metals (and not on something like a cycle-based criterion). If we do not do this handling, the net-embedding won't be meaningful, also the building blocks won't be meaningful.
  2. Move some immutable properties to the graph and do not keep track of them through the building blocks. For instance, branching indices are - to our current definition - a property of the graph that is shared between both building blocks. Instead of keeping track of them in both building blocks, we might just leave them on the original MOF
  3. Make it easier to customize the clustering approach -> make it also work for COFs
  4. Openbabel dependency -> Mostly to extract SMILES based on the graph, we should be able to implement this ourselves
  5. Consider switching to graphtool or the rust variant of networkx

what should remain the same

  1. Having the collections of SBU molecules works great
@kjappelbaum kjappelbaum pinned this issue Nov 1, 2022
@kjappelbaum kjappelbaum changed the title Wishlist/ideas for rewrite Wishlist/ideas for rewrite (major refactoring) Nov 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant