qmmm_pme.plugins.settle package

Submodules

qmmm_pme.plugins.settle.settle module

A module defining the pluggable implementation of the SETTLE algorithm for the QM/MM/PME repository.

class qmmm_pme.plugins.settle.settle.SETTLE(oh_distance=1.0, hh_distance=1.632981, hoh_residue='HOH')[source]

Bases: IntegratorPlugin

A Plugin which implements the SETTLE algorithm for positions and velocities.

Parameters:
  • oh_distance (float | int) – The distance between the oxygen and hydrogen, in Angstroms.

  • hh_distance (float | int) – The distance between the hydrogens, in Angstroms.

  • hoh_residue (str) – The name of the water residues in the System.

modify(integrator)[source]

Modify the functionality of a Integrator.

Parameters:

integrator (ModifiableIntegrator) – The Integrator object to modify with the Plugin.

Return type:

None

qmmm_pme.plugins.settle.settle_utils module

A module containing the core functionality of the SETTLE algorithm.

qmmm_pme.plugins.settle.settle_utils.settle_positions(residues, positions_i, positions_f, masses, oh_distance=1.0, hh_distance=1.632981)[source]

A utility to perform the SETTLE algorithm on a set of positions.

Parameters:
  • residues (list[list[int]]) – The name of the water residues in the System.

  • positions_i (NDArray[np.float64]) – The initial positions of the System, in Angstroms.

  • positions_f (NDArray[np.float64]) – The final positions of the System, in Angstroms.

  • masses (NDArray[np.float64]) – The current masses of all atoms in the System, in Daltons.

  • oh_distance (int | float) – The distance between the oxygen and hydrogen, in Angstroms.

  • hh_distance (int | float) – The distance between the hydrogens, in Angstroms.

Return type:

NDArray[np.float64]

Note

Based on the SETTLE kernel in OpenMM.

qmmm_pme.plugins.settle.settle_utils.settle_velocities(residues, positions_i, velocities_i, masses)[source]

A utility to perform the SETTLE algorithm on a set of velocities.

Parameters:
  • residues (list[list[int]]) – The name of the water residues in the System.

  • positions_i (NDArray[np.float64]) – The initial positions of the System, in Angstroms.

  • velocities_f – The initial velocities of the System, in Angstroms per femtosecond.

  • masses (NDArray[np.float64]) – The current masses of all atoms in the System, in Daltons.

  • velocities_i (NDArray[np.float64]) –

Return type:

NDArray[np.float64]

Note

Based on the SETTLE kernel in OpenMM.

Module contents

A sub-package for performing the SETTLE algorithm during the integration procedure.