From: Alexey B. <bes...@us...> - 2008-12-31 18:06:01
|
Update of /cvsroot/maxima/maxima/doc/info In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv5554 Modified Files: solve_rec.texi Log Message: @group stuff Index: solve_rec.texi =================================================================== RCS file: /cvsroot/maxima/maxima/doc/info/solve_rec.texi,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- solve_rec.texi 25 Feb 2008 10:12:23 -0000 1.11 +++ solve_rec.texi 31 Dec 2008 18:05:51 -0000 1.12 @@ -15,12 +15,14 @@ @example (%i1) load("solve_rec")$ +@group (%i2) solve_rec((n+4)*s[n+2] + s[n+1] - (n+1)*s[n], s[n]); n %k (2 n + 3) (- 1) %k 1 2 (%o2) s = -------------------- + --------------- n (n + 1) (n + 2) (n + 1) (n + 2) +@end group @end example @opencatbox @@ -38,15 +40,20 @@ Example: @example +@group (%i3) rec: x[n+2] = x[n+1] + x[n]/n; x n (%o3) x = x + -- n + 2 n + 1 n +@end group +@group (%i4) solve_rec(rec, x[n]); WARNING: found some hypergeometrical solutions! (%o4) x = %k n n 1 +@end group +@group (%i5) reduce_order(rec, n, x[n]); (%t5) x = n %z n n @@ -61,6 +68,8 @@ (%o6) (- n - 2) %u - %u n + 1 n +@end group +@group (%i6) solve_rec((n+2)*%u[n+1] + %u[n], %u[n]); n %k (- 1) @@ -77,6 +86,7 @@ 2 / (j + 1)! 1 ==== j = 0 +@end group @end example @opencatbox @@ -110,6 +120,7 @@ @example (%i1) load("simplify_sum")$ +@group (%i2) sum(binom(n+k,k)/2^k, k, 0, n) + sum(binom(2*n, 2*k), k, 0, n); n n @@ -119,11 +130,14 @@ / k / ==== 2 ==== k = 0 k = 0 +@end group +@group (%i3) simplify_sum(%); n 4 n (%o3) -- + 2 2 +@end group @end example @opencatbox @@ -152,6 +166,7 @@ Example of linear recurrence with constant coefficients: @example +@group (%i2) solve_rec(a[n]=a[n-1]+a[n-2]+n/2^n, a[n]); n n (sqrt(5) - 1) %k (- 1) @@ -165,37 +180,46 @@ + ------------------ - ---- n n 2 5 2 +@end group @end example Example of linear recurrence with polynomial coefficients: @example +@group (%i7) 2*x*(x+1)*y[x] - (x^2+3*x-2)*y[x+1] + (x-1)*y[x+2]; 2 (%o7) (x - 1) y - (x + 3 x - 2) y + 2 x (x + 1) y x + 2 x + 1 x +@end group +@group (%i8) solve_rec(%, y[x], y[1]=1, y[3]=3); x 3 2 x! (%o9) y = ---- - -- x 4 2 +@end group @end example Example of Ricatti type recurrence: @example +@group (%i2) x*y[x+1]*y[x] - y[x+1]/(x+2) + y[x]/(x-1) = 0; y y x + 1 x (%o2) x y y - ------ + ----- = 0 x x + 1 x + 2 x - 1 +@end group (%i3) solve_rec(%, y[x], y[3]=5)$ +@group (%i4) ratsimp(minfactorial(factcomb(%))); 3 30 x - 30 x (%o4) y = - ------------------------------------------------- x 6 5 4 3 2 5 x - 3 x - 25 x + 15 x + 20 x - 12 x - 1584 +@end group @end example @@ -218,16 +242,20 @@ Example: @example +@group (%i1) (x+4)*a[x+3] + (x+3)*a[x+2] - x*a[x+1] + (x^2-1)*a[x]; (%o1) (x + 4) a + (x + 3) a - x a x + 3 x + 2 x + 1 2 + (x - 1) a x +@end group +@group (%i2) solve_rec_rat(% = (x+2)/(x+1), a[x]); 1 (%o2) a = --------------- x (x - 1) (x + 1) +@end group @end example @@ -259,6 +287,7 @@ Returns the recurrence sattisfied by the sum @example +@group hi ==== \ @@ -266,6 +295,7 @@ / ==== k = lo +@end group @end example where summand is hypergeometrical in @var{k} and @var{n}. If @var{lo} and @var{hi} @@ -278,18 +308,26 @@ @example (%i1) load("simplify_sum")$ +@group (%i2) summand: binom(n,k); (%o2) binomial(n, k) +@end group +@group (%i3) summand_to_rec(summand,k,n); (%o3) 2 sm - sm = 0 n n + 1 +@end group +@group (%i7) summand: binom(n, k)/(k+1); binomial(n, k) (%o7) -------------- k + 1 +@end group +@group (%i8) summand_to_rec(summand, [k, 0, n], n); (%o8) 2 (n + 1) sm - (n + 2) sm = - 1 n n + 1 +@end group @end example @opencatbox |