IMLCV.implementations.bias#

Classes#

MinBias

Class that combines several biases in one single bias.

HarmonicBias

Harmonic bias potential centered arround q0 with force constant k.

BiasMTD

A sum of Gaussian hills, for instance used in metadynamics:

RbfBias

Bias interpolated from lookup table on uniform grid.

GridBias

Bias interpolated from lookup table on uniform grid.

Functions#

_clip(x, a_min, a_max)

Module Contents#

IMLCV.implementations.bias._clip(x, a_min, a_max)#
class IMLCV.implementations.bias.MinBias(*args, **kwargs)#

Bases: IMLCV.base.bias.CompositeBias

Class that combines several biases in one single bias.

classmethod create(biases: list[IMLCV.base.bias.Bias]) IMLCV.base.bias.CompositeBias#
class IMLCV.implementations.bias.HarmonicBias(*args, **kwargs)#

Bases: IMLCV.base.bias.Bias

Harmonic bias potential centered arround q0 with force constant k.

q0: IMLCV.base.CV.CV#
k: jax.Array#
k_max: jax.Array | None = None#
y0: jax.Array | None = None#
r0: jax.Array | None = None#
static create(cvs: IMLCV.base.CV.CollectiveVariable, q0: IMLCV.base.CV.CV, k: float | jax.Array, k_max: jax.Array | float | None = None, start=None, step=None, finalized=True) HarmonicBias#

generate harmonic potentia;

Parameters:
  • cvs – CV

  • q0 – rest pos spring

  • k – force constant spring

_compute(cvs: IMLCV.base.CV.CV)#

function that calculates the bias potential.

class IMLCV.implementations.bias.BiasMTD(*args, **kwargs)#

Bases: IMLCV.base.bias.Bias

A sum of Gaussian hills, for instance used in metadynamics: Adapted from Yaff.

V = sum_{\alpha} K_{\alpha}} exp{-sum_{i} \frac{(q_i-q_{i,\alpha}^0)^2}{2sigma^2}}

where \alpha loops over deposited hills and i loops over collective variables.

q0s: jax.Array#
sigmas: jax.Array#
K: jax.Array#
Ks: jax.Array#
tempering: float#
classmethod create(cvs: IMLCV.base.CV.CollectiveVariable, K, sigmas, tempering=0.0, start=None, step=None, finalized=False) typing_extensions.Self#

_summary_

Parameters:
  • cvs – _description_

  • K – _description_

  • sigmas – _description_

  • start – _description_. Defaults to None.

  • step – _description_. Defaults to None.

  • tempering – _description_. Defaults to 0.0.

update_bias(md: IMLCV.base.MdEngine.MDEngine)#

update the bias.

Can only change the properties from _get_args

_compute(cvs)#

Computes sum of hills.

class IMLCV.implementations.bias.RbfBias(*args, **kwargs)#

Bases: IMLCV.base.bias.Bias

Bias interpolated from lookup table on uniform grid.

values are caluclated in bin centers

rbf: IMLCV.tools._rbf_interp.RBFInterpolator#
offset: float | jax.Array = 0.0#
classmethod create(cvs: IMLCV.base.CV.CollectiveVariable, vals: jax.Array, cv: IMLCV.base.CV.CV, start=None, step=None, kernel='gaussian', epsilon=None, smoothing=0.0, degree=None, finalized=True, slice_exponent=1, log_exp_slice=True, slice_mean=False) RbfBias#
_compute(cvs: IMLCV.base.CV.CV)#

function that calculates the bias potential.

class IMLCV.implementations.bias.GridBias(*args, **kwargs)#

Bases: IMLCV.base.bias.Bias

Bias interpolated from lookup table on uniform grid.

values are caluclated in bin centers

n: int#
bounds: jax.Array#
vals: jax.Array#
order: int#
classmethod create(cvs: IMLCV.base.CV.CollectiveVariable, bias: IMLCV.base.bias.Bias, n=30, bounds: jax.Array | None = None, margin=0.1, order=1) GridBias#
_compute(cvs: IMLCV.base.CV.CV)#

function that calculates the bias potential.