最近在复习微分方程的时候,突然被平台上一些写泰勒展开的文章里对论述泰勒展开的精辟见解所吸引,虽然像matlab和geogbra上都存在现成的泰勒展开函数,但终究是别人写好得拿来用。正好眼下无事,就顺手用MATLAB码了几行实现了泰勒展开,如下:
clear;close all;
syms f(x) T(x) k0(x);
f(x)=sin(x); %任意函数
n=7;%阶
x0=0;%X轴展开求导处
k0(x)=0;%表达式初始化
for n=0:1:n
di=subs(diff(f,n),x,x0);%展开处求导函数值
T(x)=(di*((x-x0)^n))/factorial(n);%因子
k0(x)=k0(x)+T(x);%泰勒展开
end
k0 %泰勒 n 阶表达式
eval(k0);%数值处理
eval(f);
x=-6:0.01:6;%图形定义域
plot(x,f(x),x,k0(x))
%%%%%
代码效率很低,纯属为了验证演算过程所写。
结束
2020.2