next up previous
Next: About this document ... Up: Soustavy nelineárních rovnic Previous: Prostá iterace

Newton-Raphsonova metoda pro systémy nelineárních rovnic

Přesné řešení $\vec{\xi}$ vyjádříme ve tvaru $\vec{\xi} = \vec x +
\delta \vec x$. Hodnotu funkce v bodě $\xi$ vyjádříme pomocí Taylorovy věty

\begin{displaymath}
f_i (\vec x + \delta \vec x) = \underbrace{f_i(\vec x) + \su...
...l f_i}{\partial x_j}\, \delta x_j}_{=0}
+ O(\delta \vec{x}^2).
\end{displaymath}

Systém rovnic linearizujeme v bodě $\vec{x}^{(k)}$ ($k$-tý odhad řešení). Máme soustavu $n$ lineárních rovnic o $n$ neznámých

\begin{displaymath}
\left(
\begin{array}{cccc}
\frac{\partial f_1}{\partial x_1}...
...{(k)}) \\
\vdots \\
f_n (\vec{x}^{(k)})
\end{array}\right) .
\end{displaymath}

Iterační vztah je tedy $x_i^{(k+1)} = x_i^{(k)} + \delta x_i^{(k)}$, kde $i = 1, \dots, n$.
Vektorově $\vec{x}^{(k+1)} = \vec{x}^{(k)} - \left[ Jf
\left( \vec{x}^{(k)} \right) \right]^{-1} \cdot \vec{f} \left(
\vec{x}^{(k)} \right)$.
Při dostatečně dobrém odhadu tato metoda konverguje za velmi obecných podmínek. V případě nutnosti počítáme derivace numericky.

Pozn. Metodu lze modifikovat tak, aby se omezení nebezpečí příliš dlouhých kroků daleko od řešení. V $\forall$ iteračních krocích chceme pokles $\sum_{i=1}^{n} f_i^2$. Pokud k němu v některém kroku nedojde, místo kroku $\delta x_i^{(k)}$ Newtonovy metody užijeme vztah

\begin{displaymath}
x_i^{(k+1)} = x_i^{(k)} + \lambda \cdot \delta x_i^{(k)}\ , \qquad {\rm kde}
\quad \lambda \in (0, 1 \rangle \ .
\end{displaymath}



Jiri Limpouch
2000-04-04