converting symbolic to string and printing to a file without 'piecewise' expression
2 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
回答 (1 件)
Walter Roberson
2011 年 5 月 25 日
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 件のコメント
Walter Roberson
2011 年 5 月 25 日
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.
参考
カテゴリ
Help Center および File Exchange で Symbolic Variables, Expressions, Functions, and Preferences についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!