Bootstrap

有限差分法下-一维中的显示有限差分(python)

第五十二篇 有限差分法

抛物线系统

对于典型的抛物型方程,例如“传导”或“固结”方程,要求在时间上有边界条件和初始条件。然后,只要需要的话,就会求出对应时间的解。与椭圆问题不同的是,如下图所示,解域是“开放的”,时间变量可以无限延续
在土木工程分析中经常出现的一个抛物问题是一维固结方程
在这里插入图片描述
其中
CV =固结系数
z =空间坐标
t =时间
在热流问题的背景下,cv将被热扩散性质α取代。
有时将方程无量纲化是很方便的,这样可以得到一个更普遍适用的解。
为了做到这一点,令
在这里插入图片描述
其中D为参考长度(例如,排水路径长度);U0是一个参考压力(例如,t = 0时的初始压力);T是一个无量纲的时间,称为“时间因子”。
在这里插入图片描述
导数可以写成
在这里插入图片描述
代入无量纲形式的扩散方程为
在这里插入图片描述

显示有限差分

固结方程可以用有限差分形式表示。假设z向网格间距为Δz,时间为Δt,利用中心差值求空间二阶导数,得到
在这里插入图片描述
下标I和j分别表示z和t变量
这种空间变量的“半离散化”,应用于整个空间网格,导致了一组时间变量的常微分方程。之前常微分方程部分描述的任何一种方法都可以用于积分这些方程组,但在这一介绍性的处理中,我们也将把有限差分应用于时间维度。因此,返回固结方程,使用简单的时间一阶导数的正差分格式(等效θ = 0),得到
在这里插入图片描述
将上面两个方程代入固结方程得到
在这里插入图片描述
前一节中描述的“分子”概念在这种抛物线问题中不是很有用;然而,有一个简单的模式,可以通过上式计算新值。在任何给定深度上的新u值仅是前一个时间步长的u值的函数。
这种类型的关系被称为“显式的”,因为u在新的时间水平上的值仅仅用u在最近的时间水平上的值来表示。然而,与所有“显式”方法一样,数值稳定性取决于所采用的空间和时间步长的满意组合。数值不稳定是指在步进过程的某一阶段引入的扰动(或误差)在后续步骤中不可控制地增长。
可以证明,这种显式方法只有在下列情况下才能保证数值稳定性
在这里插入图片描述

计算实例1

如下图所示的绝缘棒最初在0在所有点沿其长度,当边界条件100◦应用到棒的左端,并保持在该值。用显式有限差分法计算沿杆位置和时间的温度变化。
在这里插入图片描述
给出了一维热扩散的控制方程
在这里插入图片描述
其中:
α =热扩散系数
φ=温度
X =空间坐标
t =时间
边界条件为
在这里插入图片描述
初始条件为
在这里插入图片描述
通过替换
在这里插入图片描述
能写成一个无量纲形式为
在这里插入图片描述
边界条件为:
在这里插入图片描述
初始坐标为:
在这里插入图片描述
将无量纲方程用有限差分形式表示,由式(8.49)
在这里插入图片描述
这个显式公式的稳定性要求是在这里插入图片描述
值得注意的是,在上式= 1/2的特殊情况下,公式化简为
在这里插入图片描述
在本例中,令ΔX = 0.2, ΔT = 0.015
在这里插入图片描述
满足稳定性判据。
当创建具有较大时间步长的微分方程时,建议采用一些折中方法来模拟棒子左端的温度变化,因为初始条件要求在T =0时Φ=0,而在T =0时,在该位置的瞬时边界条件要求Φ=1。
一种选择是在T = 0时应用完整的温度变化;但是在这个例子中,我们在T = 0处应用了变化结果的一半,也就是0.5,X = 1处的∂Φ/∂X = 0的条件通过中心差值法保持,在X = 1.2处包含一个假设的网格点。然后将X = 1.2时Φ的值设为与X = 0.8时Φ的值相同。
考虑在T = 0.015,深度X = 0.2时计算Φ。由有限差分方程得到,Φ所需的值取决于X 

;