1 | initial version |
Since your system is linear, I would use matrices to model this. Perhaps I made a typing mistake while translating from what you wrote, but then I get the following. It seems that your system does not have a solution, the matrix is not full-rank over the polynomials ring over the parameters.
sage: PR1 = PolynomialRing(QQ,var('B,V,W,E,Q,H,S,P'))
sage: M = matrix(PR1,[[0,0,0,S+P,B*P,-B*P],[0,0,0,-S,(W*P - S - P),(-W*P - S)],[0,0,0,0,S+P,S],[0,0,S+P,0,0,0],[0,0,-S,0,0,0],[S+P,S,0,0,0,0]])
sage: M
[ 0 0 0 S + P B*P -B*P]
[ 0 0 0 -S W*P - S - P -W*P - S]
[ 0 0 0 0 S + P S]
[ 0 0 S + P 0 0 0]
[ 0 0 -S 0 0 0]
[ S + P S 0 0 0 0]
sage: v = vector(PR1,[-S,2*V*S + V*P,-S,- E*P - S,2*Q*S + Q*P - H*P - S,-S])
sage: M.solve_right(v)
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-30-52655db42454> in <module>()
----> 1 M.solve_right(v)
/home/jplabbe/sage/local/lib/python2.7/site-packages/sage/matrix/matrix2.pyx in sage.matrix.matrix2.Matrix.solve_right (build/cythonized/sage/matrix/matrix2.c:7907)()
446
447 if self.rank() != self.nrows():
--> 448 X = self._solve_right_general(C, check=check)
449 else:
450 X = self._solve_right_nonsingular_square(C, check_rank=False)
/home/jplabbe/sage/local/lib/python2.7/site-packages/sage/matrix/matrix2.pyx in sage.matrix.matrix2.Matrix._solve_right_general (build/cythonized/sage/matrix/matrix2.c:9035)()
562 # Have to check that we actually solved the equation.
563 if self*X != B:
--> 564 raise ValueError("matrix equation has no solutions")
565 return X
566
ValueError: matrix equation has no solutions
sage: M.rank()
5