potentials_util

Short description

@author: Moritz F P Becker

pyrid.system.potentials_util.CSW(r, args)[source]

Calculates potential energy and force for a Continuous Square-Well (CSW) potential.

Parameters
rwfloat

Radius of the attractive well

eps_cwfloat

Interaction energy constant (units of kJ).

alphafloat

Steepness of the attractive well (the larger alpha, the better the approximation to a square well).

Returns
(float64, float64)

returns the potential energy and force of the interaction

Notes

The CSW potential has been introduced in Espinosa et al. [29] and is a continuous approximation of the square-well potential and thereby suited for moelcular dynamics simulations Espinosa et al. [30].

\[U_{CSW}(r) = - \frac{\epsilon_{CSW}}{2} \Big[1 - \tanh\Big(\frac{r-r_w}{\alpha}\Big)\Big]\]
pyrid.system.potentials_util.FENE(r, args)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised

pyrid.system.potentials_util.Lennard_Jones(r, args)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised

pyrid.system.potentials_util.PHS(r, args)[source]

Calculates potential energy and force for a Pseudo Hard Sphere (PHS) potential.

Parameters
EpsRfloat

Interaction energy constant (units of kJ).

lrfloat

Exponent of the repulsive term.

lafloat

Exponent of the attractive term.

Returns
(float64, float64)

returns the potential energy and force of the interaction

Notes

The Pseudo Hard Sphere interaction potential is a continuous approximation of the hard sphere and thereby suited for molecular dynamics simulations Jover et al. [31], Espinosa et al. [30].

\[U_{HS} = \Biggl \lbrace { \lambda_r (\frac{\lambda_r}{\lambda_a})^{\lambda_a} \epsilon_R [(\frac{\sigma}{r})^{\lambda_r}-(\frac{\sigma}{r})^{\lambda_a}]+\epsilon_R,\text{ if } { r < (\frac{\lambda_r}{\lambda_a}) \sigma } \atop 0, \text{ if } { r < (\frac{\lambda_r}{\lambda_a}) \sigma } }\]
pyrid.system.potentials_util.WLC_force(z, Lp, L0)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised

pyrid.system.potentials_util.Weeks_Chandler_Anderson(r, args)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised

pyrid.system.potentials_util.execute_force(ID, r, args)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised

pyrid.system.potentials_util.harmonic_repulsion(r, args)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised

pyrid.system.potentials_util.piecewise_harmonic(r, args)[source]

Calculates potential energy and force for a weak piecewise harmonic potential.

Parameters
rcfloat

cutoff radius

kfloat

force constant (units of kJ/length_unit^2).

hfloat

depth of potential well (units of kJ).

dfloat

radius of the repulsive part!

Returns
(float64, float64)

returns the potential energy and force of the interaction

Notes

The weak piecewise harmonic interaction potential is also used in the particle-based reaction-diffusion simulator ReaDDy Hoffmann et al. [23] as it is well suited for brownian dynamics simulations, which allow larger time steps than conventional molecular dynamics simualtions, however forces acting on the particles must not change too much in bewteen two integration step. Therefore, soft potentials are used. Hard potentials like the PHS may also be used. In this case, however, the integration time step needs to be chosen much smaller, reducing the benefit of simulating overdamped langevin dynamics to a degree!

\[\begin{split}U_{ha}(r) = \begin{cases} \frac{1}{2}k(r-(d_1+d_2))^2-h,& \text{if } r<(d_1+d_2), \\ \frac{h}{2}(\frac{r_c-(d_1+d_2)}{2})^{-2}(r-(d_1+d_2))^2-h,& \text{if } d \le r < d + \frac{r_c-(d_1+d_2)}{2}, \\ -\frac{h}{2}(\frac{r_c-(d_1+d_2)}{2})^{-2}(r-r_c)^2,& \text{if } d + \frac{r_c-(d_1+d_2)}{2} \le r < r_c, \\ 0, & \text{otherwise} \end{cases}\end{split}\]
pyrid.system.potentials_util.repulsive_membrane(r, args)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised

pyrid.system.potentials_util.screened_electrostatics(r, args)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised

pyrid.system.potentials_util.wall(r, d, k)[source]

A brief description of what the function (method in case of classes) is and what it’s used for

Parameters
parameter_1dtype

Some Information

parameter_2dtype

Some Information

Returns
dtype

Some information

Raises
NotImplementedError (just an example)

Brief explanation of why/when this exception is raised