How to divide a matrix by a polynomial?

1 次查看(过去 30 天)
Having a matrix say 'A' whoose content is taken as variable for a P(x), which is a 3rd Degree polynomial, resulting in a Matrix 'Ax'. What operation should be done between P(x) and 'Ax' to get back 'A' ?
sample code is ...
A=[0:0.01:1];
Ax = p1*A.^3 + p2*A.^2 + p3*A + p4; % p1 to p4 are coefficients of polynomials
How can 'A' be recovered from 'Ax' using P(x) ?

采纳的回答

John D'Errico
John D'Errico 2018-11-22
In general, you can't.
This is not aquestion of "dividing a matrix by a polynomial". In fact, that makes no sense at all. You have a list of points (x) that you are evaluating a polynomial at, and now, you want to recover the original x. Thus, given a point or set of points x, you have computed the value y for each x.
y = P(x)
Now, for each y, you want to recover the original value of x. Sorry, but you cannot do that operation uniquely, unless the polynomial is a linear one, in which case it is trivial. Even if the function is a quadratic polynomial, not the cubic one that you show, there will be multiple solutions, so no unique solution. You can never know which of those multiple roots to choose. This is no different from asking the question:
If I know the value of y=x^2, then which of the possible solutions,
x = sqrt(y)
or
x = -sqrt(y)
did I start with?

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Polynomials 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by