Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Sorted list of symbolic eigenvalues (and corresponding eigenvectors)

Is there a way to obtain a sorted list of eigenvalues when they are computed symbolically (in SR). Particularly knowing that in specific points, they can switch order.

So far, what I have is (assuming $R^3$):

def sorted_eval(m, x, y, z, order=0): _ev = m.eigenvalues() _ev = numpy.array(ev.subs(x=x, y=y, z=z)) _ev.sort() return _ev[order]

But then if I want to perform a contour plot: x, y, z = var('x y z') p = vector(x,y,z) f= p * p h = f.hessian() contour(lambda x, y: sorted_eval(h, x, y, 0, 0), (x, -1.5, 1.5), (y, -1.5, 1.5))

It takes a long time Thanks D

click to hide/show revision 2
No.2 Revision

updated 2012-12-03 07:57:04 -0500

kcrisman gravatar image

Sorted list of symbolic eigenvalues (and corresponding eigenvectors)

Is there a way to obtain a sorted list of eigenvalues when they are computed symbolically (in SR). Particularly knowing that in specific points, they can switch order.

So far, what I have is (assuming $R^3$):

def sorted_eval(m, x, y, z, order=0):
    _ev = m.eigenvalues()
    _ev = numpy.array(ev.subs(x=x, y=y, z=z))
    _ev.sort()
    return _ev[order]

_ev[order]

But then if I want to perform a contour plot: plot:

x, y, z = var('x y z')
p = vector(x,y,z)
f= p * p
h = f.hessian()
contour(lambda x, y: sorted_eval(h, x, y, 0, 0), (x, -1.5, 1.5), (y, -1.5, 1.5))

1.5))

It takes a long time Thanks D

click to hide/show revision 3
No.3 Revision

updated 2012-12-03 07:59:12 -0500

kcrisman gravatar image

Sorted list of symbolic eigenvalues (and corresponding eigenvectors)

Is there a way to obtain a sorted list of eigenvalues when they are computed symbolically (in SR). Particularly knowing that in specific points, they can switch order.

So far, what I have is (assuming $R^3$):

def sorted_eval(m, x, y, z, order=0):
    _ev = m.eigenvalues()
    _ev = numpy.array(ev.subs(x=x, y=y, z=z))
    _ev.sort()
    return _ev[order]

But then if I want to perform a contour plot:

x, y, z = var('x y z')
p = vector(x,y,z)
f= vector([x,y,z])
f = p * p
h = f.hessian()
contour(lambda x, y: sorted_eval(h, x, y, 0, 0), (x, -1.5, 1.5), (y, -1.5, 1.5))

It takes a long time Thanks D

click to hide/show revision 4
retagged

Sorted list of symbolic eigenvalues (and corresponding eigenvectors)

Is there a way to obtain a sorted list of eigenvalues when they are computed symbolically (in SR). Particularly knowing that in specific points, they can switch order.

So far, what I have is (assuming $R^3$):

def sorted_eval(m, x, y, z, order=0):
    _ev = m.eigenvalues()
    _ev = numpy.array(ev.subs(x=x, y=y, z=z))
    _ev.sort()
    return _ev[order]

But then if I want to perform a contour plot:

x, y, z = var('x y z')
p = vector([x,y,z])
f = p * p
h = f.hessian()
contour(lambda x, y: sorted_eval(h, x, y, 0, 0), (x, -1.5, 1.5), (y, -1.5, 1.5))

It takes a long time Thanks D