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

Use Charged Molecule with (Charged?) LJ Potentials #171

Open
WCEdison opened this issue Apr 30, 2019 · 5 comments
Open

Use Charged Molecule with (Charged?) LJ Potentials #171

WCEdison opened this issue Apr 30, 2019 · 5 comments

Comments

@WCEdison
Copy link
Contributor

a question concerning the documentation, I am trying to run simulation on charged lj-potential on charged particle (e.g. H3O) with GUI, though the documentation only cover as much as standard lj potential with GUI, and I am hoping to have example in documentation to call from charged lj potential (if this exists in pele) to run simulation that shows molecules (or at least the disconnectivity graph will change according due to charge even if only molecules are treated as single particle instead of moleules that can show angles between the bonds.

@js850
Copy link
Member

js850 commented May 1, 2019

@jdf43 , do you know if there are any examples in Pele with charged particles?

@farrelljd
Copy link
Contributor

@WCEdison @js850 None of which I'm aware, sorry

@WCEdison
Copy link
Contributor Author

WCEdison commented May 3, 2019

Hi, I wonder if there is any way that i can call or define a potential such that i can run the system with charged particle? As it is not mentioned in the documentations, but I will need a simulation to see the LJ potential and disconnnectivity graph of a charged water molecule. if I have the ways to define it I am happy to see if it builds and provide the result for others.

@smcantab
Copy link
Contributor

smcantab commented May 3, 2019

@WCEdison as far as I know, currently we do not have an implementation of potentials that supports Ewald or Wolff Summation (necessary for electrostatics), though we used to in one of the earlier implementations. You can write one that fits the current structure of the potentials and contribute it to the library through a pull request, or you can write a wrapper class that inherits from pele.BasePotential and the potential of a library that implements electrostatic interactions. For instance see pele/pele/amber/openmm_potential.py Then as long as you implement the get_energy and get_energy_gradient methods, you should be able to use all other tools from pele.

@js850
Copy link
Member

js850 commented May 3, 2019

There are a bunch of examples of how to create a new potential in this folder https://github.com/pele-python/pele/tree/master/examples/new_potential

some information about the System class here: https://github.com/pele-python/pele/blob/master/examples/using_the_system_class/using_the_system_class.py

If you need parallel boundary conditions there is a system class that supports that (to some extent). https://github.com/pele-python/pele/blob/master/pele/systems/blj_bulk.py At the very least you can use that as a starting point.

As @smcantab says, if you do implement new potentials or a new system we would welcome a pull request so others can take advantage of your work.

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

4 participants