Comments (4)
Having read into some more of the details, this is a little tricky. A custom set of BBCs (using a ChargeIncrementModelHandler
) conflicts somewhat with using the default AM1BCC, but this is undocumented in the SMIRNOFF spec.
Electrostatics in general are tricky, and this case is complicated by the fact that it's a mix of "take it or leave it" data from (AM1 or similar methods) and force field parameters (BCCs). The AM1 charges need to be stored at some point, but the BCCs need to be exposed as differentiable objects.
This is probably the time to make electrostatics in general parsed better; the current approach muddies everything up and prevent BCCs or library charges from being exposed as tunable.
There also needs to be some structure for handling metadata (cutoffs, methods, 1-4 scaling factors, etc.) and dispatching the partial charge assignment methods, ideally in a way that is not too specific to SMIRNOFF.
from openff-interchange.
I think re-applying BCCs is a use case we value, and we probably want to avoid re-calculating AM1 charges. I'll try caching the AM1 charges so that BCCs can be quickly re-applied.
from openff-interchange.
I supposed it's possible that the AM1/AM1-Mulliken call here could be executed by a single function that can also cache AM1BCC values for the <ToolkitAM1BCC>
tag ... both could involve similar toolkit calls and caching of results.
from openff-interchange.
Implemented
from openff-interchange.
Related Issues (20)
- Support LJPME in GROMACS export
- Support LJPME in LAMMPS export
- Time value in inpcrd is messing up VMD visualization HOT 3
- from_openmm GAFF molecule cannt write to AMBER HOT 2
- `Interchange.to_pdb` does not work with `_SimpleAtom`s HOT 1
- Change installation instructions to recommend `mamba create` instead of `conda install`
- Allow electrostatics in single force + plugins HOT 4
- `_simple_topology_from_openmm` fails with `RecursionError` on large topologies HOT 5
- vdW energies not reported when vdW interactions defined by plugins HOT 1
- Improve error handling with missing parameters
- Boxes from OpenMM `System`s are `OpenFFQuantity[list[list[OpenMMQuantity]]]` HOT 13
- Check if masses in OpenMM are canonical or edited a la HMR HOT 2
- Support HMR in OpenMM export HOT 1
- Support HMR in GROMACS export HOT 4
- Better support bond constraints in LAMMPS export HOT 2
- NADP gives some inconsistent energies across engines. HOT 4
- [LAMMPS] Full unit-awareness when parsing LAMMPS outputs with drivers HOT 3
- Missing v-site exceptions HOT 4
- Wrong "scale_14" read from .json file HOT 5
- "dOH" written incorrectly in `[ settles ]` section HOT 2
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.