\documentclass{beamer} \usepackage[russian]{babel} \usepackage[utf8]{inputenc} \usepackage[outputdir=cache]{minted} \input{vars.tex} \usetheme{Madrid} \usecolortheme{dove} \setbeamertemplate{blocks}[rounded][shadow=false] \title[]{\cwtitle} \institute[]{ФГБОУ ВО «Вятский государственный университет»} \date{\null} \author[ ]{Студент ПМИб-3301-52-00 \cwauthor \newline \and к.п.н. А.Н.~Соколова} \newcommand\frametitleSpec[1]{% \frametitle{#1} \section{#1}% } % set captions with numbers \setbeamertemplate{caption}[numbered] \begin{document} \begin{frame} \centering\includegraphics[width=0.4\textwidth]{assets/vyatsu_logo.png}\\ \titlepage \end{frame} \begin{frame} \frametitle{План доклада} \tableofcontents \end{frame} \begin{frame} \frametitleSpec{Введение} Для языка Python разработаны библиотеки numpy и scipy математической направленности. Они включают в себя множество алгоритмов решения разнообразных задач, в том числе для интегрирования функций, осуществления операций над массивами и матрицами. \begin{enumerate} \item Проблема состоит в том, что на данный момент особенности библиотек, полнота их возможностей с точки зрения решения задач численными методами недостаточно исследованы. \item \textbf{Целью} данной работы является исследование вышеприведенных характеристик данных библиотек. \item Для достижения цели курсового проекта необходимо выполнить следующие \textbf{задачи}: \begin{itemize} \item Изучить распространенные численные методы решения основных классов задач. \item Изучить документацию библиотек numpy и scipy на предмет реализации рассмотренных методов. \item Экспериментально исследовать возможности реализаций рассмотренных численных методов данных библиотек. \end{itemize} \end{enumerate} \end{frame} \begin{frame} \frametitleSpec{Рассмотренные численные методы} Всего было рассмотрено 20 численных методов, каждый из которых решает свой класс задач: \begin{enumerate} \item Решение нелинейных уравнений \begin{itemize} \item Метод деления отрезка пополам \item Метод касательных (Ньютона) \item Метод простой итерации \end{itemize} \item Решение СЛУ: \begin{itemize} \item Метод Гаусса \item Метод обратной матрицы \item Метод прогонки \item Метод простой итерации \item Метод Зейделя \end{itemize} \item Решение систем нелинейных уравнений, с помощью метода Ньютона, и модифицированных версий методов Зейделя и простой итерации. \end{enumerate} \end{frame} \begin{frame} \begin{enumerate} \item Аппроксимация функций \begin{itemize} \item Интерполяционные полиномы Лагранжа, Ньютона \item Сплайн-интерполяция \item Сглаживание. Метод наименьших квадратов \end{itemize} \item Численное интегрирование \begin{itemize} \item Метод трапеций \item Метод парабол \end{itemize} \item Решение задачи Коши ОДУ \begin{itemize} \item Метод Эйлера, и его модифицированная версия \item Метод Рунге-Кутта \end{itemize} \end{enumerate} \end{frame} \begin{frame} \frametitleSpec{Экспериментальное исследование библиотек} Была разработана программа на языке Python, использующая возможности scipy и numpy для решения задач. \begin{figure}[h] \centering \includegraphics[width=0.25\textwidth]{assets/python-logo.png} \end{figure} В программе были приведены примеры решения СЛУ, нелинейных уравнений и задач аппроксимации функций с помощью описанных в данной работе методов. Программа не интерактивная. \end{frame} \begin{frame} \frametitleSpec{Результаты работы программы} \begin{figure} \includegraphics[width=0.5\textwidth]{assets/bisect} \end{figure} \begin{figure} \includegraphics[width=0.65\textwidth]{assets/Gauss} \end{figure} \end{frame} \begin{frame} \begin{figure} \includegraphics[width=1\textwidth]{assets/Thomas.png} \end{figure} \end{frame} \begin{frame} \begin{figure} \includegraphics[width=1\textwidth]{assets/lagrange.png} \end{figure} \end{frame} \begin{frame} \begin{figure} \includegraphics[width=1\textwidth]{assets/CubicSpline} \end{figure} \end{frame} \begin{frame} \begin{figure} \includegraphics[width=1\textwidth]{assets/Akima1DInterpolator.png} \end{figure} \end{frame} \begin{frame} \begin{figure} \includegraphics[width=1\textwidth]{assets/curve_fit.png} \end{figure} \end{frame} \begin{frame} \frametitleSpec{Заключение} В ходе выполнения работы были выполнены поставленные задачи, цель достигнута. В ходе исследования возможностей библиотек выяснилось, что они не содержат реализаций численных методов для решения систем нелинейных уравнений. В целом, в ходе работы с библиотеками стоит отметить положительные стороны: гибкость интерфейсов, высокое качество решений, большое количество доступной информации о результатах работы алгоритма. Из недостатков интерфейса библиотек можно отметить его неоднородность --- некоторые численные методы реализованы с помощью классов, другие с помощью функций, что может незначительно увеличить время на освоение интерфейса библиотек и ее возможностей пользователями. \end{frame} \begin{frame} \begin{center} {\huge Спасибо за внимание!} \end{center} \end{frame} \end{document}