Разложение в ряд Тейлора в максимумах - PullRequest
1 голос
/ 18 февраля 2020

Как развернуть ряды / полиномы Тейлора относительно Q = 0, а затем извлечь коэффициенты в виде списка

пример:

taylor ( (sin(q)), q, 0, 9); //taylor expansion for first 9 terms gives the next line

(%o1)/T/    q\-q^3/6+q^5/120\-q^7/5040+q^9/362880+...

, затем использовать коэффициент ((% o1), q ^ п); дает мне коэффициент только при n, я хочу список всех коэффициентов этого выражения

Ответы [ 2 ]

1 голос
/ 20 февраля 2020

Попробуйте coeff плюс makelist, например, что-то вроде: makelist(coeff(%o1, q, n), n, 0, 9);

0 голосов
/ 19 февраля 2020

Редактировать:

Теперь я вижу, что неправильно прочитал ваш вопрос и уже есть ответ . Тем не менее, я сохраню его, потому что он связан с вашим вопросом.


Используйте powerseries вместо taylor:

(%i1) expr:powerseries(sin(x),x,0);
                           inf
                           ====        i2  2 i2 + 1
                           \      (- 1)   x
(%o1)                       >     -----------------
                           /         (2 i2 + 1)!
                           ====
                           i2 = 0

Вы можете получить коэффициент с помощью args или part функция

(%i2) op(expr);
(%o2)                                 sum
(%i3) args(expr);
                              i2  2 i2 + 1
                         (- 1)   x
(%o3)                   [-----------------, i2, 0, inf]
                            (2 i2 + 1)!
(%i4) part(expr,1);
                                    i2  2 i2 + 1
                               (- 1)   x
(%o4)                          -----------------
                                  (2 i2 + 1)!
(%i5) args(expr)[1];
                                    i2  2 i2 + 1
                               (- 1)   x
(%o5)                          -----------------
                                  (2 i2 + 1)!

Если вы хотите изменить индексную переменную:

(%i6) niceindices(expr),niceindicespref=[n];
                             inf
                             ====       n  2 n + 1
                             \     (- 1)  x
(%o6)                        >    ---------------
                             /       (2 n + 1)!
                             ====
                             n = 0
...