openmopac / mopac

Molecular Orbital PACkage
http://openmopac.net
GNU Lesser General Public License v3.0
111 stars 31 forks source link

SAS area discontinuities in COSMO tessellation #163

Open godotalgorithm opened 1 year ago

godotalgorithm commented 1 year ago

Describe the bug There is a rare bug in COSMO that causes temporary jumps in the solvent accessible surface (SAS) area during a geometric distortion of a molecule. This has been observed for large proteins, with a magnitude of the jump being a few percent of the baseline SAS area.

To Reproduce This bug has been reported to me by Jimmy Stewart as a known issue for a long time that isn't believed to be resolved, but that also doesn't have an isolated example of occurrence.

Expected behavior The SAS area should be a smooth function of any geometric distortion, although the tessellation process might cause some very minor artifacts on top of the idealized behavior for a union of atom-centered spheres.

Operating system This is likely to be an algorithmic problem and not dependent on OS.

Additional context This bug is being reported here so that MOPAC users can be made aware of it, and so that an alert user might spot an example of the bug and report it here so that it can be isolated and fixed.

flatstik commented 1 year ago

Is there a simple test how the discontinuity can be observed?

godotalgorithm commented 1 year ago

Jimmy Stewart noted seeing this in tests in the past where he adjusted the molecular geometry in some continuous manner that he did not recall or record in detail. The discontinuity is in the COSMO AREA output, and presumably also in theCOSMO VOLUME. The simplest way to set up appropriate tests would be to either relax a molecular geometry or distort it in some random way, and then consider a linear interpolation between the original and distorted/relaxed geometry. At some point, I might set up some randomized tests to look for the problem. Jimmy considers the problem rare enough that I am unlikely to find it with random tests, so it isn't a high priority.