left riemann sum integration
22 ビュー (過去 30 日間)
古いコメントを表示
so I have to make a numerical integrator using a few methods, just made a left Riemann sum calculator but I seem to be missing something
my code seems to be more accurate when I multiply my y array by dx in the for loop, but should I be multiplying dx at each iteration or at the very end?
also is it just my code or does Riemann sum require a lot of iteration to be accurate?
% code
clear;
clc;
x1 = 1; x2 = 3;
f=@(x) 2*x.^5 - 3*x.^2 - 5;
c=1;
n=500;
dx=(x2-x1)/n;
for i=0:dx:n-1
y(c)=dx*f(1+i*dx);
c=c+1;
s=sum(y)*dx
z=integral(f,x1,x2)
end
0 件のコメント
採用された回答
Torsten
2016 年 12 月 5 日
編集済み: Torsten
2016 年 12 月 6 日
Try
x1 = 1;
x2 = 3;
f=@(x) 2*x.^5 - 3*x.^2 - 5;
n=500;
dx=(x2-x1)/n;
summe=0.0;
for i=1:500
summe=summe+f(x1+dx*(i-1));
end
summe=summe*dx;
z=integral(f,x1,x2);
Best wishes
Torsten.
2 件のコメント
Sam Zavala
2021 年 4 月 5 日
I hope this is somewhat of a helpful answer but what we have been doing is build an array using a for loop and our time as telling us how many times to repeat it. Then you simply plot the array :)
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!