Here's the minimal working example (except for it hanging on solve()): import sympy as sym from sympy import sqrt
q1, q2, s, s1, s2, q_dp1, q_dp2 = sym.symbols('Q_1, Q_2, s, s_1, s_2, Q_dp_1, Q_dp_2') equ1 = q1*s - q2*s + 2*q2 - 2*sqrt(q2*(q1*s - q2*s + q2 + 2*sqrt(q1*q2*s*(1 - s)))) + 2*sqrt(q1*q2*s*(1 - s)) eq1 = equ1.subs({ s: s1 }) - q_dp1 print(f"{eq1} = 0") eq2 = equ1.subs({ s: s2 }) - q_dp2 print(f"{eq2} = 0") soln = sym.solve([eq1, eq2], (q1, q2), simplify=False) print(f"soln = {soln}") On Friday, August 5, 2022 at 7:47:07 AM UTC-7 Oscar wrote: > You should be able to obtain a parametric Groebner basis to represent > the solutions of this system. Whether that leads to an explicit > solution in radicals is hard to say without trying. > > I would demonstrate how to do this but the code for putting together > the equations is incomplete. > > On Fri, 5 Aug 2022 at 14:01, Chris Smith <smi...@gmail.com> wrote: > > > > If you remove the radicals (`sympy.solvers.solvers.unrad(eq1)`) and > replace `Q1` and `Q2` with `x` and `y` and `Q_dp_1` with a and `s1` with > `b` you will get an expression that is of degree 4 in every variable and > can be split into a term with `a` and `b` and a term with only `b` -- both > with `x` and `y`. > > > > u1 = a*(a**3 - 4*a**2*y*(2 - b) - 2*a*y**2*(-3*b**2 + 8*b - 8) - > 4*b**3*x**3 + 2*b**2*(-x**2*(-3*a + 2*y*(b - 2)) + 2*y**3*(b - 2)) - > 4*b*x*(a**2 + a*y*(b - 2) + y**2*(-b**2 - 8*b + 8))) + \ > > b**2*(b*(x**2 + y**2) + 2*x*y*(b - 2))**2 > > > > Replace a,b with c,d (for `q_dp_2` and `s2`) to get `u2`. I can't > imagine that solving a pair of quartics is going to give a nice solution. > But solving this system with known values for `a` and `b` would be > straightforward with `nsolve`. > > > > /c > > > > On Thursday, August 4, 2022 at 11:54:24 PM UTC-5 klp...@gmail.com wrote: > >> > >> And eq1=Q_1*s_1 - Q_2*s_1 + 2*Q_2 - Q_dp_1 - 2*sqrt(Q_2*(Q_1*s_1 - > Q_2*s_1 + Q_2 + 2*sqrt(Q_1*Q_2*s_1*(1 - s_1)))) + 2*sqrt(Q_1*Q_2*s_1*(1 - > s_1)) ... sorry, long day! > >> > >> On Thursday, August 4, 2022 at 9:39:53 PM UTC-7 Kevin Pauba wrote: > >>> > >>> Sorry, Jeremy. Good suggestion! > >>> > >>> s1, s2, q_dp1, q_dp2 = sym.symbols('s_1, s_2, Q_dp_1, Q_dp_2') > >>> eq1 = equ1.subs({ s: s1 }) - q_dp1 > >>> md( "$" + sym.latex(eq1) + " = 0$\n" ) > >>> > >>> eq2 = equ1.subs({ s: s2 }) - q_dp2 > >>> md( "$" + sym.latex(eq2) + " = 0$\n" ) > >>> > >>> soln = sym.solve([eq1, eq2], q1, q2) > >>> print(f"soln = {soln}") > >>> > >>> I'll set simplify to False and see how it goes ... > >>> On Thursday, August 4, 2022 at 8:18:00 PM UTC-7 Kevin Pauba wrote: > >>>> > >>>> I've attached a portion of a jupyter notebook. I'm attempting to > solve a simultaneous equation using sympy. The sym.solve() in the green > input box doesn't return (well, I waited over night on my macbook pro). > Might the solution be intractable? Is there another way to get a solution? > Any help is greatly appreciated. > > > > -- > > You received this message because you are subscribed to the Google > Groups "sympy" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to sympy+un...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/72f1b075-dbe2-41c0-bba6-9305c5960443n%40googlegroups.com > . > -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sympy+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/54eddcdc-a42e-4ebc-87b8-b6aaea1e2d0an%40googlegroups.com.