
sss / Задание для МП_11,17,П_12 / учет успеваемости_к_20_02_12 / МП-11_МА / 02_Zakharik_pr_01
.docx2 семестр
1 практикум. Захарик А.П.
Упражнение 3
Создать
М-функции, вычисляющие значения
интегральных сумм на отрезке
с
равномерным разбиением на
отрезков для точек, взятых на:
а)
левом
M-file:
function [summa] = integrsum (f,a,b,n)
%Интегральная сумма
%f - исследуемая функция
%a,b соответственно верхний и нижний пределы
%n - разбиение
summa = 0;
deltaX=(b-a)/n;
%deltaX - длин отрезка разбиения
for i=1:n
summa = summa+(feval(f,(b-deltaX*i)))*deltaX;
end
end
Заданем функцию:
f=@(x) x+1
Использование М-файла для подсчета интегральных сумм при разбиении 5,10,100,1000:
n=5:
s1=integrsum(f,0,5,5)
s1 = 15
n=10:
s2=integrsum(f,0,5,10)
s2 = 16.2500
n=100:
s3=integrsum(f,0,5,100)
s3 = 17.3750
n=1000:
s4=integrsum(f,0,5,1000)
s4 = 17.4875
б)правом
M-file:
function [summa] = integrsum (f,a,b,n)
%Интегральная сумма
%f - исследуемая функция
%a,b соответственно верхний и нижний пределы
%n - разбиение
summa = 0;
deltaX=(b-a)/n;
%deltaX - длин отрезка разбиения
for i=1:n
summa = summa+(feval(f,(a+deltaX*i)))*deltaX;
end
end
Комментарий к полученным ответам:
Можно
заметить, что чем больше разбиение, тем
точнее мы получаем ответ, а именно,
площадь фигуры ограниченной функцией
и
прямыми x=a
x=b
y=0.
Посчитав вручную интеграл от данной функции получил ответ =17,5.
Упражнение 4
Создать
М-функции, вычисляющие значения
верхних и нижних сумм Дарбу на отрезке
с равномерным разбиением на
отрезков. Проверить работу М-функции
для функции
на отрезке
при разбиении его на два равных элемента.
function NsummDarbu=NsummDarbu(fname,a,b,n)
%NsummDarbu - нижняя сумма Дарбу
delta=(b-a)/n;
Sum=0;
x1=a;
for k=1:1:n;
x2=x1+delta;
m=fminbnd(fname,x1,x2);
Sum=Sum+m*delta;
x1=x2;
end
NsummDarbu=Sum;
end
Работа с М-файлом:
>> f=@(x) x;
>> NsummDarbu(f,1,2,2)
ans = 1.2501