- •Министерство образования и науки Российской Федерации
- •1. Учет погрешностей приближенных вычислений
- •1.1. Источники и классификация погрешностей результата численного решения задачи
- •1.2. Приближенные числа. Абсолютная и относительная погрешности
- •1.2.1. Абсолютная и относительная погрешности
- •1.2.2. Правила записи приближенных чисел
- •1.2.3. Округление
- •1.3. Погрешности арифметических операций над приближенными числами
- •1.4. Особенности машинной арифметики
- •1.4.1. Системы счисления
- •1.4.3. Представление вещественных чисел
- •1.4.4. Арифметические операции над числами с плавающей точкой
- •1.4.5. Удвоенная точность
- •1.4.6. Вычисление машинного эпсилон
- •2. Прямые методы решения систем линейных алгебраических уравнений
- •Постановка задачи
- •2.2. Норма вектора
- •2.3. Скалярное произведение
- •2.4. Абсолютная и относительная погрешность вектора
- •2.5. Сходимость по норме
- •2.6. Норма матрицы
- •2.7. Обусловленность задачи решения системы линейных алгебраических уравнений
- •2.8. Метод Крамера
- •2.9. Матричный метод
- •2.10. Метод Гаусса
- •2.10.1. Схема единственного деления
- •2.10.4. Случай, когда выбор главных элементов не нужен
- •2.10.5. Масштабирование
- •2.12. Решение слау с помощью lu-разложения
- •2.13. Обращение матриц с помощью lu-разложения
- •2.14. Разложение симметричных матриц. Метод Холецкого (метод квадратных корней)
- •2.15. Метод прогонки
- •2.16. Метод исключения Жордана (Гаусса–Жордана)
- •2.17.1. Метод вращений
- •2.17.2. Метод отражений
- •2.18. Итерационное уточнение
- •2.19. Сингулярное разложение матрицы
- •2.19.1. Переопределенная система
- •2.19.2. Сингулярное разложение матрицы
- •2.19.4. Дополнительная информация о сингулярном разложении
- •2.20. Дополнительные замечания
- •3. Итерационные методы
- •3.1. Классические итерационные методы и релаксация
- •3.1.1. Методы Якоби и Гаусса–Зейделя
- •3.1.2. Ускорение сходимости релаксационных методов
- •3.2. Проекционные методы и подпространства Крылова
- •3.2.1. Общий подход к построению проекционных методов
- •3.2.2. Случай одномерных подпространств k и l
- •3.2.3. Два выбора подпространств
- •3.2.4. Подпространства Крылова
- •3.2.5. Базис подпространства Крылова. Ортогонализация Арнольди
- •3.2.6. Биортогонализация Ланцоша
- •3.3. Предобусловливание
- •3.3.1. Виды предобусловливания
- •3.3.2. Выбор структуры разреженности
- •3.4. Методы крыловского типа
- •3.4.1. Метод полной ортогонализации
- •3.4.2. Метод обобщенных минимальных невязок
- •3.4.3. Метод бисопряженных градиентов
- •3.4.4. Свободный от транспонирования метод квази-минимальных невязок
- •3.4.5. Стабилизированный метод бисопряженных градиентов
- •3.4.6. Метод квази-минимальных невязок
- •3.4.7. Квадратичный метод сопряженных градиентов
- •3.4.8. Симметричный случай
- •4. Использование итерационных методов при решении слау с плотной матрицей в анализе проводных антенн
- •4.1. Сравнение итерационных методов без использования предобусловливания
- •4.2. Сравнение итерационных методов при использовании предобусловливания
- •4.3. Оптимизация допуска обнуления при решении слау итерационным методом BiCgStab с предобусловливанием
- •4.4. Ускорение решения слау за счет снижения точности вычисления
- •Сравнение способов предфильтрации
1.2. Приближенные числа. Абсолютная и относительная погрешности
В разделе 1.1 было отмечено, что числа, получаемые при решении прикладных задач на компьютере, как правило, являются приближенны-ми. Следовательно, вопрос о точности результатов, т.е. о мере их уклоне-ния от истинных значений, в теории и практике методов вычислений приобретает особое значение. Начнем его рассмотрение с введения ос-новных понятий элементарной теории погрешностей.
1.2.1. Абсолютная и относительная погрешности
Пусть a – точное (вообще говоря, неизвестное) значение некоторой величины, a* – известное приближенное значение той же величины (при-ближенное число). Ошибкой или погрешностью приближенного числа a* называют разность a – a* между точным и приближенным значениями.
9
Простейшей количественной мерой погрешности является абсолют-ная погрешность
-
(a*) = |a – a*|.
(1.1)
Однако по значению абсолютной погрешности далеко не всегда мож-но сделать правильное заключение о качестве приближения. Действи-тельно , если (a *) = 0.1, то следует ли считать погрешность большой или нужно признать ее малой? Ответ существенным образом зависит от при-нятых единиц измерения и масштабов величин. Если a ≈ 0.3 то, скорее всего , точность приближения невелика; если же a ≈ 3⋅108, то следует при-знать точность очень высокой. Таким образом, естественно соотнести погрешность величины и ее значение, для чего вводится понятие относи-
тельной погрешности (при a ≠ 0) |
|
δ(a*) = |a – a*| / |a| = (a*) / |a|. |
(1.2) |
Использование относительных погрешностей удобно, в частности, тем, что они не зависят от масштабов величин и единиц измерения. Заме-
тим, что для приведенного примера δ(a*) ≈ 0.33 = 33% в первом случае и
δ(a*) ≈ 0.33⋅10–9 = 0.33⋅10–7% во втором.
Так как значение a неизвестно, то непосредственное вычисление ве-личин (a*) и δ(a*) по формулам (1.1) и (1.2) невозможно. Более реальная и часто поддающаяся решению задача состоит в получении оценок по-
грешности вида |
|
|a – a*| ≤ Δ′(a*), |
(1.3) |
|a – a*| / |a| ≤ δ′(a*), |
(1.4) |
где Δ′(a*) и δ′(a*) – величины, которые будем называть верхними грани-цами (или границами) абсолютной и относительной погрешностей.
Если величина Δ′(a*) известна, то неравенство (1.4) будет выполнено,
если положить |
|
δ′(a*) = Δ′(a*) / |a|. |
(1.5) |
Точно так же, если величина δ′(a*) известна, то следует положить |
|
Δ′(a*) = |a|δ′(a*). |
(1.6) |
Поскольку значение a неизвестно, при практическом применении
формулы (1.5), (1.6) заменяют приближенными равенствами |
|
δ′(a*) ≈ Δ′(a*) / |a*|, Δ′(a*) ≈ |a*|δ′(a*). |
(1.7) |
В литературе по методам вычислений широко используется термин «точность». Принято говорить о точности входных данных и решения, о повышении и снижении точности вычислений и т.д. Точность в качест-венных рассуждениях обычно выступает как противоположность по-грешности, хотя для количественного их измерения используются одни и те же характеристики (например, абсолютная и относительная погрешно-
10
сти). Точное значение величины – это значение, не содержащее погреш-ности. Повышение точности воспринимается как уменьшение погрешно-сти, а снижение точности – как увеличение погрешности. Часто исполь-зуемая фраза «требуется найти решение с заданной точностью ε» означа-ет, что ставится задача о нахождении приближенного решения, принятая мера погрешности которого не превышает заданного значения ε. Вообще говоря, следовало бы говорить об абсолютной точности и относительной точности, но часто этого не делают, считая, что из контекста ясно, как измеряется погрешность.