[content] Rename refs. Fix formulas. Add SnLE method
This commit is contained in:
parent
36c728cddd
commit
f1a6257b45
62
main.tex
62
main.tex
@ -235,10 +235,15 @@
|
|||||||
уравнения за исполнение алгоритма на единственном начальном приближении.
|
уравнения за исполнение алгоритма на единственном начальном приближении.
|
||||||
\subsubsection{Описание метода}
|
\subsubsection{Описание метода}
|
||||||
Уравнение \(F(x)=0\) приводим к виду \(x = \varphi(x)\), например
|
Уравнение \(F(x)=0\) приводим к виду \(x = \varphi(x)\), например
|
||||||
\(x-F(x)/M\), где \(M\) --- константа.
|
\(x = x-F(x)/M\), где \(M\) --- константа.
|
||||||
|
|
||||||
Условие сходимости алгоритма: \(0<|\varphi'(x)|<1\). Исходя из него,
|
Условие сходимости алгоритма: \(0<|\varphi'(x)|<1\). Исходя из него,
|
||||||
\(M\) определяется как \(M=1.01 \cdot F'(x_0)\), где \(x_0\) ---
|
\(M\) определяется как
|
||||||
|
\begin{equation}
|
||||||
|
M=1.01 \cdot F'(x_0)
|
||||||
|
\label{formula:stab_simpleiter}
|
||||||
|
\end{equation}
|
||||||
|
где \(x_0\) ---
|
||||||
начальное приближение.
|
начальное приближение.
|
||||||
|
|
||||||
Таким образом, для итерации \(i, i = 1\dots k,\)
|
Таким образом, для итерации \(i, i = 1\dots k,\)
|
||||||
@ -261,7 +266,7 @@
|
|||||||
& a_{n1}x_1 + a_{n2}x_2 + a_{nn}x_n = b_n \\
|
& a_{n1}x_1 + a_{n2}x_2 + a_{nn}x_n = b_n \\
|
||||||
\end{aligned}
|
\end{aligned}
|
||||||
\right.
|
\right.
|
||||||
\label{formula:eqn_system}
|
\label{formula:SLE}
|
||||||
\end{eqnarray}
|
\end{eqnarray}
|
||||||
СЛУ также представима в матричной форме \(AX=B\), где \(A,X,B\) имеют
|
СЛУ также представима в матричной форме \(AX=B\), где \(A,X,B\) имеют
|
||||||
следующий вид:
|
следующий вид:
|
||||||
@ -303,7 +308,7 @@
|
|||||||
будет обозначено как \(x^{(0)}\).
|
будет обозначено как \(x^{(0)}\).
|
||||||
\subsection{Метод Гаусса}
|
\subsection{Метод Гаусса}
|
||||||
\subsubsection{Описание метода}
|
\subsubsection{Описание метода}
|
||||||
Для решения СЛУ система (\ref{formula:eqn_system}) приводится к
|
Для решения СЛУ система (\ref{formula:SLE}) приводится к
|
||||||
треугольному виду (\ref{formula:triag_eqn_system}) с помощью цепочки элементарных преобразований.
|
треугольному виду (\ref{formula:triag_eqn_system}) с помощью цепочки элементарных преобразований.
|
||||||
\begin{eqnarray}
|
\begin{eqnarray}
|
||||||
\left\{
|
\left\{
|
||||||
@ -382,7 +387,7 @@ LU-разложение \cite[с. 259]{book:levitin}. Для получения
|
|||||||
|
|
||||||
\subsection{Метод обратной матрицы}
|
\subsection{Метод обратной матрицы}
|
||||||
\subsubsection{Описание метода}
|
\subsubsection{Описание метода}
|
||||||
Исходная система (\ref{formula:eqn_system}) представляется в форме
|
Исходная система (\ref{formula:SLE}) представляется в форме
|
||||||
\(AX=B\), тогда вектор неизвестных переменных \(X\) определяется по
|
\(AX=B\), тогда вектор неизвестных переменных \(X\) определяется по
|
||||||
формуле (\ref{formula:inv_m_method}).
|
формуле (\ref{formula:inv_m_method}).
|
||||||
\begin{equation}
|
\begin{equation}
|
||||||
@ -585,7 +590,7 @@ LU-разложение \cite[с. 259]{book:levitin}. Для получения
|
|||||||
\subsubsection{Описание метода}
|
\subsubsection{Описание метода}
|
||||||
Для матрицы СЛУ (\ref{formula:eqn_matrix_system}) размеров
|
Для матрицы СЛУ (\ref{formula:eqn_matrix_system}) размеров
|
||||||
\(n \times n\), и начального приближения \(x^{(0)}\) приближенное
|
\(n \times n\), и начального приближения \(x^{(0)}\) приближенное
|
||||||
решение на итерации \(p, p = 1,2,\dots,k,k+1\) вычисляется по
|
решение на итерации \(p, p = 1,2,3,\dots,k,k+1\) вычисляется по
|
||||||
следующей формуле:
|
следующей формуле:
|
||||||
\begin{equation*}
|
\begin{equation*}
|
||||||
x^{(p+1)}_i = \frac{1}{a_{ii}}
|
x^{(p+1)}_i = \frac{1}{a_{ii}}
|
||||||
@ -609,7 +614,7 @@ LU-разложение \cite[с. 259]{book:levitin}. Для получения
|
|||||||
\subsubsection{Описание метода}
|
\subsubsection{Описание метода}
|
||||||
Для матрицы СЛУ (\ref{formula:eqn_matrix_system}) размеров
|
Для матрицы СЛУ (\ref{formula:eqn_matrix_system}) размеров
|
||||||
\(n \times n\), и начального приближения \(x^{(0)}\) приближенное
|
\(n \times n\), и начального приближения \(x^{(0)}\) приближенное
|
||||||
решение на итерации \(p, p = 1,2,\dots,k,k+1\) вычисляется по
|
решение на итерации \(p, p = 1,2,3,\dots,k,k+1\) вычисляется по
|
||||||
следующей формуле:
|
следующей формуле:
|
||||||
\begin{equation*}
|
\begin{equation*}
|
||||||
x^{(p+1)}_i = \frac{1}{a_{ii}}
|
x^{(p+1)}_i = \frac{1}{a_{ii}}
|
||||||
@ -627,10 +632,53 @@ LU-разложение \cite[с. 259]{book:levitin}. Для получения
|
|||||||
Реализаций данного алгоритма в библиотеках numpy, scipy не найдено.
|
Реализаций данного алгоритма в библиотеках numpy, scipy не найдено.
|
||||||
|
|
||||||
\section{Численные методы решения систем нелинейных уравнений}
|
\section{Численные методы решения систем нелинейных уравнений}
|
||||||
|
Система нелинейных уравнений имеет следующий вид:
|
||||||
|
\begin{equation}
|
||||||
|
\begin{aligned}
|
||||||
|
& F_1(x_1,x_2,\dots,x_n) = 0 \\
|
||||||
|
& F_2(x_1,x_2,\dots,x_n) = 0 \\
|
||||||
|
& \dots\dots\dots\dots\dots\dots \\
|
||||||
|
& F_n(x_1,x_2,\dots,x_n) = 0 \\
|
||||||
|
\end{aligned}
|
||||||
|
\label{formula:SnLE}
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
Для решения данной системы далее будет описано несколько итерационных
|
||||||
|
методов. Для каждого их них требуется начальное приближение
|
||||||
|
\(X^{(0)} = \{x^{(0)}_1,x^{(0)}_2,\dots x^{(0)}_n\}\).
|
||||||
|
|
||||||
\subsection{Метод простой итерации (метод Якоби) для систем
|
\subsection{Метод простой итерации (метод Якоби) для систем
|
||||||
нелинейных уравнений}
|
нелинейных уравнений}
|
||||||
\subsubsection{Описание метода}
|
\subsubsection{Описание метода}
|
||||||
|
Для каждого из уравнений системы (\ref{formula:SnLE}) составляется
|
||||||
|
уравнение \(f_i: x_i = x_i - F_i(x)/M_i\), где \(M_i\) определяется из
|
||||||
|
условия сходимости уравнения (\ref{formula:stab_simpleiter}).
|
||||||
|
В результате получим систему
|
||||||
|
\begin{equation}
|
||||||
|
\begin{aligned}
|
||||||
|
& x_1 = f_1(x_1,x_2,\dots,x_n) \\
|
||||||
|
& x_2 = f_2(x_1,x_2,\dots,x_n) \\
|
||||||
|
& \dots\dots\dots\dots\dots\dots \\
|
||||||
|
& x_n = f_n(x_1,x_2,\dots,x_n) \\
|
||||||
|
\end{aligned}
|
||||||
|
\label{formula:SnLE-Jacobi-fsys}
|
||||||
|
\end{equation}
|
||||||
|
|
||||||
|
Для получения приближенного решения уравнения применяется формула
|
||||||
|
\begin{equation}
|
||||||
|
x^{(p+1)}_{i} = f_i(x^{(p)}_1,x^{(p)}_2,\dots,x^{(p)}_n);
|
||||||
|
\quad i=1,2,3,\dots,n
|
||||||
|
\end{equation}
|
||||||
|
где \(p, p = 1,2,3,\dots,k,k+1\) --- номер итерации.
|
||||||
|
|
||||||
|
Заданная точность \(\varepsilon\) достигается выполнением
|
||||||
|
следующего условия:
|
||||||
|
\begin{equation*}
|
||||||
|
\forall i = 1,2,3,\dots,n;\
|
||||||
|
\max_i |x^{(k+1)}_i - x^{(k)}_i | < \varepsilon
|
||||||
|
\end{equation*}
|
||||||
\subsubsection{Реализации метода в библиотеках numpy, scipy}
|
\subsubsection{Реализации метода в библиотеках numpy, scipy}
|
||||||
|
Реализаций данного метода в библиотеках numpy, scipy не найдено.
|
||||||
|
|
||||||
\subsection{Метод Зейделя для систем нелинейных уравнений}
|
\subsection{Метод Зейделя для систем нелинейных уравнений}
|
||||||
\subsubsection{Описание метода}
|
\subsubsection{Описание метода}
|
||||||
|
Loading…
Reference in New Issue
Block a user