65 lines
3.4 KiB
TeX
65 lines
3.4 KiB
TeX
\chapter{Экспериментальное исследование возможностей библиотек}
|
||
Для исследования возможностей библиотек была разработана программа
|
||
на языке Python. Она позволяет изучить работу наиболее популярных
|
||
численных методов: методов решения нелинейных уравнений и
|
||
СЛУ, а также аппроксимации функций.
|
||
|
||
Ее структура состоит из классов \textbf{NonLinear}, \textbf{SLE},
|
||
\textbf{Approx}. Они состоят только из статических методов,
|
||
пользовательских родительских классов не имеют.
|
||
|
||
При запуске программа сначала выводит графики решений нелинейных
|
||
уравнений в отдельных окнах (рисунок \ref{bisect}, рисунок\ref{newton}),
|
||
входные и выходные данные для методов решения СЛУ в терминале, и
|
||
затем результаты аппроксимации, так же в виде графиков в отдельных
|
||
окнах.
|
||
|
||
Результат работы метода Гаусса (вывод терминала) приведен на
|
||
рисунке \ref{gauss}.
|
||
|
||
Вывод графиков осуществляется с помощью библиотеки \textbf{matplotlib},
|
||
через функции \textbf{matplotlib.pyplot.plot} и \textbf{matplotlib.pyplot.subplots} \cite{links:matplotlib}.
|
||
|
||
Все графики имеют заголовок, в котором написано название функции,
|
||
легенду в нижнем левом углу, в которой описаны данные графика.
|
||
\begin{figure}[ht]
|
||
\centering
|
||
\includegraphics[width=0.6\textwidth]{assets/bisect.png}
|
||
\caption{Результат исследования функции bisect}
|
||
\label{bisect}
|
||
\end{figure}
|
||
|
||
\begin{figure}[ht]
|
||
\centering
|
||
\includegraphics[width=0.6\textwidth]{assets/newton.png}
|
||
\caption{Результат исследования функции newton}
|
||
\label{newton}
|
||
\end{figure}
|
||
|
||
|
||
\begin{figure}[ht]
|
||
\centering
|
||
\includegraphics[width=0.6\textwidth]{assets/Gauss.png}
|
||
\caption{Результат решения СЛУ методом Гаусса}
|
||
\label{gauss}
|
||
\end{figure}
|
||
|
||
Для получения результатов исследования отдельных классов численных
|
||
методов есть следующие методы:
|
||
\begin{enumerate}
|
||
\item \textbf{NonLinear.plot} для вывода графиков результатов
|
||
решения нелинейных уравнений, \textbf{Approx.plot} --- для вывода
|
||
графиков решения задачи аппроксимации.
|
||
|
||
\item \textbf{SLE.print} --- для вывода результатов решения
|
||
СЛУ в терминал
|
||
\end{enumerate}
|
||
|
||
Данные методы самостоятельно вызываются при запуске программы
|
||
пользователем.
|
||
|
||
Вывод терминала а также графики для остальных методов приведены
|
||
в приложении А.
|
||
|
||
Код программы приведен в приложении Б.
|