МИНОБРНАУКИ РОССИИ
федеральное государственное бюджетное образовательное учреждение высшего образования
«Алтайский государственный университет»

Вычислительная математика

рабочая программа дисциплины
Закреплена за кафедройКафедра вычислительной техники и электроники
Направление подготовки09.03.01. Информатика и вычислительная техника
ПрофильПрограммно-техническое обеспечение инфокоммуникационных технологий
Форма обученияОчная
Общая трудоемкость4 ЗЕТ
Учебный план09_03_01_Информатика и вычислительная техника_ПОИТ-2023
Часов по учебному плану 144
в том числе:
аудиторные занятия 56
самостоятельная работа 88
Виды контроля по семестрам
диф. зачеты: 4

Распределение часов по семестрам

Курс (семестр) 2 (4) Итого
Недель 22
Вид занятий УПРПДУПРПД
Лекции 20 20 20 20
Лабораторные 36 36 36 36
Сам. работа 88 61 88 61
Итого 144 117 144 117

Программу составил(и):
к.ф.-м.н., доцент, Иордан В.И.

Рецензент(ы):
к.т.н., доцент, Мансуров А.В.

Рабочая программа дисциплины
Вычислительная математика

разработана в соответствии с ФГОС:
Федеральный государственный образовательный стандарт высшего образования - бакалавриат по направлению подготовки 09.03.01 Информатика и вычислительная техника (приказ Минобрнауки России от 19.09.2017 г. № 929)

составлена на основании учебного плана:
09.03.01 Информатика и вычислительная техника
утвержденного учёным советом вуза от 26.06.2023 протокол № 4.

Рабочая программа одобрена на заседании кафедры
Кафедра вычислительной техники и электроники

Протокол от 28.08.2023 г. № 110/23-24
Срок действия программы: 20232024 уч. г.

Заведующий кафедрой
к.ф.-м.н., Пашнев Владимир Валентинович, доц., зав. кафедрой "Вычислительной техники и электроники"


1. Цели освоения дисциплины

1.1.Дисциплина «Вычислительная математика» обеспечивает приобретение знаний в соответствии с государственным образовательным стандартом, содействует фундаментализации образования и развитию математического мышления.
Цель изучения дисциплины – формирование у будущих специалистов теоретических знаний и практических навыков по использованию современных персональных компьютеров и программных средств для решения широкого спектра задач в различных областях, а именно: ознакомить студентов с основами теории вычислений и оценками погрешностей численных методов; привить навыки работы с различными математическими пакетами и языками программирования для создания прикладных программ.

Основными задачами изучения дисциплины «Вычислительная математика» являются:
- овладение фундаментальными знаниями по численным методам: целостное пред-ставление о науке и ее роли в развитии вычислительных технологий;
- владеть общими вопросами оценок погрешностей вычислительных методов;
- приобретение практических навыков работы на персональном компьютере с пакетами прикладных программ (MathLab, Mathematika, MathCad).

2. Место дисциплины в структуре ООП

Цикл (раздел) ООП: Б1.О.05

3. Компетенции обучающегося, формируемые в результате освоения дисциплины

ОПК-1Способен применять естественнонаучные и общеинженерные знания, методы математического анализа и моделирования, теоретического и экспериментального исследования в профессиональной деятельности;
ОПК-1.1 Знать: основы математики, физики, вычислительной техники и программирования
ОПК-1.2 Уметь: решать стандартные профессиональные задачи с применением естественнонаучных и общеинженерных знаний, методов математического анализа и моделирования.
ОПК-1.3 Владеть: навыками теоретического и экспериментального исследования объектов профессиональной деятельности
ОПК-8Способен разрабатывать алгоритмы и программы, пригодные для практического применения;
ОПК-8.1 Знать: алгоритмические языки программирования, операционные системы и оболочки, современные среды разработки программного обеспечения
ОПК-8.2 Уметь: составлять алгоритмы, писать и отлаживать коды на языке программирования, тестировать работоспособность программы, интегрировать программные модули
ОПК-8.3 Владеть: языком программирования; навыками отладки и тестирования работоспособности программы
В результате освоения дисциплины обучающийся должен
3.1.Знать:
3.1.1.основы математики, физики, вычислительной техники и программирования;
алгоритмические языки программирования, операционные системы и оболочки, современные среды разработки программного обеспечения.
3.2.Уметь:
3.2.1.решать стандартные профессиональные задачи с применением естественнонаучных и общеинженерных знаний, методов математического анализа и моделирования;
составлять алгоритмы, писать и отлаживать коды на языке программирования, тестировать работоспособность программы, интегрировать программные модули.
3.3.Иметь навыки и (или) опыт деятельности (владеть):
3.3.1.навыками теоретического и экспериментального исследования объектов профессиональной деятельности;
языком программирования; навыками отладки и тестирования работоспособности программы.

4. Структура и содержание дисциплины

