Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Численные методы.Бестужева.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
2 Mб
Скачать

О культуре вычислений

При анализе решения инженерной задачи, полученного с применением компьютерных технологий, важно понимать, что численное решение почти всегда содержит погрешность, т.е. является приближенным. Невозможность получения точного решения задачи при использовании компьютерных технологий связана с ограниченностью разрядной сетки вычислительного средства.

Наличие погрешности решения обусловлено рядом весьма глубоких причин:

  1. Математическая модель является лишь приближенным описанием реального процесса. Характеристики процесса, вычисленные в рамках принятой модели, заведомо отличаются от истинных характеристик, причем их погрешность зависит от степени адекватности модели реальному процессу.

  2. Исходные данные обычно содержат погрешности, поскольку они, как правило, либо получаются в результате экспериментов, либо являются результатом численного решения некоторых вспомогательных задач.

  3. Найти решение возникающей на практике задачи в виде конечной формулы возможно только в отдельных, очень упрощенных ситуациях. Применяемые для решения задачи численные методы могут дать лишь приближенное решение задачи.

  4. Вклад в погрешность решения дает также вычислительная погрешность, возникающая при округлении в ходе выполнения арифметических операций.

Для того чтобы правильно вычислять, необходимо соблюдать правила, определяющие «культуру пользователя». Рассмотрим наиболее важные.

ПРАВИЛО 1

Точность результата вычислений не может превосходить точности исходных данных.

Определение: Пусть – точное (вообще говоря, неизвестное) значение некоторой величины, – известное приближенное значение той же величины (приближенное число). Ошибкой (или погрешностью) приближенного числа называется разность между точным и приближенным значениями.

Простейшей количественной мерой ошибки является абсолютная погрешность

.

Однако по величине абсолютной погрешности далеко не всегда можно сделать правильное заключение о качестве приближения. Действительно, если , то следует ли считать погрешность большой или нужно признать ее малой? Ответ существенным образом зависит от принятых единиц измерения и масштабов величин. Если , то, скорее всего точность приближения невелика; если же , то следует признать точность очень высокой. Таким образом, естественно соотнести погрешность величины и ее значение, для чего вводится понятие относительной погрешности (при )

.

Правила записи приближенных чисел

Количество верных значащих цифр числа тесно связано с величиной его относительной погрешности. Приведенные ниже утверждения позволяют в дальнейшем связывать точность числа с количеством его верных значащих цифр и трактовать потерю точности как потерю верных цифр.

Утверждение:

  1. Если число содержит верных значащих цифр, то справедливо неравенство ;

  2. Для того чтобы число содержало верных значащих цифр, достаточно, чтобы выполнялось неравенство ;

  3. Если число имеет ровно верных значащих цифр, то и таким образом .

Утверждение:

1. Абсолютная погрешность алгебраической суммы (суммы или разности) не превосходит суммы абсолютных погрешностей слагаемых, т.е. .

2. Абсолютная погрешность произведения может быть оценена по формуле .

3. Для относительных погрешностей суммы и разности приближенных чисел верны оценки, .

4. Для относительных погрешностей произведения и частного приближенных чисел верны оценки , при условии в последней, что .

ПРАВИЛО 2

Следует избегать вычитания близких чисел и деления на слишком большие и слишком маленькие числа. При суммировании слагаемые следует располагать в порядке возрастания абсолютных величин, стараясь, чтобы при каждом сложении порядки величин различались мало (при необходимости цикл суммирования можно разбить на несколько более коротких).

Пример: Вычислить , используя условную ЭВМ, выполняющую вычисления с обычной точностью, и систему MATLAB [7].

Решение: Вычислим последовательно для различных значений n величину , результаты представим в виде таблицы.

Для условной ЭВМ

Для MATLAB (6)

n

(1+1/n)n

n

(1+1/n)n

105

107

1.1*107

1.5*107

2*107

3*107

2.7182682

2.7182817

3.0041656

3.3201163

7.3890551

1

107

1011

1015

7*1015

9*1015

1016

