Skip to content

Commit

Permalink
start of installation guide
Browse files Browse the repository at this point in the history
  • Loading branch information
mikemhenry committed Jul 14, 2023
1 parent 5b5fb04 commit 6960ce5
Showing 1 changed file with 25 additions and 19 deletions.
44 changes: 25 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,27 +19,12 @@ Here, we propose an alternative approach that uses _graph neural networks_ to pe
Since all stages are built from smooth neural functions, the entire process---spanning chemical perception to parameter assignment---is modular and end-to-end differentiable with respect to model parameters, allowing new force fields to be easily constructed, extended, and applied to arbitrary molecules.
We show that this approach is not only sufficiently expressive to reproduce legacy atom types, but that it can learn and extend existing molecular mechanics force fields, construct entirely new force fields applicable to both biopolymers and small molecules from quantum chemical calculations, and even learn to accurately predict free energies from experimental observables.

# Manifest

* `espaloma/` core code for graph-parametrized potential energy functions.
* `graphs/` data objects that contain various level of information we need.
* `graph.py` base modules for graphs.
* `molecule_graph.py` provide APIs to various molecular modelling toolkits.
* `homogeneous_graph.py` simplest graph representation of a molecule.
* `heterogeneous_graph.py` graph representation of a molecule that contains information regarding membership of lower-level nodes to higher-level nodes.
* `parametrized_graph.py` graph representation of a molecule with all parameters needed for energy evaluation.
* `nn/` neural network models that facilitates translation between graphs.
* `dgl_legacy.py` API to dgl models for atom-level message passing.
* `mm/` molecular mechanics functionalities for energy evaluation.
* `i/` energy terms used in Class-I force field.
* `bond.py` bond energy
* `angle.py` angle energy
* `torsion.py` torsion energy
* `nonbonded.py` nonbonded energy
* `ii/` energy terms used in Class-II force field.
* `coupling.py` coupling terms
* `polynomial.py` higher order polynomials.
# Installation

```bash
$ conda install -c conda-forge -c dglteam "espaloma=0.3.1" dgl
```

# Example: Deploy espaloma 0.2.0 pretrained force field to arbitrary MM system

Expand Down Expand Up @@ -70,6 +55,27 @@ openmm_system = esp.graphs.deploy.openmm_system_from_graph(molecule_graph)

An example of using espaloma to parameterize small molecules in relative alchemical free energy calculations is provided in the `scripts/perses-benchmark/` directory.

# Manifest

* `espaloma/` core code for graph-parametrized potential energy functions.
* `graphs/` data objects that contain various level of information we need.
* `graph.py` base modules for graphs.
* `molecule_graph.py` provide APIs to various molecular modelling toolkits.
* `homogeneous_graph.py` simplest graph representation of a molecule.
* `heterogeneous_graph.py` graph representation of a molecule that contains information regarding membership of lower-level nodes to higher-level nodes.
* `parametrized_graph.py` graph representation of a molecule with all parameters needed for energy evaluation.
* `nn/` neural network models that facilitates translation between graphs.
* `dgl_legacy.py` API to dgl models for atom-level message passing.
* `mm/` molecular mechanics functionalities for energy evaluation.
* `i/` energy terms used in Class-I force field.
* `bond.py` bond energy
* `angle.py` angle energy
* `torsion.py` torsion energy
* `nonbonded.py` nonbonded energy
* `ii/` energy terms used in Class-II force field.
* `coupling.py` coupling terms
* `polynomial.py` higher order polynomials.

# License

This software is licensed under [MIT license](https://opensource.org/licenses/MIT).
Expand Down

0 comments on commit 6960ce5

Please sign in to comment.