Substitute symbolic expression into matrix

1 次查看(过去 30 天)
I would like to evaluate a symbolic matrix for certain values. Unfortunately, I cannot find a way for Matlab to show the analytically correct solution, instead I get very long fractions as a result.
For example, I have a matrix B and a variable a:
syms a B
B=[sin(a)^2; cos(a)^2]
a=sym(atan(2))
To insert a into the matrix B I use subs:
B=subs(B)
Matlab outputs the following expression as a result:
cos(1246538638225297/1125899906842624)^2
sin(1246538638225297/1125899906842624)^2
Is there a way to output the analytical solution?
For example, the command below will produce the exact result of 1/5:
sym(cos(atan(2))^2)
ans = 1/5
Thanks for the help!

采纳的回答

madhan ravi
madhan ravi 2020-7-17
sym(double(subs(B)))

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Calculus 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by