2.71828169

2.71828205

3.03503521

4.73183102

7.37725372

1

Однако известно, что . Наблюдаемый численный эффект связан с делением на слишком большие числа.

ПРАВИЛО 3

Любое вычислительное средство имеет свою «машинную бесконечность» и свой «машинный эпсилон» – наименьшее представимое данным вычислительным средством число, удовлетворяющее условию

.

При исчезновении порядка не всегда следует обнулять результат. При переполнении не всегда можно признать результат вычислений бесконечно большим. В этих случаях следует попытаться изменить порядок действий, ввести масштабные множители и т.д.

ПРАВИЛО 4

Следует избегать плохо обусловленных вычислительных задач. Приведем примеры таких задач.

Пример 1:

Система: Решение:

.

Изменим правую часть второго уравнения на 0,0002, т.е. будем искать решение системы следующего вида:

.

Изменим первоначальную систему еще раз (два коэффициента):

.

Видно, что небольшое изменение исходных данных (не более чем на ) приводит к значительному изменению решения задачи. Обратим внимание, что в первом случае главный определитель системы , во втором – , а в третьем – .

Пример 2

Решим следующую задачу Коши для обыкновенного дифференциального уравнения (ОДУ):

.

Общее решение дифференциального уравнения имеет вид

Найдем значение С из начального условия:

и вычислим значение .

Изменим начальное условие:

.

Для этой задачи

,

.

Количественной мерой обусловленности задачи является число обусловленности, которое можно интерпретировать как коэффициент возможного возрастания погрешностей решения по отношению к вызвавшим их погрешностям начальных данных.

Если установлено неравенство между погрешностью начальных данных и решения вида

или

,

то – абсолютное число обусловленности; – относительное число обусловленности.

Число обусловленности определяется для каждого типа вычисляемых задач с помощью своих особых приемов вычисления. В примере 1, например, вопрос о числе обусловленности связан с определителем системы.

При каком значении числа обусловленности следует считать задачу плохо обусловленной? Ответ зависит от

  • требований, предъявляемых к точности решения;

  • уровня обеспечиваемой точности входных данных.

Пример:

Требуется найти решение с точностью 0,1%, а входные данные заданы с точностью 0.02%. В этом случае уже при ν≈10 задача плохо обусловлена.

Пример:

Входные данные имеют точность 0,0001%, а решение требуется найти с точностью 0,1%. В этом случае даже при ν≈103 задача хорошо обусловлена.

ПРАВИЛО 5

Следует избегать плохо обусловленных алгоритмов.

Пример: Известно, что функция может быть представлена в виде сходящегося степенного ряда

.

Пусть для вычисления используется калькулятор (шестиразрядная десятичная ЭВМ). Возьмем , и будем вычислять значения частичных сумм до тех пор, пока добавление очередного слагаемого еще меняет значение суммы (то есть до тех пор, пока очередное слагаемое не станет меньше )

В сумму вошло 36 слагаемых и значение очередного (37-го) слагаемого оказалось уже не в состоянии изменить результат. При этом – истинное значение. Сравнение показывает, что найденное значение не содержит ни одной верной цифры.

Исправить этот алгоритм можно следующим образом:

.

ПРАВИЛО 6

Применяя определенный метод для решения вычислительной задачи, следует выбирать для его реализации тот из алгоритмов, который наиболее устойчив к погрешностям входных данных.

Контрольные вопросы

  1. Особенности современных инженерных задач.

  2. Основные этапы вычислительного эксперимента.

  3. Понятия модели и моделирования.

  4. Виды моделирования.

  5. Что называется ошибкой (или погрешностью) приближенного числа.

  6. Определение абсолютной погрешности.

  7. Определение относительной погрешности.

  8. Плохо обусловленная задача на примере системы линейных алгебраических уравнений.

  9. Плохо обусловленная задача на примере задачи Коши для обыкновенного дифференциального уравнения.

  10. Что такое абсолютное и относительное числа обусловленности.

  11. Приведите пример плохо обусловленного алгоритма.