On Sun, Jul 25, 2010 at 2:32 AM, David Goldsmith
<d.l.goldsmith@gmail.com> wrote:
Why am I being told my coefficient array is not 1-d when both coefficient arrays--old and new--are reported to have shape (2L,):
C:\Users\Fermat>python
Python 2.6.5 (r265:79096, Mar 19 2010, 18:02:59) [MSC v.1500 64 bit (AMD64)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> np.version.version
'1.4.1'
>>> from numpy.polynomial import polyutils as pu
>>> nx = 1
>>> ny = 1
>>> def whydoesntthiswork(x, y):
... old = np.array((0,2)); print old.shape
... new = np.array((-1,1)); print new.shape
... X = pu.mapdomain(x, old, new)
... return X
...
>>> result = np.fromfunction(whydoesntthiswork, (nx, ny))
(2L,)
(2L,)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python26\lib\site-packages\numpy\core\numeric.py", line 1539, in from
function
return function(*args,**kwargs)
File "<stdin>", line 4, in whydoesntthiswork
File "C:\Python26\lib\site-packages\numpy\polynomial\polyutils.py", line 280,
in mapdomain
[x] = as_series([x], trim=False)
File "C:\Python26\lib\site-packages\numpy\polynomial\polyutils.py", line 139,
in as_series
raise ValueError("Coefficient array is not 1-d")
ValueError: Coefficient array is not 1-d
Thanks in advance,
Because fromfunction passes 2d arrays to whydoesntthiswork and mapdomain doesn't accept 2d arrays as the first argument. That looks like an unnecessary restriction, open a ticket and I'll fix it up.
Chuck