|
| std::atomic< size_t > | forceCallCounter |
| PotType | ptype |
| | SpceCcl () |
| | SpceCcl (double cutoff, double switchingWidth) |
| void | computeHH_O_ (const int nAtoms, const double R[], double F[], double &U, const double b[]) |
| | Compute the forces and the energy.
|
| void | computeHH_O_ (const int nAtoms, const double R[], double F[], double &U, const double b[], const bool fixed[]) |
| | Compute the forces and the energy (with fixed atom optimisation).
|
| char const * | getName () const |
| | Name of the potential.
|
| void | intramolecular (Water &water, double &U) |
| | Interactions within a molecules.
|
| void | lennardJonesWithCutoff (Water &w1, Water &w2, double &U) |
| | Interactions between two molecules.
|
| void | coulombWithCutoff (Water &w1, Water &w2, double &U) |
| | Interactions between two molecules.
|
| void | coulombFull (Water &w1, Water &w2, double &U) |
| | Interactions between two molecules.
|
| | Ccl () |
| void | computeHH_O_ (const int nAtoms, const double R[], double F[], double &U, const double b[]) |
| | Compute the forces and the energy.
|
| void | computeHH_O_ (const int nAtoms, const double R[], double F[], double &U, const double b[], const bool fixed[]) |
| | Compute the forces and the energy (with fixed atom optimisation).
|
| char const * | getName () const |
| | Name of the potential.
|
| | Ccl (double cutoff, double switchingWidth) |
| | Constructor with cutoff for derived classes.
|
| void | intramolecular (double const rh1[], double const rh2[], double const ro[], double fh1[], double fh2[], double fo[], double &energy) |
| | Interactions inside one molecules.
|
| void | initialiseRho (Vector3 const &v, Rho &r) |
| | Initialise Rho.
|
| void | initialiseDtheta (Vector3 const &v1, Vector3 const &v2, Dtheta &dth, double const thetaEquilibrium) |
| | Initialise Dtheta.
|
| void | intramolecular (Rho const &ro1, Rho const &ro2, Dtheta const &dth, double &energy, double fh1[], double fh2[], double fo[]) |
| | Compute intramolecular energy and forces.
|
| | PotentialBase () |
| | Non bond interaction cutoff.
|
| | PotentialBase (double cutoff, double switchingWidth) |
| virtual | ~PotentialBase () |
| double | getCutoff () const |
| void | setCutoff (double cutoff) |
| double | getSwitchingWidth () const |
| | Width of the switching zone.
|
| void | setSwitchingWidth (double width) |
| void | restrainAngle (double const r1[], double const r2[], double const r3[], double f1[], double f2[], double f3[], double &u, const double k, const double aeq) |
| | Angular quadratic restraints.
|
| void | calculateCentre (double const r1[], double const r2[], double rc[]) |
| | Calculate centre of two points.
|
| void | calculateCentre (double const r1[], double const r2[], double const r3[], double rc[]) |
| | Calculate centre of three points.
|
| void | calculateWeightedCentre (double const w1, double const w2, double const w3, double const r1[], double const r2[], double const r3[], double rc[]) |
| | Calculate barycentre.
|
| void | coulombWithCutoff (const double r1[], const double r2[], double f1[], double f2[], double &u, double const qq) |
| | Coulomb interaction with single charge based cutoff.
|
| void | coulomb (const double r1[], const double r2[], double f1[], double f2[], double &u, double const qq) |
| | Compute Coulomb interaction between two charges.
|
| void | coulomb (double distance, double &force, double &energy, double const qq) |
| | Compute Coulomb interaction between two charges.
|
| void | spreadForce (double f1[], double f2[], double const fc[]) |
| | Spread force on centre to other points.
|
| void | spreadForce (double f1[], double f2[], double f3[], double const fc[]) |
| | Spread force on centre to other points.
|
| void | spreadWeightedForce (double const w1, double const w2, double const w3, double f1[], double f2[], double f3[], double const fc[]) |
| | Spread force on barycentre to atoms.
|
| template<int N, class R, class F> |
| void | addForces (ChargeGroup< N, R, F > const &g1, ChargeGroup< N, R, F > &g2) |
| | Increment forces.
|
| template<int N, class R, class F> |
| void | switching (ChargeGroup< N, R, F > &g1, ChargeGroup< N, R, F > &g2, double &energy, double cutoff, double switchingWidth) |
| void | computePt (int const nAtoms, double positions[], double forces[], double &energy, double const periods[], bool const fixed[]) |
| | Potential for Platinum.
|
| void | restrainLength (const double R1[], const double R2[], double F1[], double F2[], double &u, const double k, const double r0) |
| | Compute quadratic restraints between two atoms.
|
| void | lennardJones (double const distance, double &force, double &energy, double const epsilon, double const sigma) |
| | Lennard-Jones 12-6 between two atoms.
|
| void | lennardJones (const double R1[], const double R2[], double F1[], double F2[], double &E, double const epsilon, double const sigma) |
| | Lennard-Jones 12-6 between two atoms.
|
| void | lennardJonesWithCutoff (double const r1[], double const r2[], double f1[], double f2[], double &energy, double const epsilon, double const sigma) |
| | Lennard Jones 12-6 Potential with cutoff.
|
| void | switching (double const distance, double &force, double &energy) |
| | Smooth cutoff switch off.
|
| void | switching (double const r1[], double const r2[], double f1[], double f2[], double &energy) |
| | Smooth cutoff switch off.
|
| double | applyPeriodicity1 (double r, int const axis) |
| | Minimum image representation.
|
| void | applyPeriodicity1 (double r[]) |
| | Minimum image representation.
|
| void | distance (const double x[], const double y[], double z[], double &z1, double &z2) |
| | Distance vector, norm and norm square.
|
| void | distance (const double x[], const double y[], double z[], double &z1) |
| | Distance.
|
| void | distance (const double x[], const double y[], double z[]) |
| | Distance vector, norm.
|
| void | distance (const double x[], const double y[], double &z1) |
| | Distance.
|
| void | distance (const double x[], const double y[], Vector3 &z) |
| | Distance vector, norm and norm square.
|
| void | setPeriodicity (const double periods[]) |
| | Set periodicity.
|
| double | unBreak1 (double const r, double const ref, int const axis) |
| | Undo the separation of two atoms created by the periodic boundaries.
|
| void | unBreak1 (double r[], double const ref[]) |
| | Undo the separation of two atoms created by the periodic boundaries.
|
| static double | applyPeriodicity0 (double r, double const period) |
| | Minimum image representation.
|
| static void | applyPeriodicity0 (double r[], double const periods[]) |
| | Minimum image representation.
|
| static void | divide (double v[], double const divisor) |
| | Divide vector.
|
| static double * | crossProduct (const double v[], const double w[], double e[]) |
| | Cross product.
|
| static double | dotProduct (double const v[], double const w[]) |
| | Dot product.
|
| static void | multiply (double v[], double const factor) |
| | Multiply vector.
|
| static double | norm (double const v[]) |
| | Norm of 3D vector.
|
| static void | normalise (double v[]) |
| | Normalise 3D vector \( \frac{\mathbf v}{ |\mathbf v|} \).
|
| static double | isoscelesBase (double length, double angle) |
| | Calculate the base of an isosceles triangle.
|
| static double | epsilon (double const A, double const B) |
| | Conversion for Lennard-Jones.
|
| static double | sigma (double const A, double const B) |
| | Conversion for Lennard-Jones.
|
| static double | smithKongEpsilon (double sigma1, double epsilon1, double sigma2, double epsilon2) |
| | Smith and Kong combination rules.
|
| static double | smithKongSigma (double sigma1, double epsilon1, double sigma2, double epsilon2) |
| | Smith and Kong combination rules.
|
| static double | unBreak0 (double const r, double const ref, double const period) |
| | Undo the separation of two atoms created by the periodic boundaries.
|
| static void | unBreak0 (double r[], double const ref[], double const periods[]) |
| | Undo the separation of two atoms created by the periodic boundaries.
|
| double | cutoff_ |
| double | periods_ [3] |
| double | switchingWidth_ |
| static const double | roh_ = 1.0 |
| | Distance OH.
|
| static const double | theta_ = 1.91063 |
| | Angle HOH.
|
| static const double | rhh_ = 1.63299 |
| | Distance HH.
|
| static const double | charge_ = 0.4238 |
| | Charge on one hydrogen.
|
| static const double | charge2_ = 0.179606 |
| | Square of # charge_.
|
| static const double | A_ = 27291.6 |
| | Lennard-Jones.
|
| static const double | B_ = 27.1223 |
| | Lennard-Jones.
|
| static const double | sigma_ = 3.16556 |
| | Lennard-Jones. See PotentialBase::lennardJones() for definition.
|
| static const double | epsilon_ = 0.00673853 |
| | Lennard-Jones. See PotentialBase::lennardJones() for definition.
|
| static double const | polarisationEnergy_ = 0.0541015 |
| | Polarisation correction.
|
| static double const | re_ = ::re_ |
| | Distance OH at equilibrium.
|
| static double const | thetae_ = ::thetae_ |
| | Distance OH at equilibrium.
|
| static const double | ONE_OVER_4_PI_EPSILON0 |
| static const double | EPSILON_PT = 0.68165797577788501 |
| | Platinum Lennard-Jones.
|
| static const double | SIGMA_PT = 2.54 |