Roots of a polynomial with variables
20 ビュー (過去 30 日間)
古いコメントを表示
For some problems, we have to to study some notions of stablility and zero polynomials in two variables, my que'stion how we can find the roots or zero polynomials in two variables. for example:
P(x,y)=3*xy -5y^2+7*x^2y
or a nother polynom
0 件のコメント
回答 (2 件)
Sulaymon Eshkabilov
2021 年 6 月 15 日
One of the viable ways to solve such polynomial type equations is to setp up the solution space within which you are seeking the roots to compute and solve them using fzero(). E.g.:
x=linspace(-2,2): % Choose the necessary solution space
for t=1:100
EQ= @(y)(3*x(t)*y-5*y.^2+7*(x(t)^2)*y);
y_roots = fzero(EQ,0);
end
Paul
2021 年 6 月 15 日
Don't know the scope of the actual problems of interest, but for the two examples in the question:
syms x y
sol = solve(3*x*y - 5*y^2 + 7*x^2*y == 0,[x y],'ReturnConditions',true);
[sol.x sol.y sol.conditions]
syms z1 z2
sol = solve(1 - z1*z2 - 1/2*z1^2 - 1/2*z2^2 + z1^2*z2^2 == 0,[z1 z2],'ReturnConditions',true);
[sol.z1 sol.z2 sol.conditions]
5 件のコメント
Paul
2021 年 6 月 15 日
Apparently there are many solutions to this problem, i.e., many pairs (p,s) that make the determinant equal to zero. The pair (p,s) can be expressed as ( (z+2)/(z-4) , z) for z any number not equal to four. Check
A = [1 2;3 4];
p = @(z)((z+2)./(z-4));
s = @(z)(z);
z = 1;
det(diag([p(z) s(z)]) - A)
z = 8;
det(diag([p(z) s(z)]) - A)
z = 1 + 1i;
det(diag([p(z) s(z)]) - A)
参考
カテゴリ
Help Center および File Exchange で Polynomials についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!