1 @c English version 2013-04-02
3 * Funciones y variables para sumas y productos::
4 * Introducción a las series::
5 * Funciones y variables para las series::
6 * Introducción a las series de Fourier::
7 * Funciones y variables para series de Fourier::
8 * Funciones y variables para series de Poisson::
14 @node Funciones y variables para sumas y productos, Introducción a las series, Sumas productos y series, Sumas productos y series
15 @section Funciones y variables para sumas y productos
19 @deffn {Función} bashindices (@var{expr})
20 Transforma la expresión @var{expr} dándole a cada sumatorio y producto un
21 único índice. Esto le da a @code{changevar} mayor precisión
22 cuando opera con sumas y productos. La forma del único índice es
23 @code{j@var{number}}. La cantidad @var{number} se determina en función de
24 @code{gensumnum}, valor que puede cambiar el usuario. Por ejemplo, haciendo @code{gensumnum:0$}.
31 @deffn {Función} lsum (@var{expr}, @var{x}, @var{L})
32 Representa la suma de @var{expr} para cada elemento @var{x} en @var{L}.
34 Se retornará la forma nominal @code{'lsum} si el argumento @var{L} no es una lista.
39 @c lsum (x^i, i, [1, 2, 7]);
40 @c lsum (i^2, i, rootsof (x^3 - 1, x));
43 (%i1) lsum (x^i, i, [1, 2, 7]);
46 (%i2) lsum (i^2, i, rootsof (x^3 - 1, x));
53 i in rootsof(x - 1, x)
59 @deffn {Función} intosum (@var{expr})
60 Mueve los factores multiplicativos que están fuera de un sumatorio hacia dentro
61 de éste. Si el índice del sumatorio aparece en la expresión exterior,
62 entonces @code{intosum} busca un índice razonable, lo mismo que hace con
63 @code{sumcontract}. Se trata de la operación contraria a extraer factores comunes de los sumatorios.
65 En algunos caos puede ser necesario hacer @code{scanmap (multthru, @var{expr})} antes que @code{intosum}.
67 @c Ejemplo tomado de la version alemana
72 (%i1) sum(2*x^2*n^k, k , 0, inf);
97 @deffn {Función} product (@var{expr}, @var{i}, @var{i_0}, @var{i_1})
98 Representa el producto de los valores de @code{expr} según el índice @var{i} varía de @var{i_0} hasta @var{i_1}.
99 La forma nominal @code{'product} se presenta en forma de letra pi mayúscula.
101 La función @code{product} evalúa @var{expr} y los límites inferior y superior, @var{i_0} y @var{i_1}, pero no evalúa el índice @var{i}.
103 Si la diferencia entre los límites superior e inferior es un número entero, la expresión @var{expr} se evalúa para cada valor del índice @var{i}, siendo el resultado un producto en forma explícita.
105 En caso contrario, el rango del índice no está definido, aplicándose entonces algunas reglas que permitan simplificar el producto.
106 Cuando la variable global @code{simpproduct} valga @code{true}, se aplicarán reglas adicionales.
107 En ciertos casos, la simplificación dará lugar a un resultado que ya no tenga el formato del producto; en caso contrario se devolverá una forma nominal @code{'product}.
109 Véanse también @code{nouns} y @code{evflag}.
115 @c product (x + i*(i+1)/2, i, 1, 4);
116 @c product (i^2, i, 1, 7);
117 @c product (a[i], i, 1, 7);
118 @c product (a(i), i, 1, 7);
119 @c product (a(i), i, 1, n);
120 @c product (k, k, 1, n);
121 @c product (k, k, 1, n), simpproduct;
122 @c product (integrate (x^k, x, 0, 1), k, 1, n);
123 @c product (if k <= 5 then a^k else b^k, k, 1, 10);
127 (%i1) product (x + i*(i+1)/2, i, 1, 4);
128 (%o1) (x + 1) (x + 3) (x + 6) (x + 10)
129 (%i2) product (i^2, i, 1, 7);
131 (%i3) product (a[i], i, 1, 7);
134 (%i4) product (a(i), i, 1, 7);
135 (%o4) a(1) a(2) a(3) a(4) a(5) a(6) a(7)
136 (%i5) product (a(i), i, 1, n);
143 (%i6) product (k, k, 1, n);
150 (%i7) product (k, k, 1, n), simpproduct;
152 (%i8) product (integrate (x^k, x, 0, 1), k, 1, n);
159 (%i9) product (if k <= 5 then a^k else b^k, k, 1, 10);
168 @defvr {Variable opcional} simpsum
169 Valor por defecto: @code{false}
171 Si @code{simpsum} vale @code{true}, se simplifica el resultado de un sumatorio @code{sum}.
172 Esta simplificación podrá producir en ocasiones una expresión compacta. Si
173 @code{simpsum} vale @code{false} o si se utiliza la forma apostrofada @code{'sum},
174 el valor es una forma nominal que representa la notación sigma habitual en matemáticas.
180 @deffn {Función} sum (@var{expr}, @var{i}, @var{i_0}, @var{i_1})
182 Representa la suma de los valores de @code{expr} según el índice @var{i} varía de @var{i_0} hasta @var{i_1}.
183 La forma nominal @code{'sum} se presenta en forma de letra sigma mayúscula.
185 La función @code{sum} evalúa su sumando @var{expr} y los límites inferior y superior, @var{i_0} y @var{i_1}, pero no evalúa el índice @var{i}.
187 Si la diferencia entre los límites superior e inferior es un número entero, el sumando @var{expr} se evalúa para cada valor del índice @var{i}, siendo el resultado una suma en forma explícita.
189 En caso contrario, el rango del índice no está definido, aplicándose entonces algunas reglas que permitan simplificar la suma.
190 Cuando la variable global @code{simpsum} valga @code{true}, se aplicarán reglas adicionales.
191 En ciertos casos, la simplificación dará lugar a un resultado que ya no tenga el formato del sumatorio; en caso contrario se devolverá una forma nominal @code{'product}.
193 Cuando @code{cauchysum} vale @code{true}, el producto de sumatorios se expresa como un producto de Cauchy, en cuyo caso el índice del sumatorio interior es función del índice del exterior, en lugar de variar independientemente.
195 La variable global @code{genindex} guarda el prefijo alfabético a utilizar cuando sea necesario generar automáticamente el siguiente índice de sumatorio.
197 La variable global @code{gensumnum} guarda el sufijo numérico a utilizar cuando sea necesario generar automáticamente el siguiente índice de sumatorio. Si @code{gensumnum} vale @code{false}, un índice generado automáticamente constará sólo de @code{genindex}, sin sufijo numérico.
199 Véanse también @code{sumcontract}, @code{intosum},
200 @code{bashindices}, @code{niceindices},
201 @code{nouns} y @code{evflag}.
206 @c sum (i^2, i, 1, 7);
207 @c sum (a[i], i, 1, 7);
208 @c sum (a(i), i, 1, 7);
209 @c sum (a(i), i, 1, n);
210 @c sum (2^i + i^2, i, 0, n);
211 @c sum (2^i + i^2, i, 0, n), simpsum;
212 @c sum (1/3^i, i, 1, inf);
213 @c sum (1/3^i, i, 1, inf), simpsum;
214 @c sum (i^2, i, 1, 4) * sum (1/i^2, i, 1, inf);
215 @c sum (i^2, i, 1, 4) * sum (1/i^2, i, 1, inf), simpsum;
216 @c sum (integrate (x^k, x, 0, 1), k, 1, n);
217 @c sum (if k <= 5 then a^k else b^k, k, 1, 10);
221 (%i1) sum (i^2, i, 1, 7);
223 (%i2) sum (a[i], i, 1, 7);
224 (%o2) a + a + a + a + a + a + a
226 (%i3) sum (a(i), i, 1, 7);
227 (%o3) a(7) + a(6) + a(5) + a(4) + a(3) + a(2) + a(1)
228 (%i4) sum (a(i), i, 1, n);
236 (%i5) sum (2^i + i^2, i, 0, n);
244 (%i6) sum (2^i + i^2, i, 0, n), simpsum;
247 (%o6) 2 + --------------- - 1
249 (%i7) sum (1/3^i, i, 1, inf);
257 (%i8) sum (1/3^i, i, 1, inf), simpsum;
261 (%i9) sum (i^2, i, 1, 4) * sum (1/i^2, i, 1, inf);
269 (%i10) sum (i^2, i, 1, 4) * sum (1/i^2, i, 1, inf), simpsum;
272 (%i11) sum (integrate (x^k, x, 0, 1), k, 1, n);
280 (%i12) sum (if k <= 5 then a^k else b^k, k, 1, 10));
282 (%o12) b + b + b + b + b + a + a + a + a + a
289 @deffn {Función} sumcontract (@var{expr})
290 Combina todos los sumatorios de una suma cuyos límites inferiores y
291 superiores difieren por constantes. El resultado es una expresión que contiene
292 un sumatorio por cada conjunto de tales sumatorios, más todos los demás
293 términos adicionales que tuvieron que extraerse para formar la suma. La función
294 @code{sumcontract} combina todos los sumatorios compatibles y utiliza uno de los
295 índices de uno de los sumatorios si puede, si no formará un
296 índice que sea razonable.
298 Puede ser necesario hacer @code{intosum (@var{expr})} antes que @code{sumcontract}.
300 @c @c Ejemplo tomado de la version alemana
304 (%i1) 'sum(1/l,l,1,n)+'sum(k,k,1,n+2);
314 (%i2) sumcontract(%);
319 (%o2) 2 n + > (l + -) + 3
329 @defvr {Variable opcional} sumexpand
330 Valor por defecto: @code{false}
332 Si @code{sumexpand} vale @code{true}, productos de sumatorios y de sumatorios con exponentes se
333 reducen a sumatorios anidados.
335 Véase también @code{cauchysum}.
340 (%i1) sumexpand: true$
341 (%i2) sum (f (i), i, 0, m) * sum (g (j), j, 0, n);
346 (%o2) > > f(i1) g(i2)
351 (%i3) sum (f (i), i, 0, m)^2;
355 (%o3) > > f(i3) f(i4)
378 @node Introducción a las series, Funciones y variables para las series, Funciones y variables para sumas y productos, Sumas productos y series
379 @section Introducción a las series
381 Maxima dispone de las funciones @code{taylor} y @code{powerseries} para calcular
382 las series de las funciones diferenciables. También tiene herramientas como
383 @code{nusum} capaces de encontrar la expresión compacta de algunas series.
384 Operaciones como la suma y la multiplicación operan de la forma habitual en
385 el contexto de las series. Esta sección presenta las variables globales que
386 controlan la expansión.
397 @node Funciones y variables para las series, Introducción a las series de Fourier, Introducción a las series, Sumas productos y series
398 @section Funciones y variables para las series
400 @defvr {Variable opcional} cauchysum
401 Valor por defecto: @code{false}
403 Cuando se multiplican sumatorios infinitos, si @code{sumexpand} vale @code{true} y @code{cauchysum} vale @code{true}, entonces se utilizará el producto de Cauchy en lugar del usual. En el producto de Cauchy el índice de la suma interna es función del índice de la exterior en lugar de variar de forma independiente. Un ejemplo aclara esta idea:
406 (%i1) sumexpand: false$
407 (%i2) cauchysum: false$
408 (%i3) s: sum (f(i), i, 0, inf) * sum (g(j), j, 0, inf);
412 (%o3) ( > f(i)) > g(j)
416 (%i4) sumexpand: true$
417 (%i5) cauchysum: true$
422 (%o6) > > g(i1 - i2) f(i2)
432 @deffn {Función} deftaylor (@var{f_1}(@var{x_1}), @var{expr_1}, ..., @var{f_n}(@var{x_n}), @var{expr_n})
433 Para cada función @var{f_i} de variable @var{x_i}, @code{deftaylor} define @var{expr_i} como una serie de Taylor alrededor de cero. La expresión @var{expr_i} será un polinomio en @var{x_i} o una suma; @code{deftaylor} admite también expresiones más generales.
435 La llamada @code{powerseries (@var{f_i}(@var{x_i}), @var{x_i}, 0)} devuelve la serie definida por @code{deftaylor}.
437 La función @code{deftaylor} evalúa sus argumentos y devuelve la lista de las funciones @var{f_1}, ..., @var{f_n}.
442 (%i1) deftaylor (f(x), x^2 + sum(x^i/(2^i*i!^2), i, 4, inf));
444 (%i2) powerseries (f(x), x, 0);
452 (%i3) taylor (exp (sqrt (f(x))), x, 0, 4);
455 (%o3)/T/ 1 + x + -- + ------- + -------- + . . .
463 @defvr {Variable opcional} maxtayorder
464 Valor por defecto: @code{true}
466 Si @code{maxtayorder} vale @code{true}, entonces durante la manipulación algebraica de series truncadas de Taylor, la función @code{taylor} trata de retener tantos términos correctos como sea posible.
473 @deffn {Función} niceindices (@var{expr})
474 Cambia las etiquetas de los índices de sumas y productos de @var{expr}. La función @code{niceindices} trata de cambiar cada índice al valor de @code{niceindicespref[1]}, a menos que esa etiqueta aparezca ya en el sumando o factor, en cuyo caso @code{niceindices} realiza intentos con los siguientes elementos de @code{niceindicespref}, hasta que encuentre una variable que que no esté en uso. Si todas las variables de la lista han sido ya revisadas, se formarán nuevos ínices añadiendo números enteros al valor de @code{niceindicespref[1]}, como @code{i0}, @code{i1}, @code{i2}, ....
476 La función @code{niceindices} evalúa sus argumentos y devuelve una expresión.
481 (%i1) niceindicespref;
482 (%o1) [i, j, k, l, m, n]
483 (%i2) product (sum (f (foo + i*j*bar), foo, 1, inf), bar, 1, inf);
487 (%o2) ! ! > f(bar i j + foo)
491 (%i3) niceindices (%);
495 (%o3) ! ! > f(i j l + k)
506 @defvr {Variable opcional} niceindicespref
507 Valor por defecto: @code{[i, j, k, l, m, n]}
509 La variable @code{niceindicespref} es la lista de la que la función @code{niceindices} va tomando nombres de etiquetas para índices de sumatorios y productos.
511 En @code{niceindicespref} se guardan normalmente nombres de variables.
516 (%i1) niceindicespref: [p, q, r, s, t, u]$
517 (%i2) product (sum (f (foo + i*j*bar), foo, 1, inf), bar, 1, inf);
521 (%o2) ! ! > f(bar i j + foo)
525 (%i3) niceindices (%);
529 (%o3) ! ! > f(i j q + p)
540 @deffn {Función} nusum (@var{expr}, @var{x}, @var{i_0}, @var{i_1})
541 Calcula la suma hipergeométrica indefinida de @var{expr} con respecto a la variable @var{x} utilizando una procedimiento de decisión debido a R.W. Gosper. La expresión @var{expr} y el resultado deben poder ser escritos como productos de potencias enteras, factoriales, coeficientes binomiales y funciones racionales.
543 @c UMM, DO WE REALLY NEED TO DEFINE "DEFINITE" AND "INDEFINITE" SUMMATION HERE ??
544 @c (CAN'T WE MAKE THE POINT WITHOUT DRAGGING IN SOME NONSTANDARD TERMINOLOGY ??)
545 Los términos suma "definida" e "indefinida" se usan de forma análoga a integración "definida" e "indefinida". La suma indefinida significa dar un resultado simbólico.
547 Las funciones @code{nusum} y @code{unsum} disponen de cierta información sobre sumas y diferencias de productos finitos. Véase también @code{unsum}.
552 (%i1) nusum (n*n!, n, 0, n);
554 Dependent equations eliminated: (1)
556 (%i2) nusum (n^4*4^n/binomial(2*n,n), n, 0, n);
558 2 (n + 1) (63 n + 112 n + 18 n - 22 n + 3) 4 2
559 (%o2) ------------------------------------------------ - ------
560 693 binomial(2 n, n) 3 11 7
564 (%o3) ----------------
566 (%i4) unsum (prod (i^2, i, 1, n), n);
570 (%o4) ( ! ! i ) (n - 1) (n + 1)
573 (%i5) nusum (%, n, 1, n);
575 Dependent equations eliminated: (2 3)
590 @deffn {Función} pade (@var{taylor_series}, @var{numer_deg_bound}, @var{denom_deg_bound})
591 Devuelve la lista de todas las funciones racionales que tienen el desarrollo de Taylor dado, en las que la suma de los grados del numerador y denominador es menor o igual que el nivel de truncamiento de la serie de potencias.
593 La expresión @var{taylor_series} es una serie de Taylor univariante. Los argumentos @var{numer_deg_bound} y @var{denom_deg_bound} son enteros positivos que indican las cotas para numerador y denominador.
595 La expresión @var{taylor_series} también puede ser una serie de Laurent, y las cotas de los grados pueden ser @code{inf}. El grado total se define como @code{@var{numer_deg_bound} + @var{denom_deg_bound}}. La longitud de una serie de potencias se define como @code{"truncation level" + 1 - min(0, "order of series")}.
598 (%i1) taylor (1 + x + x^2 + x^3, x, 0, 3);
600 (%o1)/T/ 1 + x + x + x + . . .
601 (%i2) pade (%, 1, 1);
605 (%i3) t: taylor(-(83787*x^10 - 45552*x^9 - 187296*x^8
606 + 387072*x^7 + 86016*x^6 - 1507328*x^5
607 + 1966080*x^4 + 4194304*x^3 - 25165824*x^2
608 + 67108864*x - 134217728)
609 /134217728, x, 0, 10);
611 x 3 x x 15 x 23 x 21 x 189 x
612 (%o3)/T/ 1 - - + ---- - -- - ----- + ----- - ----- - ------
613 2 16 32 1024 2048 32768 65536
616 5853 x 2847 x 83787 x
617 + ------- + ------- - --------- + . . .
618 4194304 8388608 134217728
619 (%i4) pade (t, 4, 4);
623 No hay ninguna función racional de grado 4 en numerador y denominador con este desarrollo en serie de potencias. Es necesario dar un número de grados al numerador y denominador cuya suma sea al menos el grado del desarrollo de la serie, a fin de disponer de un número suficiente de coeficientes desconocidos para calcular.
626 (%i5) pade (t, 5, 5);
628 (%o5) [- (520256329 x - 96719020632 x - 489651410240 x
631 - 1619100813312 x - 2176885157888 x - 2386516803584)
634 /(47041365435 x + 381702613848 x + 1360678489152 x
637 + 2856700692480 x + 3370143559680 x + 2386516803584)]
645 @deffn {Función} powerseries (@var{expr}, @var{x}, @var{a})
646 Devuelve la forma general del desarrollo en serie de potencias
647 de @var{expr} para la variable @var{x} alrededor del punto
648 @var{a} (que puede ser @code{inf}, de infinito):
659 Si @code{powerseries} no es capaz de desarrollar @var{expr},
660 la función @code{taylor} puede calcular los primeros términos de la serie.
662 Si @code{verbose} vale @code{true}, @code{powerseries} va
663 mostrando mensajes mientras progresa el cálculo.
667 (%i2) powerseries (log(sin(x)/x), x, 0);
670 so we'll try again after applying the rule:
674 log(sin(x)) = i ----------- dx
677 in the first simplification we have returned:
685 \ (- 1) 2 bern(2 i1) x
686 > ------------------------------
690 (%o2) -------------------------------------
700 @defvr {Variable opcional} psexpand
701 Valor por defecto: @code{false}
703 Si @code{psexpand} vale @code{true}, toda expresi'on racional se muestra completamente expandida. La variable @code{ratexpand} tiene el mismo efecto.
705 @c WE NEED TO BE EXPLICIT HERE
706 Si @code{psexpand} vale @code{false}, las expresines multivariantes se presentan tal como lo hace el paquete de funciones racionales.
709 Si @code{psexpand} vale @code{multi}, los términos de igual grado son agrupados.
717 @deffn {Función} revert (@var{expr}, @var{x})
718 @deffnx {Función} revert2 (@var{expr}, @var{x}, @var{n})
720 Estas funciones devuelven el recíproco de @var{expr} en forma de desarrollo de Taylor alrededor de cero respecto de la variable @var{x}. La función @code{revert} devuelve un polinomio de grado igual a la mayor potencia en @var{expr}.
721 La función @code{revert2} devuelve un polinomio de grado @var{n}, el cual puede ser mayor, igual o menor que el grado de @var{expr}.
723 Para utilizar estas funciones es necesario cargarlas en memoria mediante @code{load ("revert")}.
728 (%i1) load ("revert")$
729 (%i2) t: taylor (exp(x) - 1, x, 0, 6);
732 (%o2)/T/ x + -- + -- + -- + --- + --- + . . .
736 10 x - 12 x + 15 x - 20 x + 30 x - 60 x
737 (%o3)/R/ - --------------------------------------------
742 (%o4) - -- + -- - -- + -- - -- + x
744 (%i5) taylor (log(x+1), x, 0, 6);
747 (%o5)/T/ x - -- + -- - -- + -- - -- + . . .
749 (%i6) ratsimp (revert (t, x) - taylor (log(x+1), x, 0, 6));
751 (%i7) revert2 (t, x, 4);
754 (%o7) - -- + -- - -- + x
765 @deffn {Función} taylor (@var{expr}, @var{x}, @var{a}, @var{n})
766 @deffnx {Función} taylor (@var{expr}, [@var{x_1}, @var{x_2}, ...], @var{a}, @var{n})
767 @deffnx {Función} taylor (@var{expr}, [@var{x}, @var{a}, @var{n}, 'asymp])
768 @deffnx {Función} taylor (@var{expr}, [@var{x_1}, @var{x_2}, ...], [@var{a_1}, @var{a_2}, ...], [@var{n_1}, @var{n_2}, ...])
769 @deffnx {Función} taylor (@var{expr}, [@var{x_1}, @var{a_1}, @var{n_1}], [@var{x_2}, @var{a_2}, @var{n_2}], ...)
771 La llamada @code{taylor (@var{expr}, @var{x}, @var{a}, @var{n})} expande la expresión @var{expr} en un desarrollo de
772 Taylor o de Laurent respecto de la variable @var{x} alrededor del punto @var{a}, con términos hasta @code{(@var{x} - @var{a})^@var{n}}.
774 Si @var{expr} es de la forma @code{@var{f}(@var{x})/@var{g}(@var{x})} y @code{@var{g}(@var{x})} no tiene términos hasta de grado @var{n}, entonces @code{taylor} intenta expandir @code{@var{g}(@var{x})} hasta el grado @code{2 @var{n}}. Si aún así no hay términos no nulos, @code{taylor} dobla el grado de la expansión de @code{@var{g}(@var{x})} hasta que el grado de la expansión sea menor o igual que @code{@var{n} 2^taylordepth}.
776 La llamada @code{taylor (@var{expr}, [@var{x_1}, @var{x_2}, ...], @var{a}, @var{n})} devuelve la serie en potencias truncada de grado @var{n} en todas las variables @var{x_1}, @var{x_2}, ... alrededor del punto @code{(@var{a}, @var{a}, ...)}.
778 La llamada @code{taylor (@var{expr}, [@var{x_1}, @var{a_1}, @var{n_1}], [@var{x_2}, @var{a_2}, @var{n_2}], ...)}
779 devuelve la serie en potencias truncada en las variables @var{x_1}, @var{x_2}, ... alrededor del punto @code{(@var{a_1}, @var{a_2}, ...)}; el truncamiento se realiza, respectivamente, en los grados @var{n_1}, @var{n_2}, ....
781 La llamada @code{taylor (@var{expr}, [@var{x_1}, @var{x_2}, ...], [@var{a_1}, @var{a_2}, ...], [@var{n_1}, @var{n_2}, ...])}
782 devuelve la serie en potencias truncada en las variables @var{x_1}, @var{x_2}, ... alrededor del punto @code{(@var{a_1}, @var{a_2}, ...)}, el truncamiento se realiza, respectivamente, en los grados @var{n_1}, @var{n_2}, ....
784 La llamada @code{taylor (@var{expr}, [@var{x}, @var{a}, @var{n}, 'asymp])} devuelve el desarrollo de @var{expr} en potencias negativas de @code{@var{x} - @var{a}}. El término de mayor orden es @code{(@var{x} - @var{a})^@var{-n}}.
786 Si @code{maxtayorder} vale @code{true}, entonces durante la manipulación algebraica de las series (truncadas) de Taylor, la función @code{taylor} intenta mantener tantos términos correctos como sea posible.
788 Si @code{psexpand} vale @code{true}, una expresión racional desarrollada se muestra completamente expandida. La variable @code{ratexpand} tiene el mismo efecto. Si @code{psexpand} vale @code{false}, una expresión multivariante se mostrará tal como lo hace el paquete de funciones racionales. Si @code{psexpand} vale @code{multi}, los términos del mismo grado
791 Véase también la variable @code{taylor_logexpand} para el control del desarrollo.
794 @c EXAMPLES ADAPTED FROM example (taylor)
795 @c taylor (sqrt (sin(x) + a*x + 1), x, 0, 3);
797 @c taylor (sqrt (x + 1), x, 0, 5);
799 @c product ((1 + x^i)^2.5, i, 1, inf)/(1 + x^2);
800 @c ev (taylor(%, x, 0, 3), keepfloat);
801 @c taylor (1/log (x + 1), x, 0, 3);
802 @c taylor (cos(x) - sec(x), x, 0, 5);
803 @c taylor ((cos(x) - sec(x))^3, x, 0, 5);
804 @c taylor (1/(cos(x) - sec(x))^3, x, 0, 5);
805 @c taylor (sqrt (1 - k^2*sin(x)^2), x, 0, 6);
806 @c taylor ((x + 1)^n, x, 0, 4);
807 @c taylor (sin (y + x), x, 0, 3, y, 0, 3);
808 @c taylor (sin (y + x), [x, y], 0, 3);
809 @c taylor (1/sin (y + x), x, 0, 3, y, 0, 3);
810 @c taylor (1/sin (y + x), [x, y], 0, 3);
813 (%i1) taylor (sqrt (sin(x) + a*x + 1), x, 0, 3);
815 (a + 1) x (a + 2 a + 1) x
816 (%o1)/T/ 1 + --------- - -----------------
820 (3 a + 9 a + 9 a - 1) x
821 + -------------------------- + . . .
826 (%o2)/T/ 1 + (a + 1) x - -- + . . .
828 (%i3) taylor (sqrt (x + 1), x, 0, 5);
831 (%o3)/T/ 1 + - - -- + -- - ---- + ---- + . . .
834 (%o4)/T/ 1 + x + . . .
835 (%i5) product ((1 + x^i)^2.5, i, 1, inf)/(1 + x^2);
842 (%o5) -----------------
845 (%i6) ev (taylor(%, x, 0, 3), keepfloat);
847 (%o6)/T/ 1 + 2.5 x + 3.375 x + 6.5625 x + . . .
848 (%i7) taylor (1/log (x + 1), x, 0, 3);
851 (%o7)/T/ - + - - -- + -- - ----- + . . .
853 (%i8) taylor (cos(x) - sec(x), x, 0, 5);
856 (%o8)/T/ - x - -- + . . .
858 (%i9) taylor ((cos(x) - sec(x))^3, x, 0, 5);
860 (%i10) taylor (1/(cos(x) - sec(x))^3, x, 0, 5);
862 1 1 11 347 6767 x 15377 x
863 (%o10)/T/ - -- + ---- + ------ - ----- - ------- - --------
864 6 4 2 15120 604800 7983360
868 (%i11) taylor (sqrt (1 - k^2*sin(x)^2), x, 0, 6);
871 (%o11)/T/ 1 - ----- - ----------------
875 (45 k - 60 k + 16 k ) x
876 - -------------------------- + . . .
878 (%i12) taylor ((x + 1)^n, x, 0, 4);
880 (n - n) x (n - 3 n + 2 n) x
881 (%o12)/T/ 1 + n x + ----------- + --------------------
885 (n - 6 n + 11 n - 6 n) x
886 + ---------------------------- + . . .
888 (%i13) taylor (sin (y + x), x, 0, 3, y, 0, 3);
891 (%o13)/T/ y - -- + . . . + (1 - -- + . . .) x
896 + (- - + -- + . . .) x + (- - + -- + . . .) x + . . .
898 (%i14) taylor (sin (y + x), [x, y], 0, 3);
900 x + 3 y x + 3 y x + y
901 (%o14)/T/ y + x - ------------------------- + . . .
903 (%i15) taylor (1/sin (y + x), x, 0, 3, y, 0, 3);
905 (%o15)/T/ - + - + . . . + (- -- + - + . . .) x + (-- + . . .) x
910 + (- -- + . . .) x + . . .
913 (%i16) taylor (1/sin (y + x), [x, y], 0, 3);
915 1 x + y 7 x + 21 y x + 21 y x + 7 y
916 (%o16)/T/ ----- + ----- + ------------------------------- + . . .
925 @defvr {Variable opcional} taylordepth
928 @c UM, THE CONTEXT FOR THIS REMARK NEEDS TO BE ESTABLISHED
929 Si todavía no hay términos no nulos, la función @code{taylor} dobla el grado del desarrollo de @code{@var{g}(@var{x})}
930 tantas veces como sea necesario para que el grado del desarrollo sea menor o igual que @code{@var{n} 2^taylordepth}.
937 @deffn {Función} taylorinfo (@var{expr})
938 Devuelve información sobre el desarrollo de Taylor @var{expr}. El valor devuelto por esta función es una lista de listas. Cada lista contiene el nombre de una variable, el punto de expansión y el grado del desarrollo.
940 La función @code{taylorinfo} devuelve @code{false} si @var{expr} no es un desarrollo de Taylor.
945 (%i1) taylor ((1 - y^2)/(1 - x), x, 0, 3, [y, a, inf]);
947 (%o1)/T/ - (y - a) - 2 a (y - a) + (1 - a )
950 + (1 - a - 2 a (y - a) - (y - a) ) x
953 + (1 - a - 2 a (y - a) - (y - a) ) x
956 + (1 - a - 2 a (y - a) - (y - a) ) x + . . .
958 (%o2) [[y, a, inf], [x, 0, 3]]
966 @deffn {Función} taylorp (@var{expr})
967 Devuelve @code{true} si @var{expr} es un desarrollo de Taylor y @code{false} en caso contrario.
974 @defvr {Variable opcional} taylor_logexpand
975 Valor por defecto: @code{true}
977 La variable @code{taylor_logexpand} controla los desarrollos de logaritmos en la función @code{taylor}.
979 Si @code{taylor_logexpand} vale @code{true}, todos los logaritmos se expanden completamente de manera que algunos problemas que se plantean debido a ciertas identidades logarítmicas no interfieran con el proceso del cálculo del desarrollo de Taylor. Sin embargo, este proceder no es del todo correcto.
981 @c NEED EXAMPLES HERE
988 @defvr {Variable opcional} taylor_order_coefficients
989 Valor por defecto: @code{true}
991 La variable @code{taylor_order_coefficients} controla la ordenación de los coeficientes en un desarrollo de Taylor.
993 Si @code{taylor_order_coefficients} vale @code{true}, los coeficientes del desarrollo de Taylor se ordenan de la forma canónica.
994 @c IS MAXIMA'S NOTION OF "CANONICALLY" DESCRIBED ELSEWHERE ??
995 @c AND WHAT HAPPENS WHEN IT IS FALSE ??
997 @c NEED EXAMPLES HERE
1004 @deffn {Función} taylor_simplifier (@var{expr})
1005 Simplifica los coeficientes de la serie de potencias @var{expr}. Esta función es llamada desde la función @code{taylor}.
1012 @defvr {Variable opcional} taylor_truncate_polynomials
1013 Valor por defecto: @code{true}
1015 @c WHAT IS THE "INPUT TRUNCATION LEVEL" ?? THE ARGUMENT n OF taylor ??
1016 Si @code{taylor_truncate_polynomials} vale @code{true}, los polinomios quedan truncados en base a los niveles de truncamiento de entrada.
1018 En otro caso, aquellos polinomios que se utilicen como entrada a la función @code{taylor} se consideran que tienen precisión infinita.
1019 @c WHAT IS "INFINITE PRECISION" IN THIS CONTEXT ??
1024 @deffn {Función} taytorat (@var{expr})
1025 Convierte @var{expr} del formato de @code{taylor} al formato CRE (Canonical Rational Expression). El efecto es el mismo que haciendo @code{rat (ratdisrep (@var{expr}))}, pero más rápido.
1031 @deffn {Función} trunc (@var{expr})
1032 Devuelve la representación interna de la expresión @var{expr} de tal forma como si sus sumas fuesen una serie truncada de Taylor. La expresión @var{expr} no sufre ninguna otra modificación.
1037 (%i1) expr: x^2 + x + 1;
1042 (%o2) 1 + x + x + . . .
1043 (%i3) is (expr = trunc (expr));
1052 @deffn {Función} unsum (@var{f}, @var{n})
1053 Devuelve la diferencia @code{@var{f}(@var{n}) - @var{f}(@var{n} - 1)}. En cierto sentido @code{unsum} es la inversa de @code{sum}.
1055 Véase también @code{nusum}.
1058 @c GENERATED FROM THE FOLLOWING INPUTS
1059 @c g(p) := p*4^n/binomial(2*n,n);
1061 @c nusum (%, n, 0, n);
1065 (%i1) g(p) := p*4^n/binomial(2*n,n);
1068 (%o1) g(p) := ----------------
1073 (%o2) ----------------
1075 (%i3) nusum (%, n, 0, n);
1077 2 (n + 1) (63 n + 112 n + 18 n - 22 n + 3) 4 2
1078 (%o3) ------------------------------------------------ - ------
1079 693 binomial(2 n, n) 3 11 7
1083 (%o4) ----------------
1090 @defvr {Variable opcional} verbose
1091 Valor por defecto: @code{false}
1093 Si @code{verbose} vale @code{true}, la función @code{powerseries} va imprimiendo mensajes durante su ejecución.
1106 @node Introducción a las series de Fourier, Funciones y variables para series de Fourier, Funciones y variables para las series, Sumas productos y series
1107 @section Introducción a las series de Fourier
1109 El paquete @code{fourie} contiene funciones para el cálculo simbólico de
1110 series de Fourier. Hay funciones en el paquete @code{fourie} para calcular los
1111 coeficientes y para manipular las expresiones.
1123 @node Funciones y variables para series de Fourier, Funciones y variables para series de Poisson, Introducción a las series de Fourier, Sumas productos y series
1124 @section Funciones y variables para series de Fourier
1127 @deffn {Función} equalp (@var{x}, @var{y})
1128 Devuelve @code{true} si @code{equal (@var{x}, @var{y})}, en otro caso devuelve @code{false}. No devuelve el mensaje de error que se obtiene de @code{equal (x, y)} en un caso como éste.
1132 @deffn {Función} remfun (@var{f}, @var{expr})
1133 @deffnx {Función} remfun (@var{f}, @var{expr}, @var{x})
1134 La llamada @code{remfun (@var{f}, @var{expr})} reemplaza todas las subexpresiones @code{@var{f} (@var{arg})} por @var{arg} en @var{expr}.
1136 La llamada @code{remfun (@var{f}, @var{expr}, @var{x})} reemplaza todas las subexpresiones @code{@var{f} (@var{arg})} por @var{arg} en @var{expr} sólo si @var{arg} contiene a la variable @var{x}.
1140 @deffn {Función} funp (@var{f}, @var{expr})
1141 @deffnx {Función} funp (@var{f}, @var{expr}, @var{x})
1142 La llamada @code{funp (@var{f}, @var{expr})} devuelve @code{true} si @var{expr} contiene la función @var{f}.
1144 La llamada @code{funp (@var{f}, @var{expr}, @var{x})} devuelve @code{true} si @var{expr} contiene la función @var{f} y la variable @var{x} está presente en el argumento de alguna de las presencias de @var{f}.
1148 @deffn {Función} absint (@var{f}, @var{x}, @var{halfplane})
1149 @deffnx {Función} absint (@var{f}, @var{x})
1150 @deffnx {Función} absint (@var{f}, @var{x}, @var{a}, @var{b})
1151 La llamada @code{absint (@var{f}, @var{x}, @var{halfplane})} devuelve la integral indefinida de @var{f} con respecto a
1152 @var{x} en el semiplano dado (@code{pos}, @code{neg} o @code{both}). La función @var{f} puede contener expresiones de la forma @code{abs (x)}, @code{abs (sin (x))}, @code{abs (a) * exp (-abs (b) * abs (x))}.
1154 La llamada @code{absint (@var{f}, @var{x})} equivale a @code{absint (@var{f}, @var{x}, pos)}.
1156 La llamada @code{absint (@var{f}, @var{x}, @var{a}, @var{b})} devuelve la integral definida de @var{f} con respecto a @var{x} de @var{a} a @var{b}.
1160 @deffn {Función} fourier (@var{f}, @var{x}, @var{p})
1161 Devuelve una lista con los coeficientes de Fourier de
1162 @code{@var{f}(@var{x})} definida en el intervalo @code{[-p, p]}.
1167 @deffn {Función} foursimp (@var{l})
1168 Simplifica @code{sin (n %pi)} a 0 si @code{sinnpiflag} vale @code{true} y
1169 @code{cos (n %pi)} a @code{(-1)^n} si @code{cosnpiflag} vale @code{true}.
1174 @defvr {Variable opcional} sinnpiflag
1175 Valor por defecto: @code{true}
1177 Véase @code{foursimp}.
1181 @defvr {Variable opcional} cosnpiflag
1182 Valor por defecto: @code{true}
1184 Véase @code{foursimp}.
1190 @deffn {Función} fourexpand (@var{l}, @var{x}, @var{p}, @var{limit})
1191 Calcula y devuelve la serie de Fourier a partir de la lista de los coeficientes de Fourier @var{l} hasta el término @var{limit} (@var{limit} puede ser @code{inf}). Los argumentos @var{x} y @var{p} tienen el mismo significado que en
1197 @deffn {Función} fourcos (@var{f}, @var{x}, @var{p})
1198 Devuelve los coeficientes de los cosenos de Fourier de @code{@var{f}(@var{x})} definida en @code{[0, @var{p}]}.
1203 @deffn {Función} foursin (@var{f}, @var{x}, @var{p})
1204 Devuelve los coeficientes de los senos de Fourier de @code{@var{f}(@var{x})} definida en @code{[0, @var{p}]}.
1209 @deffn {Función} totalfourier (@var{f}, @var{x}, @var{p})
1210 Devuelve @code{fourexpand (foursimp (fourier (@var{f}, @var{x}, @var{p})), @var{x}, @var{p}, 'inf)}.
1215 @deffn {Función} fourint (@var{f}, @var{x})
1216 Calcula y devuelve la lista de los coeficientes integrales de Fourier de @code{@var{f}(@var{x})} definida en @code{[minf, inf]}.
1221 @deffn {Función} fourintcos (@var{f}, @var{x})
1222 Devuelve los coeficientes integrales de los cosenos @code{@var{f}(@var{x})} en @code{[0, inf]}.
1227 @deffn {Función} fourintsin (@var{f}, @var{x})
1228 Devuelve los coeficientes integrales de los senos @code{@var{f}(@var{x})} en @code{[0, inf]}.
1242 @node Funciones y variables para series de Poisson, , Funciones y variables para series de Fourier, Sumas productos y series
1243 @section Funciones y variables para series de Poisson
1246 @deffn {Función} intopois (@var{a})
1247 Convierte @var{a} en un codificado Poisson.
1254 @deffn {Función} outofpois (@var{a})
1255 Convierte @var{a} desde codificado de Poisson a una representación general. Si @var{a} no está en forma de Poisson, @code{outofpois} hace la conversión, siendo entonces el valor retornado @code{outofpois (intopois (@var{a}))}. Esta función es un simplificador canónico para sumas de potencias de senos y cosenos.
1260 @deffn {Función} poisdiff (@var{a}, @var{b})
1261 Deriva @var{a} con respecto a @var{b}. El argumento @var{b} debe aparecer sólo en los argumentos trigonométricos o sólo en los coeficientes.
1266 @deffn {Función} poisexpt (@var{a}, @var{b})
1267 Idéntico a @code{intopois (@var{a}^@var{b})}. El argumento @var{b} debe ser un entero positivo.
1272 @deffn {Función} poisint (@var{a}, @var{b})
1273 Integra en un sentido restringido similar a @code{poisdiff}.
1277 @defvr {Variable optativa} poislim
1278 Valor por defecto: 5
1280 La variable @code{poislim} determina el dominio de los coeficientes en los argumentos de las funciones trigonométricas. El valor por defecto 5 corresponde al intervalo [-2^(5-1)+1,2^(5-1)], o [-15,16], pero puede reasignarse para [-2^(n-1)+1, 2^(n-1)].
1285 @deffn {Función} poismap (@var{series}, @var{sinfn}, @var{cosfn})
1286 Aplica las funciones @var{sinfn} a los términos sinusoidales y
1287 las funciones @var{cosfn} a los cosenoidales de la serie de Poisson
1288 dada. Tanto @var{sinfn} como @var{cosfn} son funciones de dos
1289 argumentos, los cuales son un coeficiente y una parte trigonométrica
1290 de un término de la serie.
1294 @deffn {Función} poisplus (@var{a}, @var{b})
1295 Idéntico a @code{intopois (a + b)}.
1299 @deffn {Función} poissimp (@var{a})
1300 Convierte @var{a} en una serie de Poisson para @var{a} en su representación general.
1305 @defvr {Símbolo especial} poisson
1306 El símbolo @code{/P/} sigue a la etiqueta de las líneas que contienen expresiones que son series de Poisson.
1311 @deffn {Función} poissubst (@var{a}, @var{b}, @var{c})
1312 Sustituye @var{b} por @var{a} en @var{c}, donde @var{c} es una serie de Poisson.
1314 (1) Si @var{b} es una de las variables @var{u}, @var{v}, @var{w}, @var{x}, @var{y} o @var{z}, entonces @var{a} debe ser una expresión lineal en esas variables (por ejemplo, @code{6*u + 4*v}).
1316 (2) Si @var{b} no es ninguna de esas variables, entonces @var{a} no puede contener tampoco a ninguna de ellas, ni senos, ni cosenos.
1318 @c AQUI FALTA PARRAFO
1322 @deffn {Función} poistimes (@var{a}, @var{b})
1323 Idéntico a @code{intopois (@var{a}*@var{b})}.
1329 @c AQUI FALTA DEFINICION DE poistrim
1332 @deffn {Función} printpois (@var{a})
1333 Presenta una serie de Poisson en un formato legible. Conjuntamente con @code{outofpois}, si es necesario convertirá @var{a} primero en una codificación de Poisson.