|
| <prev next> |
[f2py] f2py with C multidimensional array: msg#00000python.f2py.user
Hello, I'm trying to use f2py to wrap some C that requires input of some multi-dimensional arrays, and I'm getting a little stuck!! The function I'm using has defintion: int lensmapper(double ** source, double *** deflection, double ** image, int msx, int msy, int mdx, int mdy, double scale, double px_map); Where source, image are 2d arrays (array of pointers) and deflection is 3d (array of pointers to pointers), and msx etc. are the bounds on the arrays. My pyf file is included below. My question is what exactly does f2py pass in? Is it just a flat double array (eg. [x00, x01, x03, .... x10, x11, x12,....]) or does it have all the pointers set for proper multidimensional access, such that the above is valid. At the moment the segfaults I'm getting would seem to indicate the former. But this isn't entirely clear to me. Cheers, Richard === python module lensmapper interface subroutine lensmapper(source,deflection,image,msx,msy,mdx,mdy,scale,px_map) intent(c) lensmapper intent(c) double precision intent(in), dimension(msx,msy) :: source double precision intent(in), dimension(mdx,mdy,2) :: deflection double precision intent(in,out), dimension(msx,msy) :: image integer intent(in), depend(source) :: msx = shape(source,0) integer intent(in), depend(source) :: msy = shape(source,1) integer intent(in), depend(deflection) :: mdx = shape(deflection,0) integer intent(in), depend(deflection) :: mdy = shape(deflection,1) double precision intent(in) :: scale double precision intent(in) :: px_map ! end subroutine lensmapper end interface end python module lensmapper |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Next by Date: | Re: [f2py] f2py with C multidimensional array: 00000, Richard Shaw |
|---|---|
| Next by Thread: | Re: [f2py] f2py with C multidimensional array: 00000, Richard Shaw |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |