Processing math: 100%

First time here? Check out the FAQ!

Ask Your Question
1

How to define a polynomial which can take matrix ?

asked 8 years ago

daviddgl gravatar image

updated 8 years ago

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...

Preview: (hide)

1 Answer

Sort by » oldest newest most voted
2

answered 8 years ago

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]
Preview: (hide)
link

Comments

Thank you so much..

daviddgl gravatar imagedaviddgl ( 8 years ago )

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: 8 years ago

Seen: 446 times

Last updated: May 18 '16