1.利用n阶泰勒多项式展开来估算函数f(x)=e^x在指定点x处的近似值。要求绝对误差在最大阶数MAXN以内达到给定精度EPS。

taylorcal函数:

function taylorcal()

eps=0.00001;

MAXN=20;

x=input('存储输入的浮点数/向量');

f1=zeros(1,length(x));

for j=1:length(x)

xzs=1;

xjc=1;

xsum=1;

accexp=exp(x(j));

for i=1:MAXN

xzs=xzs.*x(j);

xjc=xjc.*i;

xsum=xsum+xzs./xjc;

if abs(xsum-accexp)

f1(j)=xsum;

break

end

f1(j)=-1;

end

end

disp([x' f1'])

end

截图:

2.测试程序,分别查看当x=-6,5时的泰勒展开的前20项的值。(泰勒公式过程分析)

taylorcaltest函数

function taylorcaltest()

eps=0.00001;

MAXN=20;

x=input('存储输入的浮点数/向量');

flp=zeros(1,length(x));

for j=1:length(x)

xzs=1;

xjc=1;

xsum=1;

accexp=exp(x(j));

for i=1:MAXN

xzs=xzs.*x(j);

xjc=xjc.*i;

term(i)=xzs./xjc;

xsum=xsum+xzs./xjc;

flp(i)=xsum;

if abs(xsum-accexp)

fl(j)=xsum;

break

end

fl(j)=-1;

end

end

disp([[1:20],flp,term])

end

截图:

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