In [2]:
f = -a * x + a * y
f


Out[2]:
$$- a x + a y$$

In [3]:
g = r*x -y -x*z
g


Out[3]:
$$r x - x z - y$$

In [4]:
h = -b*z + x*y
h


Out[4]:
$$- b z + x y$$

Jacobiana


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]:
$$\left[\begin{matrix}- a & a & 0\\r - z & -1 & - x\\y & x & - b\end{matrix}\right]$$

Evaluada en un punto de equilibrio


In [6]:
J = J.subs({x: 0, y:0, z:0})
J


Out[6]:
$$\left[\begin{matrix}- a & a & 0\\r & -1 & 0\\0 & 0 & - b\end{matrix}\right]$$

In [7]:
J.det(), J.trace()


Out[7]:
$$\left ( a b r - a b, \quad - a - b - 1\right )$$

In [8]:
J.eigenvects(), J.eigenvals()


Out[8]:
$$\left ( \left [ \left ( - b, \quad 1, \quad \left [ \left[\begin{matrix}0\\0\\1\end{matrix}\right]\right ]\right ), \quad \left ( - \frac{a}{2} - \frac{1}{2} \sqrt{a^{2} + 4 a r - 2 a + 1} - \frac{1}{2}, \quad 1, \quad \left [ \left[\begin{matrix}- \frac{a}{- \frac{a}{2} + \frac{1}{2} \sqrt{a^{2} + 4 a r - 2 a + 1} + \frac{1}{2}}\\1\\0\end{matrix}\right]\right ]\right ), \quad \left ( - \frac{a}{2} + \frac{1}{2} \sqrt{a^{2} + 4 a r - 2 a + 1} - \frac{1}{2}, \quad 1, \quad \left [ \left[\begin{matrix}- \frac{a}{- \frac{a}{2} - \frac{1}{2} \sqrt{a^{2} + 4 a r - 2 a + 1} + \frac{1}{2}}\\1\\0\end{matrix}\right]\right ]\right )\right ], \quad \left \{ - b : 1, \quad - \frac{a}{2} - \frac{1}{2} \sqrt{a^{2} + 4 a r - 2 a + 1} - \frac{1}{2} : 1, \quad - \frac{a}{2} + \frac{1}{2} \sqrt{a^{2} + 4 a r - 2 a + 1} - \frac{1}{2} : 1\right \}\right )$$

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()


---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-12-03c3aaac4e66> in <module>()
      2                    np.linspace(-1, 1, 21))
      3 get_ipython().magic('pinfo lambdify')
----> 4 u = lambdify(expr=f)
      5 v = lambdify(expr=g)
      6 

TypeError: lambdify() missing 1 required positional argument: 'args'