matlab中的y( 1),在matlab中,对y=1/(1+x^2) ,-5

共回答了19个问题采纳率:84.2%

function main()

clear;clc;close all

x=linspace(-5,5,11);

y=1./(1+x.^2) ;x0=[0.3 0.5];

f=Language(x,y,x0);

function f = Language(x,y,x0)

%求已知数据点的拉格朗日插值多项式

%已知数据点的x坐标向量:x

%已知数据点的y坐标向量:y

%插值点的x坐标:x0

%求得的拉格朗日插值多项式或在x0处的插值:f

x=[0.0 0.4 0.8 1.2 1.6];%input x data(可替换为自己的数据)

y=[0 0.428392 0.742101 0.910314 0.970348];%input y data(可替换为自己的数据)

x0=[0.3 0.5];%input x0 data(可替换为自己的数据)

syms t l;

if(length(x) == length(y))

n = length(x);

else

disp('x和y的维数不相等!');

return; %检错

end

p=sym(0);

for (i=1:n)

l=sym(y(i));

for(k=1:i-1)

l=l*(t-x(k))/(x(i)-x(k));

end;

for(k=i+1:n)

l=l*(t-x(k))/(x(i)-x(k));

end;

p=p+l;

end

simplify(p);%简化多项式

f = subs (p,'t',x0); %计算插值点的函数值

f = vpa(f,6); %将插值多项式的值化成6位精度的小数

end

1年前

8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值