非均匀网格上的导数逼近

计算科学 有限差分
2021-12-06 17:08:19

我试图近似函数的一阶导数ϕ在非统一网格上:基本上我的目标是在同一域上的统一网格上执行此操作,因此我可以在“新”网格上计算它。例如:

我有xk非均匀网格,和ξk一个统一的网格,两者都在[0,1]并且长度相同。

现在我拥有的是:

1-ϕk=ϕ(xk)

2-{xk},{ξk}

我想知道ϕx(xk)高阶约。

试图做:

a)使用计算“高阶近似值”ϕ(xk)和统一网格公式(具有中心有限差分)-> 调用它ϕxku

b) 做ϕx=ϕxkudξdx

但没有好处。

任何想法?

1个回答

所以不太确定你错过了什么,但这里是你做这种事情的方法。

因此,首先,由于您的描述,我假设这是一维的。其次,我假设你知道物理域中点之间的关系,x, 和计算域,ξ,类似的东西x=x(ξ). 鉴于您有这种关系,您可以对某些功能执行以下操作ϕ()

ϕx=ϕξξxϕx=ϕξ(xξ)1

有了这个表示,因为你知道x(ξ),您可以在乘法中精确地产生第二项。所以现在你只需要近似第一项,ϕξ. 该术语可以使用正常的有限差分方案来近似。例如,使用中心差异,您可以获得以下信息:

ϕx=(ϕi+1ϕi12Δξ)(xξ)1

在这种情况下,ϕi与两者相关xiξi, 在哪里ϕi=ϕ(xi), 并且在哪里, 此外,ϕi=ϕ(x(ξi)). 这应该可以帮助您了解如何计算所需的数量。