AngleHarmonic

class AngleHarmonic : public feasst::BondThreeBody

This class uses the following Angle Properties

  • k_energy_per_radian_sq

  • equilibrium_degrees

  • num_jacobian_gaussian (default: 0) which are described as follows.

U(angle) = k_energy_per_radian_sq*(angle - equilibrium_degrees)^2 with parameters given in Angle Properties.

The usual 1/2 factor is not included, but can be incorporated into the k parameter manually by the user input to the particle file.

The Jacobian-Gaussian algorithm described in:

https://doi.org/10.1021/acs.jctc.7b00173

is implemented here for the “2-branch” case, while “3-branch” is not currently implemented. Thank you to Dr Daniel Siderius and Professor Bin Chen for providing example implementation code and discussion.

The num_jacobian_gaussian parameter is only read by the one angle that has both sites that are placed by the branch in the vertices. To use the default BondThreeBody::random_branch, set num_jacobian_gaussian to 0.

The Jacobian-Gaussian method should not currently be used for GCE as it seems to shift the chemical potential by a spurious constant factor.