![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Влияние выбора вычислительного алгоритма на результаты вычислений
Пример 3.2.1. Пусть необходимо вычислить значение выражения Избавившись от знаменателя, получаем Полагая а) в) и рассматривая эти приближения как разные методы вычисления, получим следующие результаты:
Очевидно, что столь значительное различие в результатах вызвано влиянием ошибки округления в задании Пример 3.2.2. Вычисление функции sin x с помощью ряда Тейлора. Из курса математического анализа известно, что функция синус представляется своим рядом Тейлора причем радиус сходимости ряда равен бесконечности — ряд сходится при любых значениях x. Вычислим значения синуса при двух значениях аргумента. Пусть сначала Пусть теперь Разумеется, выходом из создавшейся ситуации может быть использование формул приведения. Пример 3.2.3. Вычисление функции ex с помощью ряда Тейлора. Из курса математического анализа известно, что экспонента представляется своим рядом Тейлора радиус сходимости этого ряда также равен бесконечности. Приведем некоторые результаты расчетов (
Выходом из этой ситуации может быть использование для отрицательных аргументов экспоненты формулы Естественно ожидать рост ошибок округления при вычислении рассматриваемой функции при больших значениях аргумента x. В этом случае можно использовать формулу ex = en + a = enea, где n = [x]. Пример 3.2.4. Рассмотрим следующий метод вычисления интеграла Интегрирование по частям дает откуда следует
Тогда Очевидно, что отрицательные значения при n = 9, 10 не имеют смысла. Дело в том, что ошибка, сделанная при округлении I0 до 6-ти значащих цифр сохранилась при вычислении I1, умножилась на 2! при вычислении I2, на 3! — при вычислении I3, и так далее, т.е. ошибка растет очень быстро, пропорционально n!. Пример 3.2.5. Рассмотрим методический пример вычислений на модельном компьютере, обеспечивающем точность В памяти машины эти же числа представляются в виде Тогда Относительная ошибка при вычислении разности uM - vM будет равна Очевидно, что Пример 3.2.6 Рассмотрим рекуррентное соотношение ui+1 = qui, Пусть при выполнении реальных вычислений с конечной длиной мантиссы на i-м шаге возникла погрешность округления, и вычисления проводятся с возмущенным значением Следовательно, если |q| > 1, то в процессе вычислений погрешность, связанная с возникшей ошибкой округления, будет возрастать (алгоритм неустойчив). В случае
|