next up previous
Next: Řešení stiff problémů Up: Stiff rovnice (rovnice se Previous: Stabilita pro konečný krok

Semiimplicitní Eulerova metoda

Implicitní metody jsou vhodné pro lineární diferenciální rovnice, kde pro výpočet $\vec{y}_{i+1}$ je nutno řešit systém lineárních rovnic. Řešit systém nelineárních rovnic je ale obtížné, proto rovnice pro $\vec{y}_{i+1}$ linearizujeme. Takové metody nazýváme semiimplicitní.

Linearizujeme implicitní Eulerovu metodu $\vec{y}_{n+1} = \vec{y}_n
+ h \vec{f}(x_{n+1}, \vec{y}_{n+1})$ a dostaneme

\begin{displaymath}
\vec{f} (x_{n+1},
\vec{y}_{n+1}) = \vec{f}(x_{n+1}, \vec{y}_...
...ht\vert _{x_{n+1}, \vec{y}_n}
(\vec{y}_{n+1} - \vec{y}_n)\ \ ,
\end{displaymath}

kde parciální derivace vektoru je matice $\partial f_i/\partial x_j$. Odtud potom

\begin{displaymath}
\vec{y}_{n+1} = \vec{y}_n
+ h \left[ {\bf I} - \left. h\, \f...
...+1}, \vec{y}_n} \right]^{-1} \cdot \vec{f} (x_{n+1}, y_n)\ \ .
\end{displaymath}

Mocnina $-1$ znamená inverzní matici. V každém kroku tedy řešíme systém lineárních rovnic.

Pozn. Semiimplicitní metody nejsou A-stabilní, ale dovolují podstatně delší krok než explicitní metody.



Jiri Limpouch
2000-05-25