「数値解析」 - 1 - 方程式を解く

0.背景

方程式を解くことは、工学計算において最も重要な問題の 1 つです。この章では、f(x)=0方程式の解 x を求めるためのさまざまな方法に焦点を当てます。

方程式を解くために複数の方法を知る必要があるのはなぜですか? 手法の選択は、f関数またはその導関数の評価に必要なコストに依存し、使用シナリオが異なれば、解法の収束速度と計算の複雑さの要件も異なります。

順方向エラーと逆方向エラー

f(x)=0方程式を解くことで得られる近似解は でありx_a方程式の正確な解は です。r

転送エラー:\左 |  r-x_a \右 | 

逆方向エラー:\左 |  f(x_a) \右 |

垂直方向に測定された後方誤差は、通常、水平方向に測定された前方誤差よりもはるかに小さくなります。

方程式を解く方法の終了基準は、前方誤差または後方誤差に基づくことができます。

デリケートな問題

入力における小さな誤差が問題を解決する場合、出力では大きな問題を引き起こす場合、そのような問題は感度問題と呼ばれます。入力に小さな変更が加えられたとします。\バレプシロン g(x)

ルートの敏感な式:\triangle r=-\frac{\varepsilon g(r) }{f'(r)}=-\frac{g(r) }{f'(r)}\varepsilon

\バレプシロン前の係数は誤差増幅率で、{相対前方誤差}/{相対後方誤差}として定義されます。

1. 二分法

本旨

中央値定理によれば、まず根の位置を大まかに決定し、それが既存の区間の左半分に位置するか右半分に位置するかを判断し、次に根が位置する区間をさらに細分化します。

特定のアルゴリズム

初期間隔が であると仮定すると[a、b]、n 回二等分した後、結果の間隔は[a_n、b_n]長さ になり、値の最良推定値として(ば)/2^n中点が選択されます。x_c=(a_n+b_n)/2

定理

誤差が 未満の場合0.5\cdot 10^{-p}、解は小数点以下 1 桁まで正確ですp

特徴

バイナリ反復のプロセスでは、関数の曲線全体を知る必要はなく、必要な位置での関数の値を計算するだけで済みます。

二分法では、期待される精度が決まると、定理によって必要な反復回数を計算できます。

2. 固定小数点反復 FPI

意味

の場合g(r)=r、実数は関数の固定点にrなります。g

本旨

すべての方程式はf(x)=0固定小数点反復問題に変換できf(x)=x、同じ方程式は複数の変換形式を持つことができ、一部の変換形式は固定小数点に収束しますが、一部の形式は収束しません。これは本質的に、誤差の線形収束および発散の問題です。

特定のアルゴリズム

まずf(x)=0それを適切な形式に書き換えますg(x)=x

与えられたx_0= 初期推定値;

実行しますx_{i+1}=g(x_i)

それまで\左 |  x_{i+1}-x_i \right |<TOL

定理

関数gが連続微分可能であると仮定すると、g(r)=rS=\左 |  g'(r) \right |<1、固定小数点の反復は、十分に近いr初期推定値の速度でS線形に固定小数点に収束しますr

特徴

二分法は線形収束を保証でき、固定小数点反復は局所収束のみであり、固定小数点反復が収束するときは線形収束します。二分法では各ステップで不確実性の 1/2 が除去されますが、FPI では不確実性が各ステップで乗算されるためS=\左 |  g'(r) \right |、固定小数点反復は 1/2 のサイズ関係の S に応じて二分法より速くなったり遅くなったりする可能性があります。

さらに、固定小数点反復法は に収束することを保証しませんr

3. ニュートン法

 Newton 法は、FPI の改良されたアルゴリズムであり、Newton-Raphson 法としても知られています。

本旨

最初からx_0、関数 への接線を引き、関数の根への次の近似としてy=f(x)x 軸x_1との交点をマークし、プロセス全体を繰り返します。

特定のアルゴリズム

x_0= 初期値;

x_{i+1}=x_{i}-\frac{f(x_i)}{f'(x_i)}

...

定理

関数がf2 次の連続微分可能関数であると仮定すると、f(r)=0の場合f'(r)\neq 0、ニュートン法は局所的に 2次的に収束しr私最初のステップの誤差はe_i次の条件を満たします。

lim_{t\rightarrow \infty } \frac{e_{i+1}}{e_i^2}=M

で、

M=\frac{f''(r)}{2f'(r)}

特徴

ニュートン法は常に二次関数的に収束するわけではなく、複数の根の位置で線形に収束します。線形収束係数は ですS=(m-1)/m

ここで、m 個の複数のルートは次のように定義されます。

だったら0=f(r)=f'(r)=...=f^{(m-1)}(r)、でもf^{(m)}(r)=0

4. セカント法とその変形

Newton 法がより速い反復速度を達成できる理由は、より多くの情報、特に関数導関数を通じて得られる関数の接線方向の情報が使用されるためです。ただし、導関数の計算が難しい場合もあります。その場合、セカント法はニュートン法に代わるものであり、タンジェントの代わりに近似セカントを使用し、ほぼ同じ速度で収束します。

セカント法の具体的なプロセス

x_0、x_1= 初期推定値

x_{i+1}=x_{i}-\frac{f(x_i)(x_i-x_{i-1})}{f(x_i)-f(x_{i-1})}

導関数の代わりに差商が使用されるため、この方法では 2 つの初期推定値が必要になります。

セカント法には、トライアル位置法、ミュラー法、および逆二次差分法 IQI の 3 つの一般化された形式があります。

トライアルポジション法の具体的な流れ

次の[a、b]ような範囲を指定すると、f(a)(b)<0

for\、i=1,2,3...

        c=\frac{bf(a)-af(b)}{f(a)-f(b)}

        f(c)=0の場合、停止、終了

       f(a)f(c)<0の場合

               b=c

        それ以外

                a=c

        終わり

終わり

テスト位置法の主なアイデアは、ルートを含む区間を継続的に更新することであることがわかります。二分法や割線法よりもパフォーマンスが向上し始め、2 つの最良の特性を備えていますが、二分法のようにすべてのステップで除去できることを保証することはできません。1/2 不確実性。

ミュラー法と逆二次差分法 IQI

これら 2 つの方法はどちらも放物線を使用して直線を置き換えます (どちらも放物線内挿には 3 つの初期推定値が必要です)。違いは、Muller 法で使用される放物線には X 軸との交点が複数あるのに対し、逆二次差分法 IQI では放物線が使用されることですy=p(x)。採用される形式では、x=p(y)X 軸との交点が 1 つだけになります。

5. ブレント法 

ブレント法はハイブリッド法です。本来の目的は、二分法の保証された収束特性と、より複雑な法の高速収束特性を組み合わせることであり、ブレント法は微分計算を必要としません。

おすすめ

転載: blog.csdn.net/weixin_44307969/article/details/127997725