Код занятия Наименование разделов и тем Вид занятия Семестр Часов Компетенции Литература
Раздел 1. Приближение функций многочленами – аппроксимация функций.Математические программные системы.
1.1. Введение. Основные задачи вычислительной математики: погрешности вычислений; устойчивость и сложность алгоритма (по памяти, по времени).Математические программные системы. Многочлены Тейлора. Интерполяционный многочлен Лагранжа. Линейная интерполяция. Минимизация оценки погрешности интерполяции по Лагранжу. Многочлены Чебышева. Интерполяция по Лагранжу с равноотстоящими узлами. Интерполяционный многочлен Ньютона. Численное дифференцирование. Сплайны. «Дефекты» сплайнов. Теорема о погрешности приближения сплайном. Равномерные приближения функций. Теоремы Чебышева. Метод выравнивания, метод коллокаций (метод «выбранных точек»), метод «средних». Метод наименьших квадратов (МНК). Общая теория. Аппроксимация МНК в различных базисах: базис «алгебраических» многочленов, ортогональные базисы (многочлены Лежандра, «факториальные» многочлены, тригонометрические многочлены и преобразование Фурье). Лекции 4 4 Л2.1, Л1.1, Л1.2, Л1.3
1.2. Лабораторная работа № 1 «Интерполяция данных с помощью многочленов Лагранжа и Ньютона» Лабораторная работа № 2 «Интерполяция данных с помощью кубических сплайнов» Лабораторная работа № 3 «Аппроксимация эмпирических зависимостей по методу наименьших квадратов (МНК)» Лабораторные 4 8 Л1.1
1.3. Исследование ошибок «среднеквадратичных приближений». Сглаживание и фильтрация наблюдений. Сам. работа 4 4 Л2.1, Л1.1
Раздел 2. Численное интегрирование
2.1. Квадратурные формулы прямоугольника, трапеций, Симпсона (парабол), Гаусса. Правило Рунге практической оценки погрешности, уточнение решения по Ричардсону, применение этих правил к квадратурным формулам. Метод Монте-Карло. Вычисление интегралов с помощью метода Монте-Карло. Сравнение метода Монте-Карло с методом квадратурных формул. Методы Эйлера, Рунге-Кутта и Адамса для решения задачи Коши для обыкновенных дифференциальных уравнений. Сравнение этих методов. Лекции 4 2 Л2.1, Л1.1, Л1.2, Л1.3
2.2. Лабораторная работа № 4 «Численное интегрирование с помощью квадратурных формул: прямоугольника, трапеций, Симпсона, Гаусса» Лабораторная работа № 5 «Методы Эйлера, Рунге-Кутта и Адамса для решения обыкновенных дифференциальных уравнений Лабораторные 4 6 Л2.1, Л1.1
2.3. Методы Монте-Карло для решения дифференциальных уравнений. Явные и неявные сеточные схемы для численного решения уравнений в частных производных Сам. работа 4 10 Л1.1
Раздел 3. Численное решение уравнений в частных производных (УЧП)
3.1. Классификация УЧП. Условие устойчивости «явной» схемы интегрирования 1-го порядка для уравнения диффузии. Неустойчивость «явной» схемы интегрирования 1-го порядка для уравнения переноса. Схема Лакса с «пространственным усреднением» с устойчивостью по Куранту-Фридрихсу-Леви (КФЛ) для уравнения переноса. Консервативные методы для гиперболических уравнений: схема Лакса и условие устойчивости Неймана, схема с «перешагиванием» с КФЛ-устойчивостью, двухшаговая схема Лакса-Вендроффа с устойчивость Неймана, схема квазивторого порядка точности. Обзор методов параболических уравнений: явная схема 1-го порядка точности, неявный метод Кранка-Никольсона, метод Дюфора-Франкеля. Лекции 4 4 Л2.1, Л1.1, Л1.2
3.2. Лабораторная работа № 6 «Схемы Лакса для решения гиперболических уравнений» Лабораторная работа № 7 «Явная схема 1-го порядка точности, неявный метод Кранка-Никольсона и метод Дюфора-Франкеля для решения параболических уравнений» Лабораторные 4 8 Л2.1, Л1.2, Л1.3
3.3. Дисперсия и диффузия на разностной сетке для гиперболических уравнений. Многомерные явные методы как обобщение консервативных методов. Сам. работа 4 23 Л1.2
Раздел 4. Численные методы линейной алгебры
4.1. Методы решения системы линейных алгебраических уравнений: Метод Крамера, метод Гаусса, метод простых итераций и метод Зейделя, метод «прогонки» для трехдиагональных матриц. Частичные проблемы собственных значений: нахождение наибольшего собственного значения, определение собственных векторов методом «обратной итерации». Метод Гивенса для приведения матрицы общего вида к почти треугольной матрице (матрице в форме Хессенберга), в том числе для приведения симметричной матрицы к симметричной трехдиагональной матрице. Метод Якоби для нахождения собственных чисел и собственных векторов матриц общего вида. Лекции 4 4 Л2.1, Л1.1, Л1.2
4.2. Лабораторная работа № 8 «Методы Гаусса, метод простых итераций и метод Зейделя и прогонки для решения системы линейных алгебраических уравнений (СЛАУ)» Лабораторная работа № 9 «Метод нахождения наибольшего собственного значения и метод «обратной итерации» для определения собственных векторов» Лабораторная работа № 10 «Метод Якоби для нахождения собственных чисел и собственных векторов симметричных матриц» Лабораторные 4 6 Л2.1, Л1.1
4.3. Метод Хаусхолдера для приведения матрицы общего вида к почти треугольной матрице (матрице в форме Хессенберга). QR-методы для решения задачи на собственные значения. Сам. работа 4 16 Л1.2
Раздел 5. Методы решения нелинейных уравнений и систем
5.1. Метод итераций и условие Липшица. Метод «бисекций» (метод «дихотомии» - метод деления отрезка пополам). Метод секущих (метод хорд). Условие и скорость сходимости. Метод «золотое сечение». Метод Ньютона (метод касательных). Условие и скорость сходимости. Метод Ньютона для решения системы уравнений. Метод наискорейшего (градиентного) спуска. Лекции 4 6 Л1.1, Л1.2
5.2. Лабораторная работа № 11 «Метод итераций, метод «золотого сечения» и метод деления отрезка пополам для решения нелинейных уравнений» Лабораторная работа № 12 «Метод секущих (метод хорд) и метод Ньютона (метод касательных) для решения нелинейных уравнений» Лабораторная работа № 13 «Метод наискорейшего (градиентного) спуска для решения системы нелинейных уравнений» Лабораторные 4 8 Л1.1, Л1.2
5.3. Градиентные методы. Сам. работа 4 8 Л2.1, Л1.2
Раздел 6. Аттестация

