- •Гоу впо «Кемеровский государственный университет»
- •Методы вычислений
- •Предисловие
- •Тема 1. Элементы теории погрешностей
- •1.1. Определения
- •1.2. Абсолютная и относительная погрешности
- •1.3. Значащие цифры и число верных знаков
- •1.4. Погрешности арифметических действий
- •1.5. Погрешность вычисления функции
- •Задания
- •Варианты
- •Тема 2. Интерполирование
- •2.1. Постановка задачи интерполирования
- •2.2. Интерполяционный многочлен Лагранжа
- •2.3. Интерполяционная формула Гаусса
- •2.4. Сплайн- интерполяция
- •2.5. Линейный сплайн
- •Таким образом, линейный сплайн имеет вид
- •2.6. Параболический сплайн
- •2.7. Кубический сплайн
- •Задания
- •Варианты функций
- •Тема 3. Численное интегрирование
- •3.1. Постановка задачи интегрирования
- •3.2. Квадратурные формулы
- •3.3. Выбор шага интегрирования
- •3.4. Квадратурная формула Гаусса
- •Тогда формула Гаусса будет иметь вид
- •Задания
- •Варианты
- •Тема 4. Решение трансцендентных (нелинейных) уравнений
- •4.1. Отделение корней
- •4.2. Метод последовательных приближений (метод простой итерации)
- •4.3. Метод половинного деления (метод проб, метод дихотомии)
- •4.4. Метод пропорционального деления (метод хорд)
- •4.5. Метод Ньютона (метод касательных)
- •4.6. Метод Ньютона модифицированный
- •4.7. Метод Чебышева
- •Задания
- •Варианты уравнений
- •Тема 5. Решение спектральной задачи
- •5.1. Метод скалярных произведений
- •5.2. Метод вращения
- •Задания
- •Варианты матриц
- •Тема 6. Решение систем линейных алгебраических уравнений
- •6.1. Обусловленность матрицы
- •6.2. Метод Гаусса
- •6.3. Метод Гаусса с выбором главного элемента
- •6.4. Нахождение определителя и обращение матрицы с помощью метода Гаусса
- •6.5. Итерационные методы (метод Якоби, метод Зейделя, метод релаксации)
- •6.6. Оптимизация скорости сходимости итерационного процесса
- •6.7. Итерационные методы вариационного типа
- •6.8. Методы сопряженных направлений
- •Задания
- •Тема 7. Решение систем нелинейных алгебраических уравнений
- •7.1. Определения
- •Интеграл в правой части (8.4) вычисляется с помощью численной квадратуры
- •8.2. Метод Эйлера
- •8.3. Методы Рунге-Кутта
- •8.4. Метод Адамса
- •8.5. Метод Милна
- •Задания
- •Варианты
- •8.6. Краевая задача для обыкновенного дифференциального уравнения второго порядка
- •8.6.1. Интегро-интерполяционный метод
- •8.6.2. Метод прогонки
- •Задания
- •Варианты заданий
- •Тема 9. Методы решения дифференциальных уравнений в частных производных
- •9.1. Простейшие приемы построения разностных схем
- •9.2. Сходимость, аппроксимация, устойчивость разностных схем
- •9.3. Решение уравнения параболического типа
- •9.3.1. Явная разностная схема
- •9.3.2. Неявная разностная схема
- •9.3.3. Реализация метода разностной прогонки для уравнения параболического типа
- •Задание
- •Варианты
- •9.4. Решение уравнения эллиптического типа
- •9.4.1. Метод матричной прогонки
- •Задание:
- •Варианты
- •Содержание
- •Тема 7. Решение систем нелинейных алгебраических уравнений 40
- •Тема 8. Решение обыкновенных дифференциальных уравнений 43
- •Тема 9. Методы решения дифференциальных уравнений в частных производных 49
Тема 5. Решение спектральной задачи
Для решения некоторых задач механики, физики, химии требуется получение всех собственных значений матрицы. Эту задачу называют полной проблемой собственных значений. В ряде случаев требуется найти наибольшее и наименьшее по модулю собственные значения матрицы. Эта задача носит название частичной проблемы собственных значений.
5.1. Метод скалярных произведений
Рассмотрим задачу отыскания максимального по модулю собственного значения матрицы А. По определению собственные значениями квадратной матрицы A называются числа, удовлетворяющие соотношению
Ax= λ x, (5.1)
где x - собственный вектор. Собственный вектор xi (i=1,…,n), соответствующий собственному значению λi, является решением однородной системы линейных алгебраических уравнений
(A – λ E) x = 0.
Пусть матрица A размерности m m имеет полную систему нормированных собственных векторов еi (I=1,…,m), т. е. || еi ||=1, и пусть
| λ1| > | λ2| … | λm| 0.
Зададим вектор
.
Будем последовательно вычислять векторы по итерационной формуле
xn+1 =Axn.
Тогда xn можно записать следующим образом:
.
Представим это равенство в виде
xn =c1λne1 +o(|λ|n).
Тогда имеем
(xn, xn)=| c1|2 | λ1|2n + o(|λ1|n|λ2|n).
(xn+1, xn)= λ1| c1|2 | λ1|2n + o(|λ1|n|λ2|n).
Находим:
,
при этом
λ =λ+O .
В процессе итераций при n , ||x || , если |λ |>1, ||x || 0, если |λ |<1, поэтому всегда найдется такое n, что в ЭВМ произойдет АВОСТ, если (при |λ |<1) x станет нулем. Чтобы этого не случилось, рекомендуется использовать следующий алгоритм:
e = ,
x =Ae ,
λ ,
где . Итерационный процесс прекращается, когда будет выполнено условие: | λ(n) - λ(n-1)| ≤ε.
В случае действительной симметричной матрицы все собственные значения действительны, а отношение задает приближенное значение собственного вектора.
Иногда причиной плохой сходимости итераций может быть то, что начальное приближение x(0) оказалось ортогональным собственному вектору, соответствующему максимальному по модулю собственному значению. В этом случае рекомендуется сменить начальное приближение.
Для нахождения минимального собственного значения матрицы А, найдем матрицу B= (A - λ1E) и применим для нее итерационный процесс для нахождения максимального по модулю собственного значения | λ1(B)|.
Если λ1(A) >0, то, очевидно, что λi (B)= λi (A)- λ1 (A) ≤ 0, i=1,2,…,m. Поэтому λ 1(B)= min(λi(A) - λ1(A))= min λi(A) - λ1(A), то есть minλi (A)= λ1(A)+λ1(B).
Если λ1(A) <0, то max λi(A)=min λi(A)+ λ1(B).
5.2. Метод вращения
Любую действительную, симметричную матрицу A можно привести к виду A = U ∙D ∙U–1 , где U – ортогональная матрица (U –1 = U T ),
D – диагональная матрица,
где λi – собственные значения матрицы A.
Следовательно, имеем U–1 ∙A ∙U = D.
На этом свойстве матрицы основан метод вращения: если некоторым ортогональным преобразованием V свести матрицу A к диагональной: , то собственные значения матриц совпадают.
Таким образом, нужно построить последовательность ортогональных преобразований, позволяющих неограниченно уменьшать модули недиагональных элементов матрицы A. Обозначим . Пусть с помощью преобразования подобия ортогональными матрицами построена последовательность матриц. При этом если , то процесс является монотонным.
Итак, по заданной матрице A будем строить последовательность Ak так, чтобы Ak-1 находилась через Ak при помощи преобразования подобия со следующей матрицей вращения:
Пусть нашли . Найдем . Пусть это будет , k<l (i, j = 1,…,m), и выбираем угол по формуле
.
Строится ортогональная матрица Vn, которая отличается от единичной матрицы E только элементами:
,
,
и делается преобразование подобия
.
При этом матрицы A(n-1) и Vn A(n-1) = B отличаются лишь k –й и l –й строками, т. к. эти матрицы B являются линейными комбинациями тех же строк матрицы A(n-1):
,
.
Аналогично k –й и l -й столбцы матрицы A(n):
,
.
Элементы являются приближенными к собственным числам λi матрицы A, а столбцы матрицы
являются приближенными к собственным векторам матрицы A. При этом имеет место оценка погрешности
.