拉普拉斯方程是一种最简单的二阶偏微分方程,同样也是一种最简单的椭圆形偏微分方程。此方程在科学界,尤其是物理学上具有举足轻重的地位,因为它能够描述电势能和热传导问题。在热力学(热传导)中,我们将拉普拉斯方程称为稳态热方程或者热传导方程。
在这篇文章中,我们将用数值求解代替积分求解,来求解拉普拉斯方程。当我们一提到数值方法,就意味着离散化。离散化就是将连续形式的微分方程转化为离散形式,同时它意味着我们将积分问题转化为线性代数问题,以便使用程序解决。
在这篇文章中,我们使用有限差分法来求解简单的热传导问题。我们的编程语言是 Python,使用的库有:Numpy(numerical library
for Python) 和 matplotlib(library for plotting and visualizing data using
Python)。下面将看到,我们可以使用很少的 Python 代码来实现丰富的功能。
背景
在计算物理中,我们经常编程来解决问题,因为计算机程序可以进行大型且复杂的计算。计算物理领域就像下图所展示的一样:
现如今,有很多编程语言可以进行数值计算,例如 MATLAB。但是此处我们使用
Python,因为它简单易学而且还免费。它有很多非常好用的数值计算和数据可视化库,例如 Numpy,Scipy 和 Matplotlib。Python
也提供可以实现并行计算,我们可以在计算机集群上运行 Python 程序。
让我们回到拉普拉斯方程上,下一节我们将使用 Python
来计算