Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Mathematica question

  1. Nov 5, 2009 #1
    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 cant do it manual because the expression is quite large). Is it plausible?


    PS. I tried CForm. It does a good work but it changes [ and ] to ( and ).
  2. jcsd
  3. Nov 5, 2009 #2
    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]"}]
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook