Посчитать значение интеграла функции на интервале [5;8] используя функцию Чебышева для . Повторить эксперимент, используя эту же формулу последовательно на интервалах [5;6], [6;7], [7;8]. Сравнить результаты и объяснить их
Решение
По формуле Чебышева с n узлами
abf(x)dx=b-ani=1nf(Xi),
Xi=a+b2+b-a2xi.
Где xi берём из таблицы. При n=5:
x1=-x5=0.8324974870;
x2=-x4=0.3745414096;
x3=0.
Составляем программу в Scilab.
Подынтегральная функция:
function y=F(x)
y=sqrt(x)-(cos(x))^2;
endfunction
Интеграл по формуле Чебышева на интервале [a, b] с пятью узлами:
//метод Чебышева n=5
function y=Cheb(a, b)
x(1)=0.8324974870;
x(2)=0.3745414096;
x(3)=0;
x(4)=-x(2);x(5)=-x(1);
//замена переменных
t=((a+b)/2)+(b-a)*x/2;
S=0;
for j=1:n
S=S+F(t(j));
end
y=(b-a)*S/n;
endfunction
Основная программа:
a=5;b=8;
n=5;
I=Cheb(a,b);
printf('По формуле Чебышева с n = %d\n', n);
printf('Значение интеграла на интервале [%d, %d] равно %f\n', a,b,I);
I1=0;
for j=a:(b-1)
I1=I1+Cheb(j,j+1);
end
printf('Значение интеграла с разбиением на единичные интервалы равно %f\n', I1);
Вывод результата:
Наиболее точное значение интеграла:
58x-cos2xdx≈6.067354.
При разбиении отрезка интегрирования на части и расчёта интеграла по частям получаем более точное значение интеграла, поскольку погрешность любых квадратурных формул тем меньше, чем меньше расстояние между узлами интегрирования