constantly receiving an error undefined function or variable z when use solve
1 次查看(过去 30 天)
显示 更早的评论
I was trying to find the intersection points of these function
f1=sym('y=x^3');
f2=sym('x^2+y^2=1');
S=solve(f1,f2,x,y);
solx=eval(S.x);
soly=eval(S.y);
I can't do eval(S.x) because i receive the error
Undefined function or variable 'z'.
1 个评论
Stephen23
2020-1-4
Do not use eval on symbolic expressions:
https://www.mathworks.com/matlabcentral/answers/400718-need-help-with-vector-and-eval#comment_568074
采纳的回答
Fabio Freschi
2020-1-4
编辑:Fabio Freschi
2020-1-4
Polynomials with a degree greater than 4 do not have explicit solutions. You can use vpa
syms x y
f1 = y == x^3
f2 = x^2+y^2==1;
S = solve([f1, f2],x,y);
vpa(S.x)
vpa(S.y)
Or double if you accept a double result
double(S.x)
double(S.y)
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Numbers and Precision 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!