Re: [Matplotlib-users] IndexError: index out of bounds

2012-07-31 Thread surfcast23

Hi Ben,

  I was working on some other things and have finally gotten a chance to get
back to this. I changed the for loops to

for i in range(nplots):
for n in range(plotgap):
t = t+dt
w = (D*v)
vnew = vold-2*dt*c*w
vold = v
v = vnew
data[i,:] = v[0,:]
tdata = vstack([tdata, t])

But I still get the same error as in my original post.

Khary


surfcast23 wrote:
 
 I will try initializing starting at 0
 
 Benjamin Root-2 wrote:
 
 On Sun, Jul 1, 2012 at 12:50 PM, surfcast23 surfcas...@gmail.com wrote:
 

 Hi,
   I am translating a Matlab code to python and get the following error
 when
 the codes reaches the plotting section

 Warning (from warnings module):
   File C:\Documents and Settings\My Documents\PHYSICS\Wave-eqn.py,
 line
 40
 w = (D*v)
 RuntimeWarning: overflow encountered in multiply
 Traceback (most recent call last):
   File C:\Documents and Settings\My Documents\PHYSICS\Wave-eqn\.py,
 line
 50, in module
 ax.plot_wireframe(x,tdata,data, rstride=10, cstride=10)
   File C:\Python32\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py,
 line
 906, in plot_wireframe
 tylines = [tY[i] for i in cii]
   File C:\Python32\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py,
 line
 906, in listcomp
 tylines = [tY[i] for i in cii]
 IndexError: index out of bounds

 My code

 import numpy as np
 from numpy import *
 from math import  pi
 from scipy.linalg import toeplitz
 from scipy.special import cotdg
 from mpl_toolkits.mplot3d import axes3d
 import matplotlib.pyplot as plt



 N = 512
 h = 2*np.pi/N
 x = h*(np.arange(N) + 1)
 t = 0
 dt = h / 4
 a = .1
 tmax = 15;
 tplot = .15;
 nplots = int(round((tmax/tplot)));
 plotgap = int(around(tplot/dt));
 c = a + np.sin(x - 1)**2
 v = np.exp(-100 * (x - 1)**2)
 vold = np.exp(-100 * (x - a*dt - 1)**2)

 #i = np.arange(1, N)
 #column = np.hstack([0, .5 * (-1**i) * cotdg(i * h/2)])
 #D = toeplitz(column, -column)

 column = ((0.5*(-1)**arange(1,N+1))*cotdg(arange(1,N+1))*(h/2));
 D = toeplitz(column,-column);print(D.shape);

 k = np.zeros(((nplots,N))); print(v.shape);print(k.shape);
 data = np.concatenate((v.reshape((512,1)).transpose(), k))#data =
 np.concatenate((v, k),axis = 1);
 #data = np.vstack([v,k]);
 tdata = t;

 for i in range(1,nplots+1):
 for n in range(1,plotgap+1):
 t = t+dt
 w = (D*v)
 vnew = vold-2*dt*c*w
 vold = v
 v = vnew
 data[i,:] = v[0,:]
 tdata = vstack([tdata, t])

 fig = plt.figure()
 ax = fig.add_subplot(111, projection='3d')
 #X, Y, Z = axes3d.get_test_data(0.05)
 ax.plot_wireframe(x,tdata,data, rstride=10, cstride=10)

 plt.show()

 I looked at the error line and it seems as if the y axes is where the
 problem is, but I am not seeing why and would appreciate any help. Thank
 you!

 
 numpy arrays are indexed starting at 0, not 1.  So when you populate your
 data array with data[i,:] = v[0,:], and i only goes from 1 to
 nplots,
 data[0,:] is left completely uninitialized (unless it is being done by
 some
 of your pre-for-loop code, which is confusing to understand.)
 
 What I can tell you is that the error isn't in plot_wireframe() as much
 as
 the error exist with the inputs to plot_wireframe().  Perhaps the shapes
 aren't right or something.  I will try and look at your code closer
 tomorrow and see if I can figure it out, but I suggest double-checking
 those arrays.
 
 Cheers!
 Ben Root
 
 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and 
 threat landscape has changed and how IT managers can respond. Discussions 
 will include endpoint security, mobile security and the latest in malware 
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users
 
 
 
 

-- 
View this message in context: 
http://old.nabble.com/IndexError%3A-index-out-of-bounds-tp34098663p34237855.html
Sent from the matplotlib - users mailing list archive at Nabble.com.


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] IndexError: index out of bounds

2012-07-03 Thread surfcast23

I will try initializing starting at 0

