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

MetaMolecule for Proteins with EN and non-unique resids fails #300

Open
fgrunewald opened this issue Feb 7, 2023 · 5 comments
Open

MetaMolecule for Proteins with EN and non-unique resids fails #300

fgrunewald opened this issue Feb 7, 2023 · 5 comments
Labels
bug Something isn't working

Comments

@fgrunewald
Copy link
Member

fgrunewald commented Feb 7, 2023

Describe the bug
Generating a residue graph for proteins, connected by an EN with non-unique resids fails. This leads to some scrambling in the coordinate reading. This only affects highly symmetric proteins, where the resid and rename of two residues are the same and they are connected by an EN bond.

Work Around
Have martinize assign new resids for the protein (i.e. do not use the -resid input flag)

@fgrunewald fgrunewald added the bug Something isn't working label Feb 7, 2023
@fgrunewald
Copy link
Member Author

@pckroon any idea what to do about this one?

@pckroon
Copy link
Member

pckroon commented Feb 7, 2023

Fails how?
Another workaround/solution is to assign chain IDs at some point in the pipeline. In general we really need to be smarter in how we define what a "residue" is

@fgrunewald
Copy link
Member Author

It makes the two residues a single one, which is what it should do, but not what we want. There are no chain ID information for topologies unfortunately.

And yeah we somehow need to be smarter I agree.

@fgrunewald
Copy link
Member Author

It would be cool to use something like graph based CG (https://www.osti.gov/servlets/purl/1558004), where you essentially cluster the graph nodes based on contact and iteratively obtain coarse representations. For the building procedure this would be really cool I think

@pckroon
Copy link
Member

pckroon commented Feb 8, 2023

It would be cool to use something like graph based CG (https://www.osti.gov/servlets/purl/1558004), where you essentially cluster the graph nodes based on contact and iteratively obtain coarse representations. For the building procedure this would be really cool I think

I looked at similar methods for Cartographer way back when. The main issue for the methods I could find back then were that they all assume coarse-graining atoms is a many-to-one mapping, where each atom contributes to exactly one CG bead. And this assumption is simply not true for Martini.

It makes the two residues a single one, which is what it should do, but not what we want. There are no chain ID information for topologies unfortunately.

Maybe we should assign chain IDs based on molecule indices (if no chain info is available yet) after we create bonds. Make bonds assigns a 'mol_idx' attribute, maybe we can leverage that in a separate processor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants