Wie man eine symbolische taylor expansion von einer unbekannten Funktion $f(x)$ mit sympy

In Salbei es ist ziemlich einfach zu tun, eine Taylor-expansion von einer unbekannten Funktion f(x),

x = var('x')
h = var('h')
f = function('f',x)
g1 = taylor(f,x,h,2)

Wie kann das getan werden, in sympy?


Update

asmeurer weist darauf hin, dass dies ein feature, das demnächst verfügbar in sympy aus dem pull-request http://github.com/sympy/sympy/pull/1888. Ich installierte den Zweig mit pip,

pip install -e git+git@github.com:renatocoutinho/sympy.git@897b#egg=sympy --upgrade

Jedoch, wenn ich versuche zu berechnen, die Serie von f(x),

x, h = symbols("x,h")
f = Function("f")
series(f,x,x+h)

Bekomme ich die folgende Fehlermeldung,

TypeError: unbound method Serie() muss aufgerufen werden, mit f als Beispiel
erste argument (got Symbol-Instanz statt)

  • Sie können es nicht. Einfach eine Schleife verwenden und diff. Und die Funktion wird aufgerufen series nicht taylor.
  • Es ist ein pull-request zu machen, diese Arbeit auf github.com/sympy/sympy/pull/1888.
  • fantastisch! Dies war nicht eingebunden in den master branch, ist es noch möglich, diese zu installieren, mit pip. Oder muss ich clone das repo, den patch anzuwenden und dann von der Quelle erstellen?
  • Ich habe versucht anzuwenden, github.com/sympy/sympy/pull/1888.patch, um die aktuelle Masterkopie von sympy mit git apply aber das ist fehlgeschlagen. Was empfehlen Sie?
  • Der einfachste Weg ist Arbeit, von seinem ast, bis dass pull-request zusammengeführt werden.
  • Ich habe gerade aktualisiert, mit dem, was ich versucht, aber der code gibt einen Fehler zurück. Ich bin nicht allzu vertraut mit sympy aber wahrscheinlich bin ich mit der Bibliothek falsch oder es ist etwas falsch mit der installierten Zweig.
  • Ichm currently working on a code that does something similar. I plan on providing it to the sympy community when Im mehr sicher, dass es Ergebnisse genau sind. es müssen einige Anpassung, wenn..
  • das klingt gut, poste bitte die pull commit hier, ich wäre daran interessiert, einen Blick.
  • sicher, wenn ich herauszufinden, wie man 🙂 ich werde priorisieren, zunächst Fort, um sicherzustellen, dass die Ergebnisse genau sind. Ich freue mich zu sehen, was es aussieht, wenn (falls) es ist schließlich integriert.
  • arbeiten noch daran.. (unter anderem) ..also andere Menschen gehen nicht über develloping die gleiche Sache unnötig, meine braucht mehrere taylor-Reihe von nicht-pendeln-Betreiber, erweitert Sie, cross-multipliziert, nimmt Unterschiede, und gibt ein Ergebnis zurück, zu einer vorgegebenen Reihenfolge, symbolisch, als pdf-Datei.. es ist ziemlich schnell.
  • obigen Kommentar..

Schreibe einen Kommentar