Ask Your Question
1

How to define a polynomial which can take matrix ?

asked 2016-05-18 20:33:49 +0100

daviddgl gravatar image

updated 2016-05-18 20:53:03 +0100

tmonteil gravatar image

I want to define a matrix valued function. for example..

If I have a polynomial of a matrix with me say $f(x)$ and I want to check $f(A)$. What can be done better? The following will work for numbers but not for matrix.

var('x')
f(x)=2x^2+x+3 
print f(A)# this is what I want as an answer..

**

In the above if I want to replace my x by a matrix what I have to do?

**

So, ultimate aim is to find define a polynomial which can take matrix Thanks in advance...

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
2

answered 2016-05-18 20:52:03 +0100

tmonteil gravatar image

You should work with polynomials, not symbolic expressions.

Here is an example, let us assume that your matrix is defined over the field QQ:

sage: A = random_matrix(QQ,3)
sage: A
[   2    0   -2]
[   2    2    0]
[-1/2    0    0]

Then you can define the polynomial ring with one variable over the rationals, and define your polynomial:

sage: R.<x> = PolynomialRing(QQ)
sage: R
Univariate Polynomial Ring in x over Rational Field
sage: f = 2*x^2 + x + 3
sage: f.parent()
Univariate Polynomial Ring in x over Rational Field

And apply it to your matrix:

sage: f(A)
[  15    0  -10]
[  18   13   -8]
[-5/2    0    5]
edit flag offensive delete link more

Comments

Thank you so much..

daviddgl gravatar imagedaviddgl ( 2016-05-19 04:06:31 +0100 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

Stats

Asked: 2016-05-18 20:33:49 +0100

Seen: 426 times

Last updated: May 18 '16