3/8 Simpson's Rule

5 ビュー (過去 30 日間)
Hasan Dikka
Hasan Dikka 2020 年 9 月 3 日
回答済み: Alan Stevens 2020 年 9 月 3 日
I created my code for 3/8 Simpson's Rule also ı want to add relative error. How can I add relative error in code.
function hasan2 (n)
a = 0;
b = 1;
h = (b-a)/n;
sum = 0;
for i = 1:n-1
a = (i-1)*h;
b = i*h;
sum = sum + 3/8*(f(a) + 3*f((2*a+b)/3) + 3*f((a+2*b)/3) + f(b));
end
sum
end
function fx=f(x)
fx=exp(2*x)*sin(5*x);
end

回答 (1 件)

Alan Stevens
Alan Stevens 2020 年 9 月 3 日
The result of integrating of your function between 0 and 1 is:
I = (exp(1)^2*(2*sin(5)-5*cos(5)) + 5)/29;
so relative error is
relerror = abs(sum/I - 1);
As an aside, "sum" is a built-in Matlab function, so it's best not to use it as a variable name.

カテゴリ

Help Center および File ExchangeNumerical Integration and Differential Equations についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by