我仍在做与上一个问题相同的项目,该项目试图模拟粒子扩散。我的上一个问题与此无关,除了仍然试图模拟扩散。我正处于尝试在网格内启动不同扩散率区域的阶段,因此我具有一个生成列表(坐标)列表的功能,可以在每个移动步骤中对照粒子的坐标对其进行检查,以调整概率的运动,以及扩散性。
我正在使用2节课;一种是启动扩散网格空间grid(),另一种是移动粒子atom()。 atom()类不会从grid()类继承变量。使用initiate t_space在grid()中创建了一个称为t_space的坐标区域,我想访问在atom()中initial t_space中产生的变量t_space。
我的代码很长,所以我已经包括了我希望相关的部分,以及我目前试图解决的问题。
我希望从atom()中的grid()调用t_space变量的代码是:
atom().tspace = grid().t_space
class grid():
def __init__(self,x,y):
self.grid = np.zeros((x,y))
self.list_of_atoms=[]
self.x = x
self.y = y
def initiate_t_space(self,t_space_x,t_space_y):
self.t_space = []
for i in range(0,self.t_space_x):
for j in range(0,self.t_space_y):
self.t_space.append([i,j])
class atom():
def __init__(self,y):
self.position=[x,y]
self.position_tracker=[]
self.dx=0
self.dy=0
# self.tspace = [[11,42],[11,43],44],45],46],47],48],49],50],51],52],53],54],55],56],57],58],[12,38],39],40],41],48]]
# self.t_space = []
# for i in range(0,100):
# for j in range(0,200):
# self.t_space.append([i,j])
# print(self.t_space)
atom().tspace = grid().t_space
atom()类中已注释掉的代码是先前尝试在atom()中启动t_space的尝试,但是由于它使用了grid()中的变量,因此需要在grid()中进行计算。
任何帮助将不胜感激。