Roots of a polynomial with variables

36 views (last 30 days)
Lewis Fer
Lewis Fer on 15 Jun 2021
Commented: Lewis Fer on 16 Jun 2021
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

Answers (2)

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 15 Jun 2021
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
  1 Comment
Lewis Fer
Lewis Fer on 15 Jun 2021
but this method in reality doesn't making a difference to search and find th pole of some matrices like transfer function in two dimensional case

Sign in to comment.


Paul
Paul on 15 Jun 2021
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]
ans = 
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]
ans = 
  5 Comments
Paul
Paul on 15 Jun 2021
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)
ans = -3.3307e-16
z = 8;
det(diag([p(z) s(z)]) - A)
ans = 0
z = 1 + 1i;
det(diag([p(z) s(z)]) - A)
ans = -1.3323e-15 + 3.3307e-16i
Lewis Fer
Lewis Fer on 16 Jun 2021
thank', Paul for your answers your idea help me for my work.

Sign in to comment.

Products


Release

R2015a

Community Treasure Hunt

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

Start Hunting!