Roots of a polynomial with variables
조회 수: 34 (최근 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!