perses.rjmc.geometry.GeometryEngine

class perses.rjmc.geometry.GeometryEngine(metadata=None, storage=None)[source]

This is the base class for the geometry engine.

Methods

logp_reverse(top_proposal, new_coordinates, …) Calculate the logp for the given geometry proposal
propose(top_proposal, current_positions, beta) Make a geometry proposal for the appropriate atoms.
__init__(metadata=None, storage=None)[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__([metadata, storage]) Initialize self.
logp_reverse(top_proposal, new_coordinates, …) Calculate the logp for the given geometry proposal
propose(top_proposal, current_positions, beta) Make a geometry proposal for the appropriate atoms.
logp_reverse(top_proposal, new_coordinates, old_coordinates, beta)[source]

Calculate the logp for the given geometry proposal

Returns:
logp : float

The log probability of the proposal for the given transformation

propose(top_proposal, current_positions, beta)[source]

Make a geometry proposal for the appropriate atoms.

Returns:
new_positions : [n, 3] ndarray

The new positions of the system