Comments (3)
Quick thoughts now, might add more later - happy to look at a PR for any of this!
- Using LAMMPS's Python wrapper is better than the raw parsing Interchange currently uses
- All current OpenFF use cases work fine with
real
and might not work well with other styles, or I don't understand biophysics use cases in which other styles are valuable - I'm apprehensive about different unit systems creeping out into the core API or our infrastructure more generally; the behavior within a LAMMPS submodule can be whatever as long as there's some consistency in what's reported out of it (i.e.
get_lammps_energies
)
from openff-interchange.
- Using LAMMPS's Python wrapper is better than the raw parsing Interchange currently uses
I'm in agreement there! - All current OpenFF use cases work fine with real and might not work well with other styles, or I don't understand biophysics use cases in which other styles are valuable
Admittedly neither do I, I mostly included this for the sake of generality to have (if nothing else) an API-compatible reference of the LAMMPS styles - I'm apprehensive about different unit systems creeping out into the core API or our infrastructure more generally; the behavior within a LAMMPS submodule can be whatever as long as there's some consistency in what's reported out of it (i.e. get_lammps_energies)
That makes perfect sense, were I to put together a PR for this, I'd rewrite using OpenFF/pint units (I only wrote in using OpenMM units because that's what I prefer to use day-to-day :) ). An additional wrinkle regardless of the unit engine chosen is that LAMMPS in certain places uses units not defined by default in either openmm.unit or in the Default pint UnitRegistry (e.g. electronvolts, statcoulombs, hertz). I've written my own definitions of these additional units, which would have to be also be done if using the OpenFF unit system.
from openff-interchange.
One of the text files here controls which are exposed by our registry, which is mostly Pint's default with macro-scale units stripped out. Adding units to the registry is nearly free, so anything that might be useful for your work (eV, etc.) is probably useful for others and can be added
from openff-interchange.
Related Issues (20)
- Wrong "scale_14" read from .json file HOT 5
- "dOH" written incorrectly in `[ settles ]` section HOT 2
- How to check missing parameters before create_interchange? HOT 2
- Pass cosmetic attrs through to `Potential` objects HOT 3
- Missing v-site exceptions with plugins HOT 5
- `Interchange.from_openmm` should raise an exception if the topology doesn't match the system HOT 3
- ligand always out of box in ligand_in_water.ipynb HOT 4
- Update GROMACS portion of ligand example
- Loading topologies from OpenMM sometimes scrambles atom order HOT 2
- Electrostatics key mismatch after combination HOT 3
- Positions of `MonovalentLonePair` virtual sites is incorrect (does not affect simulations) HOT 1
- Virtual site parameters can clash if looked up using only SMIRKS HOT 4
- `experimental/openmmforcefields/gaff.ipynb` and `ligand_in_water.ipynb` notebooks broken on OpenFF Docs HOT 1
- units for `Interchange.collection['Bonds'].get_system_parameters()` HOT 2
- Support GROMACS's `3fad` virtual sites
- `get_positions_with_virtual_sites` does not collate virtual sites with molecules HOT 1
- Some combinations of Interchanges do not commute HOT 2
- Improved LAMMPS support. HOT 1
- LAMMPS versions prior to 2023.08.02 are incompatible with Interchange, but may be installed with it HOT 2
- Interchange.to_gromacs() creates a topology with far too many atomtypes, which influences GROMACS performance HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openff-interchange.