Валентин Арьков - Организация параллельных потоков. Часть 1

Тут можно читать онлайн Валентин Арьков - Организация параллельных потоков. Часть 1 - бесплатно ознакомительный отрывок. Жанр: sci_tech, год 2020. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Организация параллельных потоков. Часть 1
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    2020
  • ISBN:
    нет данных
  • Рейтинг:
    4/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Валентин Арьков - Организация параллельных потоков. Часть 1 краткое содержание

Организация параллельных потоков. Часть 1 - описание и краткое содержание, автор Валентин Арьков, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
В данной лабораторной работе рассматриваются основы организации параллельных потоков с помощью стандартных вызовов операционной системы.
В работе используется бесплатная интегрированная среда разработки. Приводятся примеры программ на языке Си.

Организация параллельных потоков. Часть 1 - читать онлайн бесплатно ознакомительный отрывок

Организация параллельных потоков. Часть 1 - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Валентин Арьков
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Умножаем основание на высоту и получаем грубую оценку площади:

S = 40 * 200 = 8000

Это очень приближённая оценка. Можно сказать, что это только ПОРЯДОК величины. Слово «порядок» в данном случае означает «степень десятки». В какую степень нужно возвести число 10, чтобы получить наше значение. То есть речь идёт о числах порядка десяти тысяч. Не о тысяче и не о ста тысячах. Это будет число «около десяти тысяч».

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

Задание. Оцените среднее значение подынтегральной функции по графику f (x).

Задание. Сделайте грубую, предварительную оценку значения своего интеграла.

6.4. Аналитическое решение

Вначале определим точное теоретическое значение интеграла. Для этого найдем решение аналитически (рис. 6.4).

Рис. 6.4. Аналитическое решение

Здесь нам потребуется найти первообразную F (x) для подынтегрального выражения f (x). Это функция F (x), производная которой даёт нам f (x), см. рис. 6.5.

Рис. 6.5. Нахождение первообразной

Далее находим разность значений первообразной на границах B и A:

S = F (20) — F (-20) = 9066,67

Расчёты можно сделать в пакете Excel (рис. 6.6).

Полученное значение очень близко к нашей грубой оценке 8000. Оба числа близки к 10000. Это и есть ПОРЯДОК величины. Разница не в десять раз. И даже не в два раза, а гораздо меньше. Похоже, что грубых оценок в наших аналитических выкладках не было.

Рис. 6.6. Аналитическое решение

Далее наши приближённые численные решения будем сравнивать с этим теоретическим значением.

Задание. Определите значение своего интеграла аналитически и сравните его с предварительной грубой оценкой.

6.5. Метод прямоугольников

Численные методы используют приближённую замену сложной функции более простыми. В методе прямоугольников мы заменяем подынтегральную функцию на несколько смежных прямоугольников.

Диапазон значений аргумента (пределы интегрирования) мы разбиваем на некоторое количество отрезков одинаковой длины. Высота каждого прямоугольника равна значению подынтегральной функции в середине отрезка (рис. 6.7).

Рис. 6.7. Метод прямоугольников

Значение определённого интеграла равно площади под графиком функции. Эту площадь мы приближённо оцениваем как сумму площадей прямоугольников.

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

Для данного эксперимента мы используем вещественный тип float.

Задание. Составьте последовательную программу численного интегрирования, указав 100 отрезков. Используйте тип float. Сравните полученный результат с теоретическим.

Задание. Подберите количество отрезков так, чтобы время выполнения программы составило от 10 до 20 секунд.

6.6. Исследование погрешностей

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

В нашем примере погрешность зависит, прежде всего, от количества прямоугольников. Нам предстоит исследовать эту зависимость и построить графики.

Задание. Запустите программу численного интегрирования с разным количеством прямоугольников. Организуйте ввод количества прямоугольников через параметры командной строки. При вычислениях используйте тип float. Используйте пакетный файл и сделайте по 10 запусков программы для каждого количества прямоугольников. Зафиксируйте в отчёте среднее время вычислений и уровень погрешности в процентах от теоретического значения.

Второй фактор, влияющий на уровень погрешности, — это тип переменной. В стандартном языке Си есть два типа переменных с плавающей точкой: floatи double. Их ещё называют вещественными числами — в отличие от целых. Они обеспечивают разное количество значащих десятичных разрядов.

Задание. Выясните, какую точность представления обеспечивают два вещественных типа.

Задание. Проведите эксперименты по численному интегрированию с типом double. Сравните уровень погрешности и время вычислений.

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

Задание. Выясните пределы возможных значений для обоих вещественных типов в положительной и отрицательной области значений.

Задание. Составьте тестовые программы и выясните, что происходит при выходе за пределы допустимых значений для обоих вещественных типов.

С увеличением числа прямоугольников погрешность вычислений должна уменьшаться. Однако, при слишком большом числе прямоугольников должно начаться снижение точности и рост погрешности (рис. 6.8). При сложении большого числа с маленьким возникает проблема потери точности. Маленькое число может просто выйти за границы разрядной сетки — это так называемое «обратное переполнение» или «потеря точности / значимости». В нашем случае накопленная сумма значений может оказаться гораздо больше, чем новое прибавляемое значение.

Рис. 6.8. Изменение погрешности вычислений

Можно грубо оценить число прямоугольников, при котором сумма половины значений будет значительно больше, чем одно отдельное, очередное значение f (x). Другими словами, одно значение f (x) должно выйти за пределы разрядной сетки — по сравнению с накопленной суммой.

Более точно можно найти среднее как отношение значения интеграла к интервалу «иксов». Это равносильно замене графика f (x) на прямоугольник с таким же основанием и высотой, соответствующей среднему значению. Площади этих фигур будут равны (рис. 6.9).

Получаем среднее значение аналитически:

f ср= S / (B — A) = 9066,67 / 40 = 227.

Напомним, что наша грубая оценка среднего дала значение 200. Цифры получились достаточно близкими.

Рис. 6.9. Эквивалентный по площади прямоугольник

Задание. Найдите среднее значение f (x) аналитически и сравните с грубой предварительной оценкой.

Представим себе ситуацию, когда сумма S половины значений функции f (x) стала гораздо больше одного отдельного значения f (x), которое к этой сумме надо прибавить:

S>> f (x).

Ситуация потери точности показана на рис. 6.10. В этом примере от всех разрядов f (x) в общую сумму попадает только самый старший, а остальные теряются.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Валентин Арьков читать все книги автора по порядку

Валентин Арьков - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Организация параллельных потоков. Часть 1 отзывы


Отзывы читателей о книге Организация параллельных потоков. Часть 1, автор: Валентин Арьков. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x