Mathematica Experts: Convert Expression to C++ Code

  • Context: Mathematica 
  • Thread starter Thread starter LordV
  • Start date Start date
  • Tags Tags
    Mathematica
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
1 reply · 6K views
LordV
Messages
7
Reaction score
0
Hi all,

here is a question for mathematica experts(or not :smile:)

I have an expression of the form:

-6615. y[0] + 282.72 y[0]^3 + 1.3244 y[0]^5 - 0.002624 y[0]^7 -
178.28 y[1] + 152.912 y[0]^2 y[1]-((1309.5 y[0]^3 y[1]^4)/(y[0]^2 + y[1]^2)^4)...

and I want to transfer this expression to my C++ code.

I need a way to transform for example this: y[0]^5(and anything similar) into this pow(y[0],5) to copy and paste in my code(I can't do it manual because the expression is quite large). Is it plausible?

thanks

PS. I tried CForm. It does a good work but it changes [ and ] to ( and ).
 
Physics news on Phys.org
Hmmm, I think I did it(although I am sure there is a more elegant way).
First I used
CForm[expresion] /. Power -> pow

and the I used the output as a string and I used:

StringReplace["output",{"y0" -> "y[0]", "y1" -> "y[1]", "y2" -> "y[2]", "y3" -> "y[3]"}]