
- •Л.В. Маркова, е.А. Корчевская,
- •С о д е р ж а н и е
- •П р е д и с л о в и е
- •Глава 1 Элементы теории погрешностей п 1.1 Источники погрешностей
- •П 1.2 Вычисление абсолютной и относительной погрешностей
- •П 1.3 Округление чисел
- •П 1.4 Вычисление погрешностей арифметических операций
- •П 1.5 Оценка погрешности по способу границ
- •Лабораторная работа № 1
- •Задание
- •Глава 2 объектно-ориентированный подход к программированию методов линейной алгебры
- •П 2.1 Создание матричной иерархии классов
- •Лабораторная работа № 2
- •Задание
- •П 2.2 Создание иерархии классов вычислительных методов алгебры
- •Лабораторная работа № 3
- •Задание
- •Глава 3 решение систем линейных алгебраических уравнений
- •П 3.1 Метод Гаусса решения систем линейных алгебраических уравнений
- •Лабораторная работа № 4
- •Задание
- •П 3.2 Метод Гаусса с выбором главного элемента для решения систем линейных алгебраических уравнений
- •Лабораторная работа № 5
- •Задание
- •П 3.3 Решение системы линейных алгебраических уравнений методом Жордана-Гаусса
- •Лабораторная работа № 6
- •Задание
- •П 3.4 Метод квадратного корня для решения систем линейных алгебраических уравнений
- •Лабораторная работа № 7
- •Задание
- •П 3.5 Вычисления определителя и нахождения обратной матрицы
- •Лабораторная работа № 8
- •Задание
- •П 3.6 Решение системы линейных алгебраических уравнений методом прогонки
- •Лабораторная работа № 9
- •Задание
- •П 3.7 Метод простых итераций решения систем линейных алгебраических уравнений
- •Лабораторная работа № 10
- •Задание
- •П 3.8 Метод Зейделя решения систем линейных алгебраических уравнений
- •Лабораторная работа № 11
- •Задание
- •П 3.9 Итерационные методы вариационного типа решения систем линейных алгебраических уравнений
- •Лабораторная работа № 12
- •Задание
- •Глава 4 вычисление собственных значений и собственных векторов матриц
- •П 4.1 Метод Данилевского для нахождения собственных значений и собственных векторов
- •Лабораторная работа № 13
- •Задание
- •П 4.2 Итерационный степенной метод нахождения наибольшего по модулю собственного значения и соответствующего собственного вектора
- •Лабораторная работа № 14
- •Задание
- •П 4.3 qr-алгоритм для нахождения собственных значений матрицы
- •Лабораторная работа № 15
- •Задание
- •П 4.4 Метод Якоби для нахождения собственных значений и собственных векторов
- •Лабораторная работа № 16
- •Задание
- •П р и л о ж е н и я Приложение 1 Основные сведения о матрицах
- •Функции MathCad
- •Л и т е р а т у р а
- •Красоткина вычислительные методы алгебры. Практикум
- •2 10038, Г. Витебск, Московский проспект, 33.
П 1.4 Вычисление погрешностей арифметических операций
Рассмотрим
правило вычисления погрешностей
арифметических операций и функций по
погрешности аргументов (без учета ошибок
округления). При вычислении абсолютных
погрешностей обычно используются
формулы дифференцирования, в которых
дифференциалы независимых переменных
заменяются абсолютными погрешностями:
.
Пусть
X1>0,
X2>0
– точные значения величин, и заданы
предельные абсолютные погрешности
и
,
т.е.
,
.
Необходимо найти погрешность суммы
.
Так
как дифференциал
,
то
.
Отсюда следует, что
.
Теперь
предположим, что X1>X2,
и найдем погрешность разности
.
Тогда
и
.
Поэтому
.
Абсолютная погрешность суммы и разности двух приближенных чисел равна сумме абсолютных погрешностей слагаемых.
Это
правило справедливо для произвольного
числа слагаемых. Так если x1,
x2,
…, xn
имеют одну и ту же погрешность
,
то погрешность суммы этих слагаемых
будет равна
.
Но реально погрешности могут иметь
разные знаки и поэтому взаимно
компенсировать друг друга. По правилу
Чеботарева при
погрешность суммы можно принять равной
[20].
Для
относительной погрешности суммы и
разности двух чиселполучаем
Для произвольного числа слагаемых
где
,
.
Пусть
Тогда
Поэтому
Аналогично при выполнении умножения и деления получаем погрешности (при тех же предположениях).
Найдем
погрешность произведения
:
Найдем
погрешность частного
:
Следовательно, относительная погрешность произведения двух чисел равна сумме относительных погрешностей его сомножителей.
Аналогичное правило выполняется и для частного от деления двух чисел.
Также
получаются формулы для погрешностей
арифметических действий при вычислении
функций многих переменных. Так, для
имеем следующие формулы для погрешностей
[20]:
П 1.5 Оценка погрешности по способу границ
Способ границ применяется для оценки погрешности результата расчета по формуле, содержащей приближенные величины.
Пусть а
– приближенное исходное данное, так
что заданы его границы:
.
Нужно найти результату,
зависящий от а
и поэтому также приближенный:
.
Найдем границы у,
т.е. два таких числа
и
,
что
.
Если результату
увеличится с ростом а
(например, площадь квадрата в зависимости
от длины стороны), то, по определению
границ,
для любого
и можно принять
.
Аналогично
.
Если у
убывает с ростом а
(например, давление воздуха с высотой),
то
и
.
Для нахождения
границ результата нужны два расчета по
одному и тому же алгоритму с исходными
данными
и
.
Границы результата округляют так:
–
с недостатком,
– с избытком. При этом в их записи
сохранить все цифры до первой слева,
отличие в которой
и
уже существенно.
Тогда значение у можем найти следующим образом:
.
А границы погрешности оцениваются:
.
Случай функции нескольких переменных.
Пусть a, b – исходные данные, известные приближенно:
,
.
Если результат
монотонно зависит от своих аргументов,
то крайние его значения достигаются
при некоторых комбинациях граничных
значений исходных данных.
В общем случае
следует провести 2 * 2 = 4 вычислений и
выбрать из них пару: наибольший (ВГ(у))
и наименьший (НГ(у))
результаты. В случае трех исходных
данных рассматривается 23
= 8 расчетов и т.д. задача упрощается,
если из ее постановки ясен характер
зависимости: рост или убывание хотя бы
по одному аргументу.
Пример 1. Произвести расчет по заданной формуле для приведенных исходных данных. Рассчитать границы, погрешность и значение результата.
Проведем некоторые предварительные расчеты по длинной формуле. Выясним, как зависит функция G от а1, а2, Т1, Т2.
Зафиксируем а1, а2, Т1 и вычислим
G(1.22, 2.33, 4.61, 6.74) =1.946536,
G(1.22, 2.33, 4.61, 6.70) = 1.977531.
Видно, что с возрастанием T2 убывает функция G.
Зафиксируем
,
,
и вычислим
G(1.22, 2.33, 4.62, 6.72) = 1.964724,
G(1.22, 2.33, 4.60, 6.72) = 1.959158.
Видно, что G возрастает с ростом T1.
Зафиксируем
,
,
и вычислим
G(1.22, 2.332, 4.61, 6.72) = 1.964339,
G(1.22, 2.328, 4.61, 6.72) = 1.959528.
Видно, что G возрастает с ростом a2.
Зафиксируем
,
,
и вычислим
G(1.222, 2.33, 4.61, 6.72) = 1.960553,
G(1.218, 2.33, 4.61, 6.72) = 1.963309.
Видно, что с возрастанием a1 убывает функция G.
Найдем границы G:
ВГ(G) = G(НГ(а1), ВГ(а2), ВГ(Т1), НГ(Т2)) = 1.984156,
НГ(G) = G(ВГ(а1), НГ(а2), НГ(Т1), ВГ(Т2)) =1.940027.
Видно, что различие в третьей цифре уже существенно.
Округляем НГ – с недостатком, ВГ – с избытком.
ВГ(G) = 1.99,
НГ(G) =1.94.
Тогда
,
.