用Python进行递归网格搜索Lennard Jones电位

时间:2018-12-08 14:01:22

标签: python recursion iteration grid-search

我在一个房间里有给定数量的原子(点)。房间的尺寸是:

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电位函数

...

我希望我已经很好地描述了我的问题。非常感谢。

0 个答案:

没有答案