Commit a73b7f00 authored by Robert McGibbon's avatar Robert McGibbon
Browse files

Fix two missing classes

parent c65757f6
.. _app :
Application Layer Application Layer
================= =================
......
...@@ -3,6 +3,15 @@ ...@@ -3,6 +3,15 @@
OpenMM Python API OpenMM Python API
================= =================
The Python API provides information about the classes and methods available in OpenMM for Python developers.
OpenMM consists of two parts. First, there is a set of :ref:`libraries <library>` for performing many types of computations needed for molecular simulations: force evaluation, numerical integration, energy minimization, etc.
Second, there is an :ref:`application layer <app>`, a set of Python libraries providing a high level interface for running simulations. This layer is targeted at computational biologists or other people who want to run simulations, and who may or may not be programmers.
See the user guide for more details.
.. toctree:: .. toctree::
:maxdepth: 2 :maxdepth: 2
......
Library API .. _library :
===========
Library Layer
=============
Core Objects Core Objects
......
...@@ -8,9 +8,11 @@ from glob import glob ...@@ -8,9 +8,11 @@ from glob import glob
import inspect import inspect
import jinja2 import jinja2
import simtk.openmm.openmm import simtk.openmm
import simtk.openmm.app import simtk.openmm.app
def fullname(klass): def fullname(klass):
return klass.__module__ + '.' + klass.__name__ return klass.__module__ + '.' + klass.__name__
...@@ -32,16 +34,17 @@ def library_template_variables(): ...@@ -32,16 +34,17 @@ def library_template_variables():
'library_extras': [], 'library_extras': [],
} }
mm_klasses = inspect.getmembers(simtk.openmm.openmm, predicate=inspect.isclass) mm_klasses = inspect.getmembers(simtk.openmm, predicate=inspect.isclass)
# gather all Force subclasses # gather all Force subclasses
for name, klass in mm_klasses: for name, klass in mm_klasses:
if issubclass(klass, mm.Force): if issubclass(klass, simtk.openmm.openmm.Force):
data['forces'].append(fullname(klass)) data['forces'].append(fullname(klass))
# gather all Integrator subclasses # gather all Integrator subclasses
for _, klass in mm_klasses: for _, klass in mm_klasses:
if issubclass(klass, mm.Integrator): if issubclass(klass, simtk.openmm.openmm.Integrator):
data['integrators'].append(fullname(klass)) data['integrators'].append(fullname(klass))
# gather all extra subclasses in simtk.openmm.openmm # gather all extra subclasses in simtk.openmm.openmm
...@@ -81,7 +84,6 @@ def app_template_variables(): ...@@ -81,7 +84,6 @@ def app_template_variables():
'fileclasses': [], 'fileclasses': [],
'app_extras': [], 'app_extras': [],
} }
app_klasses = inspect.getmembers(simtk.openmm.app, predicate=inspect.isclass) app_klasses = inspect.getmembers(simtk.openmm.app, predicate=inspect.isclass)
# gather all Reporters # gather all Reporters
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment