The following is the code for evaluating a definite integral of a given function by a Numerical Method called Simpson’s 1/3rd Rule.
DOWNLOAD:simpson
funcprot(0); function ans=simpson(a,b,n,g) h=(b-a)/n; sum=0; for i=1:n-1 x=a+i*h; if modulo(i,2)==0 sum=sum+2*g(x); else sum=sum+4*g(x); end end ans=(h/3)*(g(a)+g(b)+sum); endfunction
You can either copy the code above and save it as a .sci file or download the file simpson . Once you run the code, the function ‘simpson(a,b,n,f)’ can be called by other programs or even in the console.
Function syntax:
simpson(a,b,n,f)
where,
a=initial limit(real no.)
b=final limit(real no.)
n=no. of sub-intervals(the higher the value of ‘n’ the better is the result.
NOTE: n should be an even no.
Example:
The following code snippet evaluates the integral of x^4 from 0 to 2.
deff('a=f(x)','a=x^4'); integral=simpson(0,2,30,f);
Here is a comparison of the result with the inbuilt function ‘intg’.
[wpedon id="7041" align="center"]