converting symbolic to string and printing to a file without 'piecewise' expression
2 views (last 30 days)
Show older comments
I am attempting to print a symbolic expression to a file as a string. This piece of code worked correctly for me and then for some unknown reason didn't:
fprintf(fid,'''%s'';\n\n',char(C(i,j,2)));
By working correctly i mean that it printed out without a 'piecewise' in front of it...Does anyone know why its all of a sudden printing the output as 'piecewise'.
Thanks
0 Comments
Answers (1)
Walter Roberson
on 25 May 2011
What does disp(C) show you ? If there is a conditional portion to the expression, it should show you piecewise(). Unless, that is, you want the formatted multi-line version that shows one case per line.
Possibly evalc(C(i,j,2)) would be useful for you
3 Comments
Walter Roberson
on 25 May 2011
If you are printing a large symbolic matrix to a file so that you can use eval(), then you should consider instead using matlabFunction() to convert the matrix to a function handle or to write the function body to a file.
See Also
Categories
Find more on Symbolic Variables, Expressions, Functions, and Preferences in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!