Artifact fcf767de52d9c5433dc1b648f70162daa1344f9d79d59b48df3f7efc48f3d342:
- Executable file
r38/packages/tps/tps.rlg
— part of check-in
[f2fda60abd]
at
2011-09-02 18:13:33
on branch master
— Some historical releases purely for archival purposes
git-svn-id: https://svn.code.sf.net/p/reduce-algebra/code/trunk/historical@1375 2bfe0521-f11c-4a00-b80e-6202646ff360 (user: arthurcnorman@users.sourceforge.net, size: 9726) [annotate] [blame] [check-ins using] [more...]
Tue Feb 10 12:28:30 2004 run on Linux % Author: Alan Barnes <barnesa@aston.ac.uk> psexplim 8; 6 % expand as far as 8th power (default is 6) cos!-series:=ps(cos x,x,0); 1 2 1 4 1 6 1 8 9 cos-series := 1 - ---*x + ----*x - -----*x + -------*x + O(x ) 2 24 720 40320 sin!-series:=ps(sin x,x,0); 1 3 1 5 1 7 9 sin-series := x - ---*x + -----*x - ------*x + O(x ) 6 120 5040 atan!-series:=ps(atan x,x,0); 1 3 1 5 1 7 9 atan-series := x - ---*x + ---*x - ---*x + O(x ) 3 5 7 tan!-series:=ps(tan x,x,0); 1 3 2 5 17 7 9 tan-series := x + ---*x + ----*x + -----*x + O(x ) 3 15 315 cos!-series*tan!-series; 1 3 1 5 1 7 9 x - ---*x + -----*x - ------*x + O(x ) 6 120 5040 % should series for sin(x) df(cos!-series,x); 1 3 1 5 1 7 9 - x + ---*x - -----*x + ------*x + O(x ) 6 120 5040 % series for sin(x) again cos!-series/atan!-series; -1 1 77 3 313 5 104539 7 9 x - ---*x - -----*x + ------*x - ---------*x + O(x ) 6 360 3024 1814400 % should be expanded tmp:=ps(1/(1+x^2),x,infinity); 1 1 1 1 1 tmp := ---- - ---- + ---- - ---- + O(----) 2 4 6 8 9 x x x x x df(tmp,x); 1 1 1 1 - 2*---- + 4*---- - 6*---- + O(----) 3 5 7 9 x x x x ps(df(1/(1+x^2),x),x,infinity); 1 1 1 1 - 2*---- + 4*---- - 6*---- + O(----) 3 5 7 9 x x x x tmp*x; 1 1 1 1 1 (---- - ---- + ---- - ---- + O(----))*x 2 4 6 8 9 x x x x x % not expanded as a single power series ps(tmp*x,x,infinity); 1 1 1 1 1 --- - ---- + ---- - ---- + O(----) x 3 5 7 9 x x x x % now expanded ps(1/(a*x-b*x^2),x,a/b); 2 3 4 1 a -1 b b a b a 2 b a 3 - ---*(x - ---) + ---- - ----*(x - ---) + ----*(x - ---) - ----*(x - ---) a b 2 3 b 4 b 5 b a a a a 5 6 7 8 b a 4 b a 5 b a 6 b a 7 + ----*(x - ---) - ----*(x - ---) + ----*(x - ---) - ----*(x - ---) 6 b 7 b 8 b 9 b a a a a 9 b a 8 a 9 + -----*(x - ---) + O((x - ---) ) 10 b b a % pole at expansion point ps(cos!-series*x,x,2); 2 2*cos(2) + (cos(2) - 2*sin(2))*(x - 2) - (cos(2) + sin(2))*(x - 2) - 3*cos(2) + 2*sin(2) 3 cos(2) + 2*sin(2) 4 + ------------------------*(x - 2) + -------------------*(x - 2) 6 12 5*cos(2) - 2*sin(2) 5 - cos(2) - 3*sin(2) 6 + ---------------------*(x - 2) + ----------------------*(x - 2) 120 360 - 7*cos(2) + 2*sin(2) 7 cos(2) + 4*sin(2) 8 + ------------------------*(x - 2) + -------------------*(x - 2) 5040 20160 9 + O((x - 2) ) tmp:=ps(x/atan!-series,x,0); 1 2 4 4 44 6 428 8 9 tmp := 1 + ---*x - ----*x + -----*x - -------*x + O(x ) 3 45 945 14175 tmp1:=ps(atan!-series/x,x,0); 1 2 1 4 1 6 1 8 9 tmp1 := 1 - ---*x + ---*x - ---*x + ---*x + O(x ) 3 5 7 9 tmp*tmp1; 1 % should be 1, of course cos!-sin!-series:=ps(cos sin!-series,x,0); 1 2 5 4 37 6 457 8 9 cos-sin-series := 1 - ---*x + ----*x - -----*x + -------*x + O(x ) 2 24 720 40320 % cos(sin(x)) tmp:=cos!-sin!-series^2; 2 2 4 14 6 37 8 9 tmp := 1 - x + ---*x - ----*x + -----*x + O(x ) 3 45 315 tmp1:=ps((sin(sin!-series))^2,x,0); 2 2 4 14 6 37 8 9 tmp1 := x - ---*x + ----*x - -----*x + O(x ) 3 45 315 tmp+tmp1; 9 1 + O(x ) % sin^2 + cos^2 psfunction tmp1; 2 sin(sin(x)) % function represented by power series tmp1 tmp:=tan!-series^2; 2 2 4 17 6 62 8 9 tmp := x + ---*x + ----*x + -----*x + O(x ) 3 45 315 psdepvar tmp; x % in case we have forgotten the dependent variable psexpansionpt tmp; 0 % .... or the expansion point psterm(tmp,6); 17 ---- 45 % select 6th term psterm(tmp,10); 1382 ------- 14175 % select 10th term (series extended automtically) tmp1:=ps(1/(cos x)^2,x,0); 2 2 4 17 6 62 8 9 tmp1 := 1 + x + ---*x + ----*x + -----*x + O(x ) 3 45 315 tmp1-tmp; 9 1 + O(x ) % sec^2-tan^2 ps(int(e^(x^2),x),x,0); 1 3 1 5 1 7 9 x + ---*x + ----*x + ----*x + O(x ) 3 10 42 % integrator not called tmp:=ps(1/(y+x),x,0); 1 1 1 2 1 3 1 4 1 5 1 6 1 7 tmp := --- - ----*x + ----*x - ----*x + ----*x - ----*x + ----*x - ----*x y 2 3 4 5 6 7 8 y y y y y y y 1 8 9 + ----*x + O(x ) 9 y ps(int(tmp,y),x,0); 1 1 2 1 3 1 4 1 5 1 6 log(y) + ---*x - ------*x + ------*x - ------*x + ------*x - ------*x y 2 3 4 5 6 2*y 3*y 4*y 5*y 6*y 1 7 1 8 9 + ------*x - ------*x + O(x ) 7 8 7*y 8*y % integrator called on each coefficient pscompose(cos!-series,sin!-series); 1 2 5 4 37 6 457 8 9 1 - ---*x + ----*x - -----*x + -------*x + O(x ) 2 24 720 40320 % power series composition cos(sin(x)) again cos!-sin!-series; 1 2 5 4 37 6 457 8 9 1 - ---*x + ----*x - -----*x + -------*x + O(x ) 2 24 720 40320 % should be same as previous result psfunction cos!-sin!-series; cos(sin(x)) tmp:=ps(log x,x,1); 1 2 1 3 1 4 1 5 tmp := x - 1 - ---*(x - 1) + ---*(x - 1) - ---*(x - 1) + ---*(x - 1) 2 3 4 5 1 6 1 7 1 8 9 - ---*(x - 1) + ---*(x - 1) - ---*(x - 1) + O((x - 1) ) 6 7 8 tmp1:=pscompose(tmp, cos!-series); 1 2 1 4 1 6 17 8 9 tmp1 := - ---*x - ----*x - ----*x - ------*x + O(x ) 2 12 45 2520 % power series composition of log(cos(x)) df(tmp1,x); 1 3 2 5 17 7 9 - x - ---*x - ----*x - -----*x + O(x ) 3 15 315 % series for -tan x psreverse tan!-series; 1 3 1 5 1 7 9 x - ---*x + ---*x - ---*x + O(x ) 3 5 7 % should be series for atan x atan!-series; 1 3 1 5 1 7 9 x - ---*x + ---*x - ---*x + O(x ) 3 5 7 tmp:=ps(e^x,x,0); 1 2 1 3 1 4 1 5 1 6 1 7 tmp := 1 + x + ---*x + ---*x + ----*x + -----*x + -----*x + ------*x 2 6 24 120 720 5040 1 8 9 + -------*x + O(x ) 40320 psreverse tmp; 1 2 1 3 1 4 1 5 1 6 x - 1 - ---*(x - 1) + ---*(x - 1) - ---*(x - 1) + ---*(x - 1) - ---*(x - 1) 2 3 4 5 6 1 7 1 8 9 + ---*(x - 1) - ---*(x - 1) + O((x - 1) ) 7 8 % NB expansion of log x in powers of (x-1) pschangevar(tan!-series,y); 1 3 2 5 17 7 9 y + ---*y + ----*y + -----*y + O(y ) 3 15 315 end; Time for test: 30 ms