
Чтобы этой проблемы не было, надо поменять геометрию, растащить близкие атомы, не изменив при этом сканируемые параметры. Как это сделать? Надо полагать, надо реализовать молекулярную механику, чтобы атомы отодвинулись друг от друга из-за отталкивания.
Я сейчас думаю сделать очень простую модель: координаты атомов в молекуле будут строиться по набору внутренних координат, функционал будет стараться держать все расстояния и углы поближе к исходным, но всё-таки атомы будут отталкиваться. И возникает вопрос – как, во-первых, выбрать параметры для ММ, и во-вторых, как по параметрам строить геометрию? Как это обычно делается в программах типа Гауссиана или Орки?
У меня есть опыт построения Z-матриц, но обычная Z-матрица не позволяет замкнуть циклы. Но я уже делал Z-матрицы с двумя расстояниями вместо расстояния и угла. Это моё ноу-хау, или в Гауссиане это уже сделано?