MathGroup Archive 2011

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

Search the Archive

Re: Compile Problem with Nested Sum

  • To: mathgroup at smc.vnet.net
  • Subject: [mg123785] Re: Compile Problem with Nested Sum
  • From: Frank K <fkampas at gmail.com>
  • Date: Mon, 19 Dec 2011 07:17:59 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <jc7a56$on6$1@smc.vnet.net>

On Dec 13, 5:41 am, Julian Francis <julian.w.fran... at gmail.com> wrote:
> Dear all,
>
> I have a simple function which compiles fine:
>
> fC1 = Compile[{{mx, _Integer}, {my, _Integer}, {mat, _Real, 2}},
>   Sum[
>    mat[[mx, my]] , {a, 0, 1}]
>   ]
>
> However, a sum within a sum doesn't compile:
>
> fC2 = Compile[{{mx, _Integer}, {my, _Integer}, {mat, _Real, 2}},
>   Sum[
>    Sum[
>     mat[[mx, my]] , {a, 0, 1}],
>    {b, 1, 1}]
>   ]
>
> which generates the following error message:
>
> Compile::noinfo: No information is available for compilation of \!\
> (\*UnderoverscriptBox[\(\[Sum]\), \(b = 1\), \(1\)]\
> ((\*UnderoverscriptBox[\(\[Sum]\), \(a = 0\), \(1\)]mat[[mx, my]])\)
> \). The compiler will use an external evaluation and make assumptions
> about the return type. >>
>
> I am confused as to why the first works, but the second doesn't.
>
> Any help would be appreciated.
>
> Thanks,
> Julian Francis.

What version of Mathematica are you running?  It compiles ok on 8.0.4.
However, I don't understand why you're not summing over the indices of
the matrix.
Also, you don't need to nest Sum, you can put both indices inside one
sum



  • Prev by Date: Re: Disable Enter Key as Evaluation
  • Next by Date: RunThrough[] does not work on Windows (bug)
  • Previous by thread: Compile Problem with Nested Sum
  • Next by thread: Re: Compile Problem with Nested Sum