On Tuesday 17 April 2012 11:02 AM, John Mitchell wrote:
Hi,

I am using f2py to pass a numpy array of type numpy.int8 to fortran. It seems like I am misunderstanding something because I just can't make it work.

Here is what I am doing.

PYTHON
b=numpy.array(numpy.zeros(shape=(10,),dtype=numpy.int8),order='F')
b[0]=1
b[2]=1
b[3]=1
b
array([1, 0, 1, 1, 0, 0, 0, 0, 0, 0], dtype=int8)



FORTRAN
subroutine print_bit_array(bits,n)
   use iso_fortran_env
   integer,intent(in)::n
   integer(kind=int8),intent(in),dimension(n)::bits
   print*,'bits = ',bits
end subroutine print_bit_array


RESULT when calling fortran from python
bits =     1    0    0    0    0    0    0    0    1    0

Any Ideas?
thanks,
John




_______________________________________________
NumPy-Discussion mailing list
[email protected]
http://mail.scipy.org/mailman/listinfo/numpy-discussion
It seems to work if "integer(kind=int8)" is replaced with "integer(8)" or "integer(1)". Don't know why, though.

Sameer
_______________________________________________
NumPy-Discussion mailing list
[email protected]
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to