Why doessn't my code work for compsite simpson one third rule?

2 views (last 30 days)
this is the function file I created to integrate my function func=1+exp(-x) but my m file does not run?
function I=csimp(func,a,b,n)
h = (b-a)/(n-1);
xi0 = feval(func,a)+feval(func,b);
xi1 = 0; xi2 = 0;
for i = 1:n-1
x = a+i*h;
if mod(i,2) == 0
xi2 = xi2+feval(func,x);
else
xi1 = xi1+feval(func,x);
end
end
I= h*(xi0+2*xi2+4*xi1)/3;
this is my m file
a=0;
b=4;
n=7;
func=1+exp(-x);
I=csimp(func,a,b,n)
  1 Comment
Andrew Newell
Andrew Newell on 15 May 2017
The formatting of your function was a bit weird, so I cleaned it up.

Sign in to comment.

Answers (1)

Andrew Newell
Andrew Newell on 15 May 2017
Edited: Andrew Newell on 15 May 2017
You weren't defining the function properly. Try this:
func=@(x) 1+exp(-x);
See Anonymous functions for how to define and use an inline function.

Community Treasure Hunt

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

Start Hunting!