我在一个房间里有给定数量的原子(点)。房间的尺寸是:
dimensions = [[-2,2],[-2,2],[-2,2]]
我想编写一个网格搜索功能,该功能将遍历“点”的所有可能坐标,并计算原子之间的Lennard Jones势能,并找到最小势能。网格必须是可变的。该函数不需要返回任何内容。
atoms = [[-2,-2,-2],[-2,-2,-2],[-2,-2,-2]]
grid = 0.5
def gridsearchljp(atms=list,dims=list,grd=float):
我已经完成了用于计算实际位置给定数量原子的Lennard Jones势能的代码。 我还完成了两个和三个原子原子的代码。我的主要问题是如何递归地对函数进行编程,即可以改变原子的数量。
过程如下:
原子的坐标为[-2,-2,-2],[-2,-2,-2],[-2,-2,-2]
调用Lennard Jones电位函数
原子的坐标为[-1.5,-2,-2],[-2,-2,-2],[-2,-2,-2]
调用Lennard Jones电位函数
...
我希望我已经很好地描述了我的问题。非常感谢。