Taylor级数展开推导有限差分法

本文介绍了如何利用Taylor级数展开推导有限差分法来估计函数的导数,包括一阶、后向、中心差分以及二阶导数的计算过程,强调了步长选择对精度和数值稳定性的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有限差分法的推导基于Taylor级数展开,这是一种将函数表示为其导数在某一点的无限和的方法。通过考虑函数在某点附近的Taylor级数展开,并结合不同点的展开式,我们可以导出有限差分近似导数的公式。

Taylor级数展开

给定一个在点 x x x可导的函数 f ( x ) f(x) f(x),其在 x 0 x_0 x0附近的Taylor级数展开是:
f ( x ) = f ( x 0 ) + f ′ ( x 0 ) ( x − x 0 ) + f ′ ′ ( x 0 ) 2 ! ( x − x 0 ) 2 + f ′ ′ ′ ( x 0 ) 3 ! ( x − x 0 ) 3 + ⋯ f(x) = f(x_0) + f'(x_0)(x - x_0) + \frac{f''(x_0)}{2!}(x - x_0)^2 + \frac{f'''(x_0)}{3!}(x - x_0)^3 + \cdots f(x)=f(x0)+f(x0)(xx0)+2!f′′(x0)(xx0)2+3!f′′′(x0)(xx0)3+

一阶导数的有限差分推导

假设我们要找到函数 f ( x ) f(x) f(x)在点 x x x处的一阶导数 f ′ ( x ) f'(x) f(x)的近似值。

前向差分:考虑 x 0 = x x_0 = x x0=x x = x + h x = x + h x=x+h的情况,根据Taylor级数,有:
f ( x + h ) = f ( x ) + f ′ ( x ) h + f ′ ′ ( x ) 2 ! h 2 + O ( h 3 ) f(x + h) = f(x) + f'(x)h + \frac{f''(x)}{2!}h^2 + O(h^3) f(x+h)=f(x)+f(x)h+2!f′′(x)h2+O(h3)
解这个方程,求得 f ′ ( x ) f'(x) f(x)的近似为:
f ′ ( x ) ≈ f ( x + h ) − f ( x ) h f'(x) \approx \frac{f(x+h) - f(x)}{h} f(x)hf(x+h)f(x)

后向差分:考虑 x 0 = x x_0 = x x0=x x = x − h x = x - h x=xh的情况,我们可以得到:
f ( x − h ) = f ( x ) − f ′ ( x ) h + f ′ ′ ( x ) 2 ! h 2 − O ( h 3 ) f(x - h) = f(x) - f'(x)h + \frac{f''(x)}{2!}h^2 - O(h^3) f(xh)=f(x)f(x)h+2!f′′(x)h2O(h3)
由此, f ′ ( x ) f'(x) f(x)的近似为:
f ′ ( x ) ≈ f ( x ) − f ( x − h ) h f'(x) \approx \frac{f(x) - f(x-h)}{h} f(x)hf(x)f(xh)

中心差分:结合前向差分和后向差分,我们得到:
f ( x + h ) = f ( x ) + f ′ ( x ) h + f ′ ′ ( x ) 2 h 2 + O ( h 3 ) f(x + h) = f(x) + f'(x)h + \frac{f''(x)}{2}h^2 + O(h^3) f(x+h)=f(x)+f(x)h+2f′′(x)h2+O(h3)
f ( x − h ) = f ( x ) − f ′ ( x ) h + f ′ ′ ( x ) 2 h 2 − O ( h 3 ) f(x - h) = f(x) - f'(x)h + \frac{f''(x)}{2}h^2 - O(h^3) f(xh)=f(x)f(x)h+2f′′(x)h2O(h3)
相减得:
f ( x + h ) − f ( x − h ) = 2 f ′ ( x ) h + O ( h 3 ) f(x + h) - f(x - h) = 2f'(x)h + O(h^3) f(x+h)f(xh)=2f(x)h+O(h3)
从而得到 f ′ ( x ) f'(x) f(x)的中心差分近似:
f ′ ( x ) ≈ f ( x + h ) − f ( x − h ) 2 h f'(x) \approx \frac{f(x+h) - f(x-h)}{2h} f(x)2hf(x+h)f(xh)

高阶导数的有限差分推导

对于二阶导数 f ′ ′ ( x ) f''(x) f′′(x),我们可以使用 x + h x + h x+h x − h x - h xh处的Taylor级数展开:
f ( x + h ) = f ( x ) + f ′ ( x ) h + f ′ ′ ( x ) 2 h 2 + O ( h 3 ) f(x + h) = f(x) + f'(x)h + \frac{f''(x)}{2}h^2 + O(h^3) f(x+h)=f(x)+f(x)h+2f′′(x)h2+O(h3)
f ( x − h ) = f ( x ) − f ′ ( x ) h + f ′ ′ ( x ) 2 h 2 + O ( h 3 ) f(x - h) = f(x) - f'(x)h + \frac{f''(x)}{2}h^2 + O(h^3) f(xh)=f(x)f(x)h+2f′′(x)h2+O(h3)
相加消去 f ′ ( x ) h f'(x)h f(x)h项,并解出 f ′ ′ ( x ) f''(x) f′′(x),得到:
f ′ ′ ( x ) ≈ f ( x + h ) − 2 f ( x ) + f ( x − h ) h 2 f''(x) \approx \frac{f(x+h) - 2f(x) + f(x-h)}{h^2} f′′(x)h2f(x+h)2f(x)+f(xh)

通过类似的方法,我们可以推导出更高阶导数的有限差分公式。这些公式的精度依赖于步长 h h h和高阶项的忽略。在实际应用中,选择适当的步长是关键,以平衡计算误差和数值稳定性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值