Comments (1)
This has been completed at some point:
molecule = Molecule.from_smiles("O")
molecule.generate_conformers(n_conformers=1)
topology = molecule.to_topology()
topology.box_vectors = [4, 4, 4] * unit.nanometer
force_field = ForceField("openff-2.0.0.offxml")
interchange = force_field.create_interchange(topology)
pprint(json.loads(interchange.json()))
{
│ 'positions': {
│ │ 'val': [
│ │ │ [0.006112021207809448, 0.038865670561790466, 0.005890042334794998],
│ │ │ [0.07237835526466369, -0.031162935495376583, -0.0038235086947679517],
│ │ │ [-0.07849037051200866, -0.0077027328312397, -0.002066533826291561]
│ │ ],
│ │ 'unit': 'nanometer'
│ },
│ 'box': {'val': [[4.0, 0.0, 0.0], [0.0, 4.0, 0.0], [0.0, 0.0, 4.0]], 'unit': 'nanometer'},
│ 'topology': '{"aromaticity_model": "OEAroModel_MDL", "constrained_atom_pairs": {}, "box_vectors": [4.0, 0.0, 0.0, 0.0, 4.0, 0.0, 0.0, 0.0, 4.0], "box_vectors_unit": "nanometer", "molecules": [{"name": "", "atoms": [{"atomic_number": 8, "formal_charge": 0, "is_aromatic": false, "stereochemistry": null, "name": "", "metadata": {}}, {"atomic_number": 1, "formal_charge": 0, "is_aromatic": false, "stereochemistry": null, "name": "", "metadata": {}}, {"atomic_number": 1, "formal_charge": 0, "is_aromatic": false, "stereochemistry": null, "name": "", "metadata": {}}], "bonds": [{"atom1": 0, "atom2": 1, "bond_order": 1, "is_aromatic": false, "stereochemistry": null, "fractional_bond_order": null}, {"atom1": 0, "atom2": 2, "bond_order": 1, "is_aromatic": false, "stereochemistry": null, "fractional_bond_order": null}], "properties": {}, "conformers": null, "partial_charges": [-0.834, 0.417, 0.417], "partial_charge_unit": "elementary_charge", "hierarchy_schemes": {}}]}',
│ 'collections': {
│ │ 'Bonds': '{"type": "Bonds", "is_plugin": false, "expression": "k/2*(r-length)**2", "key_map": {"{\\"atom_indices\\": [0, 1], \\"bond_order\\": null}": {"id": "[#8:1]-[#1:2]", "mult": null, "associated_handler": "Bonds", "bond_order": null}, "{\\"atom_indices\\": [0, 2], \\"bond_order\\": null}": {"id": "[#8:1]-[#1:2]", "mult": null, "associated_handler": "Bonds", "bond_order": null}}, "potentials": {"{\\"id\\": \\"[#8:1]-[#1:2]\\", \\"mult\\": null, \\"associated_handler\\": \\"Bonds\\", \\"bond_order\\": null}": {"parameters": {"k": "{\\"val\\": 1087.053566377, \\"unit\\": \\"kilocalorie / angstrom ** 2 / mole\\"}", "length": "{\\"val\\": 0.9716763312559, \\"unit\\": \\"angstrom\\"}"}, "map_key": null}}, "fractional_bond_order_method": "AM1-Wiberg", "fractional_bond_order_interpolation": "linear"}'
│ }
}
from openff-interchange.
Related Issues (20)
- Bond information missing from water forcefields HOT 13
- Poor error handling in `Interchange.minimize` when positions are missing
- `Interchange.minimize` adds virtual sites to `Interchange.positions
- Support LJPME in OpenMM export HOT 1
- 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
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.