Re: [f2py] allocatable arrays

Pearu Peterson <[email protected]> Wed, 17 Nov 2010 14:48:56 +0200
Newsgroups gmane.comp.python.f2py.user
Message-ID <[email protected]>
Hi,

Your example works fine here:
f2py -c wrap.pyf mod.f90
 >>> import something
 >>> something.mod.work()
 >>> something.mod.test
     array([ 60.5,  60.5,  60.5,  60.5,  60.5], dtype=float32)

What numpy version are you using?
Btw, you are calling mod.test. But it is not callable. So your example 
usage must be wrong.

Pearu

On 11/17/2010 02:24 PM, Benjamin Kutz wrote:
> Hi everybody,
>
> I try to work with allocatable arrays. Therfore I ask for your help.
> I have programmed the following code.
>
> Fortran:
> /module mod
>        real   , dimension (:)  , allocatable  :: test
> contains
> subroutine work
> integer i
> i=1
> allocate ( test(5) )
> do i=1,5
>    test(i)=60.5
> enddo
> end subroutine/
> end module mod
>
> wrap.pyf:
>
> /python module something ! in
>      interface  ! in :something
>          module mod ! in : something:mod.F
>              real allocatable,dimension(:) :: test
>              subroutine work ! in : something:mod.F
>              end subroutine work
>          end module mod
>      end interface
> end python module something
> /
> python:
>
> />>>from something import *
>  >>>mod.test()
>  >>>print 'test',mod.test
> /
> So far everything works fine.
> Python prints the allocated array, but with the following values:
>
> test [ -1.58818684e-23   3.26132798e+00  -1.58818684e-23   3.26132798e+00
>    -1.58818684e-23]
>
> It is obvious, that those values are wrong. Can anybody see a mistake in
> my syntax? Or is it even not possible to do what I want?
> I know the example in the manual, so please give me further support.
> Thank you very much in advance.
>
> Regards
> Benjamin
>
>
>
> _______________________________________________
> f2py-users mailing list
> f2py-users-Y4l6ocDipWCuvFJfX82//[email protected]
> http://cens.ioc.ee/mailman/listinfo/f2py-users