% Taylorrekkeutvikling av en funksjon om punktet a
% krever "Symbolic Math Toolbox"
clear all;
close all;
clc

syms x a;
funksjon = @(x) sin(x); %funksjonen som skal rekkeutvikles, f.eks. sin(x) eller cos(x)
n=3;                    %antall ledd i rekken
f=sym(0);
for i=0:n
    f=f+diff(funksjon(a),i)/prod(1:i)*(x-a)^i;
end
a=sym(0);               %rekkeutvikling om punktet a, f.eks. a=0
f=subs(f)                       


x=a-pi:0.05:a+pi;
f2=double(subs(f));
x=double(x);
plot(x,f2);
hold on
plot(x,funksjon(x),'r');
tekst=func2str(funksjon);
tekst=tekst(5:length(tekst));
legend(char(f),tekst);

