From 5c3084deebe0cd726d50f2784006a9d8bfbe8d1e Mon Sep 17 00:00:00 2001 From: AVAtarMod Date: Tue, 17 Oct 2023 23:50:26 +0300 Subject: [PATCH] [content] Add program development chapter, Fix refs --- appendix.tex | 2 +- experimental_research.tex | 64 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 experimental_research.tex diff --git a/appendix.tex b/appendix.tex index 475d49b..af0953b 100644 --- a/appendix.tex +++ b/appendix.tex @@ -16,7 +16,7 @@ \section{Результаты вывода программы} -\label{script:storage} +\label{output_program} \begin{figure}[H] \centering \includegraphics[width=0.6\textwidth]{assets/Thomas} diff --git a/experimental_research.tex b/experimental_research.tex new file mode 100644 index 0000000..681cd79 --- /dev/null +++ b/experimental_research.tex @@ -0,0 +1,64 @@ +\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} + +Данные методы самостоятельно вызываются при запуске программы +пользователем. + +Вывод терминала а также графики для остальных методов приведены +в приложении \ref{output_program}. + +Код программы приведен в приложении \ref{program_code}.