Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Методы вычислений                              Лекции 1, 2                    Кафедра теоретической механики           Сам...
1   Математическое моделирование     Компьютерное моделирование2   Программное обеспечение      Коммерческое ПО      Свобо...
Литература 1    Вержбицкий В. М. Численные методы. Математический анализ и      обыкновенные дифференциальные уравнения. М...
Математическое моделированиеНачала математики   Первые элементы математики, как науки, возникли тысячи лет   назад в связи...
Математическое моделированиеМоделирование                       Решение практической задачи          Эксперимент          ...
Математическое моделированиеПрикладная математикаПрикладная математика – область математики, рассматривающаяприменение мат...
Математическое моделированиеЭтапы математического моделирования 1    Формулировка математической модели. 2    Математическ...
Математическое моделированиеВычислительная математикаМногие математические задачи невозможно решить, используяклассические...
Математическое моделированиеВычислительная математикаУвеличение количества сложных задач с развитием техники привело квозн...
Математическое моделированиеЗадачи вычислительной математики   Приближение множеств в функциональных пространствах.   Приб...
Математическое моделированиеПрименение вычислительных методовОткрытие планеты Нептун     К 40-м годам XIX в. точные наблюд...
Математическое моделирование   Компьютерное моделированиеНовые возможности   Возможность решения задач, решение которых ра...
Математическое моделирование   Компьютерное моделированиеНовые сложности   Пересмотр традиционных докомпьютерных методов в...
Математическое моделирование   Компьютерное моделированиеЭтапы компьютерного моделирования                                ...
Программное обеспечение   Коммерческое ПОКоммерческое ПО   Mathematica (Wolfram Research)   Универсальная система, ориенти...
Программное обеспечение   Свободное ПОСвободное ПО   OCTAVE   аналог MATLAB: многие программы, написанные для MATLAB   раб...
Программное обеспечение   Свободное ПОСвободное ПО   SciLab   Maxima имеет широкий набор средств для проведения   аналитич...
Программное обеспечение   Математические библиотекиМатематические библиотеки   GNU Scientific Library – обширная библиотек...
Погрешности
Виды погрешности                                               x1                         f (x) ⇒ y =                f (x)...
Виды погрешностиУстранимая и неустранимая погрешность   При численном решении математических и прикладных задач   почти не...
Виды погрешности   Абсолютная и относительная погрешностиАбсолютная погрешность   a(x ∗ ) = |x ∗ − x| – абсолютная погрешн...
Виды погрешности   Абсолютная и относительная погрешностиОтносительная погрешность   Абсолютная погрешность позволяет суди...
Виды погрешности   Абсолютная и относительная погрешностиСпособы записи приближенных чисел   3.1400 ± 0.0016, 3.1415 ± 0.0...
Виды погрешности   Абсолютная и относительная погрешностиОкругление чиселПри округлении числа x, записанного в системе с о...
Виды погрешности   Абсолютная и относительная погрешностиОкругление чисел   При округлении возникает дополнительная погреш...
Погрешность функции
Виды погрешности     Погрешность функцииАбсолютная погрешность функции   Пусть известны абсолютные и относительные погрешн...
Виды погрешности   Погрешность функцииОтносительная погрешность функции                             n     ∂f (x)          ...
Виды погрешности             Погрешность функцииПогрешность суммы x ∗ = x1 + x2 + . . . + xn                         ∗    ...
Виды погрешности    Погрешность функцииПогрешность разности x ∗ = x1 − x2                            ∗    ∗   При вычитани...
Виды погрешности   Погрешность функцииОбъем сферического слояПример ошибки, возникающей при вычитании близких величинНеобх...
Виды погрешности   Погрешность функцииПогрешность произведения x ∗ = x1 x2                                ∗ ∗   Абсолютная...
Машинная арифметика,  стандарт IEEE-754
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Стандарт IEEE-754   Стандарт разработан ассоциацией IEEE (Instit...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Форматы чисел стандарта IEEE-754   числа одинарной точности   si...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Нормализованная и денормализованная формаНормализованная форма ч...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754IEEE-754: Число одинарной точности (single precision)    4 байта...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754IEEE-754: Число двойной точности   8 байта на число.   Смещение ...
Машинная арифметика, стандарт IEEE-754     Стандарт IEEE-754Знак      Показатель степени                Мантисса          ...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Формула восстановления“ нормализованного числа       ”          ...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Формула восстановления“ денормализованного числа       ”        ...
Машинная арифметика, стандарт IEEE-754    Стандарт IEEE-754ПримерЗапишем число 9.25    910 = 1 · 23 + 0 · 22 + 0 · 21 + 1 ...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754 Максимальное по модулю нормализованное число:                  ...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Точность представления числа в стандарте IEEE-754   В ЭВМ предст...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Точность представления числа в стандарте IEEE-754   Абсолютная м...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Точность представления числа в стандарте IEEE-754Предел максимал...
Машинная арифметика, стандарт IEEE-754    Стандарт IEEE-754Точность представления числа в стандарте IEEE-754   Относительн...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Погрешность чисел одинарной точности  x∗                        ...
Машинная арифметика, стандарт IEEE-754   Стандарт IEEE-754Погрешность чисел двойной точностиx∗                            ...
Машинная арифметика, стандарт IEEE-754   ОшибкиСложение и вычитание чисел    Значащих цифр в мантиссе двоичного числа в фо...
ЗаданияЗадание 1.Вычислите приближенное значение функции и оцените абсолютнуюпогрешность результата. Запишите результат в ...
Задания              №     f (x, y )      x∗     A(x ∗ )     y∗    A(y ∗ )                    x+2y              11       y...
ЗаданияЗадание 2.Запишите десятичное число n10 в формате single2 в соответствии справилами стандарта IEEE-754.            ...
ЗаданияИсточники 1    Волков Е. А. Численные методы: Учебное пособие для вузов. 2-е      изд., испр. М.: Наука. 1987. 2   ...
Upcoming SlideShare
Loading in …5
×

Методы вычислений. Лекция 1, 2

3,719 views

Published on

Published in: Education
  • Be the first to comment

Методы вычислений. Лекция 1, 2

  1. 1. Методы вычислений Лекции 1, 2 Кафедра теоретической механики Самарский государственный аэрокосмический университет им. академика С. П. Королёва (национальный исследовательский университет) yudintsev@termech.ru 16 февраля 2013 г.Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 1 / 55
  2. 2. 1 Математическое моделирование Компьютерное моделирование2 Программное обеспечение Коммерческое ПО Свободное ПО Математические библиотеки3 Виды погрешности Абсолютная и относительная погрешности Погрешность функции4 Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754 Ошибки5 Задания Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 2 / 55
  3. 3. Литература 1 Вержбицкий В. М. Численные методы. Математический анализ и обыкновенные дифференциальные уравнения. М.: Выская школа, 2001. 2 Формалёв В. Ф. ,Ревизников Д. Л. Численные методы. М.: Физматлит. 2004. 3 Дж. Голуб, Ч. Ван. Лоун, Матричные вычисления. М.: Мир, 1990. 4 Волков Е. А. Численные методы: Учебное пособие для вузов. 2-е изд., испр. М.: Наука. 1987. 5 Бахвалов Н. С. Численные методы (анализ алгебра, обыкновенные дифференциальные уравнения). М.: Наука, 1975. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 3 / 55
  4. 4. Математическое моделированиеНачала математики Первые элементы математики, как науки, возникли тысячи лет назад в связи с необходимостью решения практических задач: вычисления площадей, решения задач навигации (Вавилон, Египет). В Греции математика стала развиваться как “теоретическая ” наука. В XX веке с развитием техники появилось множество практических задач, где необходимым или даже единственно возможным было численное решение. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 4 / 55
  5. 5. Математическое моделированиеМоделирование Решение практической задачи Эксперимент Математическое моделированиеМоделирование – это замещение одного объекта (оригинала) другим(моделью) и фиксация и изучение свойств модели. Замещениепроизводится с целью упрощения, удешевления, ускорения изучениясвойств оригинала.Математическая модель – модель построенная с помощьюматематических понятий. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 5 / 55
  6. 6. Математическое моделированиеПрикладная математикаПрикладная математика – область математики, рассматривающаяприменение математических методов, алгоритмов в других областяхнауки и практики. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 6 / 55
  7. 7. Математическое моделированиеЭтапы математического моделирования 1 Формулировка математической модели. 2 Математический анализ (аналитическое или численное решение). 3 Осмысление решения, анализ результатов, сравнение с экспериментом. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 7 / 55
  8. 8. Математическое моделированиеВычислительная математикаМногие математические задачи невозможно решить, используяклассические методы, или получаемое решение не пригодно киспользованию из-за громоздкости. Системы линейных уравнений большой размерности: Ax = B. Нелинейные уравнения: f(x) = 0. Большинство дифференциальных уравнений, описывающие, например, динамику сложных механических систем. y (x) = f(x, y). Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 8 / 55
  9. 9. Математическое моделированиеВычислительная математикаУвеличение количества сложных задач с развитием техники привело квозникновению большого раздела математики, который называетсявычислительной математикой. Разработка и исследование вычислительных алгоритмов, их применение к решению конкретных задач составляет содержание вычислительной математики. Вычислительную математику определяют в широком смысле как раздел математики, исследующий широкий круг вопросов, связанных с использованием ЭВМ. В узком смысле вычислительную математику определяют как теорию численных методов и алгоритмов решения поставленных математических задач. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 9 / 55
  10. 10. Математическое моделированиеЗадачи вычислительной математики Приближение множеств в функциональных пространствах. Приближение функций заданных на функциональных пространствах. Разработка рациональных алгоритмов и методов решения задач в условиях применения ЭВМ. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 10 / 55
  11. 11. Математическое моделированиеПрименение вычислительных методовОткрытие планеты Нептун К 40-м годам XIX в. точные наблюдения показали, что Уран едва заметно уклоняется от того пути, по которому он должен следовать с учетом возмущений со стороны всех известных планет. Леверье (во Франции) и Адамс (в Англии) высказали предположение, что на Уран него действует притяжение еще не известного тела. Они почти одновременно рассчитали, где за Ураном должно быть неизвестное тело, производящее своим притяжением эти отклонения. Планета была найдена в телескоп на указанном ими месте в 1846 г. Её назвали Нептуном. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 11 / 55
  12. 12. Математическое моделирование Компьютерное моделированиеНовые возможности Возможность решения задач, решение которых ранее было практически невозможным. Развились целые области математики, которые не могли бы существовать без компьютеров (нелинейная динамика, хаотическая динамика). Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 12 / 55
  13. 13. Математическое моделирование Компьютерное моделированиеНовые сложности Пересмотр традиционных докомпьютерных методов вычислений. Формальный перенос привычных алгоритмов для вычислений вручную на машинный язык приводит к ошибкам и неэффективным программам; Усложнение алгоритмов. Математическая библиотека/программа как “черный ящик”; Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 13 / 55
  14. 14. Математическое моделирование Компьютерное моделированиеЭтапы компьютерного моделирования Модель Алгоритм Программа Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 14 / 55
  15. 15. Программное обеспечение Коммерческое ПОКоммерческое ПО Mathematica (Wolfram Research) Универсальная система, ориентированная как на аналитическое так и на численное решение задач. Функциональный язык программирования. MATLAB – MATrix LABoratory (MathWorks) Ориентирована на использование численных методов для решения задач. Базовым элементом системы является матрица. Maple. MathCad. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 15 / 55
  16. 16. Программное обеспечение Свободное ПОСвободное ПО OCTAVE аналог MATLAB: многие программы, написанные для MATLAB работают в OCTAVE с небольшими модификациями; R система для проведения статистических расчётов; sagemath Разрабатывается как свободная замена MATLAB/Mathematica/Maple. Позволяет решать задачи алгебры, комбинаторики, вычислительной математики и матанализа. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 16 / 55
  17. 17. Программное обеспечение Свободное ПОСвободное ПО SciLab Maxima имеет широкий набор средств для проведения аналитических, численных вычислений и построения графиков. По набору возможностей система близка к таким коммерческим системам как Maple и Mathematica. Python с научными“ библиотеками NumPy, SciPy, Matplotlib по ” возможностям не уступает MATLAB при потенциально более высокой вычислительной эффективности. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 17 / 55
  18. 18. Программное обеспечение Математические библиотекиМатематические библиотеки GNU Scientific Library – обширная библиотека математических функций. NAG – библиотека математических функция для различных языков программирования : C, C++, Fortran, Java, Python, .NET, пакетов: MATLAB, Maple, Excel). BLAS (Basic Linear Algebra Subprograms) – библиотека базовых функций для работы с векторами и матрицами. LAPACK++ – C++ интерфейс для работы с LAPACK и BLAS. ODEPACK – библиотека для решения различных типов дифференциальных уравнений. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 18 / 55
  19. 19. Погрешности
  20. 20. Виды погрешности x1 f (x) ⇒ y = f (x)dx ⇒ y x0Варианты решения задачи: 1 замена f (x) на более простую легко интегрируемую функцию f ∗ (x), близкую к f (x). x1 f ∗ (x) ⇒ y ∗ = f ∗ (x)dx ⇒ y ∗ x0 2 замена интеграла суммой . . . dx → ... f (x) ⇒ y ∗∗ = f (x) ⇒ y ∗∗ Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 20 / 55
  21. 21. Виды погрешностиУстранимая и неустранимая погрешность При численном решении математических и прикладных задач почти неизбежно появление на том или ином этапе погрешностей. Погрешность – это отклонение приближенного решения от истинного решения. Погрешность Неустранимая Устранимая Погрешность модели Погрешность метода Погрешность исходных данных Погрешность вычислений Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 21 / 55
  22. 22. Виды погрешности Абсолютная и относительная погрешностиАбсолютная погрешность a(x ∗ ) = |x ∗ − x| – абсолютная погрешность – разность между точным и приближенным значением (x – точное значение, x ∗ – приближенное значение). точное значение обычно неизвестно, поэтому вместо a(x ∗ ) используют наименьшую верхнюю границу A(x ∗ ) ≥ a(x ∗ ) – предельная абсолютная погрешность. x=3.14 – приближенное значение числа π с погрешностью 0.00159...; предельную абсолютную погрешность можно считать равной 0.0016. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 22 / 55
  23. 23. Виды погрешности Абсолютная и относительная погрешностиОтносительная погрешность Абсолютная погрешность позволяет судить о точности числа, только если известно само это число (точное или приближенное). Для безмасштабной“ оценки точности используется ” безразмерная величина – относительная погрешность: A(x ∗ ) ∆(x ∗ ) = x∗ x=3.14 – приближенное значение числа π с погрешностью 0.00159.... Предельная относительная погрешность: 0.0016/3.14=0.00051=0.051%. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 23 / 55
  24. 24. Виды погрешности Абсолютная и относительная погрешностиСпособы записи приближенных чисел 3.1400 ± 0.0016, 3.1415 ± 0.01; от 3.1384 до 3.1416; 3.14 – использование в записи только верных значащих цифр. Значащими цифрами в десятичной записи числа называются все цифры, начиная с первой ненулевой слева. Значащая цифра называется верной, если абсолютная погрешность числа не превосходит половины единицы разряда, соответствующего этой цифре. Приближенные числа следует записывать, сохраняя только верные знаки. Если, например, абсолютная погрешность числа 52400 равна 50, то это число должно быть записано в виде 524 · 102 или 0.524 · 105 . Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 24 / 55
  25. 25. Виды погрешности Абсолютная и относительная погрешностиОкругление чиселПри округлении числа x, записанного в системе с основанием β x = ±[a1 β n + a2 β n−1 + a3 β n−2 + . . . + am β n−m+1 + . . .] до m разрядов, если если 1 1 am+1 + am+2 β −1 + ... < β, am+1 + am+2 β −1 + ... > β, 2 2 x ∗ = ±[a1 β n + . . . + am β n−m+1 ] x ∗ = ±[a1 β n + . . . + (am + 1)β n−m+1 ] Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 25 / 55
  26. 26. Виды погрешности Абсолютная и относительная погрешностиОкругление чисел При округлении возникает дополнительная погрешность, не превышающая половины единицы разряда последней значащей цифры округленного числа. Чтобы после округления все знаки были верны, погрешность до округления должна быть не больше половины единицы того разряда, до которого предполагают делать округление. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 26 / 55
  27. 27. Погрешность функции
  28. 28. Виды погрешности Погрешность функцииАбсолютная погрешность функции Пусть известны абсолютные и относительные погрешности аргументов функции f (x1 , x2 , . . . , xn ). Абсолютная погрешность функции (при малых абсолютных погрешностях) n ∗ ∗ ∂f (x) af ∗ = f (x1 , . . . , xn ) − f (x1 , . . . , xn ) = axi∗ ∂xi x=ξ i=1 ∂f (x) ∂f (x) полагая, что ∂xi ≈ ∂xi x=ξ x=x ∗ n n ∂f (x) ∂f (x) Af ∗ ≤ Axi∗ или Af ∗ = Axi∗ ∂xi x=x ∗ ∂xi x=x ∗ i=1 i=1 Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 28 / 55
  29. 29. Виды погрешности Погрешность функцииОтносительная погрешность функции n ∂f (x) n Af ∗ ∂xi x=x ∗ ∆f ∗ = = Axi∗ = (ln f (x ∗ )) x Axi∗ |f (x ∗ )| f (x ∗) i=1 i=1Если известна относительная погрешность аргументов, то n ∆f ∗ = xi ∗ (ln f (x ∗ )) x ∆xi∗ i=1 Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 29 / 55
  30. 30. Виды погрешности Погрешность функцииПогрешность суммы x ∗ = x1 + x2 + . . . + xn ∗ ∗ ∗ при сложении приближенных величин их абсолютные погрешности складываются Af ∗ = n Axi∗ . i=1 относительная погрешность суммы будет заключена между наибольшей и наименьшей относительной погрешности слагаемых: n Af ∗ xi ∗ ∆f ∗ = = ∆x ∗ |f (x ∗ )| x∗ i i=1 x∗ 1 + x∗ 2 + x∗ 3 + . . . + x ∗n ∆f ∗ ≤ M ∗ =M x x ∗1 + x ∗2 + x ∗3 + . . . + x ∗n ∆f ∗ ≥ m =m x∗ Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 30 / 55
  31. 31. Виды погрешности Погрешность функцииПогрешность разности x ∗ = x1 − x2 ∗ ∗ При вычитании абсолютная погрешность будет равна сумме абсолютных погрешностей уменьшаемого и вычитаемого: Af ∗ = Ax1 + Ax2 . ∗ ∗ относительная погрешность будет больше чем относительная погрешность каждого операнда: n Af ∗ x1 ∗ ∆x1 ∗ + x2 ∗ ∆x2 ∗ ∆x ∗ = = |f (x ∗ )| x∗ i=1 Если уменьшаемое и вычитаемое близки друг к другу, то дробь будет очень велика, поэтому следует избегать непосредственного вычитания двух близких величин. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 31 / 55
  32. 32. Виды погрешности Погрешность функцииОбъем сферического слояПример ошибки, возникающей при вычитании близких величинНеобходимо найти объем сферического слоя с внутренним радиусом rи внешним радиусом r + a. Формула 1: 4 V = π (r + a)3 − r 3 (1) 3 Формула 2: 4 V = π 3r 2 a + 3ra2 + a3 (2) 3При r = 1.0 × 108 , a = 1.0 × 10−9 формула (1) при вычислении всистеме MATLAB дает неверный результат V = 0. Вычисляя объем поформуле (2), получим V = 1.25664 × 108 . Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 32 / 55
  33. 33. Виды погрешности Погрешность функцииПогрешность произведения x ∗ = x1 x2 ∗ ∗ Абсолютная погрешность: x∗ x∗ Af ∗ = ∗ Ax1 + ∗ Ax2 ∗ ∗ x1 x2 При произведении приближенных чисел относительные погрешности складываются: ∆f ∗ = ∆x1 + ∆x2 . ∗ ∗ Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 33 / 55
  34. 34. Машинная арифметика, стандарт IEEE-754
  35. 35. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Стандарт IEEE-754 Стандарт разработан ассоциацией IEEE (Institute of Electrical and Electronics Engineers) и используется для представления действительных чисел в двоичном коде. Используется многими микропроцессорами, логическими устройствами и программными средствами. Разработан в 1985 году. Наименование IEEE Standard for Binary Floating-Point Arithmetic ” (ANSI/IEEE Std 754-1985)“ Особенности стандарта необходимо учитывать при программной реализации численных алгоритмов. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 35 / 55
  36. 36. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Форматы чисел стандарта IEEE-754 числа одинарной точности sinlge precision – 32 бита числа двойной точности double precision – 64 бита числа расширенной одинарной точности single extended precision – ≥ 43 бита числа расширенной двойной точности double extended precision – ≥ 79 бит (обычно используют 80) Для записи чисел используется форма с плавающей точкой. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 36 / 55
  37. 37. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Нормализованная и денормализованная формаНормализованная форма числа 1251 = 12.51 × 102 = 0.1251 × 104 1251 = 1.251 × 103Денормализованная форма для записи чисел близких к нулю, используется денормализованная форма записи денормализованные числа находятся ближе к нулю, чем нормализованные. денормализованные числа разбивают минимальный разряд нормализованного числа на некоторое подмножество. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 37 / 55
  38. 38. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754IEEE-754: Число одинарной точности (single precision) 4 байта на число. Смещение экспоненты: 28 − 1 = 127. Смещение экспоненты позволяет не вводить знаковый бит, а записывать в отведенные 8 бит значение Es = E + 127 S. Знак Es . Смещенная экспонента M. Мантисса 1 бит 8 бит 23 бита Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 38 / 55
  39. 39. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754IEEE-754: Число двойной точности 8 байта на число. Смещение экспоненты: 211 − 1 = 1023. Es = E + 1023S. Знак Es . Смещенная экспонента M. Мантисса 1 бит 11 бит 52 бит Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 39 / 55
  40. 40. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Знак Показатель степени Мантисса Значение 0 00 . . . 00 00 . . . 00 Положительный ноль 1 00 . . . 00 00 . . . 00 Отрицательный ноль1/0 00 . . . 00 < Es < 11 . . . 11 любая Нормализованное число1/0 00 . . . 00 не ноль Денормализованное число 0 11 . . . 11 00 . . . 00 +∞ 1 11 . . . 11 00 . . . 00 −∞1/0 11 . . . 11 не ноль NaN Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 40 / 55
  41. 41. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Формула восстановления“ нормализованного числа ” (b−1) +1 F = (−1)s 2(Es −2 ) (1 + M /2n ) b – количество бит, отводимых под экспоненту; Es – смещенная экспонента; M – остаток мантиссы; n – количество бит, отводимых под мантиссу. single precision F = (−1)s 2Es −127 (1 + M/223 ) double precision F = (−1)s 2Es −1023 (1 + M/252 ) Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 41 / 55
  42. 42. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Формула восстановления“ денормализованного числа ” (b−1) +2 F = (−1)s 2(Es −2 ) (M /2n ) b – количество бит, отводимых под экспоненту; Es – смещенная экспонента; M – остаток мантиссы; n – количество бит, отводимых под мантиссу. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 42 / 55
  43. 43. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754ПримерЗапишем число 9.25 910 = 1 · 23 + 0 · 22 + 0 · 21 + 1 · 20 = 10012 0.2510 = 0 · 2−1 + 1 · 2−2 = 0.012 9.2510 = 1001.012 = 1.00101 · 23 Смещенная экспонента Es = 3 + 127 = 10000010 Остаток мантиссы M = 00101 Запись числа 9.25 в формате single 0 10000010 00101000000000000000000 Знак Es Остаток мантиссы Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 43 / 55
  44. 44. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754 Максимальное по модулю нормализованное число: 2127 2 − 2−23 = 3.40282347 × 1038 Минимальное по модулю нормализованное число (single): 2−126 1 + 0 2−23 = ±1.17549435 × 10−38 Максимальное по модулю денормализованое число (single): 2−126 1 − 223 )=±1.17549421×10−38 Минимальное по модулю денормализованое число (single): 2−126 2−23 = ±1.40129846 × 10−45Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 44 / 55
  45. 45. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Точность представления числа в стандарте IEEE-754 В ЭВМ представимы лишь конечный набор рациональных чисел специального вида. Эти числа образуют представимое множество вычислительной машины. Для всех остальных чисел x возможно лишь их приближенное представление с ошибкой, которую принято называть ошибкой представления (или ошибкой округления). Пример непредставимого числа 0.110 = 0.000110011001100110011 . . .. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 45 / 55
  46. 46. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Точность представления числа в стандарте IEEE-754 Абсолютная максимальная ошибка для числа в формате IEEE-754 равна в пределе половине шага чисел. Шаг чисел удваивается с увеличением экспоненты двоичного числа на единицу. Чем дальше от нуля, тем шире шаг чисел в формате IEEE754 по числовой оси. Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 46 / 55
  47. 47. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Точность представления числа в стандарте IEEE-754Предел максимальной абсолютной ошибки будет равен 1/2 шагачисла: single : A(x ∗ ) = 2Es −22−127 /2 = 2(Es −150) double : A(x ∗ ) = 2Es −51−1023 /2 = 2(Es −1075) Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 47 / 55
  48. 48. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Точность представления числа в стандарте IEEE-754 Относительная погрешность нормализованного числа 2E −150 1 ∆(x ∗ ) = M = 2E −127 1 + 223 223 +M Относительная погрешность денормализованного числа 2E −150 1 ∆(x ∗ ) = M = 2E −126 223 2M Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 48 / 55
  49. 49. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Погрешность чисел одинарной точности x∗ a (x ∗ ) ∆ (x ∗ ), % 2−149 ≈ 1.401298 × 10−45 2−150 ≈ 0.700649 × 10−45 50 2−148 ≈ 2.802597 × 10−45 2−150 ≈ 0.700649 × 10−45 25 1.0 2−23 ≈ 1.192 × 10−7 11.9209 × 10−6 100 2−17 ≈ 7.6294 × 10−6 7.62939 × 10−6 1.0 × 1010 210 ≈ 1.024 × 103 10.24 × 10−6 Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 49 / 55
  50. 50. Машинная арифметика, стандарт IEEE-754 Стандарт IEEE-754Погрешность чисел двойной точностиx∗ a (x ∗ ) ∆ (x ∗ ), %2−1074 ≈ 4.940656 × 10−324 2−1075 ≈ 2.470328 × 10−324 502−1073 ≈ 9.881313 × 10−324 2−1075 ≈ 2.470328 × 10−324 251.0 2−52 ≈ 2.220446 × 10−16 11.9209 × 10−6100 2−17 ≈ 7.6294 × 10−6 2.220446 × 10−141.0 × 1010 2280 ≈ 1.942669 × 1084 1.699641 × 10−14 Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 50 / 55
  51. 51. Машинная арифметика, стандарт IEEE-754 ОшибкиСложение и вычитание чисел Значащих цифр в мантиссе двоичного числа в формате Single не более 24. Если числа отличаются более чем в 223 (для single) и 252 (для double), то операции сложения и вычитания между этими числами невозможны.300 = 1.00101100000000000000000 ×280.00001 = 0.00000000000000000000000010100111110001011011 ×28300 + 0.00001 = 300 Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 51 / 55
  52. 52. ЗаданияЗадание 1.Вычислите приближенное значение функции и оцените абсолютнуюпогрешность результата. Запишите результат в форме f ∗ ± A(f ∗ ). № f (x, y ) x∗ A(x ∗ ) y∗ A(y ∗ ) 1 x + 2xy 0.13 0.002 1.121 0.001 2 2x + xy 0.13 0.002 1.121 0.001 x+2y 3 x 0.13 0.002 1.121 0.001 x+2y 4 x 0.13 0.002 1.121 0.001 2y −x 5 y 0.13 0.002 1.121 0.001 2x+y 6 2x 0.13 0.002 1.121 0.001 7 x + 2xy 0.203 0.002 1.506 0.001 8 2x + xy 0.205 0.002 1.505 0.001 x+2y 9 x 0.051 0.002 0.911 0.001 x+2y 10 x 0.063 0.002 1.121 0.001 Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 52 / 55
  53. 53. Задания № f (x, y ) x∗ A(x ∗ ) y∗ A(y ∗ ) x+2y 11 y 0.325 0.002 1.221 0.001 2x+y 12 2x 2 0.235 0.002 2.121 0.001 x+y 13 x 0.051 0.002 0.911 0.001 1+y 2 14 x 0.063 0.002 1.121 0.001 x 2 +y 15 y 0.325 0.002 1.221 0.001 x+y 16 1+x 0.235 0.002 2.121 0.001 2 17 2x + y 0.203 0.002 1.506 0.001 18 2x + y 2 0.205 0.002 1.505 0.001 19 2x 2 + y 0.203 0.003 1.506 0.002 20 2x + y 2 0.205 0.004 1.505 0.002Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 53 / 55
  54. 54. ЗаданияЗадание 2.Запишите десятичное число n10 в формате single2 в соответствии справилами стандарта IEEE-754. № n10 № n10 1 12.15 11 0.251 2 129.1 12 1.253 3 135.6 13 9.445 4 158.6 14 125.3 5 0.153 15 6.525 6 253.2 16 3.214 7 31.45 17 2.125 8 21.21 18 1.562 9 15.12 19 1.521 10 12.81 20 0.093 Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 54 / 55
  55. 55. ЗаданияИсточники 1 Волков Е. А. Численные методы: Учебное пособие для вузов. 2-е изд., испр. М.: Наука. 1987. 2 http://www.softelectro.ru/ieee754.html Кафедра ТМ (СГАУ) Методы вычислений 16 февраля 2013 г. 55 / 55

×