spintgrl.m
来自「Matlab 6.0图形图像处理所附带的光盘」· M 代码 · 共 47 行
M
47 行
function z=spintgrl(x,y,xi)%SPINTGRL Cubic Spline Integral Interpolation.% YI=SPINTRGL(X,Y,XI) uses cubic spline interpolation to fit the% data in X and Y, integrates the spline, and returns% values of the integral evaluated at the points in XI.%% PPI=SPINTGRL(PP) returns the piecewise polynomial vector PPI% describing the integral of the cubic spline described by% the piecewise polynomial in PP. PP is returned by the function% SPLINE and is a data vector containing all information to% evaluate and manipulate a spline.%% YI=SPINTGRL(PP,XI) integrates the cubic spline given by% the piecewise polynomial PP, and returns the values of the% integral evaluated at the points in XI.%% See also SPLINE, PPVAL, MKPP, UNMKPP, SPDERIV% D.C. Hanselman, University of Maine, Orono, ME 04469% 1/27/95% Copyright (c) 1996 by Prentice-Hall, Inc. if nargin==3 pp=spline(x,y);else pp=x;end[br,co,npy,nco]=unmkpp(pp); % take apart ppif pp(1)~=10 error('Spline data does not have the correct form.')endsf=nco:-1:1; % scale factors for integrationico=[co./sf(ones(npy,1),:) zeros(npy,1)]; % integral coefficientsnco=nco+1; % integral spline has higher orderfor k=2:npy % find constant terms in polynomials ico(k,nco)=polyval(ico(k-1,:),br(k)-br(k-1));endppi=mkpp(br,ico); % build pp form for integralif nargin==1 z=ppi;elseif nargin==2 z=ppval(ppi,y);else z=ppval(ppi,xi);end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?