У меня есть определенное количество атомов (очков) в комнате.Размеры комнаты:
dimensions = [[-2,2],[-2,2],[-2,2]]
Я хочу запрограммировать функцию поиска по сетке, которая проходит через все перестановки возможных координат «точек» и вычисляет потенциал Леннарда-Джонса между атомами и находит минимумпотенциал.Сетка должна быть переменной.Функция не должна ничего возвращать.
atoms = [[-2,-2,-2],[-2,-2,-2],[-2,-2,-2]]
grid = 0.5
def gridsearchljp(atms=list,dims=list,grd=float):
Я уже закончил код для вычисления потенциала Леннарда-Джонса для заданного количества атомов в их фактическом местоположении.Я также закончил код для двух и трех атомов.Моя главная проблема заключается в том, как рекурсивно программировать функцию, чтобы вы могли изменять количество атомов.
Процедура будет следующей:
Первый шаг:
Координаты атомов: [-2,-2,-2],[-2,-2,-2],[-2,-2,-2]
Вызов функции потенциала Леннарда Джонса
Второй шаг:
Координаты атомов: [-1.5,-2,-2],[-2,-2,-2],[-2,-2,-2]
Вызов функции потенциала Леннарда Джонса
...
НадеюсьЯ достаточно хорошо описал свою проблему.Большое спасибо.