Betase’s Eddy Brinkman first came into contact with the Fortran programming language in the early 1990s, during his graduation work in Chemical Engineering at the University of Twente in Enschede, The Netherlands.
Researchers within the Department of Chemical Physics used the computer simulation package GROMOS (Groningen Molecular Simulation), among other things, to perform molecular dynamics computer simulations on proteins in solutions. An important part of Eddy’s graduation work involved modifying this package, written in Fortran, to make it suitable for simulating ionic systems such as ceramics and salts.
In those days, the original GROMOS package addressed Coulomb interactions with a spherical cut-off, which is not adequate for ionic systems whose effects extend much further. In computer simulations, you have to deal with Coulomb long-range interactions in a special way because of the inverse dependence of the Coulomb potential with the distance between charges. The range of this Coulomb potential is greater than half the box length for a simulation of some 500 particles we were dealing with here.
An accurate and efficient way to calculate the Coulomb long-range interactions between an ion and all its neighbours (including periodic representations of them) is the Ewald summation. The essence of the Ewald summation is to replace a sequence of discrete rows of charges in three dimensions with two mathematical sequences that are more complex but converge rapidly.
Chapter 3 of Eddy Brinkman’s 1990 graduation report describes the theory of this Ewald summation and its practical application in Fortran in the relevant part of GROMOS. Click on the image below to open this chapter as a scanned PDF document.