• 締切済み

様々な補間法について。

様々な補間法について。 補間に関する情報を色々読みましたが、きちんと理解出来ているか不安なので、質問させて下さい。 まず、ラグランジュの補間法というのはいくつかある点の中から、ある2点を取り、その2点間を直線で近似するという考えで合ってますでしょうか。 次にスプライン補完はいくつかの点を3次式で近似しているという考えでよいでしょうか。 最後に質問ですが、xy平面で、どちらかひとつの座標だけが変化してるような2点間を補完するのに最も適した手法は何でしょうか。 数学の知識が乏しいので、頭のいい方から見たらバカみたいな質問かもしれませんが、回答お願いします。

みんなの回答

  • Kules
  • ベストアンサー率47% (292/619)
回答No.1

どちらかというと逆のイメージだと思います。 ラグランジュの補間は、全部のデータ点の組み合わせ((x0,y0)、(x1,y1,)、…、(xn,yn))を 1つの関数で表現してしまおうというものです。たとえばデータ点の組み合わせが10点ならば、 理論的には全ての点を通る9次関数を作ることができるはずです。ただし、むりやり全部の点を通るように するため、各点の間の曲線が「それは嘘やろ」みたいな形になることもしばしばです。そのため、 例えば次数を下げて、「完全には点を通ってないけど何となく形は正しいっぽい」という近似曲線を書いたりします(これは補間というより近似です。よく使うところでいうと最小二乗近似でしょうか) スプライン補間は、各2点間を多項式で表現します。そして、境界面で滑らかに繋がるように係数を調整します。 具体的に(x1,y1)、(x2,y2)、(x3,y3)の3点を3次のスプライン補間をすることを考えます。 y=ax^3+bx^2+cx+d(x1≦x≦x2)…式(1) y=ex^3+fx^2+gx+h(x2≦x≦x3)…式(2) のa~hを決めることとなります。 式(1)がx=x1の時y=y1、x=x2の時y=y2を満たさなければならないのは明らかです。(式(2)においても同様です) が、それだけでは係数が決まりませんし、式(1)と式(2)を使って曲線を描いた時、x=x2のところがとがってしまうなど、不自然な形になることがあります。そのため、 そこで、 x=x2での1次導関数が連続(x=x2での接線の方程式は、式(1)から作っても式(2)から作っても同じになる) x=x2での2次導関数が連続(x=x2近辺での接線の傾き具合の変化は、式(1)のものも式(2)のものも同じ) という条件も付け加えて、x=x2での2つの曲線が滑らかに繋がるようにします。 >最後に質問ですが、xy平面で、どちらかひとつの座標だけが変化してるような2点間を補完するのに最も適した手法は何でしょうか。 これは例えば(1,3)と(1,5)のような2点間を補完するということでよろしいでしょうか? 上に書いたように、ラグランジュの補間もスプラインの補間も、その2点以外の周りの状況も重要になるのでそれだけでは何とも言えませんが、単にその2点間を補完したいのなら線形補間(単純に、2点を直線で結ぶ)でよいと思います。 私自身補間についての知識はだいぶふわふわっとしたものなので伝わるか自信はないですが、イメージとしてはだいたいこんな感じです。 長文失礼しました。参考になれば幸いです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 2次補間法とラグランジュ補間法の違い。

    2次補間法とラグランジュ補間法ってどうちがうのでしょうか? 2次補間がどういうものかは理解できたのですが、結局は両方与えられた点から 近似式を出すみたいな意味では同じですよね? 2次補間は3点の間のみの話でラグランジュはそれ以上ってことですか? レポートでこの2題が出されましたが、ラグランジュの考察をどうかいていいのかわかりません。 ラグランジュの特徴とかそういうのをどう説明したらいいでしょうか。

  • 直線補間出来る関数

    直線補間できる関数はエクセルに有るのでしょうか? 直線補間とはxy座標において、点A(x1,y1),点B(x2,y2)が有ったときに、x1≦x≦x2における任意のxに対するyの値を点AB間が直線だと仮定して求めるすることです。 今は、VLOOKUP,match,Index関数を使ってやってますが、関数がある非常に楽です。

  • 三次元形状曲面の導出法

    数学板でも質問したことなのですが、アドバイスもあってこちらに流れてきました。 質問番号3464667 に関連した質問なのですが 格子点上に並んでいない(x,y)と(dz/dx,dz/dy つまり各方向の傾き)がわかっている条件で三次元曲面形状を導出するアルゴリズムを作成しました。最小二乗法を基本としたアルゴリズムをフォートランで作成したのですが、なぜスプライン関数を使わないのかという指摘を受けました。 スプライン関数は曲線では非常に有力な補間法であることは理解しているのですが、格子点上に並んでいないデータでスプライン曲面を作るのは境界のつなぎ合わせや、パラメトリック曲線をどう作ればいいのかよくわからなくて敬遠したのですが、実際スプライン関数を用いて三次元形状を導出することは可能なのでしょうか? また近似曲面としてβスプライン関数やナーブス曲面は近似関数として適当なのでしょうか?(コンピュータグラフィックスの世界でしか使わない??) よろしくお願いします。

  • 等高線図を書くための補間のやり方

    等高線図を書きたく,補間のやり方を調べています. 既知の点,P(x1,y1,z1),Q(x2,y2,z2),R(x3,y3,z3),S(x4,y4,z4)が存在したときに,これらの点に囲まれた中の任意の場所のz座標を補間法によって求めたいと考えています. 「補間」で検索をかけてみると,いろいろな補間方法がヒットしますが,x,y座標で,いくつかの点を曲線で結ぶというやり方はヒットするのですが,x,y,z座標については見当たりませんでした. まずは,有用な補間法の名前,複数ある場合は,それぞれ長所,短所などだけでも教えていただけませんでしょうか? よろしくお願いいたします.

  • 補間曲線を関数で求める

    いくつかの離散的なデータに対する補間曲線を求めたいです。 また、その補間曲線を関数を用いて求めることを行いたいのですが、 分かるかたが居ましたら、具体的な方法について教えて頂けないでしょうか? 使用するデータは二次元のデータになり、総数としましては約10点程です。 具体的なデータは以下のようになります。 x y 22.5 672 27.5 491 32.5 331 37.5 269 ・ ・ ・ この様に続いているデータに対して 次数が2以上の曲線を関数で求めたいのです。 (例:3x^2+4x+3)。 スプライン曲線や重回帰法などを見ておりますが、 よく理解できません。 どうぞよろしくお願いします。

  • 3次元上の点の近似曲線

    現在,3次元空間上に点がある程度規則的に分布しています. 2次元なら,スプライン補間,ベジェ補間あるいは最小二乗法などがありますが,3次元となるととたんにどのように補間すればよいのかわからなくなります. 添付ファイルに示しているのは,そのサンプル分布点です. 実際には5000点程度あります. これを可視化するために近似曲線を求めるにはどうしたらよいでしょうか? 現在gnuplotを用いて添付ファイルは表示しています. このように可視化できるツールを用いて画像として近似曲線を知りたい(可視化したい)と考えています. よろしくお願いします.

  • ラグランジュの補間法のCプログラム

    昨日学校でラグランジュの補間法の問題をC言語のプログラムで解けという課題が出されました しかし、友達と相談してもよくわかりませんでした 課題は以下の問題です sin関数6点、(0.92+0.01x)、x=0,1,2,3,4,5を求めて、ラグランジュの方法でsin(0.923)を計算せよ ちなみに答えは、0.79742です 先生からサンプルのプログラムをもらいました 以下のサンプルプログラムを参考にして解いてくださいと言われたのですが、どうしても解けません すいませんが分かる方、よろしくお願いします #include <stdio.h> #include <math.h> #define N 6 //データ数 double x[N]={ 0.0,1.0,2.0,3.0,3.1,5.0}; //X座標 double y[N]={0.0,1.1,2.5,4.0,4.1,5.0}; //Y座標 double lagrange( double); int main() { double xx,yy; //補間計算 printf("XX\t\tYY\n"); for( xx=0.0; xx<=5.0; xx+=.2 ) { yy = lagrange( xx); printf("%8.2lf\t%8.2lf\n", xx, yy ); } return 0; } //補間サブルーチン double lagrange( double xx ) { double z[N]; double yy=0.0; int i,j; for( i=0; i<N; i++ ) { z[i] = 1.0; //係数計算 for( j=0; j<N; j++ ) if( i!=j ) z[i]*=(xx-x[j])/(x[i]-x[j]); //補間値計算 yy+=z[i]*y[i]; } return yy; } 上記はあくまでサンプルプログラムなので、中に入っている数値は適当です よろしくお願いします

  • 空間図形のもんだいです。

    座標空間内に4点P(3,1,4,),A(1,2,3),B(1,1,2),C(2,1,1)がある。直線PAとxy平面の交点をA‘、直線PBとxy平面の交点をB‘、直線とxy平面の交点をC‘とする。 (1)三角形ABCの面積を求めよ。 (2)三角形A‘B‘C‘の面積を求めよ。  この問題をといてくれませんか、よろしくお願いします。

  • ラグランジュ乗数法のはいりで…。

    ラグランジュ乗数法を学ぼうとしています。まだラグランジュ乗数法の式を使って、問題を解くなどはしてないのですが、その解説の部分で腑に落ちないところがあったので、質問させてください。 その記述は、 g(x,y) = xy - 36 = 0 の条件のもとで、 f(x,y) = 2x + 3y の極値を求めることを考える。求める極点をxy平面上に落とした点をAとし、極点そのものをBとする。これは等高線g上を動く点がAを通過する瞬間、その上空では z = f(x,y) = 2x + 3y 内の曲線が谷底あるいは山頂になっていることを意味している。動点Bは等高線g上を動いているので、全微分方程式 dz = gxdx + gydy において、 dz = 0 である。 とあるのですが、なぜ動点Bは等高線上を動くのでしょうか?動点Bはxy平面上の双曲線に沿って動く(xy平面を上から見下ろした時に、双曲線に沿って動く)と思うのですが、点自体は f(x,y) = 2x + 3y 上にあるので、等高線上は動かないと思うのですが…。 よろしくお願いします。

  • 最小二乗法での線形近似

    excelの最小二乗法による線形近似でわからないことがあります. たとえば,xy平面でデータが散布している状況で・・・ データがほぼ垂直(y軸に平行)に分布している場合,最小二乗法による線形近似がうまくいきません. ばらつきは少ないはずだから,決定係数も高くなると思うのですが,垂直線ではなく斜めの直線が引かれてしまい,決定係数も低くなってしまいます. これは,垂直線だと傾きaの値が∞に大きくなり,データの大きさ(?)上,近似不可能ということなのでしょうか?

このQ&Aのポイント
  • エクセルVBAで特定のセルの範囲を指定する方法について質問です。
  • 範囲を指定する項目が多い場合にエラーが出る問題があるようです。
  • 主にある列を指定したり、1列おきに複数列を指定する方法について教えてください。
回答を見る