- •Вычислительная математика
- •Оглавление
- •3. Численное интегрирование…………………………………………………...51
- •4. Уравнения в частных производных…………………………………………65
- •5. Численные методы линейной алгебры……………………………………...73
- •1. Численные методы решения обыкновенных дифференциальных уравнений Основные понятия
- •Элементы теории погрешностей
- •Численное дифференцирование. Аппроксимационные формулы
- •Задача Коши для обыкновенного дифференциального уравнения 1-го порядка. Метод Эйлера
- •Задача Коши для обыкновенных дифференциальных уравнений 1-го порядка. Методы Рунге-Кутта
- •Краевые задачи для обыкновенного дифференциального уравнения 2-го порядка
- •Метод Галеркина для обыкновенных дифференциальных уравнений 2-го порядка
- •2. Аппроксимация функций Интерполяционный многочлен Лагранжа
- •Многочлены Чебышева
- •Минимизация погрешности интерполяции полинома Лагранжа
- •Интерполяция с равноотстоящими узлами
- •Кусочная аппроксимация
- •Сплайн- интерполяция
- •Метод наименьших квадратов
- •Ортогональные полиномы
- •3. Численное интегрирование Простейшие квадратурные формулы
- •Квадратурные формулы Ньютона-Котеса
- •Экстраполяция по Ричардсону
- •Квадратурные формулы Гаусса, Чебышева
- •Метод Монте-Карло
- •4. Уравнения в частных производных
- •5. Численные методы линейной алгебры
- •Матрицы и действия над ними
- •Клеточные матрицы
- •Разложение матрицы на произведение двух треугольных матриц
- •Итерационные методы
- •Метод Якоби
- •Метод Зейделя
- •Практикум по вычислительной математике Лабораторные работы для Mathcad 2001i Professional Лабораторная работа № 1 Обращение матриц
- •Лабораторная работа №2 Решение системы нелинейных уравнений
- •Лабораторная работа №3 Построение уравнений регрессии
- •Лабораторная работа № 4 Разложение функций в ряд Фурье пополиномам Лежандра
- •Лабораторная работа № 5 Решение дифференциального уравнения второго порядка
- •Лабораторная работа № 6 «Аппроксимации»
- •Лабораторная работа № 7 Решение слау с помощью lu разложения
- •Лабораторная работа № 11 Метод прогонки
- •Синтаксис среды Maple
- •Данные множественного типа
- •Решение дифференциальных уравнений в среде Maple Примеры решения уравнений встроенными функциями
- •Примеры численного решения оду
- •Лабораторная работа №1 Решение оду различными методами
- •Задания для самостоятельного решения
- •Лабораторная работа № 2 Интерполяция функции полиномами Лежандра
- •Лабораторная работа № 3 Метод наименьших квадратов
- •Лабораторная работа № 4 Применение системы Maple в сопротивлении материалов
- •Эпюра q
- •Эпюра q
- •Эпюра q
- •Эпюра q Лабораторная работа № 5 Решение системы методом прогонки
- •Библиографический список
Метод Монте-Карло
Метод статистических испытаний, или метод Монте-Карло использует статистико-вероятностный подход к вычислению определенных интегралов.
Рассматривается
некоторая случайная величина
,
математическое ожидание которой равно
искомой величине
:
.
Проводится серия
независимых
испытаний, в результате которых
генерируется последовательность
случайных чисел
,
имеющих то же распределение, что и
.
Находится выборочное среднее
,
которое является статистической оценкой
,
при этом
.
Пусть
равномерно распределенная на отрезке
случайная величина. Это означает, что
ее плотность распределения задается:
тогда любая функция
также будет случайной величиной, и ее
математическое ожидание равно
.
Читая это равенство
в обратном порядке, получаем, что интеграл
может
быть вычислен как оценка математического
ожидания некоторой случайной величины
,
которая является функцией случайной
величины
с равномерным законом распределения,
причем оценка
определяется независимыми реализациями
случайной величины
:
или для интеграла общего вида
,
.
Погрешность метода
.
Рулетка Монте-Карло – простейший генератор случайных чисел.
Для использования метода Монте-Карло необходимо генерировать последовательности случайных чисел с заданным законом распределения. Способы генерирования: разработаны алгоритмы генерирования случайных чисел, датчики случайных чисел, реализованные в виде программ.
4. Уравнения в частных производных
Во многих практических задачах неизвестные функции зависят от нескольких переменных, в таком случае рассматриваются задачи для дифференциальных уравнений в частных производных. Это задачи, описывающие распространение колебаний, процессы теплопроводности, диффузии, распределение потенциала и т.д.
Полная математическая постановка задачи содержит кроме уравнений дополнительные условия – граничные и начальные.
Рассмотрим простейшие численные методы решения задач для уравнений в частных производных. Универсальным методом приближенного решения задач математической физики является метод сеток, или метод конечных разностей.
Приведем примеры дифференциальных уравнений в частных производных, которые будем рассматривать в дальнейшем:
уравнение колебаний
струны
,
уравнение
теплопроводности
,
уравнение Лапласа
.
Эти уравнения называются уравнения математической физики. Многие прикладные задачи сводятся к решению задач, связанных с такими уравнениями.
Метод сеток состоит
в следующем. Область непрерывного
значения аргументов, например,
заменяется конечным дискретным
множеством точек или узлов. Вместо
функций непрерывного аргумента вводятся
функции дискретного аргумента,
определенные в узлах сетки и называемые
сеточными функциями. Производные,
входящие в дифференциальное уравнение,
заменяются конечными разностями, при
этом дифференциальное уравнение
заменяется системой алгебраических
уравнений (разностным уравнением).
Рассмотрим решение начально-краевой задачи для уравнения теплопроводности:
,
(4.1)
.
(4.2)
Здесь заданы
граничные условия –
– закон изменения температуры в граничных
точках стержня, и начальное условие –
– начальное распределение температур.
Рассмотрим равномерную прямоугольную сетку, заданную линиями:
,
где
и
– соответственно шаги сетки по времени
и координате. Значения функции в узлах
сетки обозначим
.
Эти значения заменим соответствующими
значениями сеточной функции
,
которые удовлетворяют разностным
уравнениям. Заменим частные производные
в уравнении (4.1) конечными разностями:
.
(4.3)
.
Подставим выражения (4.3) в уравнение (4.1) и получим разностное уравнение:
.
(4.4)
Совокупность узлов, используемых для записи разностного уравнения, называется шаблоном сетки. Для разностного уравнения (4.4) использован четырехточечный шаблон (рис. 4.1, а). Разностное уравнение представляет собой систему алгебраических уравнений для определения сеточной функции во внутренних узлах сетки. Для одного и того же дифференциального уравнения можно построить различные разностные уравнения, их выбор зависит от свойств разностной схемы. Запишем начальные и граничные условия в разностном виде:
.
(4.5)
С
овокупность
разностного уравнения и дополнительных
условий называется разностной
схемой. Из
условия (4.5) получим значения сеточной
функции на нулевом
временном слое и в граничных точках. Из
уравнения (4.4) можно выразить значения
сеточной функции последовательно на
первом, втором и т.д. слоях. Схема такого
типа, при котором значения функции на
последующих слоях явно выражаются через
ее значения на предыдущих слоях,
называются явными.
Рассмотрим другое разностное уравнение для того же уравнения теплопроводности:
.
(4.6)
Для уравнения
(4.6) также использован четырехточечный
шаблон (рис. 4.1, б), но другого вида. В
отличие от явной схемы (4.4), разностное
уравнение (4.6) содержит на каждом слое
три неизвестных значения:
,
для нахождения которых необходимо
решать трехточечную краевую задачу.
Можно использовать для этого метод
прогонки. Схемы такого типа называются
неявными.
Близость разностной схемы и исходной краевой задачи проще всего оценить по величине невязки, получающейся при подстановке точного решения в разностное уравнение и разностные граничные условия.
Пусть
,
(4.7)
обозначим так
исходную краевую задачу для дифференциального
уравнения вместе с дополнительными
условиями,
– точное решение задачи.
,
(4.8)
это разностная
краевая задача вместе с разностными
дополнительными условиями,
– сеточная функция, которая получается
на сетке с шагом
,
для простоты считаем, что сетка
определяется одним параметром
,
при этом
.
Ошибкой аппроксимации схемы (4.8) на точном решении задачи (4.7) называется сеточная функция
,
(4.9)
которая возникает при подстановке точного решения в разностное уравнение задачи.
Разностная схема
называется аппроксимирующей
на точном решении, если
.
Обычно определяют
скорость, с которой ошибка аппроксимации
стремится к нулю:
,
здесь
– порядок аппроксимации разностной
схемы, соответствует порядку первого
отброшенного члена в разложении функции
по формуле Тейлора.
Для схемы вида (4.5) ошибка аппроксимации есть величина:
,
здесь
– погрешность односторонней аппроксимации
производной первого порядка по времени.
Для того, чтобы погрешность аппроксимации
схемы была второго порядка по
,
следует выбирать
.
Это означает, что шаг по времени
существенно меньше шага по координате
и для получения решения для реальных
требуется просчитать много шагов, в
результате чего накапливается большая
погрешность.
Разностная схема называется сходящейся, если сеточное решение стремится к точному решению задачи при уменьшении шага сетки:
.
Если
,
то говорят, что
– порядок сходимости.
Можно построить разностную схему аппроксимирующую, но не сходящуюся к точному решению. Запишем ошибку аппроксимации схемы в следующем виде:
.
(4.10)
При этом разность
– можно рассматривать как возмущение
решения сеточной задачи, вызванное
малым возмущением
в правой части. Выражение (4.10) представляет
систему уравнений, коэффициенты которой
зависят от
.
При
число уравнений неограниченно возрастает,
если система уравнений чувствительна
к малым возмущениям, т. е. неустойчива,
то это приводит к нарушению сходимости.
Разностная схема называется устойчивой, если малые возмущения в исходных данных задачи не приводят к неограниченным возмущениям в решении.
Таким образом, для того, чтобы из условия аппроксимации схемы следовала сходимость , следует дополнительно потребовать, чтобы разностная схема была устойчива относительно малых возмущений.
Явная схема (4.4)
для уравнения теплопроводности устойчива
при
,
неявная схема (4.6) устойчива при любом
.
Для практических вычислений удобно использовать неявную схему второго порядка точности:
(4.11)
Разностное уравнение
(4.11) использует шеститочечный шаблон.
Погрешность аппроксимации
,
т. к. конечную разность, аппроксимирующую
первую производную по времени
,
можно рассматривать
как одностороннюю для узла
с погрешностью аппроксимации
,
а можно рассматривать как центральную
разность относительно узла
с погрешностью аппроксимации
.
Это повышает порядок точности схемы,
т. к. правая часть также аппроксимирована
на половинный узел.
Рассмотрим задачу для уравнения колебаний струны:
,
(4.12)
(4.13)
Здесь
– отклонение точек струны с координатой
в момент времени
.
Заданы граничные условия –
– закон перемещения граничных точек
струны, и начальные условия –
–
начальное отклонение точек струны,
– начальная скорость.
Рассмотрим явную разностную схему для уравнения (4.12):
.
Явная трехслойная
схема типа крест, использующая пятиточечный
шаблон, позволяет выразить значение
сеточной функции на
слое
.
Для определения
неизвестных на
слое нужно знать значения на
и
слоях. Решения для нулевого слоя получим
из первого начального условия (4.13):
.
Значения функции
на первом слое получим из второго
начального условия (4.13):
.
Зная значения функции на нулевом и первом слоях, найдем ее значения на втором и т.д. слоях, включая в вычисления значения функции в граничных узлах:
.
Практика использования сеточных методов для решения задач математической физики показывает, что для апробации конкретной разностной схемы требуется проведение расчетов с различными шагами сетки при различных входных данных. Кроме того, следует знать, что в математических пакетах, таких как Maple, имеются встроенные функции для решения задач математической физики разностными методами.
