x=a+3h.
Тогда площади прямоугольников:
S1=Y1 · h; S2=Y2 · h; S3=Y3 · h; S4=Y4 · h.
Резюме:
Таким образом, задача численного интегрирования сводится:
-к разбиению площади подынтегральной кривой (функции у=f(x)) на элементарные геометрические фигуры;
-к суммированию площадей этих элементарных фигур.
Замечание:
-в методе прямоугольников элементарной фигурой является прямоугольник;
-в методе трапеций – трапеция;
-в методе парабол (метод Симпсона) – криволинейная трапеция (т. е. трапеция, верхним основанием которой является парабола).
4. Алгоритм вычисления интеграла методом левых прямоугольников. Опишем для частного случая блок-схему при n=4:
11
Замечание:
-алгоритм, реализующий частный случай (n=4) расчета интеграла, от-
носится к классу линейных алгоритмов;
-алгоритм не является «красивым» решением, однако работоспособ-
ным;
-чтобы заставить студента думать над более «красивым» решением, сразу предлагаем решить эту же частную задачу при n=10 000 (вручную). Что вы при этом будете делать?
Возможные реальные пути:
-рассчитывать вручную (что нецелесообразно по времени);
-автоматизировать вычисление (составить соответствующую программу).
5. Эскиз программы на языке QBASIC (реализующий алгоритм, описанный блок-схемой).
Пусть подынтегральная функция: f (x)= x2 +1, a=1; b=2; n=4.
Программа № 1:
REM Метод левых прямоугольников. Иванов И. И. дд.мм.гг. INPUT “a=”;a
INPUT “b=”;b INPUT “n=”;n DEF FNY(x)=x^2+1 h=(b–a)/n Y1=FNY(a)
Y2= FNY(a+h) Y3= FNY(a+2h) Y4= FNY(a+3h) S1=Y1*h S2=Y2*h S3=Y3*h S4=Y4*h
SS=S1+S2+S3+S4 |
|
PRINT “SS=”; SS |
можно было задать |
PRINT “при а=”; а; “b=”; b; “n=”; n |
вывод результата одним |
оператором PRINT |
|
END |
|
12
Замечание:
-алгоритмипрограммарешаютзадачу«влоб», т. е. некрасиво, новерно;
-алгоритм полностью отражает геометрическую сущность метода.
6. Алгоритм и программа вычисления интеграла На основе аналитической формулы Ньютона–Лейбница
b |
|
f (x)dx = P(b) P(a) : |
|
a |
|
для подынтегральной функции
f (x) = x2 +1
найдем первообразную:
P(x) = f (x)dx = x3 + x+C .
3
Замечание: C=0.
Блок-схема алгоритма:
Программа 2:
REM Точное (числовое) значение интеграла. Иванов И. И. дд.мм.гг. REM Интеграл по первообразной
INPUT “a=”;a INPUT “b=”;b
DEF FNP(x)=(x^3)/3+x Тzi =FNP(b)–FNP(a)
13
PRINT “Точное значение интеграла Тzi =”; Тzi
PRINT “При а=”; а; “b=”; b END
7. Анализ рассчитанных значений интеграла на ПК
Анализ значений SS=. . . . ., Tzi=. . . . ., |SS – Tzi|=. . . . . показывает методическую неточность метода левых прямоугольников.
Как повысить точность метода? Ответ понятен из рис. 2: с увеличе-
нием числа «n», площадь ступенчатой фигуры все точнее будет приближаться к истинному значению интеграла.
Математическая формулировка: предел суммы площадей элементарных прямоугольников (Si) при стремлении числа делений интервала интегрирования «n» к бесконечности равен точному значению искомого интеграла:
n |
b |
lim Si = f (x)dx. |
|
i=1 |
a |
Программа № 3:
REM Приближенное значение интеграла при любом «n» REM Иванов И. И. дд.мм.гг.
INPUT “n=”;n DEF FNY(x)=x^2+1 h=(b–a)/n
FOR x=a TO b STEP h Y=FNY(x)
Si=h*Y SS=SS+Si
NEXT x
PRINT “Приближенное значение интеграла SS=”; SS
PRINT “при a=”; a; “b=”; b; “n=”; n
PRINT “Конец вычислений”;“До свидания!”
ЕND
3. ПЛАН ПОДГОТОВКИ И ПРОВЕДЕНИЯ ВЫЧИСЛИТЕЛЬНОГО ЭКСПЕРИМЕНТА
Вычислительный эксперимент проводится для следующего набора вариантов (m=18) при заданном «n»:
n=4; 10; 50; 100; 200; 300; 400; 500; 1 500; 2 000; 2 500; 3 000; 3 500; 4 000; 5 000; 10 000; 20 000; 50 000.
Результаты записываются в табл. 3:
14
Таблица 3
m |
n= |
SS= |
Ер |
1 |
4 |
– |
– |
2 |
10 |
– |
Ep=|SS2–SS1| |
– |
– |
– |
– |
– |
– |
– |
Ep=|SSm–SSm–1| |
– |
– |
– |
– |
17 |
20 000 |
– |
– |
18 |
50 000 |
– |
Ep=|SS18–SS17| |
Замечание: m – номер варианта; Е – заданная точность; Ep – реальная точность
По результатам вычислительного эксперимента делаются выводы. Цель вычислительного эксперимента:
опровергнуть или подтвердить предельное равенство:
n |
b |
lim Si = f (x)dx |
|
i=1 |
a |
выявить реальную вычислительную погрешность метода: Eр=|SS–Tzi| при изменении «n», где Tzi – точное аналитическое значе-
ние интеграла.
8. Любой из численных методов интегрирования можно модифицировать в метод численного интегрирования с автоматическим выбором шага.
Суть модификации:
1.Пусть n=4
2.По методу левых прямоугольников рассчитываем значение интегра-
ла (SS).
3.Запоминаем это значение (SS) интеграла в переменной SSm
[SSm=SS].
4.«Обнуляем» переменную SS [SS=0].
5.Находим модуль разности предыдущего значения интеграла (SS0) и последующего (SS): Ep=| SSm–SS |.
6.Сравниваем Ер реальное с Е заданным:
а) если Ер меньше или равно, чем Е заданное, то печатаем результат и заканчиваем процесс; б) если Ер больше Е заданного, то переходим к п. 7.
15