Is there any way to get numerical result from symbolic function?
조회 수: 110 (최근 30일)
이전 댓글 표시
Hi,
I have a smybolic function created by syms command and at the next steps in my code, i should get numerical output by using this function. To do this operation, i copy the symbolic function from workspace and paste my editor. This is too long method and easy to make mistake. So, i have to use symbolic function directly.
What kind of methods can i use for this operation? Do you have any example about this?
Thx!
댓글 수: 0
채택된 답변
Ameer Hamza
2020년 10월 30일
편집: Ameer Hamza
2020년 10월 30일
If you have a symbolic function, you can directly evaluate by giving the input. For example
syms x
y(x) = x.^2 + 2*x + 3; % symbolic function
Then run the following
>> y(3)
ans =
18
>> y(100)
ans =
10203
If you want output in floating-point format, you can use double()
double(y(100))
If you have a symbolic expression, then you can use subs()
syms x
y = x.^2 + 2*x + 3; % symbolic expression
and then run
>> subs(y, x, 3)
ans =
18
>> subs(y, x, 100)
ans =
10203
댓글 수: 0
추가 답변 (2개)
KSSV
2020년 10월 30일
You can substitute a variable value in the syms using subs and then use double, vpasolve to convert into numerica array.
Read about subs, double.
댓글 수: 0
Walter Roberson
2020년 10월 30일
Use matlabFunction to convert the expression into a numeric function.
댓글 수: 0
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!