Уровень алгоритма

Участник:Бобцов Борис/Вычисление определенного интеграла с использованием адаптивно сгущающейся сетки: различия между версиями

Материал из Алговики
Перейти к навигации Перейти к поиску
Нет описания правки
Строка 12: Строка 12:
=== Общее описание алгоритма ===
=== Общее описание алгоритма ===
----
----
Пусть требуется вычислить определённый интеграл <math>I = \int_a^b{f(x)dx}</math> от непрерывной функции <math>f(x)</math>. Если может быть найдена первообразная <math>F(x)</math> подынтегральной функции, то по формуле Ньютона-Лейбница:
<math>\int_a^b{f(x)dx} = F(b) - F(a). </math>


=== Математическое описание алгоритма ===
=== Математическое описание алгоритма ===

Версия от 11:06, 15 октября 2016


Вычисление определенного интеграла с использованием адаптивно сгущающейся сетки
Последовательный алгоритм
Последовательная сложность [math]\displaystyle{ - }[/math]
Объём входных данных [math]\displaystyle{ - }[/math]
Объём выходных данных [math]\displaystyle{ - }[/math]
Параллельный алгоритм
Высота ярусно-параллельной формы [math]\displaystyle{ - }[/math]
Ширина ярусно-параллельной формы [math]\displaystyle{ - }[/math]


Свойства и структура алгоритма

Общее описание алгоритма


Пусть требуется вычислить определённый интеграл [math]\displaystyle{ I = \int_a^b{f(x)dx} }[/math] от непрерывной функции [math]\displaystyle{ f(x) }[/math]. Если может быть найдена первообразная [math]\displaystyle{ F(x) }[/math] подынтегральной функции, то по формуле Ньютона-Лейбница: [math]\displaystyle{ \int_a^b{f(x)dx} = F(b) - F(a). }[/math]

Математическое описание алгоритма


Будем рассматривать проблему вычисления значения определенного интеграла с некоторой заданной точностью [math]\displaystyle{ \epsilon }[/math]:

[math]\displaystyle{ I(a,b) = \int_a^b{f(x)dx} }[/math]

Пусть на отрезке [math]\displaystyle{ [a,b] }[/math] задана равномерная сетка, содержащая [math]\displaystyle{ n+1 }[/math] узел:

[math]\displaystyle{ x_{i} = a + \frac{(b - a)} {n} i, i = 0,...,n }[/math]

Тогда, согласно методу трапеций, можно численно найти определенный интеграл от функции [math]\displaystyle{ f (x) }[/math] на отрезке [math]\displaystyle{ [a,b] }[/math]:

[math]\displaystyle{ \int_a^b{f(x)dx} = \frac{b - a}{n} \left( \frac{f(x_0)}{2} + \sum^{n-1}_{i=1} {f_i} + \frac{f(x_n)}{2} \right) }[/math]

Будем полагать значение [math]\displaystyle{ I }[/math] найденным с точностью [math]\displaystyle{ \epsilon }[/math], если выполнено условие:

[math]\displaystyle{ |I_{n_1} - I_{n_2}| \leq \epsilon |I_{n_2}|, n_1 \gt n_2, }[/math] где [math]\displaystyle{ n_1 }[/math] и [math]\displaystyle{ n_2 }[/math] - количество узлов, образующих две разные сетки.

Вычислительное ядро алгоритма

Макроструктура алгоритма

Схема реализации последовательного алгоритма

Последовательная сложность алгоритма

Информационный граф

Ресурс параллелизма алгоритма

Входные и выходные данные алгоритма

Свойства алгоритма

Программная реализация алгоритма

2.7 Существующие реализации алгоритма