# How to correctly code the expression with Ei function?

1. May 11, 2013

### Ein Krieger

Hi,

I am trying to incorporate the following equation into Matlab in the red:

The following data is to be used:
t=3000000
nr=nx=161
q=0.02
k=5e-13
mu=0.00035
c=1.5e-8
phi=0.25
rw=0.1
h=4.5

My code is below:
st=size(t)
nr=nx;
for i=1:1:st(1)
rd=r(1:nr)/wb
td=0.0036*k*t(i)/(phi*mu*c*wb^2)
pd=((pi*h*k)/(1.842*q*1.1*mu))*(IP-p(i,1:nr))
Ei_from_mfun=mfun('Ei',1,-rd^2/(4*td))
pd=1/2*Ei_from_mfun
plot(time,pd,'bo')
end

But it gives the following command :
"??? Index exceeds matrix dimensions."

Thanks

2. May 12, 2013

### Solkar

Provide the analytic formulation and tidy your code a little, pls.
E.g. comments and indentation would not hurt; there a "code tags" button in the editor widget you can use to preserve indentation blanks in the code block.

3. May 12, 2013

### Ein Krieger

Here is the equation to be solved :

The red equation belowi the analytical solution I want to get solution for.

The data to be used:
The following data is to be used:
t=3000000
r=nr=nx=161
q=0.02
k=5e-13
mu=0.00035
c=1.5e-8
phi=0.25
rw=0.1
h=4.5

My code is below:

Code (Text):

st=size(t)
nr=nx;
for i=1:1:st(1)
rd=r(1:nr)/wb
td=0.0036*k*t(i)/(phi*mu*c*wb^2)
pd=((pi*h*k)/(1.842*q*1.1*mu))*(IP-p(i,1:nr))
Ei_from_mfun=mfun('Ei',1,-rd^2/(4*td))
pd=1/2*Ei_from_mfun
plot(time,pd,'bo')
end

But it gives the following command :
"??? Index exceeds matrix dimensions."

Last edited: May 12, 2013
4. May 12, 2013

### kreil

t is a constant.

st=size(t) is then equal to [1 1]

the for loop runs through for i=1, but then halts on i=2 because you have t(i), and t(2) doesn't exist.