OpenBioSim / sire

Sire Molecular Simulations Framework
https://sire.openbiosim.org
GNU General Public License v3.0
39 stars 11 forks source link

[BUG] create_from_pertfile doesn't recreate intrascale matrices correctly #240

Open lohedges opened 3 days ago

lohedges commented 3 days ago

The sire.morph.create_from_pertfile function assumes that the intrascale matrix is the same at lambda = 0 and lambda = 1 and simpy uses the lambda = 0 value for both end states. This leads to issues computing exceptions, leading to an incorrect set of exclusions for the ghost force fields. (Only interactions between ghosts at lambda = 0 are present, those at lambda = 1 are excluded.) BioSimSpace has code to do this, which could possibly be reproduced. However, I think it might not be possible to do this entirely from the lambda = 0 topology and pert file, i.e. some info might be lost.

lohedges commented 3 days ago

Extracting the end states and re-merging (with BioSimSpace) seems to recover the correct intrascale matrices. This might be a route that we could take, although it would require extraction of the mapping too, which should be easy enough.