https://link.springer.com/article/10.1007/s00894-010-0884-4