热传导差异入门:
1.如何求一个偏微分方程的初边值问题;
2.用差分格式离散偏微分方程;
3.显示差异格式;
4.显示差分格式的条件稳定性。
热传导方程
这里我们以1D热传导方程为例:
其中:
κ叫做热导率
[2]称为方程的初始条件
[3]和[4]称为方程的边界条件。这里我们使用狄利克雷条件
我们可以看看初始条件的形状:
这里我们做正向迭代:k = 0,1...m1,这意味着我们从0运行到t。
py lab . fig(fig size =(12,6))
pylab.plot(xArray,U[:,0])
pylab.plot(xArray,U[:,int(0.10/ dt)]
pylab.plot(xArray,U[:,int(0.20/ dt)]
pylab.plot(xArray,U[:,int(0.50/ dt)]
pylab.xlabel('$x$ ',fontsize = 15)
pylab.ylabel(r'$U(点,τ)$ ',fontsize = 15)
Pylab.title(u '一维热传导方程',fontproperties = font)
pylab.legend([r'$tau = 0。$ ',r'$tau = 0.10$ ',r'$tau = 0.20$ ',r'$tau = 0.50$'],fontsize = 15)
我们可以得到和以前一样的图像:
例如:
M = 2500 N = 25然后:
M = 1200 N = 25然后:
下面的代码计算第二种情况下的网格点计算过程:
我们可以看到在CFL条件不能满足的情况下,数值误差的累积结果(特别注意下面的锯齿):
请在下一章讨论这个问题,引出无条件稳定方案:隐式差分方案。
本文转载自csdn博客
Qq国际竞赛交流群:176792348 &: 463126884
1.《热传导方程 热传导方程之显示差分算法(python源码)》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《热传导方程 热传导方程之显示差分算法(python源码)》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/keji/801480.html