Benjamin Root-2 wrote:
 
 On Sun, Jul 1, 2012 at 12:50 PM, surfcast23 surfcas...@gmail.com wrote:
 

 Hi,
   I am translating a Matlab code to python and get the following error
 when
 the codes reaches the plotting section

 Warning (from warnings module):
   File C:\Documents and Settings\My Documents\PHYSICS\Wave-eqn.py, line
 40
 w = (D*v)
 RuntimeWarning: overflow encountered in multiply
 Traceback (most recent call last):
   File C:\Documents and Settings\My Documents\PHYSICS\Wave-eqn\.py,
 line
 50, in module
 ax.plot_wireframe(x,tdata,data, rstride=10, cstride=10)
   File C:\Python32\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py,
 line
 906, in plot_wireframe
 tylines = [tY[i] for i in cii]
   File C:\Python32\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py,
 line
 906, in listcomp
 tylines = [tY[i] for i in cii]
 IndexError: index out of bounds

 My code

 import numpy as np
 from numpy import *
 from math import  pi
 from scipy.linalg import toeplitz
 from scipy.special import cotdg
 from mpl_toolkits.mplot3d import axes3d
 import matplotlib.pyplot as plt



 N = 512
 h = 2*np.pi/N
 x = h*(np.arange(N) + 1)
 t = 0
 dt = h / 4
 a = .1
 tmax = 15;
 tplot = .15;
 nplots = int(round((tmax/tplot)));
 plotgap = int(around(tplot/dt));
 c = a + np.sin(x - 1)**2
 v = np.exp(-100 * (x - 1)**2)
 vold = np.exp(-100 * (x - a*dt - 1)**2)

 #i = np.arange(1, N)
 #column = np.hstack([0, .5 * (-1**i) * cotdg(i * h/2)])
 #D = toeplitz(column, -column)

 column = ((0.5*(-1)**arange(1,N+1))*cotdg(arange(1,N+1))*(h/2));
 D = toeplitz(column,-column);print(D.shape);

 k = np.zeros(((nplots,N))); print(v.shape);print(k.shape);
 data = np.concatenate((v.reshape((512,1)).transpose(), k))#data =
 np.concatenate((v, k),axis = 1);
 #data = np.vstack([v,k]);
 tdata = t;

 for i in range(1,nplots+1):
 for n in range(1,plotgap+1):
 t = t+dt
 w = (D*v)
 vnew = vold-2*dt*c*w
 vold = v
 v = vnew
 data[i,:] = v[0,:]
 tdata = vstack([tdata, t])

 fig = plt.figure()
 ax = fig.add_subplot(111, projection='3d')
 #X, Y, Z = axes3d.get_test_data(0.05)
 ax.plot_wireframe(x,tdata,data, rstride=10, cstride=10)

 plt.show()

 I looked at the error line and it seems as if the y axes is where the
 problem is, but I am not seeing why and would appreciate any help. Thank
 you!

 
 numpy arrays are indexed starting at 0, not 1.  So when you populate your
 data array with data[i,:] = v[0,:], and i only goes from 1 to
 nplots,
 data[0,:] is left completely uninitialized (unless it is being done by
 some
 of your pre-for-loop code, which is confusing to understand.)
 
 What I can tell you is that the error isn't in plot_wireframe() as much as
 the error exist with the inputs to plot_wireframe().  Perhaps the shapes
 aren't right or something.  I will try and look at your code closer
 tomorrow and see if I can figure it out, but I suggest double-checking
 those arrays.
 
 Cheers!
 Ben Root
 
 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and 
 threat landscape has changed and how IT managers can respond. Discussions 
 will include endpoint security, mobile security and the latest in malware 
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users
 
 

-- 
View this message in context: 
http://old.nabble.com/IndexError%3A-index-out-of-bounds-tp34098663p34109116.html
Sent from the matplotlib - users mailing list archive at Nabble.com.


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] IndexError: index out of bounds

