Wie kann man Taylor-Erweiterungen für beliebige Funktionen in Matlab konstruieren?

374
Monica Sendi Afa

Ich lese gerade ein Buch mit dem Titel "Homotopy Analysis Method in Nonlinear Differential Equation" von Shijun Liao. In Kapitel 13 Anwendung in Finanzen: Amerikanische Put-Option gibt es einen Anhang zum mathematica-Code des Kapitels. Ich habe jedoch nicht Mathematica, sondern Matlab und möchte den Code in Matlab umschreiben.

Hier ist der erste Teil des Mathematica-Codes:

<<Calculus`Pade`; <<Graphics`Graphics`;  (* Define approx[f] for Taylor expansion of f *) approx[f_] := Module[, temp[0] = Series[f, ]//Normal; temp[1] = temp[0] /. t^(n_.)*Derivative[j_][DiracDelta][0] -> 0; temp[2] = temp[1] /. t^(n_.)*DiracDelta[0] -> 0; temp[3] = temp[2] /. DiracDelta[0] -> 0; temp[4] = temp[3] /. Derivative[j_][DiracDelta][0] -> 0; temp[5] = N[temp[4],60]//Expand; If[KeyCutOff == 1, temp[5] = temp[5]//Chop]; temp[5] ]; 

Ich weiß von Wolfram Reference Site, dass die Serie [f, ] eine Potenzserienerweiterung für f um den Punkt x = x0 in der Reihenfolge (x-x0) ^ n erzeugt. Daher muss ich für f eine Potenzreihe von Erweiterungen konstruieren. Soweit ich weiß, müssen wir in Matlab zuerst f definieren, zum Beispiel f = cos (x) usw. Also, meine Frage ist, wie man die Taylor-Erweiterung der willkürlichen Funktion in Matlab konstruieren kann.

Danke im Voraus.

0
Versuchen Sie ein Matlab-Support-Forum, es gibt Wissenschaftler und Mathematiker. barlop vor 7 Jahren 0

1 Antwort auf die Frage

0
Lucademicus

Wenn Sie Matlab wie in Mathematica verwenden möchten, benötigen Sie die " Symbolic Math Toolbox ".

Mit dieser Toolbox ist die Verwendung der integrierten Tailor- Funktion unkompliziert

Auf der Seite zu dieser Funktion finden Sie Syntaxbeispiele

Bitte zitieren Sie die wesentlichen Teile der Antwort aus den Referenzlinks, da die Antwort ungültig werden kann, wenn sich die verlinkten Seiten ändern. DavidPostill vor 7 Jahren 0