Angle bending

Overview

Angles impose forces on specific triplets of particles to model chemical angles between two bonds. The angles are specified in XML format configuration file with the format:

<angle>
angle_type(str)  particle_i(int)  particle_j(int)  particle_k(int)
...
</angle>

By themselves, angles do nothing. Only when you specify an angle force in script(i.e. AngleForceHarmonic), are forces actually calculated between the listed particles.

Harmonic angle potential AngleForceHarmonic
Harmonic cosine angle potential AngleForceHarmonicCos
Cosine angle potential AngleForceCos
Principle of angle bending

Harmonic angle potential

Description:

\begin{eqnarray*} V_{\mathrm{angle}}(\theta) = \frac{1}{2}k\left( \theta -\theta_{0} \right)^{2} \end{eqnarray*}

Coefficients:

  • \(k\) - potential constant k (in units of energy/radians^2)
  • \(\theta_{0}\) - equilibrium angle theta0 (in radians)

Note

The angles set in script are in the unit of degree, and the program will convert them into radian automatically.

class AngleForceHarmonic(all_info)

The constructor of angle harmonic interaction object.

Parameters:all_info (AllInfo) – The system information.
setParams(string type, float k, float theta0)

specifies the angle harmonic force parameters with angle type, potential constant, and equilibrium angle degree.

Example:

angleforce = galamost.AngleForceHarmonic(all_info)
angleforce.setParams('P-G-G', 25.000, 120.000)
app.add(angleforce)

Harmonic cosine angle potential

Description:

\begin{eqnarray*} V_{\mathrm{angle}}(\theta)=\frac{1}{2}k\left[\cos \left( \theta \right)-\cos \left( \theta_{0} \right)\right]^{2} \end{eqnarray*}

Coefficients:

  • \(k\) - potential constant k (in units of energy)
  • \(\theta_{0}\) - equilibrium angle theta0 (in radians)

Note

The angles set in script are in the unit of degree, and the program will convert them into radian automatically.

class AngleForceHarmonicCos(all_info)

The constructor of angle cosine harmonic interaction object.

Parameters:all_info (AllInfo) – The system information.
setParams(string type, float k, float theta0)

specifies the angle cosine harmonic force parameters with angle type, potential constant, and equilibrium angle degree.

Example:

angleforce = galamost.AngleForceHarmonicCos(all_info)
angleforce.setParams('P-G-G',25.000, 120.000)
app.add(angleforce)

Cosine angle potential

Description:

\begin{eqnarray*} V_{\mathrm{angle}}(\theta)=k\left[ 1-\cos \left( \theta - {\theta}_{0} \right) \right] \end{eqnarray*}

Coefficients:

  • \(k\) - potential constant k (in units of energy)
  • \(\theta_{0}\) - equilibrium angle theta0 (in radians)

Note

The angles set in script are in the unit of degree, and the program will convert them into radian automatically.

class AngleForceCos(all_info)

The constructor of angle cosine interaction object.

Parameters:all_info (AllInfo) – The system information.
setParams(string type, float k, float theta0)

specifies the angle cosine force parameters with angle type, spring constant, and equilibrium angle degree.

Example:

angleforce = galamost.AngleForceCos(all_info)
angleforce.setParams('P-G-G', 25.000, 120.000)
app.add(angleforce)