5. Фонд оценочных средств

5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины
Оценочные материалы для текущего контроля размещены в онлайн-курсе на образовательном портале «Цифровой университет АлтГУ» https://portal.edu.asu.ru/course/view.php?id=6606.

Вопросы закрытого типа:
Вопросы к ОПК-1:
1. Хеш-табли́ца — это структура данных, реализующая интерфейс ассоциативного массива, а именно, она позволяет хранить пары (ключ, значение) и выполнять три операци. Ответ: да.
2. Стандарты кодирования GNU это набор правил и рекомендаций для написания программ, совместимых с GNU. Стандарты кодирования GNU были написаны Ричардом Мэттью Столлманом и другими волонтерами проекта GNU. Ответ: да.
3. Интерфе́йс (англ. interface) — программная/синтаксическая структура, определяющая отношение между объектами, которые разделяют определённое множество и не связаны никак иначе. Ответ: да.
4. В языке Си, структура (struct) — композитный тип данных, инкапсулирующий без сокрытия набор значений различных типов. Ответ: да.
5. Соотнесите определения и их описания: 1. Процеду́рное программи́рование 2. Функциона́льное программи́рование 3. Объе́ктно-ориенти́рованное программи́рование (ООП) а. программирование на императивном языке, при котором последовательно выполняемые операторы можно собрать в подпрограммы, то есть более крупные целостные единицы кода, с помощью механизмов самого языка. б. раздел дискретной математики и парадигма программирования, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних (в отличие от функций как подпрограмм в процедурном программировании). в. методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определённого класса, а классы образуют иерархию наследования. Ответ: 1а, 2б, 3в.
6. Соотнесите язык программирования и объявление функции: 1. python 2. ruby 3. perl 4. go а. def equal_string(A, B): б. def test(a1 = "Ruby", a2 = "Perl") в. sub subroutine_name { г. func fc(i, j, k int) int { Ответ: 1а, 2б, 3в, 4г.
7. Соотнесите язык программирования и объявление цикла for: 1. python 2. ruby 3. perl 4. go а. for i in range(1, 5): б. for i in 1..n do в. for (my $i=0; $i <= 9; $i++) { г. for i <= stop { Ответ: 1а, 2б, 3в, 4г.
8. Соотнесите операторы в языке программирования Go: 1. break 2. continue а. останавливает выполнение текущего цикла. б. используется, когда требуется пропустить оставшуюся часть цикла, вернуться в начало цикла и продолжить новую итерацию этого цикла. Ответ: 1а, 2б.
9. Для языка программирования Ruby соотнесите генерацию последовательности и результат: 1. (1..5) 2. (1...5) 3. ('a'..'d') а. 1, 2, 3, 4, 5 б. 1, 2, 3, 4 в. 'a', 'b', 'c', 'd' Ответ: 1а, 2б, 3в.
10. Соотнесите методы и их описания (язык программирования Python): 1. «__init__» 2. «__repr__» 3. «__str__» а. данный метод вызывается при создании объекта (конструктор). б. данный метод должен возвращать текстовую строку, содержащую код (на языке Python), создающую объект, равный данному. в. данный метод возвращает строку, являющуюся описанием объекта в том виде, в котором его удобно будет воспринимать человеку. Ответ: 1а, 2б, 3в.
11. Соотнесите команды (язык программирования Python библиотека matplotlib): 1. plt.plot() 2. plt.xlabel() 3. plt.ylabel() 4. plt.show() 5. plt.title() 6. plt.xlim() 7. plt.ylim() а. построить рисунок б. надписи по оси X в. надписи по оси Y г. отобразить рисунок д. устанавливает заголовок рисунка е. ограничить рисунок по X ё. ограничить рисунок по Y Ответ: 1а, 2б, 3в, 4г, 5д, 6е, 7ё.
12. Команда plot нужна для (язык программирования Python и библиотека matplotlib): 1. построения двумерных зависимостей 2. построения одномерных зависимостей 3. построения трехмерных зависимостей 4. вывода анимации Ответ: 1.
13. Класс range() языка программирования Python генерирует последовательность в которой stop входит в последовательность? Ответ: нет.
14. Отметьте верные варианты написания строк по PEP8 (язык программирования Python): 1. def calc_dist(start, stop, step): 2. for i in range(start, stop, step): 3. Class my_class(): 4. def CalcDist(start, stop, step): Ответ: 1, 2.
15. Возможно ли создавать конфигурационные файлы Gnuplot для построения графиков без захода в режим интерпретации? Ответ: да.

Вопросы к ОПК-8
1. UML является языком широкого профиля, это — открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML-моделью. Ответ: да.
2. Стек (англ. stack — стопка; читается стэк) — абстрактный тип данных, представляющий собой список элементов, организованных по принципу LIFO (англ. last in — first out, «последним пришёл — первым вышел»). Ответ: да.
3. Объе́ктно-ориенти́рованное программи́рование (ООП) — раздел дискретной математики и парадигма программирования, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних (в отличие от функций как подпрограмм в процедурном программировании). Ответ: нет.
4. Функциона́льное программи́рование — раздел дискретной математики и парадигма программирования, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних (в отличие от функций как подпрограмм в процедурном программировании). Ответ: да.
5. Условия Йоды (от англ. Yoda conditions), или нотация Йоды (англ. Yoda notation) в жаргоне программистов — «безопасный» стиль записи выражений сравнения при программировании на языках с Си-синтаксисом, заключающийся в написании константного члена выражения (константы или вызова функции) слева от оператора сравнения (то есть 5 \=\= a вместо привычного а \=\= 5). Ответ: да.
6. Станда́рт оформле́ния ко́да (станда́рт коди́рования, стиль программи́рования) (англ. coding standards, coding convention или programming style) — набор правил и соглашений, используемых при написании исходного кода на некотором языке программирования. Ответ: да.
7. Соотнесите определения и их описания: 1. Абстра́кция в ООП 2. Инкапсуляция 3. Наследование 4. Полиморфизм а. это использование только тех характеристик объекта, которые с достаточной точностью представляют его в данной системе. б. в информатике размещение в одном компоненте данных и методов, которые с ними работают. Также может означать скрытие внутренней реализации от других компонентов. в. концепция ООП, согласно которой абстрактный тип данных может наследовать данные и функциональность некоторого существующего типа, способствуя повторному использованию компонентов программного обеспечения. г. способность функции обрабатывать данные разных типов. Ответ: 1а, 2б, 3в, 4г.
8. Соотнесите три операции со стеком с их описанием: 1. push 2. pop 3. peek а. добавление элемента (иначе проталкивание). б. удаление элемента. в. чтение головного элемента. Ответ: 1а, 2б, 3в.
9. Процеду́рное программи́рование — методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определённого класса, а классы образуют иерархию наследования. Ответ: нет.
10. Верно ли следующее утверждение: «Go не предоставляет классы, но предоставляет структуры»? Ответ: да.
11. Если на языке программирования Ruby требуется написать каскад «if-else», то можно ли использовать «elsif»? Ответ: да.
12. Нужно ли закрывать блок «end»-ом в языке программирования Ruby? Ответ: да.
13. Разрешена ли в Python3 такая конструкция: x, y = y, x? Ответ: да.
14. Если «brace = 't'» выполнятся ли выражения стоящие за «if brace not in "()[]"\:»? Ответ: да.
15. Для языка программирования Python3, с помощью какой команды можно подключить математический модуль? 1. import math 2. import math as mh 3. include math 4. load math Ответ: 1, 2.

Вопросы открытого типа:
Вопросы к ОПК-1:
1. Разработать блок-схему и реализовать программу для аппроксимации функции с помощью «интерполяционного многочлена Ньютона» с равноотстоящими узлами. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
2. Разработать блок-схему и реализовать программу для аппроксимации функции с помощью «интерполяционного многочлена Лагранжа» с равноотстоящими узлами. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
3. Разработать блок-схему и реализовать программу для аппроксимации функции с помощью «интерполяционного кубического сплайна». Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
4. Разработать блок-схему и реализовать программу метода простых итераций для решения систем линейных алгебраических уравнений с квадратной матрицей. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
5. Разработать блок-схему и реализовать программу метода Зейделя для решения систем линейных алгебраических уравнений с квадратной матрицей. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
6. Разработать блок-схему и реализовать программу метода Якоби для решения систем линейных алгебраических уравнений с квадратной матрицей. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
7. Реализовать программу перемножения матрицы на вектор. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
8. Реализовать программу поиска простых чисел с помощью алгоритма «решета Эратосфена». Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
9. Реализовать программу метода «прямоугольника» для решения обыкновенного дифференциального уравнения первого порядка с начальным условием (задача Коши). Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
10. Реализовать программу метода «трапеций» для решения обыкновенного дифференциального уравнения первого порядка с начальным условием (задача Коши). Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
11. Реализовать программу метода Симпсона (метода парабол) для решения обыкновенного дифференциального уравнения первого порядка с начальным условием (задача Коши). Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
12. Реализовать программу для аппроксимации методом «наименьших квадратов» функции в ортогональном базисе тригонометрических функций. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
13. Реализовать программу для аппроксимацииметодом «наименьших квадратов» функции в ортогональном базисе многочленов Чебышева. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
14. Реализовать программу для аппроксимацииметодом «наименьших квадратов» функции в ортогональном базисе многочленов Лежандра. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
15. Реализовать программу для сортировки массива методом «пузырька». Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
16. Реализовать программу для сортировки массива методом «вставок». Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
17. Реализовать программу для сортировки массива методом «предсортировки слияния». Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
18. Реализовать программу для сортировки массива методом «перестановки». Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
19. Реализовать программу для сортировки массива методом «выбора». Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.
20. Реализовать программу для слияния двух упорядоченных по неубыванию массивов в упорядоченный по неубыванию массив. Ответ: нарисована блок-схема поставленной задачи и реализована программа на любом из языков программирования.

Вопросы к ОПК-8:
1. Какой оператор нужно использовать цикле (например в языке программирования Python), если в какой-то момент нужно перейти к следующей итерации, не заканчиваю текущую? Ответ: continue.
2. Если требуется написать функцию «def fc()\:» заглушку (для языка программирования Python), то какое оператор нужно использовать? Напишите его. Ответ: pass.
3. Исправьте строчку «if _name__ == "__main":» (язык программирования Python). Напишите эту строку целиком. Ответ: if __name__ == "__main__":.
4. Напишите строчку для подключения «doctest» (самый простой вариант, язык программирования Python). Напишите эту строку целиком. Ответ: import doctest.
5. Исправьте строчку «with (fileName, 'r as fileCSV:» (язык программирования Python). Напишите эту строку целиком. Ответ: with open(fileName, 'r') as fileCSV:.
6. Исправьте синтаксическую ошибку «for i in range(1, 5)». Напишите эту строку целиком. Ответ: for i in range(1, 5):.
7. Дайте определение "подпись к рядам данных на графике, которая позволяет понять, к каким данным относится одна зависимость, а к каким - другая.": Ответ: Легенда.
8. Напишите команду для вывода легенды в нижнем левом углу графика (Gnuplot) Ответ: set key left bottom.
9. Сколько секунд будет показываться график экспоненты при запуске команды gnuplot -e "plot x; pause 10; plot exp(x); pause 5"?: Ответ: 5.
10. Какой командой задается формат выводного файла (Gnuplot)? Ответ: set terminal или set term.
11. Напишите сколько типов точек есть в gnuplot?: Ответ: 16.
12. Какой модификатор задает цвет точек, напишите его сокращённый вариант (Gnuplot)?: Ответ: lc.
13. Напишите команду, которая задает логарифмический формат графика по координате x (Gnuplot): Ответ: set logscale x.
14. Сколько точек содержит график, построенный приведенной далее командой? В файле 101 строка с данными. plot 'out.dat' every 2::::: using 1:2 with lines linewidth 3: Ответ: 51.
15. Для построения сечений массивов, расположенных в файлах в Gnuplot используют модификатор: Ответ: every.
16. Какая команда используется в Gnuplot для задания параметров: Ответ: set.
17. Со стеком возможны три операции (push, pop, peek) напишите ту, которая добавляет элемент: Ответ: push.
18. Со стеком возможны три операции (push, pop, peek) напишите ту, которая удаляет элемент: Ответ: pop.
19. Со стеком возможны три операции (push, pop, peek) напишите ту, которая читает элемент: Ответ: peek.
20. Напишите термин, который описывает способность функции обрабатывать данные разных типов: Ответ: полиморфизм.

Критерии оценивания:
«Отлично» (зачтено): студентом дан полный, в логической последовательности развернутый ответ на поставленные вопросы, где он продемонстрировал знания предмета в полном объеме учебной программы, достаточно глубоко осмысливает дисциплину, самостоятельно, и исчерпывающе отвечает на дополнительные вопросы, приводит собственные примеры по проблематике поставленного вопроса.
«Хорошо» (зачтено): студентом дан развернутый ответ на поставленный вопрос, где студент демонстрирует знания, приобретенные на лекционных и семинарских занятиях, а также полученные посредством изучения обязательных учебных материалов по курсу, дает аргументированные ответы, приводит примеры, в ответе присутствует свободное владение монологической речью, логичность и последовательность ответа. Однако допускаются неточности в ответе.
«Удовлетворительно» (зачтено): студентом дан ответ, свидетельствующий в основном о знании процессов изучаемой дисциплины, отличающийся недостаточной глубиной и полнотой раскрытия темы, знанием основных вопросов теории, слабо сформированными навыками анализа явлений, процессов, недостаточным умением давать аргументированные ответы и приводить примеры, недостаточно свободным владением монологической речью, логичностью и последовательностью ответа. Допускается несколько ошибок в содержании ответа.
«Неудовлетворительно» (не зачтено): студентом дан ответ, который содержит ряд серьезных неточностей, обнаруживающий незнание процессов изучаемой предметной области, отличающийся неглубоким раскрытием темы, незнанием основных вопросов теории, неумением давать аргументированные ответы. Выводы поверхностны. Студент не способен ответить на вопросы даже при дополнительных наводящих вопросах преподавателя.
5.2. Темы письменных работ для проведения текущего контроля (эссе, рефераты, курсовые работы и др.)
1. Исследование ошибок «среднеквадратичных приближений».
2. Сглаживание наблюдений.
3. Методы Монте-Карло для решения дифференциальных уравнений.
4. Метод Хаусхолдера для приведения матрицы общего вида к почти треугольной матрице (матрице в форме Хессенберга).
5. QR-методы для решения задачи на собственные значения.
5.3. Фонд оценочных средств для проведения промежуточной аттестации
Промежуточная аттестация заключается в проведении в конце семестра зачета/экзамена (для обучающихся, не получивших зачет по результатам текущей успеваемости) по всему изученному курсу. Зачет/экзамен проводится в устной форме по билетам. К зачёту/экзамену допускаются студенты, получившие допуск (сдавшие все лабораторные работы).

Теоретические вопросы к зачету/экзамену:
1. Многочлены Тейлора.
2. Интерполяционный многочлен Лагранжа. Линейная интерполяция.
3. Минимизация оценки погрешности интерполяции по Лагранжу. Многочлены Чебы-шева.
4. Интерполяция по Лагранжу с равноотстоящими узлами.
5. Интерполяционный многочлен Ньютона и разделенные разности.
6. Численное дифференцирование.
7. Сплайны. «Дефекты» сплайнов. Теорема о погрешности приближения сплайном.
8. Равномерные приближения функций. Теоремы Чебышева.
9. Метод выравнивания, метод коллокаций (метод «выбранных точек»), метод «сред-них».
10. Метод наименьших квадратов (МНК). Общая теория.
11. Аппроксимация МНК в различных базисах: базис «алгебраических» многочленов, ортогональные базисы (многочлены Лежандра, «факториальные» многочлены, три-гонометрические многочлены).
12. Исследование ошибок «среднеквадратичных приближений».
13. Сглаживание данных (фильтрация).
14. Квадратурные формулы прямоугольника, трапеций, Симпсона (парабол), Гаусса.
15. Правило Рунге практической оценки погрешности, уточнение решения по Ричардсону, применение этих правил к квадратурным формулам.
16. Метод Монте-Карло. Вычисление интегралов с помощью метода Монте-Карло. Сравнение метода Монте-Карло с методом квадратурных формул.
17. Методы Эйлера, Рунге-Кутта и Адамса для решения задачи Коши для обыкновенных дифференциальных уравнений. Сравнение этих методов.
18. Происхождение и некоторые свойства уравнений математической физики. Законы сохранения для сплошных сред: закон сохранения энергии (уравнение диффузии), закон сохранения заряда (уравнения Максвелла), закон сохранения магнитного потока (закон – уравнение Фарадея).
19. Физические процессы и дисперсионные соотношения. Волны и волновое уравнение. Уравнение переноса. Эллиптическое уравнение (уравнения Лапласа и Пуассона). Классификация УЧП.
20. Устойчивость разностных схем для УЧП.
21. Условие устойчивости для «явной» схемы интегрирования 1-го порядка для уравнения диффузии.
22. Неустойчивость «явной» схемы интегрирования 1-го порядка для уравнения переноса. Схема Лакса с «пространственным усреднением» с устойчивостью по Куранту-Фридрихсу-Леви (КФЛ) для уравнения переноса.
23. Дисперсия и диффузия на разностной сетке для гиперболических уравнений. Кон-сервативные методы для гиперболических уравнений: схема Лакса и условие устойчивости Неймана, схема с «перешагиванием» с КФЛ-устойчивостью.
24. Консервативные методы для гиперболических уравнений: двухшаговая схема Лакса-Вендроффа с устойчивостью Неймана, схема квазивторого порядка точности.
25. Консервативные методы для гиперболических уравнений: многомерные явные методы как обобщение консервативных методов.
26. Обзор методов параболических уравнений: явная схема 1-го порядка точности, неявный метод Кранка-Никольсона, метод Дюфора-Франкеля.
27. Методы Крамера и Гаусса для решения системы линейных алгебраических уравнений.
28. Метод простых итераций и метод Зейделя для решения системы линейных алгебра-ических уравнений.
29. Метод «прогонки» для трехдиагональных матриц.
30. Частичные проблемы собственных значений: нахождение наибольшего собственно-го значения, определение собственных векторов методом «обратной итерации».
31. Метод Гивенса для приведения матрицы общего вида к почти треугольной матрице (матрице в форме Хессенберга), в том числе для приведения симметричной матрицы к симметричной трехдиагональной матрице.
32. Метод Хаусхолдера для приведения матрицы общего вида к почти треугольной мат-рице (матрице в форме Хессенберга), в том числе для приведения симметричной матрицы к симметричной трехдиагональной матрице.
33. Метод Якоби для нахождения собственных чисел и собственных векторов матриц общего вида.
34. Метод итераций и условие Липшица.
35. Метод «бисекций» (метод «дихотомии» - метод деления отрезка пополам).
36. Метод секущих (метод хорд). Условие и скорость сходимости.
37. Метод «золотое сечение».
38. Метод Ньютона (метод касательных). Условие и скорость сходимости.
39. Метод Ньютона для решения системы уравнений.
40. Метод наискорейшего (градиентного) спуска.

Практические вопросы к зачету/экзамену:
1. Разработать блок-схему и реализовать программу умножения двух прямоугольных матриц и , разрезая первую матрицу на полосы по строкам, а вторую – по столбцам.
2. Разработать блок-схему и реализовать программу метода Гаусса для решения систем линейных алгебраических уравнений с квадратной матрицей.
3. Разработать блок-схему и реализовать программу для решения системы из Nобыкновенных дифференциальных уравнений с помощью явного метода Эйлера (задача Коши).
4. Разработать блок-схему и реализовать программу для решения двумерного уравнения теплопроводности в области с помощью продольно-поперечной прогонки (первая краевая задача).
5. Разработать блок-схему и реализовать программу для решения двумерного уравнения теплопроводности в области с помощью метода расщепления по пространственным переменным (первая краевая задача).
6. Разработать блок-схему и реализовать программу для решения двумерного уравнения Пуассона в области с помощью поточечного метода Зейделя (задача Дирихле).
7. Разработать блок-схему и реализовать программу для решения двумерного уравнения Пуассона в области с помощью блочного метода Зейделя (задача Дирихле).
8. Разработать блок-схему и реализовать программу для решения двумерного уравнения теплопроводности в области с помощью матричной прогонки (первая краевая задача).
9. Разработать блок-схему и реализовать программу для решения системы уравнений Максвелла в области с помощью консервативного метода Лакса.
10. Разработать блок-схему и реализовать программу метода Адамса для решения обыкновенного дифференциального уравнения первого порядка с начальным условием (задача Коши).
11. Разработать блок-схему и реализовать программу метода Якоби для нахождения всех собственных значений действительной симметричной квадратной матрицы.
12. Разработать блок-схему и реализовать программу метода Гивенса для приведения действительной несимметричной квадратной матрицы к форме Хессенберга (почти треугольной форме) и приведения симметричной – к трехдиагональной форме.
13. Разработать блок-схему и реализовать программу метода Хаусхолдера для приведения действительной несимметричной квадратной матрицы к форме Хессенберга (почти треугольной форме) и приведения симметричной – к трехдиагональной форме.
14. Разработать блок-схему и реализовать программу алгоритма перемножения «ленточных» матриц.
15. Разработать блок-схему и реализовать программу метода «обратной итерации» для нахождения собственного вектора действительной симметричной квадратной матрицы по его приближенному значению собственного числа.
16. Разработать блок-схему и реализовать программу алгоритма нахождения максимального по модулю собственного числа действительной симметричной квадратной матрицы.
17. Реализовать программу построения «топологии сети» в виде графа по известным для каждого узла локальным топологиям (по связям с соседями), используя алгоритм «зонд-эхо».
18. Реализовать программу сортировки «множеств» различными алгоритмами.
19. Реализовать программу «вычисления максимальной пропускной способности» транспортной (вычислительной) сети, используя алгоритмы теории графов (алгоритм «простых цепей» и алгоритм определения «разрезов» графа сети).

Критерии оценивания:
«Отлично» (зачтено): студентом дан полный, в логической последовательности развернутый ответ на поставленные вопросы, где он продемонстрировал знания предмета в полном объеме учебной программы, достаточно глубоко осмысливает дисциплину, самостоятельно, и исчерпывающе отвечает на дополнительные вопросы, приводит собственные примеры по проблематике поставленного вопроса.
«Хорошо» (зачтено): студентом дан развернутый ответ на поставленный вопрос, где студент демонстрирует знания, приобретенные на лекционных и семинарских занятиях, а также полученные посредством изучения обязательных учебных материалов по курсу, дает аргументированные ответы, приводит примеры, в ответе присутствует свободное владение монологической речью, логичность и последовательность ответа. Однако допускаются неточности в ответе.
«Удовлетворительно» (зачтено): студентом дан ответ, свидетельствующий в основном о знании процессов изучаемой дисциплины, отличающийся недостаточной глубиной и полнотой раскрытия темы, знанием основных вопросов теории, слабо сформированными навыками анализа явлений, процессов, недостаточным умением давать аргументированные ответы и приводить примеры, недостаточно свободным владением монологической речью, логичностью и последовательностью ответа. Допускается несколько ошибок в содержании ответа.
«Неудовлетворительно» (не зачтено): студентом дан ответ, который содержит ряд серьезных неточностей, обнаруживающий незнание процессов изучаемой предметной области, отличающийся неглубоким раскрытием темы, незнанием основных вопросов теории, неумением давать аргументированные ответы. Выводы поверхностны. Студент не способен ответить на вопросы даже при дополнительных наводящих вопросах преподавателя.

6. Учебно-методическое и информационное обеспечение дисциплины

6.1. Рекомендуемая литература
6.1.1. Основная литература
Авторы Заглавие Издательство, год Эл. адрес
Л1.1 Волков Е. А. Численные методы: учеб. пособие СПб.: Лань, 2008
Л1.2 Самарский А.А. Введение в численные методы: учеб. пособие для вузов СПб.: Лань, 2009
Л1.3 Жидков Е.Н. Вычислительная математика: учеб. пособие для вузов М.: Академия, 2010
6.1.2. Дополнительная литература
Авторы Заглавие Издательство, год Эл. адрес
Л2.1 Кузиков С.С., Хворова Л.А. Введение в численные методы: учеб. пособие Барнаул: Изд-во АлтГУ, 2008
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
Название Эл. адрес
Э1 Издательство Лань e.lanbook.com
Э2 Государственная публичная научно-техническая библиотека. www.gpntb.ru
Э3 Российская национальная библиотека. nlr.ru
Э4 Национальная электронная библиотека. rusneb.ru
Э5 Российская государственная библиотека. www.rsl.ru
Э6 Учебный центр компьютерных технологий «Микроинформ». www.microinform.ru
Э7 Центр компьютерного обучения МГТУ им. Н.Э.Баумана. www.specialist.ru
Э8 Образовательный сайт intuit.ru
Э9 Журнал «Открытые системы» www.osp.ru
Э10 Курс в Мудле portal.edu.asu.ru
6.3. Перечень программного обеспечения
Для проведения лабораторных занятий необходимо использование компьютерного класса. На компьютерах должны быть установлены программные средства, поддерживающие работу с алгоритмическими языками С/C++, Pascal и т.п.
Условия использования: http://www.openoffice.org/license.html
LibreOffice
Условия использования: https://ru.libreoffice.org/about-us/license/
7-zip
Условия использования: https://www.7-zip.org/license.txt
Visual Studio
Условия использования: https://code.visualstudio.com/license
Python с расширениями PIL, Py OpenGL
Условия использования: https://docs.python.org/3/license.html
FAR
Условия использования: http://www.farmanager.com/license.php?l=ru
Acrobat Reader
Условия использования: http://wwwimages.adobe.com/content/dam/Adobe/en/legal/servicetou/Acrobat_com_Additional_TOU-en_US-20140618_1200.pdf
Mozila FireFox
Условия использования: https://www.mozilla.org/en-US/about/legal/eula/
Chrome
Условия использования: http://www.chromium.org/chromium-os/licenses
Eclipse (PHP,C++, Phortran)
Условия использования: http://www.eclipse.org/legal/eplfaq.php
DjVu reader
Условия использования: http://www.djvu.name/djvu-editor.html
Lazarus
Условия использования: http://wiki.lazarus.freepascal.org/Lazarus_Faq#Licensing
scilab
Условия использования: http://www.scilab.org/content/download/3911/28635/file/Scilab_6.0.0_License.txt
Microsoft WindowsMicrosoft Office 2010 (Office 2010 Professional, № 4065231 от 08.12.2010), (бессрочно);
Microsoft Windows 7 (Windows 7 Professional, № 61834699 от 22.04.2013), (бессрочно);
Chrome (http://www.chromium.org/chromium-os/licenses), (бессрочно); 7-Zip (http://www.7-zip.org/license.txt), (бессрочно);
AcrobatReader (http://wwwimages.adobe.com/content/dam/Adobe/en/legal/servicetou/Acrobat_com_Additional_TOU-en_US-20140618_1200.pdf), (бессрочно);
ASTRA LINUX SPECIAL EDITION (https://astralinux.ru/products/astra-linux-special-edition/), (бессрочно);
LibreOffice (https://ru.libreoffice.org/), (бессрочно);
Веб-браузер Chromium (https://www.chromium.org/Home/), (бессрочно);
Антивирус Касперский (https://www.kaspersky.ru/), (до 23 июня 2024);
Архиватор Ark (https://apps.kde.org/ark/), (бессрочно);
Okular (https://okular.kde.org/ru/download/), (бессрочно);
Редактор изображений Gimp (https://www.gimp.org/), (бессрочно)
6.4. Перечень информационных справочных систем
Электронная библиотечная система Алтайского государственного университета (http://elibrary.asu.ru/);
Научная электронная библиотека elibrary (http://elibrary.ru)

7. Материально-техническое обеспечение дисциплины

Аудитория Назначение Оборудование
Учебная аудитория для проведения занятий лекционного типа, занятий семинарского типа (лабораторных и(или) практических), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации, курсового проектирования (выполнения курсовых работ), проведения практик Стандартное оборудование (учебная мебель для обучающихся, рабочее место преподавателя, доска)
404К лаборатория информационных технологий - компьютерный класс - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 13 посадочных мест; рабочее место преподавателя; доска маркерная - 1 шт.; компьютеры: марка DEPO модель Neos 260 - 13 единиц
Помещение для самостоятельной работы помещение для самостоятельной работы обучающихся Компьютеры, ноутбуки с подключением к информационно-телекоммуникационной сети «Интернет», доступом в электронную информационно-образовательную среду АлтГУ
001вК склад экспериментальной мастерской - помещение для хранения и профилактического обслуживания учебного оборудования Акустический прибор 01021; виброизмеритель 00032; вольтметр Q1202 Э-500; вольтметр универсальный В7-34А; камера ВФУ -1; компьютер Турбо 86М; масспектрометр МРС -1; осциллограф ЕО -213- 2 ед.; осциллограф С1-91; осциллограф С7-19; программатор С-815; самописец 02060 – 2 ед.; стабилизатор 3218; терц-октавный фильтр 01023; шкаф вытяжной; шумомер 00026; анализатор АС-817; блок 23 Г-51; блок питания "Статрон" – 2 ед.; блок питания Ф 5075; вакуумный агрегат; весы; вольтметр VM -70; вольтметр В7-15; вольтметр В7-16; вольтметр ВУ-15; генератор Г-5-6А; генератор Г4-76А; генератор Г4-79; генератор Г5-48; датчик колебаний КВ -11/01; датчик колебаний КР -45/01; делитель Ф5093; измеритель ИМП -2; измеритель параметров Л2-12; интерферометр ИТ 51-30; источник "Агат" – 3 ед.; источник питания; источник питания 3222; источник питания ЭСВ -4; лабораторная установка для настройки газовых лазеров; лазер ЛГИ -21; М-кальк-р МК-44; М-калькул-р "Электроника"; магазин сопротивления Р4075; магазин сопротивления Р4077; микроскоп МБС -9; модулятор МДЕ; монохроматор СДМС -97; мост переменного тока Р5066; набор цветных стекол; насос вакумный; насос вакуумный ВН-01; осциллограф С1-31; осциллограф С1-67; осциллограф С1-70; осциллограф С1-81; осциллоскоп ЕО -174В – 2 ед.; пентакта L-100; пирометр "Промень"; пистонфон 05001; преобразователь В9-1; прибор УЗДН -2Т; скамья оптическая СО 1м; спектограф ДФС -452; спектограф ИСП -51; стабилизатор 1202; стабилизатор 3217 – 4 ед.; стабилизатор 3218; стабилизатор 3222 – 3 ед.; станок токарный ТВ-4; усилитель мощности ЛВ -103 – 4 ед.; усилитель У5-9; центрифуга ВЛ-15; частотомер Ч3-54А; шкаф металлический; эл.двигатель; электродинамический калибратор 11032

8. Методические указания для обучающихся по освоению дисциплины

Для освоения лекционного материала дисциплины в библиотеке университета имеется в наличии достаточное количество учебников по численным методам и вычислительной математике. Кроме того, учебники:
1. Волков Е.А. Численные методы. – М.: Наука, 1982. – 254 с.,
2. Калиткин Н.Н. Численные методы. – М.: Наука; 1978.
в электронном варианте, доступные для студентов, имеются на кафедре ВТиЭ (на компьютере)и у преподавателей, ведущих дисциплину "Вычислительная математика". Задания к лабораторным работам по курсу "Вычислительная математика" содержатся в приложении ФОС, а образцы оформления отчетов по выполненным лабораторным работам (в электронном и бумажном вариантах) имеются на кафедре и у преподавателей, ведущих лабораторные занятия.