1 / 16

5.2 グレゴリー・ニュートン( Gregory-Newton )の補間式 (1)導入

5.2 グレゴリー・ニュートン( Gregory-Newton )の補間式 (1)導入. 次のような点列に対する補間式を考える。. 点列を代入すると,代入の繰返しで係数を求めることができる。. [参考]. 概念的には,多項式補間を次のような三角行列に変換したことと同じ。. また. であるから多項式補間より係数の絶対値の比率は一般に小さくなる。. (2)等間隔法①. とすると,. 表データは,独立変数を等間隔に並べていることが多いので,点間の幅を. (2)等間隔法②. 係数を求めると. (2)等間隔法③. 次のような記法を導入.

cale
Download Presentation

5.2 グレゴリー・ニュートン( Gregory-Newton )の補間式 (1)導入

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 5.2 グレゴリー・ニュートン(Gregory-Newton)の補間式(1)導入 次のような点列に対する補間式を考える。 点列を代入すると,代入の繰返しで係数を求めることができる。

  2. [参考] 概念的には,多項式補間を次のような三角行列に変換したことと同じ。 また であるから多項式補間より係数の絶対値の比率は一般に小さくなる。

  3. (2)等間隔法① とすると, 表データは,独立変数を等間隔に並べていることが多いので,点間の幅を

  4. (2)等間隔法② 係数を求めると

  5. (2)等間隔法③ 次のような記法を導入 コーヒーブレーク(Pascalの三角形を思い出そう) さらに次のようにおく 1 1 1 1 2 1 1 3 1 3 6 4 4 1 1 10 10 5 1 5 1

  6. (2)等間隔法④ 整理すると この式をグレゴリ・ニュートンの補間式と呼ぶ

  7. (3)例 X(度) sin(X) 0 0.0000 10 0.17365 20 0.34202 30 0.50000 40 0.64279 計算すると(ただしExcelで定義しよう)

  8. (4)Excelでの定義

  9. Private X(5) As Double Private FY(5) As Double Private UX As Double Sub データ設定() XX = 0: DX = 10 For i = 1 To 5 X(i) = XX: FY(i) = Sin(XX * 3.1415926 / 180) XX = XX + DX Next UX = (22 - X(1)) / DX End Sub Sub ボタン1_Click() データ設定 R = Gregory(FY, UX, 5) MsgBox " 結果=" & R End Sub VBAでのプログラム   ①データ設定とボタンのClickイベントハンドラ

  10. Function Comb(N, R) As Long '組合せ回数の計算 If R = 0 Or R = N Then Comb = 1 ElseIf R = 1 Then Comb = N Else Comb = Comb(N - 1, R - 1) + Comb(N - 1, R) End If End Function Function Fact(N) As Double '階乗の計算 Dim D As Double D = 1 For i = 2 To N D = D * i Next Fact = D End Function VBAでのプログラム   ②組合せ数と階乗の計算

  11. Function 差分計算(i, FY) As Double A = 0: Sign = 1 For k = i To 2 Step -1 C = Comb(i - 1, k - 1) A = A + C * Sign * FY(k) Sign = -Sign Next 差分計算 = A + Sign * FY(1) End Function Function 補間計算(i, UX) As Double U = UX: T = 1 For k = 2 To i T = T * U: U = U - 1 Next 補間計算 = T End Function VBAでのプログラム   ③差分計算と補間計算

  12. Function Gregory(FY, UX, N) T = 0 For i = 1 To N A = FY(1): ii=i If i >= 2 Then A = A = 差分計算(i, FY) * 補間計算(i, UX)/ Fact(ii) T = T + A Next Gregory = T End Function VBAでのプログラム   ④クレゴリ・ニュートンの補間式の計算

  13. Function Comb2(N, R) As Long Dim A() As Double ReDim A(N) NN = N: RR = R If NN - RR < RR Then RR = N - R If RR = 0 Then Comb2 = 1 ElseIf RR = 1 Then Comb2 = N Else For i = 2 To RR A(i) = i + 1 Next For i = 1 To NN - R - 1 A(1) = i + 2 For j = 2 To RR A(j) = A(j - 1) + A(j) Next Next Comb2 = A(RR) End If End Function 組合せ個数を計算するのに, nC0=nCn=1, nC1=n, nCr=n-1Cr-1+n-1Cr の定義どおり処理しているが, たとえば,10C5を求めるのに9C4と9C5を使い, さらに9C5を求めるにも8C4を使う。 このようにまったく同じ計算が何回も出てくる。 左のプログラムでは, nC1から計算して, 結果を配列に保存することで, 無駄な計算を省いている。 [補足] 例題のプログラムの問題点

  14. 以下のデータは,ある斜面の高さを100m間隔で測定した結果である。グレゴリーニュートンのプサンプルログラムを用いて,250m位置の高さを求めよ。以下のデータは,ある斜面の高さを100m間隔で測定した結果である。グレゴリーニュートンのプサンプルログラムを用いて,250m位置の高さを求めよ。 課題1

  15. 高さhと角度θを示す衛星の軌道データは以下のとおりである。高さhと角度θを示す衛星の軌道データは以下のとおりである。 このデータを用いて,t=1,200秒の衛星位置(高さとθ)を推定せよ 。 なお,時間tは衛星が軌道に入った後の時間とする。 課題2 衛星 高さ θ 地球

  16. バリスタ(非線形抵抗器)の電圧・電流を測定したところ以下のようになった。バリスタ(非線形抵抗器)の電圧・電流を測定したところ以下のようになった。 このバリスタの特性を示す3次補間式を作れ。 課題3

More Related