Open ClinicalAI opened 2 years ago
Hello and welcome!
Do you have an image or example structure of the mof and sbu complex topology?
That would help us determine if we can make it.
Andrew
Thanks for your reply,
For example something like this: https://mof.tech.northwestern.edu/mofs/15338
Given the linkers and metal: [O-]C(=O)c1cc(F)c(c(c1F)F)C(=O)[O-] [O-]C(=O)c1cc(F)c(cc1F)C(=O)[O-] [O-]C(=O)c1ccc(c(c1)F)C(=O)[O-] [Zn]O([Zn])[Zn]
We can build the MOF.
Thank you,
So, technically, stk can make things like this (see the Periodic COF topologies). However, as it stands, there is no 3D periodic PCU topology graph or vertices that will orient correctly.
Would you be interested in implementing this? if so, we can help you!
Yes, could you please help me to implement. No matter if the orientation is not correct.
If you are happy to have the first go, here are the things you need to implement:
Cof
: e.g. class PeriodicPcu(Cof):
. For this, I would copy one of the existing periodic topology graphs (e.g. PeriodicSquare
in stk/src/stk/molecular/topology_graphs/cof/periodic_square.py
), and to make a new topology graph, you just need to define the unit cell vertices (positions and vertex class) and the edges between them.stk/src/stk/molecular/topology_graphs/cof/vertices.py
that inherits from _CofVertex
(see NonLinearVertex
in that file for an example). You will need two new classes, in my opinion, a Linear3DVertex
(for building blocks with 2 functional groups) and a NonLinear3DVertex
(for building blocks with 3 or more functional groups). A new vertex class only needs to redfine two methods: map_functional_groups_to_edges
and place_building_block
. The first method defines how to assign an edge to a functional group, the second method defines how to place and orient a building block with respect to the edges connected to a vertex. There is quite a bit of testing to be done with both of these to get your structure right (avoid crossing bonds and bad alignment) -- again, I suggest using the existing vertices as starting points.@lukasturcani - please edit/add/fill in details I have missed or got wrong. (I also think this could help the documentation if you think it is a good description)
Thanks for your help. To be honest, I was looking for a simpler way, something like this in molsimplify: http://hjkgrp.mit.edu/content/molsimplify-tutorial-7-easy-ligand-functionalization-molsimplify
Unfortunately, I couldn't install molsimplify yet due to technical issues. If I can't get the output from that, I will implement the code as you suggested. Thanks again for your help.
@ClinicalAI I am interested in doing the same thing, did you implement this? I don't want to duplicate work.
Cheers.
Hi, I am wondering if there is any way to build the following MOF structures gives the metal and linker:
For example given the following building blocks (metal and linkers)
To make the following complex:
Any help or code example will be appreciated.
Thank you,