MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Array of arrays of various sizes and compile


On Tue, 18 Jan 2011, Ramiro wrote:

> Is it possible to include such a variable in a compiled function?
>
> { {1}, {2,3}, {1}, {5,7,8} }
>
> I am getting an error with such input.
>
> Example:
>
> example=Compile[{{m,_Integer,2}},Plus@@Flatten[m]]
>
> example[{{1},{2}}]
>
> Works ok.
>
> But for the following:
> example[{{1},{2,1}}]
>
> During evaluation of In[338]:= CompiledFunction::cfta: Argument {{1},
> {2,1}} at position 1 should be a rank 2 tensor of machine-size
> integers. >>
> Out[340]= 4
>
> Any suggestions?
>
> Thanks,
> Ramiro
>
>

Hi Ramiro,

you could use:

tmp = Compile[{{m, _Integer, 1}}, Total[m],
   RuntimeAttributes -> Listable]
example2[data_] := tmp[tmp[data]]

example2[{{1}, {2, 1}}]

example2[{{1}, {2, 3}, {1}, {5, 7, 8}}]


Oliver


  • Prev by Date: Re: SetOptions does not work with Grid
  • Next by Date: Re: SetOptions does not work with Grid
  • Previous by thread: Re: Array of arrays of various sizes and compile
  • Next by thread: Re: Array of arrays of various sizes and compile