?? language.m
字號:
function f = Language(x,y,x0)
syms t;
if(length(x) == length(y))
n = length(x);
else
disp('x和y的維數不相等!');
return;
end %檢錯
f = 0.0;
for(i = 1:n)
l = y(i);
for(j = 1:i-1)
l = l*(t-x(j))/(x(i)-x(j));
end;
for(j = i+1:n)
l = l*(t-x(j))/(x(i)-x(j)); %計算拉格朗日基函數
end;
f = f + l; %計算拉格朗日插值函數
simplify(f); %化簡
if(i==n)
if(nargin == 3)
f = subs(f,'t',x0); %計算插值點的函數值
else
f = collect(f); %將插值多項式展開
f = vpa(f,6); %將插值多項式的系數化成6位精度的小數
end
end
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -