Using latex command with anonymous functions
1 次查看(过去 30 天)
显示 更早的评论
I want to convert a bunch of simple symbolic expressions to latex
e.g.,
syms x;
B = @(x)B(x)
latex(diff(B,x)) produces latex output
but
latex(B(x)) produces an error.
Of course, if I had
B = sym('B(x)')
latex(B(x))
would do what I want it to do, i.e., output B(x) but then
latex(B(y))
would produce an error
0 个评论
回答(6 个)
Alexander
2012-8-14
In R2012a I can do this:
>> syms x y B(x)
>> latex(B(x))
ans =
B\!\left(x\right)
>> latex(B(y))
ans =
B\!\left(y\right)
>> latex(diff(B(x)))
ans =
\frac{\partial}{\partial x} B\!\left(x\right)
Oleg Komarov
2012-8-13
Interesting case, do you define B in a recursive way on purpose?
However the error is clear, B doesn't exist at the moment of the call B(x).
To make it more clear:
syms x
f = @(input) B(input);
f(x)
Undefined function 'B' for input arguments of type 'sym'.
Error in @(input)B(input)
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!