## Interpreting Matlab function simp

Hello, guys

Hey guys,

Got stuck with function integration using Simpson's rule and need your help.

Please first refer to picture attached for full idea of my question:

The Matlab command related to it is:

for i=1:nr

u1d(i)=4.0*pi*r(i)^2*u(it,i)

end

I1=simp(0.0,r0,nr,u1d)/(4.0/3.0*pi*r0^3)

I1 is

nr=21

r0=1.0;

Does it mean that I1 is integrated 21 times between boundaries 0 and r0?
Attached Thumbnails

 PhysOrg.com science news on PhysOrg.com >> Galaxies fed by funnels of fuel>> The better to see you with: Scientists build record-setting metamaterial flat lens>> Google eyes emerging markets networks
 Recognitions: Gold Member Can you post more information? The code you posted references variables that you never define. Make it so that your code block can be copy/pasted into matlab.
 Yes. Sure I have attached all commands with order from Pic.1 to Pic.3 Attached Thumbnails

Recognitions:
Gold Member

## Interpreting Matlab function simp

simp() is not a matlab function, so the information about the input arguments is not available in the documentation. I suggest looking at the function file for simp() to find this info.
 Recognitions: Gold Member EDIT: I found information about this function in the MATLAB file exchange. Code: function s = simp(f, a, b, h) x1 = a + 2 * h : 2 * h : b - 2 * h; sum1 = sum(feval(f, x1)); x2 = a + h : 2 * h : b - h; sum2 = sum(feval(f, x2)); s = h / 3 * (feval(f, a) + feval(f, b) + ... 2 * sum1 + 4 * sum2); It appears that the inputs are: f=function, a=initial value, b=end value, h=interval size
 I have found it as separate m.file. Here are the commands: function uint=simp(xl,xu,n,u) h=(xu-xl)/(n-1); uint(1)=u(1)-u(n); for i=3:2:n uint(1)=uint(1)+4.0*u(i-1)+2.0*u(i); end uint=h/3.0*uint; But why here different variables are used such as xl and xu? It seems to me that we use r in integration?
 Recognitions: Gold Member At a glance it looks like xl = beginning of interval xu = end of interval n = number of slices u = function So in your case of Code: I1=simp(0.0,r0,nr,u1d) You are integrating u1d from 0 to r0 with nr intervals

 Quote by kreil At a glance it looks like xl = beginning of interval xu = end of interval n = number of slices u = function So in your case of Code: I1=simp(0.0,r0,nr,u1d) You are integrating u1d from 0 to r0 with nr intervals
So you mean simp can be uniformly used for every type of variable assuming their correct order?

 Tags integration, matlab, simpson's rule