【第14回】


『内容』

<方程式の求根>

 方程式の根を求める場合,5次以上の方程式や非線形方程式では一般に直接的解法がないので,数値的に解く数値解法を用いなければならない.ここでは,「Newton法」と「二分法」について学ぶ.

1.1 Newton法(教科書p.111)

 関数が単調連続で変曲点がなく,かつの導関数が求められるときに利用できる方法であり,根への収束性は速い.
 適当な初期値から始めて,点を通る傾きの直線とx軸との交点を次の探索点とする.この操作を繰り返すことにより,根を求めることができる(下図参照).

 ここで,の傾きは

   
となり,上式を変形して次式の反復公式が得られる.
   

 収束判定基準としては以下の3つが考えられる.ただし,は十分小さな正の値である.

  1. 2つの近似根間の差:
  2. 2つの近似根間の相対差:
  3. 2つの近似根関数値間の差:

1.3 二分法(教科書p.114)

 下図に示すように,関数が区間で連続で,根が1つ存在するならば,は異符号になる.すなわち,となる.

 いま,区間を中点で二分することを考える.

   
二分された区間と区間のどちらに根が存在するかは,その区間の両端での関数値の符号が異符号であるかどうかで判定することができる.
 したがって,
    : 
    : 
の変換を行い,順次区間を1/2ずつ縮小して根を求める.

 収束判定基準としては以下の2つが考えられる.ただし,は十分小さな正の値である.

  1. 探索区間の幅:
  2. 近似根関数値:

以下の節および章は省略する

 この範囲は,テスト範囲から除外するが,興味のある学生は一読しておくと良い.


<数値積分法>

 関数の定積分

   
は,の原始関数が解析的に求まれば
   
として求めることができる.しかし,原始関数が求められない場合などには,数値的に求める近似計算をすることになる.ここでは,以下の2つの方法について学ぶ.

5.1 台形公式(教科書p.156)

 区間における定積分を個の幅の区分に分けて,

   
と変形する.ただし,である.

 次に,区間に着目する.この区間の積分を台形の面積として近似する(下図参照).

すなわち,
   

 したがって,

   

となる.上式が台形公式と呼ばれるものである.


5.2 Simpsonの公式(教科書p.157)

 区間における定積分を個の幅の小区間の定積分の和で表す.

   
ただし,は偶数でなければならない.また,である.

 次に,区間に着目する.この区間の関数を,3点を通る2次関数で近似する. (下図参照).

ここで,2次関数の係数は以下のように決定される.

のとき:
のとき:
のとき:

したがって,
    
となる.以上より,
   
となり,
   
が得られる.上式がSimpsonの1/3の公式と呼ばれるものである.

 同様の手順で,小区間の関数を3次関数で近似して求めたSimpsonの3/8の公式と呼ばれるものもある.


『演習』

1.1 Newton法

 探索点上の関数の接線とx軸との交点を次の探索点とし,この操作を繰り返すことにより,根を探索する数値解法である(教科書p.112の図1.1を参照).

 教科書p.112の「例題1.1」を行い,その結果を確認せよ.また,初期値を変えて実行し,もう一つの根を求めてみよ(下図参照).(答)1.512


1.3 二分法

 与えられた探索区間を1/2ずつに二分し,解が存在する1/2区間を新たな探索区間とする.この操作を回繰り返すと探索区間は倍に縮小され,最終的に解へ到達することができる(教科書p.114の図1.4を参照).Newton法との大きな違いは,導関数を求める必要がない点である.

 収束判定条件をとした場合,反復計算回数

   
もしくは,とすれば,
   
として予め計算される.

 教科書p.115の「例題1.2」を行い,その結果を確認せよ.また,初期探索区間を変えて実行し,もう一つの根を求めてみよ.



5.1 台形公式

 積分区間を,幅個の小区間に分け,小区間における関数を1次関数(直線)で近似する.したがって,小区間の積分値は台形の面積で近似される(教科書p.157の図5.1を参照).小区間の台形の面積を合計したものが,関数の定積分の値となる.

 教科書p.159の「演習問題1.」を行え.また,刻み幅hを小さくすると定積分値Sがどのように変化するかも確認せよ.(ヒント:Simpsonの1/3の公式のプログラム「例題5.1のプログラム例」(教科書p.159)を参考にせよ.)

  <データ>--------------------------
   a = 1.0
   b = 1.8
   h = 0.02
  <計算結果>------------------------
   h = 0.02: S = 0.587810

 解答例 ←(まずは見ないで,自分で考えてプログラムすること)


5.2 Simpsonの公式

 積分区間を,幅個の小区間に分け,小区間における関数を2次関数で近似する.関数の小区間の積分値を2次関数の積分値で近似し,これら小区間の積分値を合計して,関数の定積分の値とする.

 教科書p.159の「例題5.1」を行い,その結果を確認せよ.


レポート課題13(授業終了後にアップロード)

 RePORTシステム