for use in binary distribution where I need only basics and fast startup/low memory footprint, I try to isolate the minimal ndarray type and what I need..

with "import numpy" or "import numpy.core.multiarray" almost the whole numpy package tree is imported, _dotblas etc. cxFreeze produces some 10MB numpy baggage (4MB zipped)

yet when copying and using the multiarray DLL only, I can create arrays, but he most things fail:

import multiarray x=multiarray.array([5,6]) x+x

Traceback (most recent call last): File "<interactive input>", line 1, in <module> TypeError: unsupported operand type(s) for +: 'numpy.ndarray' and 'numpy.ndarray'

while this works:

b=numpy.core.multiarray.array([3,9]) b+b

array([ 6, 18])

I added some things from core.__init__.py like this:

import umath import _internal # for freeze programs import numerictypes as nt multiarray.set_typeDict(nt.sctypeDict) ..

but the problem of failed type self-recognition remains. What is this? What to do?