Add forbidden plane region#

Preventing atoms from entering a half-space bounded by a 3D plane in OpenMM.

The function molsysmt.third_party.openmm.forces.add_forbidden_plane_region() adds a repulsive potential that keeps atoms from penetrating across a defined planar boundary.

Added in version 1.0.0.

Basic usage#

Let’s add a forbidden half-space restraint:

import molsysmt as msm

molsys = msm.convert(msm.systems['Trp-Cage']['1l2y.h5msm'], to_form='molsysmt.MolSys')
force = msm.third_party.openmm.forces.add_forbidden_plane_region(molsys, point='[0,0,0] nm', normal_vector=(0,0,1), selection=[0], force_constant='5000 kJ/(mol*nm**2)', return_force=True)
print('Forbidden plane region created:', type(force))
Forbidden plane region created: <class 'openmm.openmm.CustomExternalForce'>