# Interpreting Matlab function simp

1. Feb 27, 2013

### Ein Krieger

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 Files:

• ###### 2.jpg
File size:
36.9 KB
Views:
58
2. Feb 27, 2013

### kreil

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.

3. Feb 27, 2013

### Ein Krieger

Yes. Sure

I have attached all commands with order from Pic.1 to Pic.3

#### Attached Files:

File size:
6.9 KB
Views:
50
File size:
29.6 KB
Views:
49
• ###### pic 3.jpg
File size:
27.1 KB
Views:
47
4. Feb 27, 2013

### kreil

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.

5. Feb 27, 2013

### kreil

Code (Text):
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

Last edited: Feb 27, 2013
6. Feb 27, 2013

### Ein Krieger

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?

7. Feb 27, 2013

### kreil

At a glance it looks like

xl = beginning of interval
xu = end of interval
n = number of slices
u = function