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

1 view (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)

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.

Categories

Find more on Function Creation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!