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

RMSD reference containing protein and ligand #376

Open
bcossins opened this issue Dec 11, 2024 · 12 comments · May be fixed by #379
Open

RMSD reference containing protein and ligand #376

bcossins opened this issue Dec 11, 2024 · 12 comments · May be fixed by #379

Comments

@bcossins
Copy link

Is your feature request related to a problem? Please describe.
I want to use BioSimSpace.Metadynamics.CollectiveVariable.RMSD on a ligand pose

Describe the solution you'd like
I would like to be able to use BioSimSpace.Metadynamics.CollectiveVariable.RMSD with a ligand pose in its pocket which means a reference containing more than one molecule

Describe alternatives you've considered
I don't see an alternative to using a multi-molecule reference when using RMSD CVs with ligand poses

Additional context
Add any other context or screenshots about the feature request here.

@lohedges
Copy link
Contributor

This should be easy to do. The collective variable was actually added for steered molecular dynamics, not metadynamics. If I recall we need to provide a reference PDB at some point, so there is the need to map indices correctly. I think the logic would still carry over to a multi molecule system.

@lohedges
Copy link
Contributor

For now you can just create two CVs and use them both.

@lohedges
Copy link
Contributor

Actually, that won't work since the same name is used for the reference PDB. This is a bug, so I'll fix tomorrow.

@bcossins
Copy link
Author

Yea have been trying it but at the moment the interface blocks me from using another other than a single molecule as a reference.

I want to use a protein-ligand structure as a reference with two molecules.
Needs to be one RMSD CV that aligns on protein and ligand and then gives RMSD on ligand only.

@lohedges
Copy link
Contributor

I think you'll need to use two CVs then, otherwise there is no way to decompose, i.e. for the purposes of measuring one the ligand RMSD only.

@bcossins
Copy link
Author

It wouldnt work with two CVs.
Both openMM and plumed can calculate RMSD on a subset of the alignment atom group.

@lohedges
Copy link
Contributor

Okay, then we'll need a different API then. Will have a think.

@bcossins
Copy link
Author

Sure, no worries or rush.
For now I am doing everything in BSS but then converting to openMM and filling the context with the bits needed for protein-ligand metaD that way around. Hope this will work.

This sort of thing https://sire.openbiosim.org/cheatsheet/openmm.html#

@lohedges
Copy link
Contributor

I'm testing a new approach on this branch. Now the user passes in a full system for the system and reference parameters. (These need to be consistent.) In addition, there are two Sire selection strings that are used to define the atoms used for alignment and RMSD. An example of how to use this is shown in the modified test. The new approach should be far more flexible, although does require more user input for simple use cases.

@lohedges
Copy link
Contributor

One thing I'll add is the ability to specify a mapping between the molecule(s) used in the reference and the system so that the user doesn't need to pass a full system as the reference. At the moment it assumes that the two systems match, i.e. have the same number of molecules in the same order, etc.

@bcossins
Copy link
Author

Sounds good.
Can BSS.Metadynamics.CollectiveVariable.RMSD be used with openMM using RMSDforce and BiasVariable?

@lohedges
Copy link
Contributor

No, the only CV that currently works with OpenMM is Funnel. This is because we aren't using Plumed so the OpenMM scripts are completely custom. All CVs should work with Plumed patched engines, e.g. AMBER or GROMACS.

@lohedges lohedges linked a pull request Jan 7, 2025 that will close this issue
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

Successfully merging a pull request may close this issue.

2 participants