2012-07-02 Thread Benjamin Root
On Sun, Jul 1, 2012 at 12:50 PM, surfcast23 surfcas...@gmail.com wrote:


 Hi,
   I am translating a Matlab code to python and get the following error when
 the codes reaches the plotting section

 Warning (from warnings module):
   File C:\Documents and Settings\My Documents\PHYSICS\Wave-eqn.py, line
 40
 w = (D*v)
 RuntimeWarning: overflow encountered in multiply
 Traceback (most recent call last):
   File C:\Documents and Settings\My Documents\PHYSICS\Wave-eqn\.py, line
 50, in module
 ax.plot_wireframe(x,tdata,data, rstride=10, cstride=10)
   File C:\Python32\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py, line
 906, in plot_wireframe
 tylines = [tY[i] for i in cii]
   File C:\Python32\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py, line
 906, in listcomp
 tylines = [tY[i] for i in cii]
 IndexError: index out of bounds

 My code

 import numpy as np
 from numpy import *
 from math import  pi
 from scipy.linalg import toeplitz
 from scipy.special import cotdg
 from mpl_toolkits.mplot3d import axes3d
 import matplotlib.pyplot as plt



 N = 512
 h = 2*np.pi/N
 x = h*(np.arange(N) + 1)
 t = 0
 dt = h / 4
 a = .1
 tmax = 15;
 tplot = .15;
 nplots = int(round((tmax/tplot)));
 plotgap = int(around(tplot/dt));
 c = a + np.sin(x - 1)**2
 v = np.exp(-100 * (x - 1)**2)
 vold = np.exp(-100 * (x - a*dt - 1)**2)

 #i = np.arange(1, N)
 #column = np.hstack([0, .5 * (-1**i) * cotdg(i * h/2)])
 #D = toeplitz(column, -column)

 column = ((0.5*(-1)**arange(1,N+1))*cotdg(arange(1,N+1))*(h/2));
 D = toeplitz(column,-column);print(D.shape);

 k = np.zeros(((nplots,N))); print(v.shape);print(k.shape);
 data = np.concatenate((v.reshape((512,1)).transpose(), k))#data =
 np.concatenate((v, k),axis = 1);
 #data = np.vstack([v,k]);
 tdata = t;

 for i in range(1,nplots+1):
 for n in range(1,plotgap+1):
 t = t+dt
 w = (D*v)
 vnew = vold-2*dt*c*w
 vold = v
 v = vnew
 data[i,:] = v[0,:]
 tdata = vstack([tdata, t])

 fig = plt.figure()
 ax = fig.add_subplot(111, projection='3d')
 #X, Y, Z = axes3d.get_test_data(0.05)
 ax.plot_wireframe(x,tdata,data, rstride=10, cstride=10)

 plt.show()

 I looked at the error line and it seems as if the y axes is where the
 problem is, but I am not seeing why and would appreciate any help. Thank
 you!


numpy arrays are indexed starting at 0, not 1.  So when you populate your
data array with data[i,:] = v[0,:], and i only goes from 1 to nplots,
data[0,:] is left completely uninitialized (unless it is being done by some
of your pre-for-loop code, which is confusing to understand.)

What I can tell you is that the error isn't in plot_wireframe() as much as
the error exist with the inputs to plot_wireframe().  Perhaps the shapes
aren't right or something.  I will try and look at your code closer
tomorrow and see if I can figure it out, but I suggest double-checking
those arrays.

Cheers!
Ben Root
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] IndexError: index out of bounds

2012-07-01 Thread surfcast23

Hi,
  I am translating a Matlab code to python and get the following error when
the codes reaches the plotting section 

Warning (from warnings module):
  File C:\Documents and Settings\My Documents\PHYSICS\Wave-eqn.py, line 40
w = (D*v)
RuntimeWarning: overflow encountered in multiply
Traceback (most recent call last):
  File C:\Documents and Settings\My Documents\PHYSICS\Wave-eqn\.py, line
50, in module
ax.plot_wireframe(x,tdata,data, rstride=10, cstride=10)
  File C:\Python32\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py, line
906, in plot_wireframe
tylines = [tY[i] for i in cii]
  File C:\Python32\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py, line
906, in listcomp
tylines = [tY[i] for i in cii]
IndexError: index out of bounds

My code 

import numpy as np
from numpy import *
from math import  pi
from scipy.linalg import toeplitz
from scipy.special import cotdg
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt



N = 512
h = 2*np.pi/N
x = h*(np.arange(N) + 1)
t = 0
dt = h / 4
a = .1
tmax = 15;   
tplot = .15;
nplots = int(round((tmax/tplot)));
plotgap = int(around(tplot/dt));
c = a + np.sin(x - 1)**2
v = np.exp(-100 * (x - 1)**2)
vold = np.exp(-100 * (x - a*dt - 1)**2)

#i = np.arange(1, N)
#column = np.hstack([0, .5 * (-1**i) * cotdg(i * h/2)])
#D = toeplitz(column, -column) 

column = ((0.5*(-1)**arange(1,N+1))*cotdg(arange(1,N+1))*(h/2));
D = toeplitz(column,-column);print(D.shape);
 
k = np.zeros(((nplots,N))); print(v.shape);print(k.shape);
data = np.concatenate((v.reshape((512,1)).transpose(), k))#data =
np.concatenate((v, k),axis = 1);
#data = np.vstack([v,k]);
tdata = t;

for i in range(1,nplots+1):
for n in range(1,plotgap+1):
t = t+dt
w = (D*v)
vnew = vold-2*dt*c*w
vold = v
v = vnew
data[i,:] = v[0,:]
tdata = vstack([tdata, t])
 
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
#X, Y, Z = axes3d.get_test_data(0.05)
ax.plot_wireframe(x,tdata,data, rstride=10, cstride=10)

plt.show()

I looked at the error line and it seems as if the y axes is where the
problem is, but I am not seeing why and would appreciate any help. Thank
you!
-- 
View this message in context: 
http://old.nabble.com/IndexError%3A-index-out-of-bounds-tp34098663p34098663.html
Sent from the matplotlib - users mailing list archive at Nabble.com.


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users