Como construir expansão de Taylor de função arbitrária em Matlab?

0
Estou lendo um livro intitulado "Método de Análise de Homotopia na Equação Diferencial Não Linear" por Shijun Liao. No capítulo 13, Aplicação em Finanças: Opção de Venda Americana, há um apêndice sobre o código matemático do capítulo. No entanto, eu não tenho o Mathematica, mas o Matlab, e eu desejo reescrever o código no Matlab.

Aqui está a primeira parte do código do Mathematica:

<<Calculus'Pade';
<<Graphics'Graphics';

(* Define approx[f] for Taylor expansion of f *)
approx[f_] := Module[{temp},
temp[0] = Series[f, {t, 0, OrderTaylor}]//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]
];

Eu sei do site Wolfram Reference que a série [f, {x, x0, n}] gera uma expansão de série de energia para f sobre o ponto x = x0 para ordenar (x-x0) ^ n. Assim, eu preciso construir uma série de poder de expansão para f. No entanto, tanto quanto eu sei, no matlab, temos que definir o primeiro, por exemplo, f = cos (x), etc Então, a minha pergunta é, como constuir expansão Taylor da função arbitrária em Matlab? >

Obrigado antecipadamente.

    
por Monica Sendi Afa 13.04.2016 / 04:49

1 resposta

0

Se você quiser usar matemática no Matlab como é feito no Mathematica, você precisará da ' Symbolic Math Toolbox '.

Com essa caixa de ferramentas, é fácil usar a função de personalização

do build-in

Veja a página sobre esta função para exemplos de sintaxe

    
por 16.09.2016 / 16:25