1 | initial version |
One structural way of obtaining the answer you want is to first define the homomorphism from the laurent series ring to CC (or whatever ring you want); in your case the one obtained from substituting a particular complex value for x:
sage: s=Hom(R,CC)(2)
sage: s
Ring morphism:
From: Univariate Laurent Polynomial Ring in x over Complex Field with 53 bits of precision
To: Complex Field with 53 bits of precision
Defn: 1.00000000000000*x |--> 2.00000000000000
Making sure this gets applied to a matrix properly is now just (tedious) bookkeeping:
sage: mm=matrix(s.codomain(),m.nrows(),m.ncols(),[s(n) for n in m.list()] )
sage: mm.eigenvalues()
... UserWarning ...
[2.00000000000000]
Ideally, sage would know how to do the bookkeeping so that the definition of mm
above can be written as
sage: mm=m.change_ring(s)
<doesn't work currently>