Class ForceField

java.lang.Object
org.episteme.natural.chemistry.computational.ForceField

public class ForceField extends Object
Molecular mechanics force field calculations.
Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Field Details

    • CC_EPSILON

      public static final Real CC_EPSILON
    • CC_SIGMA

      public static final Real CC_SIGMA
    • OO_EPSILON

      public static final Real OO_EPSILON
    • OO_SIGMA

      public static final Real OO_SIGMA
    • CC_BOND_LENGTH

      public static final Real CC_BOND_LENGTH
    • CC_DOUBLE_LENGTH

      public static final Real CC_DOUBLE_LENGTH
    • CH_BOND_LENGTH

      public static final Real CH_BOND_LENGTH
  • Constructor Details

    • ForceField

      public ForceField()
  • Method Details

    • lennardJones

      public static Real lennardJones(Real r, Real epsilon, Real sigma)
      Lennard-Jones 12-6 potential. V(r) = ε * [(σ/r)^12 - 2*(σ/r)^6]
    • lennardJonesForce

      public static Real lennardJonesForce(Real r, Real epsilon, Real sigma)
      Lennard-Jones force. F(r) = 12ε/r * [(σ/r)^12 - (σ/r)^6]
    • bondStretch

      public static Real bondStretch(Real r, Real r0, Real k)
      Harmonic bond stretching: V(r) = 0.5 * k * (r - r0)²
    • angleBend

      public static Real angleBend(Real theta, Real theta0, Real k)
      Harmonic angle bending: V(θ) = 0.5 * k * (θ - θ0)²
    • torsion

      public static Real torsion(Real phi, Real Vn, int n, Real gamma)
      Torsional potential: V(φ) = V_n/2 * [1 + cos(n*φ - γ)]
    • coulomb

      public static Real coulomb(Real q1, Real q2, Real r)
      Coulomb interaction (kcal/mol when q in e, r in Ã…)
    • morse

      public static Real morse(Real r, Real re, Real De, Real a)
      Morse potential: V(r) = D_e * [1 - exp(-a*(r-r_e))]²
    • calculatePotentialEnergy

      public static Real calculatePotentialEnergy(Molecule molecule)
      Calculates total potential energy of a molecule.