我目前正在研究python中的3D热扩散方程。
我正在利用该方程的格林函数与源方程的卷积来解析热扩散方程,该方程成为傅里叶域的乘法。
G * S ---> TF ---> G x S
由于我使用傅里叶变换,我有边界条件,这意味着我的3D模拟空间周围的二次源。
我想,为了否定这些次要想象源的影响,应用Dirichlet边界条件,它将在边缘应用0值,并阻止热量扩散回我感兴趣的区域。
你做完了吗?你知道如何编写和实现它吗?也许有另一种方法来否定这些问题?
谢谢!
答案 0 :(得分:0)
你的数学问题很困难,但你的问题不是那么多:
所以,假设你有一个三维numpy.ndarray
,你得到三个指数;所以你只需将所有这些边界设置为0:
arr[:,0,0] = 0 # all x, y == z == 0
arr[0,:,0] = 0 # all y, x == z == 0
arr[0,0,:] = 0 # all z, x == y == 0
arr[:,-1,0] = 0 # all x, y == last, z = 0
...
arr[:,-1,-1] = 0 # all x, y == z == last