MATLAB Answers

How to divide a matrix by a polynomial?

3 views (last 30 days)
JOB on 22 Nov 2018
Commented: JOB on 23 Nov 2018
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 ...
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) ?


Sign in to comment.

Accepted Answer

John D'Errico
John D'Errico on 22 Nov 2018
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)
x = -sqrt(y)
did I start with?

  1 Comment

JOB on 23 Nov 2018
OK, got it, It is a oneway road!

Sign in to comment.

More Answers (0)

Sign in to answer this question.

Translated by