newpoly.m

来自「国外计算机科学教材系列 numerial method using matla」· M 代码 · 共 40 行

M
40
字号
function [C,D]=newpoly(X,Y)%Input   - X is a vector that contains a list of abscissas%        - Y is a vector that contains a list of ordinates%Output  - C is a vector that contains the coefficients%          of the Newton intepolatory polynomial%        - D is the divided difference table% NUMERICAL METHODS: MATLAB Programs%(c) 1999 by John H. Mathews and Kurtis D. Fink%To accompany the textbook:%NUMERICAL METHODS Using MATLAB,%by John H. Mathews and Kurtis D. Fink%ISBN 0-13-270042-5, (c) 1999%PRENTICE HALL, INC.%Upper Saddle River, NJ 07458n=length(X);D=zeros(n,n);D(:,1)=Y';%Use formula (20) to form the divided difference tablefor j=2:n   for k=j:n      D(k,j)=(D(k,j-1)-D(k-1,j-1))/(X(k)-X(k-j+1));   endend%Determine the coefficients of the Newton interpolatory polynomialC=D(n,n);for k=(n-1):-1:1   C=conv(C,poly(X(k)));   m=length(C);   C(m)=C(m)+D(k,k);end

⌨️ 快捷键说明

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