       Re: Compiling functions

• To: mathgroup at smc.vnet.net
• Subject: [mg31751] Re: Compiling functions
• From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
• Date: Sat, 1 Dec 2001 02:43:50 -0500 (EST)
• Organization: Universitaet Leipzig
• References: <9u4g5i\$lhk\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

Hi,

expr = (-b + Sqrt[b^2 - 4*a*c])/(2*a);
tf = Compile[{{a, _Complex}, {b, _Complex}, {c, _Complex}},
Evaluate[expr]]

Regards
Jens

Cyril Fischer wrote:
>
> Hello. I would like to ask you for help with compiling functions.
>
> Let's have
> expr = (-b + Sqrt[b^2 - 4*a*c])/(2*a)
>
> Simple compile does not work for me:
> tf = Compile[{a, b, c}, expr];  tf[1, 2, 3]
>
> in this case the the values are not substitued for symbols.
>
> Such a ugly construction works
> tf = Compile[{a1, b1, c1},
>     Evaluate[expr /. {a -> a1, b -> b1, c -> c1}]]; tf[1, 2, 3]
>
> however it failes to evaluate compiled expression as the sqrt result is
> not real.
>
> 1. How can I compile (assigned) expressions without substitution for
> each parameter?
>
> 2. How can I compile expressions, which (for real input) can give
> complex output?
>
> Thanks, Cyril F.

• Prev by Date: "Incremental Integration"?
• Next by Date: Re: EPS Export, Wrong characters
• Previous by thread: Re: Compiling functions
• Next by thread: Re: Compiling functions