
- •Вычислительные методы и компьютерная алгебра
- •Общие сведения Сведения об эумк
- •Методические рекомендации по изучению дисциплины
- •Рабочая учебная программа для специальности
- •Пояснительная записка
- •Содержание дисциплины
- •1. Название тем лекционных занятий, их содержание, объем в часах
- •2. Перечень тем лабораторных занятий, их наименование и объем в часах
- •3. Литература
- •3.1. Основная
- •3.2. Дополнительная
- •4. Перечень компьютерных программ, наглядных и других пособий, методических указаний и материалов к техническим средствам обучения
- •Протокол согласования учЕбной программы по изучаемой учебной дисциплине с другими дисциплинами специальности
- •Дополнения и изменения к учебной программе
- •Предисловие ко второму изданию
- •1 Математические модели. Численные методы. Погрешности вычислений
- •1.1 Математические модели и моделирование
- •1.2 Этапы численного решения задач на эвм
- •1.3 Виды погрешностей решения задач
- •1.4 Погрешности арифметических операций
- •1.5 Графы арифметических операций
- •1.6 Распространение погрешностей в вычислениях
- •2 Решение систем линейных алгебраических уравнений
- •2.1 Постановка задачи. Методы решения
- •2.2 Метод Гаусса
- •2.2.1 Описание метода Гаусса
- •2.2.2 Расчетные формулы метода Гаусса
- •2.2.3 Погрешность метода Гаусса. Метод Гаусса с выбором главного элемента
- •2.3 Вычислительная сложность метода Гаусса
- •2.4 Обращение матрицы
- •2.5 Метод lu-разложения
- •2.6 Метод квадратного корня решения симметричных слау
- •2.7 Метод Гаусса–Зейделя
- •2.7.1 Расчетные формулы метода Гаусса–Зейделя
- •2.7.2 Сходимость метода Гаусса–Зейделя
- •2.7.3 Графическая иллюстрация метода Гаусса–Зейделя
- •3 Аппроксимация функций
- •3.1 Понятие аппроксимации функций
- •3.2 Постановка задачи интерполирования функций
- •3.3 Интерполяционный полином Лагранжа
- •3.4 Вычисление значений полиномов
- •3.5 Вычислительная сложность задачи интерполирования
- •3.6 Конечные и разделенные разности функции
- •3.7 Интерполяционный полином Ньютона
- •3.8 Погрешность интерполирования
- •3.9 Полиномы Чебышева 1-го рода
- •3.10 Наилучший выбор узлов интерполирования
- •4 Численное интегрирование
- •4.1 Постановка задачи численного интегрирования
- •4.2 Метод прямоугольников
- •4.3 Погрешность метода прямоугольников
- •4.4 Метод трапеций
- •4.5 Погрешность метода трапеций
- •4.6 Метод Симпсона
- •4.7 Погрешность метода Симпсона
- •4.8 Интерполяционные квадратурные формулы
- •4.9 Интерполяционные квадратурные формулы наивысшей алгебраической степени точности (квадратурные формулы Гаусса)
- •4.9.1 Квадратурная формула Гаусса–Лежандра
- •4.9.2 Квадратурная формула Гаусса–Лагерра
- •4.9.3 Квадратурная формула Гаусса–Эрмита
- •5 Решение нелинейных уравнений
- •5.1 Постановка задачи численного решения нелинейных уравнений
- •5.2 Метод деления отрезка пополам
- •5.3 Метод хорд
- •5.4 Метод простой итерации
- •5.5 Метод Ньютона
- •5.6 Метод секущих
- •6 Решение обыкновенных дифференциальных уравнений
- •6.1 Постановка задачи
- •6.2 Метод рядов Тейлора
- •6.3 Метод Эйлера
- •6.4 Метод Рунге–Кутта 2-го порядка
- •6.5 Метод Рунге–Кутта 4-го порядка
- •7 Решение систем обыкновенных дифференциальных уравнений
- •7.1 Постановка задачи
- •7.2 Приведение дифференциального уравнения -го порядка к системе дифференциальных уравнений 1-го порядка
- •7.3 Метод Эйлера
- •8.2 Выполнение символьных операций в Matlab
- •8.3 Создание символьных переменных
- •8.4 Создание группы символьных переменных
- •8.5 Создание списка символьных переменных
- •8.6 Вывод символьного выражения
- •8.7 Упрощение выражений
- •8.8 Вычисление производных
- •8.9 Вычисление интегралов
- •8.10 Вычисление сумм рядов
- •8.11 Вычисление пределов
- •8.12 Разложение функции в ряд Тейлора
- •8.13 Вычисление определителя матрицы, обращение матрицы
- •9 Дополнение
- •9.1 Вычисление корней полиномов
- •9.2 Решение систем нелинейных уравнений. Метод Ньютона
- •9.3 Решение систем линейных алгебраических уравнений с трехдиагональной матрицей (метод прогонки)
- •9.4 Интерполирование функций сплайнами
- •Практический раздел Указания к выбору варианта
- •Лабораторная работа № 1. Работа в системе Matlab
- •1.1. Цель работы
- •1.2. Порядок выполнения работы
- •Лабораторная работа № 2. Решение систем линейных алгебраических уравнений
- •2.1. Цель работы
- •2.2. Теоретические положения
- •2.3. Порядок выполнения работы
- •Лабораторная работа № 3. Аппроксимация функций
- •3.1. Цель работы
- •3.2. Теоретические положения
- •3.3. Порядок выполнения работы
- •Лабораторная работа № 4. Численное интегрирование
- •4.1. Цель работы
- •4.2. Теоретические положения
- •4.3. Порядок выполнения работы
- •Лабораторная работа № 5. Решение нелинейных уравнений
- •5.1. Цель работы
- •5.2. Теоретические положения
- •5.3. Порядок выполнения работы
- •Лабораторная работа № 6. Решение обыкновенных дифференциальных уравнений
- •6.1. Цель работы
- •6.2. Теоретические положения
- •6.3. Порядок выполнения работы
- •Лабораторная работа № 7. Решение систем обыкновенных дифференциальных уравнений
- •7.1. Цель работы
- •7.2. Теоретические положения
- •7.3. Порядок выполнения работы
- •Лабораторная работа № 8. Выполнение символьных операций
- •8.1. Цель работы
- •8.2. Теоретические сведения
- •8.3. Порядок выполнения работы
- •Литература
- •Литература
2.4 Обращение матрицы
Как
известно, матрица
называется обратной матрице
,
если выполняется соотношение
,
(2.13)
где
– единичная матрица. Обозначим
,
,
,
где
– символ Кронекера,
Тогда соотношение (2.13) можно записать так:
,
.
(2.14)
Из
этого выражения видно, что если
рассматривать
-й
столбец
обратной матрицы как вектор, то он
является решением системы линейных
алгебраических уравнений (2.14) с матрицей
и вектором правой части, все элементы
которого равны нулю, кроме
-го,
который равен 1. Таким образом, элементы
обратной матрицы могут быть получены
решением системы линейных алгебраических
уравнений. Для обращения матрицы
необходимо решить
систем линейных уравнений с одинаковой
матрицей
и разными правыми частями. Приведение
матрицы
к треугольному виду по формулам (2.8),
(2.9) делается при этом только один раз.
В дальнейшем необходимо формировать
новую правую часть, преобразовывать ее
по формуле (2.9) при помощи чисел
(2.7) и для каждой правой части выполнять
обратный ход. Понятно, что преобразующие
числа
,
,
необходимо сохранять по мере их получения
на этапе прямого хода. Видно, что эти
числа образуют нижнюю треугольную
матрицу, совпадающую по размерам с
матрицей исключаемых коэффициентов
системы. Поэтому число
можно поместить на место элемента
.
Для
обращения матрицы этим методом требуется
примерно
ячеек оперативной памяти и примерно
арифметических операций.
Описанный
прием вычислений можно применить при
решении систем уравнений с одной и той
же матрицей
и различными правыми частями. В этом
случае выгодно привести матрицу к
треугольному виду только однажды,
используя сохраненные числа
во всех последующих вычислениях.
2.5 Метод lu-разложения
Матрица
,
,
называется нижней треугольной, если
все ее элементы, расположенные выше
главной диагонали, равны нулю. Матрица
,
,
называется верхней треугольной, если
все ее элементы, расположенные ниже
главной диагонали, равны нулю. Общепринятые
обозначения
и
связаны с английскими словамиlower(нижний) иupper(верхний).
Пусть
,
,
-матрица,
например, матрица СЛАУ (2.4). Справедлива
следующая теорема.
Теорема.
Если все главные миноры квадратной
матрицыотличны от нуля, то существуют такие
нижняя
и верхняя
треугольные матрицы, что
.
Если элементы диагонали одной из матриц
или
фиксированы (ненулевые), то такое
разложение единственно.
Получим
формулы для разложения матрицы
при фиксированной диагонали матрицы
.
В развернутой форме разложение
имеет вид
.
Выполняя
умножение матриц в левой части и
приравнивая соответствующие элементы
обеих частей равенства, получим
-матрицу
уравнений
относительно
-матрицы
неизвестных
.
(2.15)
Специфика этой системы такова, что позволяет определить неизвестные одно за другим. Сначала из первой строки системы находим
,
.
Затем из оставшейся части первого столбца системы находим
,
.
Далее, из оставшейся части второй строки
,
,
из оставшейся части второго столбца
,
,
и т.д. Последним находим элемент
.
Легко заметить,
что все отличные от нуля и единицы
элементы матриц
,
могут быть однозначно вычислены с
помощью всего двух формул:
,
,
(2.16)
,
.
(2.17)
При организации
вычислений по формулам (2.16), (2.17) необходимо
переключать вычисления с одной формулы
на другую, как указано выше. Это удобно
делать, ориентируясь на матрицу
неизвестных (2.15), а именно, первая строка
матрицы (2.15) вычисляется по формуле
(2.16) при
,
;
первый столбец (2.15) (без первого элемента)
– по формуле (2.17) при
,
,
и т.д.
Если матрица
исходной СЛАУ (2.4) разложена в произведение
треугольных матриц
,
,
то вместо (2.4) мы можем записать
эквивалентное уравнение
.
Введя вектор
вспомогательных переменных
,
перепишем его в виде системы
,
.
Таким образом,
решение СЛАУ с квадратной матрицей
коэффициентов свелось к решению двух
СЛАУ с треугольными матрицами
коэффициентов, которые могут быть легко
решены. Уравнение
в развернутом виде имеет вид
Все
могут быть последовательно найдены по
формуле
.
(2.18)
Уравнение
в развернутом виде имеет вид
(2.19)
Отсюда получаем
.
(2.20)
Итак, решение
СЛАУ методом
-разложения
сводится к расчетам по четырем формулам:
совокупности формул (2.16), (2.17) для получения
элементов матриц
и
,
формуле (2.18) для получения вспомогательного
вектора
и формуле (2.20) для получения решения
СЛАУ.
Отметим, что
система уравнений (2.19) полностью совпадает
с системой уравнений (2.10), получающейся
после завершения прямого хода метода
Гаусса. Это означает, что решения СЛАУ
с помощью
-разложения
– это просто другая реализация метода
Гаусса. Эта реализация называется схемой
Холецкого.
Следует отметить, что в отличие от метода Гаусса схема Холецкого менее удобна для усовершенствования с целью уменьшения влияния вычислительных погрешностей путем выбора подходящих ведущих элементов.