In the following example, why does the first series(f,n=infinity,9);
return a series of order 8, but it returns a series of order 9 only after executing series(f,n=infinity,10);
?
|\^/| Maple 17 (X86 64 LINUX) ._|\| |/|_. Copyright (c) Maplesoft, a division of Waterloo Maple Inc. 2013 \ MAPLE / All rights reserved. Maple is a trademark of Waterloo Maple Inc. | Type ? for help. > f := 1 + (n-1)*6/n^3 - (1+6/n^3)^(n-2) * (1+6/n^3/(1+(n^2/2)*6/n^3)); 6 (n - 1) / 6 \(n - 2) / 6 \ f := 1 + --------- - |1 + ----| |1 + ------------| 3 | 3 | | 3 | n \ n / \ n (1 + 3/n)/ > series(f,n=infinity,8); 198 810 1 --- - --- + O(----) 6 7 8 n n n > series(f,n=infinity,9); 198 810 1 --- - --- + O(----) 6 7 8 n n n > series(f,n=infinity,10); 198 810 2952 11070 1 --- - --- + ---- - ----- + O(---) 6 7 8 9 10 n n n n n > series(f,n=infinity,9); 198 810 2952 1 --- - --- + ---- + O(----) 6 7 8 9 n n n n
The third paragraph in the Description section of the help-page for the series command mentions that the order
parameter specifies the truncation order for the calculation and is not necessarily the order of the returned series.
Also, there is a remember table in play, so that a higher order returned result may be quickly truncated when a subsequent lower truncation order query is computed. (The Order
environment variable is being treated somewhat analogously to the Digits
environment variable, in that better or more accurate saved results might be truncated/rounded quickly when a coarser query is made.)
After requesting clearance of a remember table for series
, the lower order query must once more be actually computed (using the specified truncation order of the calculation) rather than merely looked up and truncated.
restart:
kernelopts(version);
Maple 17.02, X86 64 WINDOWS, Sep 5 2013, Build ID 872941
f := 1 + (n-1)*6/n^3 - (1+6/n^3)^(n-2) * (1+6/n^3/(1+(n^2/2)*6/n^3)):
series(f,n=infinity,9);
198 810 /1 \
--- - --- + O|--|
6 7 | 8|
n n \n /
series(f,n=infinity,10);
198 810 2952 11070 / 1 \
--- - --- + ---- - ----- + O|---|
6 7 8 9 | 10|
n n n n \n /
series(f,n=infinity,9);
198 810 2952 /1 \
--- - --- + ---- + O|--|
6 7 8 | 9|
n n n \n /
forget(series);
series(f,n=infinity,9);
198 810 /1 \
--- - --- + O|--|
6 7 | 8|
n n \n /