Skip to content

WIP: General, rigid simple-point charge non-covalent interaction potential

username-removed-559845 requested to merge asod/ase:rspc into master

Wrote an n-point non-covalent interaction potential, RSPC, based on a generalisation of tip3p.py (with LJ-inspiration from qmmm.py). All intramolecular distances needs to be fixed using the RATTLE-implementation "FixBondLengths" from constraints.py. Tested to reproduce tip3p energies and forces, if tip3p parameters are used in RSPC.

Differences from tip3p: tip3p molecule-wise PBCs and cutoff are based on the oxygen positions. RSPC's is based on the center of mass of every molecule RSPC only warns about violating the MIC-requirement of having a cutoff that is shorter than 1/2 of all box side lengths, compared to tip3p's assertion. RSPC also warns if no constraints are set.

WIP that is required before merging: Cleanup of comments, and maybe a final test with a non-water potential.

WIPS that are on nice-to-have-list:

  • WIP: Add more LJ combining rules
  • WIP: Add counter-ion functionality (needs a further generalisation of the force calculation)
  • WIP: Further functionalize LJ calculation so it can be easily exchanged for potentials using different expressions.

Merge request reports