How to handle powers in c-code generation?

*To*: mathgroup at smc.vnet.net*Subject*: [mg40013] How to handle powers in c-code generation?*From*: christian.ott at dlr.de (Christian Ott)*Date*: Sun, 16 Mar 2003 02:20:21 -0500 (EST)*Sender*: owner-wri-mathgroup at wolfram.com

Hi there, I have a problem with generating "nice" c-code in mathematica. When I use the packages "Format" and "Optimize" to generate the c-code, the (integer) powers are coded as function calls instead of explicit multiplications (e.g. pow(x,2.) instead of x*x). These function calls are obviously quite ineffective in many cases. Here is a simple example of my problem: ---------------- Mathematica Input: << Format' << Optimize' CAssign[x^2, AssignOptimize -> False, OptimizePower -> Binary] Mathematica Output: pow(x,2.) Desired Output: x*x ----------------- I thought that the option "OptimizePower -> Binary" would be sufficient to get an output of the form "x*x". Is there another option that I should use in the CAssign call? Or is there a better way of generating c-code from mathematica? thanks in advance, Christian