In [2]:
f = -a * x + a * y
f
Out[2]:
In [3]:
g = r*x -y -x*z
g
Out[3]:
In [4]:
h = -b*z + x*y
h
Out[4]:
In [5]:
J = symbols("J")
J = Matrix([[diff(f, x), diff(f, y), diff(f, z)],
[diff(g, x), diff(g, y), diff(g, z)],
[diff(h, x), diff(h, y), diff(h, z)]])
J
Out[5]:
In [6]:
J = J.subs({x: 0, y:0, z:0})
J
Out[6]:
In [7]:
J.det(), J.trace()
Out[7]:
In [8]:
J.eigenvects(), J.eigenvals()
Out[8]:
In [12]:
x, y = np.meshgrid(np.linspace(-1, 1, 21),
np.linspace(-1, 1, 21))
lambdify?
u = lambdify(expr=f)
v = lambdify(expr=g)
plt.quiver(x, y, u, v)
plt.show()