-
Notifications
You must be signed in to change notification settings - Fork 54
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
Example for new MC membrane barostat #141
Comments
I am leaving here OpenMM's implementation for the MARTINI 3 parser as a reference: https://github.com/maccallumlab/martini_openmm/blob/master/martini_openmm/martini.py |
I think MARTINI would be a great addition to Molly. It would stretch our API too - it seems they use things like virtual sites and CMAP torsions? - so would be a useful opportunity to change the API to support these systems. Can MARTINI be implemented with pairwise and specific interactions for instance, or is a general interaction required? There is an experimental Gromacs file parser already in src/setup.jl but it needs a bit of work. You might be able to make that more robust and allow it to parse the MARTINI force field? PME is on the todo list, I've been avoiding it as it is a significant block of work and I haven't needed it myself yet, but that would be a great contribution too. Along with constraints and GPU performance, both of which are being worked on, that is the last thing standing in the way of proper biomolecular simulation.
Sounds good. |
Great! Then I will start working on the MARTINI 3 implementation for Molly. Here is a list of the steps I will follow:
Considering my current schedule, I might be able to finish it probably by the end of the year (~3 to ~4 months). |
Regarding |
Looks like a good set of steps. As you have been doing so far, submit smaller self-contained PRs (e.g. one for You may also get some use out of Chemfiles.jl, which we already use for the OpenMM setup and which supports Yes CMAP needs doing at some point so feel free. The Amber force fields without CMAP should work currently, minus things like PME and virtual sites. |
I'm also in for the This approach can be used even with the custom interactions to stabilize the API of the @jgreener64 What do you think about this idea? In the meantime, I will start updating the Regarding using |
Related discussion in #85. I prefer having a separation between the force field object and an object for the force field applied to a particular system. In this case specific interactions and constraints contain information on the topology, pairwise interactions generally don't, and general interactions may or may not. I would be in favour of putting those 4 things into a struct called something like |
Thanks for pointing out the relevant issue! Now that I think more about it and following what you mentioned, designing the MolecularForceField as a step before the |
@jgreener64 Hi! I just wanted to mention that I've been working on this PR slowly these last two months because it was very hectic for me, but from the 15th of this month, I will be able to resume my previous working rhythm. Bests! |
Nice one! |
Hi @jgreener64! I'm currently working on improving the Gromacs topology processing pipeline. I've divided it into a lexer and a parser. While working on creating structures for the parser output, I noticed that Martini doesn't utilize all the available fields as listed in the Gromacs documentation. What are your thoughts on incorporating support only for the Gromacs directives and fields that Martini actually uses? For instance, the Gromacs 'default' directive includes 6 fields, but Martini only makes use of 2 of them. Given that our primary goal is to support the Martini force field and not the general Gromacs topology format, I believe that this initial implementation should suffice to achieve our objective. We can always consider adding support for additional directives if it's requested or required in the future. |
Yes that sounds fine. We do want a path to supporting most things eventually, but it can be progressive. I think impementing what is required for Martini should also provide most/all of what is required for all-atom protein simulation? |
I have in mind two possible target systems to use as an example for the membrane barostat:
Each of these examples requires further development:
The easiest one is implementing a MARTINI 3 example. I can work on the required parsers and send a PR. @jgreener64, what do you think?
On the other hand, I am currently using the barostat with my own coarse-grained model. As I mentioned to you before, I am trying to improve it by using Molly's differentiable simulation. I can add an example based on my results after the publication.
The text was updated successfully, but these errors were encountered: