lagrangen.m

来自「自己编写的matlab程序 数值分析里的程序」· M 代码 · 共 25 行

M
25
字号
%1.此程序为n个节点及函数值的n-1次Lagrange插值多项式求x处的近似值程序
%2.lagrange insert
%3.x0为n维插值节点向量,y0为n维被插函数值向量
%4.x为插值点(也可以是m维向量)
%5.y为插值点x处的函数值(近似值,也可以是与x同维的向量)

function y=lagrangen(x0,y0,x)
n=length(x0);
%m=length(x);
%for i=1:m
   z=x;%(i);
   s=0;
   for k=1:n
      L=1;
      for j=1:n
         if j~=k
            L=L.*(z-x0(j))/(x0(k)-x0(j));
         end
      end
      s=s+L*y0(k);
   end
   y=s;%y(i)=s;
%end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?