We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
My 32GB RAM Linux system killed the voracious Rubi after 30min before it was too late:
In [7]: rubi_integrate((a + b*x)**(3/2) * (c + d*x)**(1/3), x) Killed
This part of the backtrace repeats:
~/sympy/sympy/integrals/rubi/utility_function.py in Int(expr, var) 160 def Int(expr, var): 161 from sympy.integrals.rubi.rubi import rubi_integrate --> 162 return rubi_integrate(expr, var) 163 164 def Set(expr, value): ~/sympy/sympy/integrals/rubi/rubi.py in rubi_integrate(expr, var, showsteps) 203 return S(expr)*var 204 --> 205 result = rubi.replace(Integral(expr, var)) 206 207 return result ~/.pyenv/versions/3.6.3/lib/python3.6/site-packages/matchpy-0.4.5.dev22+g39dabdc.d20180419-py3.6.egg/matchpy/matching/many_to_one.py in replace(self, expression, max_count) 795 try: 796 replacement, subst = next(iter(self.matcher.match(subexpr))) --> 797 result = replacement(**subst) 798 expression = functions.replace(expression, pos, result) 799 replaced = True ~/sympy/sympy/integrals/rubi/rules/linear_products.py in <lambda>(d, a, b, m, x, n, c) 256 257 pattern50 = Pattern(Integral((a_ + x_*WC('b', S(1)))**m_*(c_ + x_*WC('d', S(1)))**n_, x_), CustomConstraint(lambda a, x: FreeQ(a, x)), CustomConstraint(lambda b, x: FreeQ(b, x)), CustomConstraint(lambda c, x: FreeQ(c, x)), CustomConstraint(lambda d, x: FreeQ(d, x)), CustomConstraint(lambda m, x: FreeQ(m, x)), CustomConstraint(lambda n, x: FreeQ(n, x)), CustomConstraint(lambda a, c, b, d: NonzeroQ(-a*d + b*c)), CustomConstraint(lambda m: Not(IntegerQ(m))), CustomConstraint(lambda n: Not(IntegerQ(n))), CustomConstraint(lambda m, n: RationalQ(m) | Not(SimplerQ(n + S(1), m + S(1))))) --> 258 rule50 = ReplacementRule(pattern50, lambda d, a, b, m, x, n, c : (b/(-a*d + b*c))**(-IntPart(n))*(b*(c + d*x)/(-a*d + b*c))**(-FracPart(n))*(c + d*x)**FracPart(n)*Int((a + b*x)**m*(b*c/(-a*d + b*c) + b*d*x/(-a*d + b*c))**n, x)) 259 rubi.add(rule50) 260 ~/sympy/sympy/integrals/rubi/utility_function.py in Int(expr, var) 160 def Int(expr, var): 161 from sympy.integrals.rubi.rubi import rubi_integrate --> 162 return rubi_integrate(expr, var)
When using Rubi in Mathematica the following rule matches first:
Rule 71: If NeQ[b c-a d,0]&&GtQ[n,0]&&NeQ[m+n+1,0]&&!(IGtQ[m,0]&&(!IntegerQ[n]||(GtQ[m,0]&&LtQ[m-n,0])))&&!ILtQ[m+n+2,0]&&IntLinearQ[a,b,c,d,m,n,x], \[Integral](a+b x)^m (c+d x)^n\[DifferentialD]x \[LongRightArrow] Simp[((a+b x)^(m+1) (c+d x)^n)/(b (m+n+1)),x]+Dist[(n (b c-a d))/(b (m+n+1)),\[Integral](a+b x)^m (c+d x)^(n-1)\[DifferentialD]x,x] (6 (a + b x)^(5/2) (c + d x)^(1/3))/(17 b) + Dist[(2 (b c - a d))/(17 b), Int[(a + b x)^(3/2)/(c + d x)^(2/3), x], x]
The text was updated successfully, but these errors were encountered:
I think this is fixed in current master
In [4]: rubi_integrate((a + b*x)**(S(3)/2) * (c + d*x)**(S(1)/3), x) Out[4]: 6*(a + b*x)**(3/2)*(c + d*x)**(4/3)/(17*d) + 54*sqrt(a + b*x)*(c + d*x)**(4/3)*(a*d - b*c)/(187*d**2) + 162*sqrt(a + b*x)*(c + d*x)**(1/3)*(a*d - b*c)**2/(935*b*d**2) - 108*3**(3/4)*sqrt((b**(2/3)*(c + d*x)**(2/3) - b**(1/3)*(c + d*x)**(1/3)*(a*d - b*c)**(1/3) + (a*d - b*c)**(2/3))/(b**(1/3)*(c + d*x)**(1/3) + (1 + sqrt(3))*(a*d - b*c)**(1/3))**2)*sqrt(sqrt(3) + 2)*(a*d - b*c)**3*(b**(1/3)*(c + d*x)**(1/3) + (a*d - b*c)**(1/3))*elliptic_f(asin((b**(1/3)*(c + d*x)**(1/3) - (-1 + sqrt(3))*(a*d - b*c)**(1/3))/(b**(1/3)*(c + d*x)**(1/3) + (1 + sqrt(3))*(a*d - b*c)**(1/3))), -7 - 4*sqrt(3))/(935*b**(4/3)*d**3*sqrt((a*d - b*c)**(1/3)*(b**(1/3)*(c + d*x)**(1/3) + (a*d - b*c)**(1/3))/(b**(1/3)*(c + d*x)**(1/3) + (1 + sqrt(3))*(a*d - b*c)**(1/3))**2)*sqrt(a - b*c/d + b*(c + d*x)/d))
Sorry, something went wrong.
No branches or pull requests
My 32GB RAM Linux system killed the voracious Rubi after 30min before it was too late:
This part of the backtrace repeats:
When using Rubi in Mathematica the following rule matches first:
The text was updated successfully, but these errors were encountered: