不均一にサンプリングされた関数を数値的に区別するにはどうすればよいですか?


21

標準の有限差分式を使用して、等間隔の関数値があるという期待の下で導関数を数値的に計算できるため、は定数です。不等間隔のポイントがある場合、隣接ポイントのペアごとに変化するようになった場合はどうなりますか?もちろん、として一次導関数を計算できますが、高次の数値微分公式はありますグリッドサイズの変動に適応できる精度H X K + 1 - X k個の時間F 'X 1f(xk)hxk+1xkhf(x)1hk[f(xk+1)f(xk)]


7
常に、ポイントを通過する(区分的)多項式補間を作成し、それを微分することができます。
JM

または、単純化なしで有限差分式を再構築できます。多くの場合、これは統合のために行う必要がありますが、JMの提案はより安定している可能性があります。h=xk+1xk
rcollyer

それはどんな機能ですか?
mbq

この質問を促した例は、対数間隔の値でサンプリングされた関数ですが、対数変換されたデータの2次導関数を計算すると面白い結果が得られます。さらに、できるだけ一般的な質問をすることを考えました。xk=x0δk
デビッドZ

1
私が懸念している限り、一次および二次デリバティブのみで機能するものは、質問に対する完全に良い答えになるでしょう。誰かが答えた場合、一般的な答えが得られるように質問を書きましたが、実際にはもちろん、最も有用なのは1番目と2番目の派生物です。
デビッドZ

回答:


21

JMのコメントは正しいです。補間多項式を見つけてそれを微分できます。このような式を導き出す方法は他にもあります。通常、これらはすべて係数のファンデルモンドシステムの解法につながります。Vandermonde行列は条件数が悪くなるため、有限ステンシルに多数のポイントが含まれる場合、このアプローチは問題となります。より数値的に安定したアプローチがFornbergによって考案され、彼の第2の論文でより明確かつ一般的に説明されています。

以下は、 Fornbergの方法を実装して、任意の点のセットを持つ任意の次数微分の有限差分近似の係数を計算する簡単なMATLABスクリプトです。わかりやすい説明については、差分法に関するLeVequeのテキストの第1章を参照してください。

FD数式についてもう少し:1Dグリッドがあるとします。グリッドポイントのセット全体を使用してFD式のセットを決定する場合、結果の方法は、グリッド全体から補間多項式を見つけて微分することと同等です。このアプローチは、スペクトルコロケーションと呼ばれます。または、各グリッドポイントに対して、いくつかの隣接ポイントのみを使用してFD式を決定できます。これは、従来の有限差分法で行われていることです。

以下のコメントで述べたように、ポイントを慎重に選択しないと、非常に高次の有限差分を使用すると、振動(ルンゲ現象)が発生する可能性があります。


3
一方、補間多項式を使用する場合、データが十分に構成されていない場合は、データで発生する可能性のあるルンゲ現象などを常に覚えておく必要があります。私は...区分的多項式が、これに影響を受けにくいかもしれないと言うだろう
JM

1
Koevの作品とFornbergのテクニックは関係があるのだろうか?
デビッドケッチャソン

1
興味深いことに、Fornbergの式と、補間多項式を生成するための古典的なネビル法に基づいてLynessとMolerによって開発された以前の式とは類似しているようです。実際、それらは異なる表記の同じ式であるかもしれませんが、私は徹底的にチェックしていません。
JM

2
多くのポイントを含む多項式補間では、特別なポイント分布を適切に調整する必要があります。一般に、非一様な点分布の場合、補間を行ってから補間多項式を微分することはお勧めできません。なぜなら、それは非常に振動的である可能性があるからです(JMによる「ルンゲ現象」を考えてください)。ニーズによっては、3次スプラインを使用することをお勧めします。3次スプラインを使用すると、多くの実用的な目的で、導関数を近似する近似問題に適切な答えが得られます。
アランP. Engsig-Karup

1
いい答えだ。参考までに、このペーパーではFornbergの代替アプローチを示します。同じ原則に従いますが、アルゴリズムは異なります。
davidhigh


2

上記の答えは、使用するコードを提供するという点では優れていますが、理論的にはあまり良くありません。多項式の補間をさらに深く掘り下げたい場合は、いくつかの具体的な例を使用して、この理論的な取り扱いを見てください。

シン、アショクK、およびBSバダウリア。「ラグランジュの補間式を使用した不等間隔の有限差分式。」International Journal of Mathematics and Analysis 3.17(2009):815-827。(PDFへのリンク

著者は、Lagrangian Interpolation(Wikipediaの記事を参照)を使用して、3点、4点、および5点の補間多項式と、それらの1次、2次、および3次導関数を計算します。切り捨て誤差の式もあります。これは、有限差分スキームを使用するときに考慮することが重要です。また、N点を使用して補間多項式を計算するための一般的な式もあります。

ラグランジュ補間多項式は、補間する領域でそれらとその導関数が非常に正確になる可能性があり、均一なグリッド間隔を仮定しないため、有用です。ラグランジュ補間多項式の性質により、グリッド点よりも多くの次数の導関数を持つことはできません。

私が引用した論文には、任意に高次の有限差分スキームの式があるため、これはあなたの質問によく答えていると思います。このペーパーには、切り捨て誤差の一般的な式もあります。これは、ラグランジュ補間多項式スキームを、検討している他のスキームに対して評価するのに役立ちます。著者の論文は、Fornbergの方法と同じ結果を与えるはずです。彼らの貢献は、実際にいくつかの例を集計し、エラーの推定値を提供することです。

引用した論文 Fornbergの研究の両方が、私自身の研究に役立つことがわかりました。


1
申し訳ありませんが、引用された参考文献は奇妙に見えます-彼らは恐ろしい式を使用し、いくつかの特別なケースのみを解決します。対照的に、Fornbergは単純なアルゴリズムを提供することで一般的な問題を解決しましたが、それはすでに80年代にありました。参照してくださいここに
davidhigh

一般的な問題を解決する別の論文はこちら
-davidhigh

2
そして、この論文を軽視する最後のコメント。「優れた理論的扱い」では、9つの参考文献を持つことはできません。7つはあなた自身の作品を、もう1つは一般的な数値分析の本を示します。少なくとも、自分でトピックを発明しなかったのであれば、そうではありませんが、著者はそうしていません。
-davidhigh

あなたは絶対に正しいです。フォーミュラは恐ろしいとは言いませんが、改善される可能性があります。特別なケースは実際にはテスト/比較としてかなりいいです、そしてそれらはフォーンバーグのものと同じでなければならない一般的な公式を与えます。
jvriesem

1
@jvriesem引用された論文は、Eqnの第3項で間違った記号を持っていることに注意してください。(15b)
タレク


-4

最も簡単な方法は、有限差分近似を使用することです。

単純な2点推定では、点(x、f(x))および(x + h、f(x + h))を通る近くの割線の勾配を計算します。[1] 小さい数hを選択すると、hはxの小さな変化を表し、正または負のいずれかになります。この線の勾配は

f(x+h)f(x)h

この式は、ニュートンの差の商です。

この割線の勾配は、hにほぼ比例する量だけ接線の勾配と異なります。hがゼロに近づくと、割線の勾配が接線の勾配に近づきます。したがって、xでのfの真の導関数は、割線が接線に近づくにつれて差の商の値の限界になります。


1
David Zaslavskyが差分商の公式を具体的に言及していて、質問はより良い近似があるかどうかを尋ねているので、あなたは落胆していると思う。
ダン

7
また、元は回答の一部であったスパムリンクを除き、Wikipediaからの直接のコピーアンドペーストであるためです。
デビッドZ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.