In [1]:
import numpy as np
import scipy.linalg as sla
import matplotlib.pyplot as plt
%matplotlib inline
In [18]:
n = 15
x = np.linspace(0,1,n+2)
x = x[1:-1]
In [24]:
v=np.ones((n,))
A = np.diag(2*v) + np.diag(-1*v[1:],1) + np.diag(-1*v[1:],-1)
A[0,0] = 1
A[-1,-1] = 1
In [25]:
plt.spy(A)
Out[25]:
<matplotlib.image.AxesImage at 0x105f82940>
In [26]:
values, vectors = sla.eig(A)
In [27]:
I = np.argsort(values)
In [30]:
plt.plot(x, vectors[:,I[0]])
plt.plot(x, vectors[:,I[1]])
plt.plot(x, vectors[:,I[2]])
Out[30]:
[<matplotlib.lines.Line2D at 0x10614ecc0>]
In [ ]: