openmmtools.testsystems.PowerOscillator

class openmmtools.testsystems.PowerOscillator(K=100.0, b=2.0, mass=Quantity(value=39.948, unit=dalton), **kwargs)[source]

Create a 3D Power oscillator, with a single particle confined in an isotropic x^b well.

Parameters:
Kopenmm.unit.Quantity, optional, default=100.0

harmonic restraining potential. The units depend on the power, so we accept unitless inputs and add units of the form unit.kilocalories_per_mole / unit.angstrom ** b

massopenmm.unit.Quantity, optional, default=39.948 * unit.amu

particle mass

Notes

Here we assume a potential energy of the form U(x) = k * x^b.

By the generalized equipartition theorem, the expectation of the potential energy is 3 kT / b.

Attributes:
systemopenmm.System

The openmm.System object corresponding to the test system.

positionslist

The openmm.unit.Quantity object containing the particle positions, with units compatible with openmm.unit.nanometers.

Methods

get_potential_expectation(state)

Return the expectation of the potential energy, computed analytically or numerically.

reduced_potential_expectation(...)

Calculate the expected potential energy in state_sampled_from, divided by kB * T in state_evaluated_in.

serialize()

Return the System and positions in serialized XML form.

reduced_potential

__init__(K=100.0, b=2.0, mass=Quantity(value=39.948, unit=dalton), **kwargs)[source]

Abstract base class for test system.

Parameters:

Methods

__init__([K, b, mass])

Abstract base class for test system.

get_potential_expectation(state)

Return the expectation of the potential energy, computed analytically or numerically.

reduced_potential(beta, a, b, a2, b2)

reduced_potential_expectation(...)

Calculate the expected potential energy in state_sampled_from, divided by kB * T in state_evaluated_in.

serialize()

Return the System and positions in serialized XML form.

Attributes

analytical_properties

A list of available analytical properties, accessible via 'get_propertyname(thermodynamic_state)' calls.

mdtraj_topology

The mdtraj.Topology object corresponding to the test system (read-only).

name

The name of the test system.

positions

The openmm.unit.Quantity object containing the particle positions, with units compatible with openmm.unit.nanometers.

system

The openmm.System object corresponding to the test system.

topology

The openmm.app.Topology object corresponding to the test system.