home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   sci.math.symbolic      Symbolic algebra discussion      10,432 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 10,038 of 10,432   
   Nasser M. Abbasi to samuel.thomas.blake@gmail.com   
   Re: An algebraic integral in FriCAS   
   06 May 20 00:40:40   
   
   From: nma@12000.org   
      
   On 5/5/2020 11:14 PM, samuel.thomas.blake@gmail.com wrote:   
      
   >> int(convert(((-3+x^2)*(1-6*x^2+x^4)^(-1/4))/(-1+x^2),RootOf),x);   
   > memory used=294.4MB, alloc=112.3MB, time=3.47   
   > memory used=370.5MB, alloc=112.3MB, time=4.30   
   > memory used=446.8MB, alloc=112.3MB, time=5.04   
   > memory used=501.3MB, alloc=112.3MB, time=5.54   
   > memory used=570.5MB, alloc=112.3MB, time=6.13   
   > 1/2*RootOf(_Z^2+1)*ln(-(-RootOf(_Z^4-x^4+6*x^2-1,index = 1)^2*   
   ootOf(_Z^2+1)*x^2+RootOf(_Z^2+1)*x^4+RootOf(_Z^4-x^4+6*x^2   
   > -1,index = 1)^3*x-RootOf(_Z^4-x^4+6*x^2-1,index = 1)*x^3+RootO   
   (_Z^4-x^4+6*x^2-1,index = 1)^2*RootOf(_Z^2+1)-5*RootOf(_Z^   
   > 2+1)*x^2+3*RootOf(_Z^4-x^4+6*x^2-1,index = 1)*x)/(x+1)/(x-1))+   
   /2*ln(-(RootOf(_Z^4-x^4+6*x^2-1,index = 1)^3*x+RootOf(_Z^4   
   > -x^4+6*x^2-1,index = 1)^2*x^2+RootOf(_Z^4-x^4+6*x^2-1,index =    
   )*x^3+x^4-RootOf(_Z^4-x^4+6*x^2-1,index = 1)^2-3*RootOf(_Z   
   > ^4-x^4+6*x^2-1,index = 1)*x-5*x^2)/(x+1)/(x-1))   
   >   
      
   That is a nice trick. I did not know that converting integrand   
   to RootOf makes maple do these integrals.   
      
   The antiderivative contains complex numbers, but the result is correct, because   
   when it is differentiated it gives back the integrand.   
      
   part1      := 1/(1+6*x^2+x^4)^(3/4);   
   part2      := (1-x^2)^2;   
   part3      := 1/(1+x^2);   
   integrand  := part1*part2*part3;   
   integrand0 := convert( part1*part2*part3, RootOf);   
   anti       := int(integrand0,x):   
      
   anti := [allvalues(res)][1]; #pick first solution, same for second solution   
      
   anti := ln(((x^4 + 6*x^2 + 1)^(3/4)*x + sqrt(x^4 + 6*x^2 + 1)*x^2 +   
     (x^4 + 6*x^2 + 1)^(1/4)*x^3 + x^4 + sqrt(x^4 + 6*x^2 + 1) +   
   3*(x^4 + 6*x^2 + 1)^(1/4)*x + 5*x^2)/(x^2 + 1))/2 +   
   ln(-(-sqrt(x^4 + 6*x^2 + 1)*x^4*I + x^6*I + (x^4 + 6*x^2 + 1)^(1/4)*x^5   
   - 2*I*sqrt(x^4 + 6*x^2 + 1)*x^2 + 6*I*x^4 + 4*(x^4 + 6*x^2 + 1)^(1/4)*x^3   
   - (x^4 + 6*x^2 + 1)^(3/4)*x^3 - (x^4 + 6*x^2 + 1)^(3/4)*x   
   - sqrt(x^4 + 6*x^2 + 1)*I + 5*I*x^2   
   + 3*(x^4 + 6*x^2 + 1)^(1/4)*x)/((x*I + 1)^2*(x*I - 1)^2))*I/2   
      
   back := simplify(diff(anti,x));   
   simplify(back-integrand)   
      
                  0   
      
   I have to remember this trick ;)   
      
   --Nasser   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca