Changeset 6780


Ignore:
Timestamp:
Apr 11, 2009, 3:42:49 PM (16 years ago)
Author:
rwilson
Message:

Changes to make legacy Numeric API work in numpy.

Location:
branches/numpy/anuga
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • branches/numpy/anuga/mesh_engine/mesh_engine_c_layer.c

    r6738 r6780  
    6161
    6262#include "util_ext.h"
     63#include "numpy_shim.h"
    6364
    6465
     
    269270  dimensions[0] = out.numberoftriangles;
    270271  dimensions[1] = 3;   
    271   gentrianglelist = (PyArrayObject *) PyArray_SimpleNewFromData(2,
    272                                             (npy_intp*) dimensions,
     272  gentrianglelist = (PyArrayObject *) anuga_FromDimsAndData(2,
     273                                            dimensions,
    273274                                            PyArray_INT,
    274275                                            (char*) out.trianglelist);
     
    277278  dimensions[0] = out.numberofpoints;
    278279  dimensions[1] = 2;   
    279   genpointlist = (PyArrayObject *) PyArray_SimpleNewFromData(2,
    280                                          (npy_intp*) dimensions,
     280  genpointlist = (PyArrayObject *) anuga_FromDimsAndData(2,
     281                                         dimensions,
    281282                                         PyArray_DOUBLE,
    282283                                         (char*) out.pointlist);
     
    285286  /* Add point marker list */
    286287  dimensions[0] = out.numberofpoints;
    287   genpointmarkerlist = (PyArrayObject *) PyArray_SimpleNewFromData(1,
    288                                          (npy_intp*) dimensions,
     288  genpointmarkerlist = (PyArrayObject *) anuga_FromDimsAndData(1,
     289                                         dimensions,
    289290                                         PyArray_INT,
    290291                                        (char*) out.pointmarkerlist);
     
    293294  dimensions[0] = out.numberofpoints;
    294295  dimensions[1] = out.numberofpointattributes;   
    295   genpointattributelist = (PyArrayObject *) PyArray_SimpleNewFromData(2,
    296                                           (npy_intp*) dimensions,
     296  genpointattributelist = (PyArrayObject *) anuga_FromDimsAndData(2,
     297                                          dimensions,
    297298                                          PyArray_DOUBLE,
    298299                                          (char*) out.pointattributelist);
     
    303304  dimensions[0] = out.numberoftriangles;
    304305  dimensions[1] = out.numberoftriangleattributes;   
    305   gentriangleattributelist = (PyArrayObject *) PyArray_SimpleNewFromData(2,
    306                                            (npy_intp*) dimensions,
     306  gentriangleattributelist = (PyArrayObject *) anuga_FromDimsAndData(2,
     307                                           dimensions,
    307308                                           PyArray_DOUBLE,
    308309                                          (char*)out.triangleattributelist);
     
    311312  dimensions[0] = out.numberofsegments;
    312313  dimensions[1] = 2;   
    313   gensegmentlist = (PyArrayObject *) PyArray_SimpleNewFromData(2,
    314                                                     (npy_intp*) dimensions,
     314  gensegmentlist = (PyArrayObject *) anuga_FromDimsAndData(2,
     315                                                    dimensions,
    315316                                                    PyArray_INT,
    316317                                                    (char*)out.segmentlist);
     
    319320  /* Add segment marker list */
    320321  dimensions[0] = out.numberofsegments;
    321   gensegmentmarkerlist = (PyArrayObject *) PyArray_SimpleNewFromData(1,
    322                                             (npy_intp*) dimensions,
     322  gensegmentmarkerlist = (PyArrayObject *) anuga_FromDimsAndData(1,
     323                                            dimensions,
    323324                                            PyArray_INT,
    324325                                           (char*)out.segmentmarkerlist);
     
    328329    dimensions[0] = out.numberoftriangles;
    329330    dimensions[1] = 3;   
    330     genneighborlist = (PyArrayObject *) PyArray_SimpleNewFromData(2,
    331                                                  (npy_intp*) dimensions,
     331    genneighborlist = (PyArrayObject *) anuga_FromDimsAndData(2,
     332                                                 dimensions,
    332333                                                 PyArray_INT,
    333334                                                 (char*)out.neighborlist);
     
    335336    dimensions[0] = 0;
    336337    dimensions[1] = 0;   
    337     genneighborlist = (PyArrayObject *) PyArray_ZEROS(2,
    338                                                  (npy_intp*) dimensions,
    339                                                  PyArray_INT,
    340                                                  0);
     338    genneighborlist = (PyArrayObject *) anuga_FromDims(2,
     339                                                       dimensions,
     340                                                       PyArray_INT);
    341341  }
    342342 
  • branches/numpy/anuga/shallow_water/shallow_water_ext.c

    r6738 r6780  
    1818#include "math.h"
    1919#include <stdio.h>
     20
     21#include "numpy_shim.h"
    2022
    2123// Shared code snippets
     
    16261628  // Allocate space for return vector r (don't DECREF)
    16271629  dimensions[0] = 3;
    1628   r = (PyArrayObject *) PyArray_ZEROS(1, (npy_intp*) dimensions, PyArray_DOUBLE, 0);
     1630  r = (PyArrayObject *) anuga_FromDims(1, dimensions, PyArray_DOUBLE);
    16291631
    16301632  // Copy
  • branches/numpy/anuga/shallow_water/urs_ext.c

    r6738 r6780  
    1313#include <float.h>
    1414#include <time.h>
     15
     16#include "numpy_shim.h"
    1517
    1618#define MAX_FILE_NAME_LENGTH 128
     
    788790    dimensions[1] = num_ts + POFFSET;
    789791   
    790     pydata = (PyArrayObject*) PyArray_ZEROS(2, (npy_intp*) dimensions, PyArray_DOUBLE, 0);
     792    pydata = (PyArrayObject*) anuga_FromDims(2, dimensions, PyArray_DOUBLE);
    791793    if(pydata == NULL)
    792794    {
  • branches/numpy/anuga/utilities/sparse_ext.c

    r6738 r6780  
    1414#include "math.h"
    1515#include "stdio.h"
     16#include "numpy_shim.h"
    1617
    1718//Matrix-vector routine
     
    136137    //Allocate space for return vectors y (don't DECREF)
    137138    dimensions[0] = M;
    138     y = (PyArrayObject *) PyArray_ZEROS(1, (npy_intp*) dimensions, PyArray_DOUBLE, 0);
     139    y = (PyArrayObject *) anuga_FromDims(1, dimensions, PyArray_DOUBLE);
    139140 
    140141    err = _csr_mv(M,
     
    159160    dimensions[0] = M;                   //Number of rows in sparse matrix 
    160161    dimensions[1] = columns;
    161     y = (PyArrayObject *) PyArray_ZEROS(2, (npy_intp*) dimensions, PyArray_DOUBLE, 0);
     162    y = (PyArrayObject *) anuga_FromDims(2, dimensions, PyArray_DOUBLE);
    162163   
    163164    err = _csr_mm(M, columns,
Note: See TracChangeset for help on using the changeset viewer.