MathGroup Archive 2005

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

Search the Archive

unable to compile function with Part as an argument


Hi Folks,

I have got a fairly complex program which I am trying to compile as it's
quite numerically intensive, but I am running into problems when passing
in a value that comes from an array.

I've boiled it down to a toy example which illustrates what is going wrong.
why the following code fails to compile?

In[1]:=
Developer`SetSystemOptions["CompileReportExternal" -> True]

Out[1]=
"CompileReportExternal" -> True

In[2]:=
f[x_] = Log[x]

Out[2]=
Log[x]

In[4]:=
Compile[{{v, _Real, 1}}, f[Part[v, 1]]]

From In[4]:=
Compile::"extscalar": "\!\(f[\(\(v \[LeftDoubleBracket] 1 \
\[RightDoubleBracket]\)\)]\) cannot be compiled and will be evaluated \
externally.  The result is assumed to be of type \!\(Real\)."

Out[4]=
CompiledFunction[{v}, 
  f[v\[LeftDoubleBracket]1\[RightDoubleBracket]], "-CompiledCode-"]

Any help would be greatly appreciated.

Thanks & regards,
Julian.


  • Prev by Date: Re: MultipleListPlot Prolem
  • Next by Date: cannot evaluate HelpBrowser input cells
  • Previous by thread: Re: Use of mathlink in C++
  • Next by thread: cannot evaluate HelpBrowser input cells