any Python equivalent of Math::Polynomial::Solve?

Carl Banks invalidemail at aerojockey.com
Sun Feb 27 14:22:23 EST 2005


Carl Banks wrote:
> . from Numeric import *
> . from LinearAlgebra import *
> .
> . def quinticroots(p):
> .     cm = zeros((5,5),Float32)
> .     cm[0,1] = cm[1,2] = cm[2,3] = cm[3,4] = 1.0
> .     cm[4,0] = -p[0]
> .     cm[4,1] = -p[1]
> .     cm[4,2] = -p[2]
> .     cm[4,3] = -p[3]
> .     cm[4,4] = -p[4]
> .     return eigenvalues(cm)


Here's an improved version.  It uses 64-bit numbers (I had used type
Float32 because I often use a float32 type at work, not in Python,
unfortunately), and array assignment.

. def quinticroots(p):
.     cm = zeros((5,5),Float)
.     cm[0,1] = cm[1,2] = cm[2,3] = cm[3,4] = 1.0
.     cm[4,:] = -array(p)
.     return eigenvalues(cm)


-- 
CARL BANKS




More information about the Python-list mailing list