We will consider quadratic dynamical systems, and go to general quasipolynomial differential equations of the form $$\dot{x_i} = x_i\sum_{j=1}^mA_{ij}\prod_{k=1}^nx_k^{B_{jk}}$$
In one dimension we have $$\dot{x}=ax^2+bx+c$$ or in the notation above $$\dot{x}=x(ax+b+c/x)=x\sum_{j=1}^3A_{j}x^{B_j}.$$ With $A_1=a$, $A_2=b$, $A_3=c$ and $B_1=1$, $B_2=0$, $B_3=-1$.
In [2]:
import numpy as np
import sympy as sp
In [50]:
a1,a2,a3=sp.Symbol("a1"),sp.Symbol("a2"),sp.Symbol("a3")
b1,b2,b3=sp.Symbol("b1"),sp.Symbol("b2"),sp.Symbol("b3")
U1,U2,U3=sp.Symbol("U1"),sp.Symbol("U2"),sp.Symbol("U3")
A=np.matrix([a1,a2,a3])
B=np.matrix([1,0,-1])
U=np.matrix([U1,U2,U3])
In [51]:
M=np.outer(B,A)
In [44]:
print M
In [45]:
U0=np.array([7.,1.,1./7])
In [47]:
np.multiply(np.matrix(M),np.matrix(U0).transpose())
Out[47]:
In [41]:
np.matrix(U0)*np.matrix(M)*np.matrix(U0).transpose()
Out[41]:
In [53]:
U*M*U.transpose()
Out[53]:
In [ ]: