Matlab code to traditional symbolic notation conversion
17 views (last 30 days)
Show older comments
Hello,
I am looking for a kind of converter which convert from a matlab code
e.^(x./2) * sin(ax)
To symbolic math notation.
Does MATLAB have some kind of tools to convert messy parenthesis and functions to more visual friendly notation ?
When my functions gets too complicated, it is difficult to read it and spot the errors in code version like this function at the below.
int((((x-z-0.5).^2 +(y-w).^2).^(-2)).*(1./(2.*pi.*0.25.^2)).*exp(-(1./(2.*0.25^2)).*(x.^2+ y.^2))./(10.*0.5.^(-4) +((x-z-0.5).^2 +(y-w).^2).^(-2)))
0 Comments
Accepted Answer
John D'Errico
on 20 Mar 2017
pretty does not do what you want?
help pretty
syms x y z w
pretty(int((((x-z-0.5).^2 +(y-w).^2).^(-2)).*(1./(2.*pi.*0.25.^2)).*exp(-(1./(2.*0.25^2)).*(x.^2+ y.^2))./(10.*0.5.^(-4) +((x-z-0.5).^2 +(y-w).^2).^(-2))))
/ 2 2
| 5734161139222659 exp(- 8 x - 8 y )
| ---------------------------------------------------------------------------------------- dx
/ / 1 \ / 2 / 1 \2 \2
| ------------------------------ + 160 | | (w - y) + | z - x + - | | 2251799813685248
| / 2 / 1 \2 \2 | \ \ 2 / /
| | (w - y) + | z - x + - | | |
\ \ \ 2 / / /
1 Comment
Steven Lord
on 20 Mar 2017
The pretty function is one option. Writing your symbolic code in the Live Editor directly is another option. A third would be to convert your symbolic expression to LaTeX using the latex function and paste that code into the Live Editor's Equation editor.
syms a x
f = exp(x./2)*sin(a*x);
L = latex(f);
clipboard('copy', L);
Now add a LaTeX Equation to your Live Script (click the triangle next to Equation in the Live Editor tab of the Toolstrip) and paste the LaTeX equation code from the clipboard into the editor.
More Answers (2)
See Also
Categories
Find more on Symbolic Math Toolbox 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!