复旦大学:《Matlab》(ppt实验英文版)Chapter 2 Polynomial Interpolation

Introduction to scientific Computing A Matrix Vector Approach Using Matlab Written by Charles FVan Loan 陈文斌 Wbchen(fudan. edu. cn 复日大学
Introduction to Scientific Computing -- A Matrix Vector Approach Using Matlab Written by Charles F.Van Loan 陈 文 斌 Wbchen@fudan.edu.cn 复旦大学

Chapter2 Polynomial Interpolation The vandermonde approach ° The Newton Approach Properties Special Topics
Chapter2 Polynomial Interpolation • The vandermonde Approach • The Newton Approach • Properties • Special Topics

Polynomial interpolation problem Given x…,xn( listinct)amdy…yn find a polynomialpmn(x)of degree n-1 (or less) such that pn(x)=y, for i=l: n
Polynomial interpolation problem (or less) such that p (x ) y for i :n find a polynomial p (x) of ree nGiven x ,...,x (distinct) and y ,...,y , n - i i n - n n 1 deg 1 1 1 1 1 = =

Vandermonde Approach B ase x, X pn-(x)=a+a,x+a3x+.+anx pn=1(x)=a1+02x+a3x12+…+anx 2 VI 2 2 V2 x 2 X n
Vandermonder Approach 2 1 1 1 2 3 ( ) ... − − = + + + + n n n p x a a x a x a x i n n i i i n i p x = a + a x + a x + + a x = y − − 2 1 1 1 2 3 ( ) ... = − − − − n n n n n n n n n y y y y a a a a x x x x x x x x x x x x 3 2 1 3 2 1 2 1 1 3 2 3 3 1 2 2 2 2 1 1 2 1 1 1 1 1 1 Base 1, x, x2 , … V

n= length(x);v=ones(n, n) for j=l: n n= length (x); V= ones(n, n); forⅰ=1:n Set up row i Set up row i for j=1: n V(i)=X()^j-1) V(i =(X(*ones(1, n)). c 1) end end end n=length (x) V=ones(n, n) n= length (x); V= ones(n, n)I for j=1: n for j=2: n Set up column i Set up column i for j=l: n for j=l: n V(i)=X()^j-1) V(】)=x()xV(j-1) end end end end
n = length(x); V = ones(n,n) for i=1:n % Set up row i. for j=1:n V(i,j) = x(i)^(j-1); end end n = length(x); V = ones(n,n); for i=1:n % Set up row i. V(i,:) = (x(i)*ones(1,n)).^(j- 1); end n = length(x); V = ones(n,n) for j=1:n % Set up column i. for i=1:n V(i,j) = x(i)^(j-1); end end n = length(x); V = ones(n,n) for j=2:n % Set up column i. for i=1:n V(i,j) = x(i)*V(i,j-1); end end

function a=Interp(x,y) a=Inverpv(x,y This computes the vandermonde polynomial interpolant where %o x is a column n-vector with distinct components and y is a column n-vector %o a is a column n-vector with the property that if (X)=a(1)+a(2)x+…a(n)x^(n-1) o then %p(X()=y(1),i=1n n=length(X V=ones(n, n) for i=2: n Set up column J V(:j)=X*V(:-1) end a 2n3/3 flops
function a = InterpV(x,y) % a = InverpV(x,y) % This computes the Vandermonde polynomial interpolant where % x is a column n-vector with distinct components and y is a % column n-vector. % % a is a column n-vector with the property that if % % p(x) = a(1) + a(2)x + ... a(n)x^(n-1) % then % p(x(i)) = y(i), i=1:n n = length(x); V = ones(n,n); for j=2:n % Set up column j. V(:,j) = x.*V(:,j-1); end a = V\y; 2n3 /3 flops

Nested multipication pr(=a+.+anx atx=z n-length(a); zpower=1 pval=a(1) for i=2: n zpower-z zpower pval=pval+a(i)*zpower er
Nested Multipication p x a a x x z n n = + + n = − − ( ) ... at 1 1 1 n=length(a); zpower=1; pval=a(1); for i=2:n zpower=z*zpower; pval=pval+a(i)*zpower; end

Horner's ruler m-or=a+a,x+a3x+aux =(a4x+a2)x+a2)x+a1 m=length(z) n-length(a) nF=length(a) pval=zeros(m, 1) pval=a(n) Many points Forj=1: m fori=n-1:-1:1 pval(=a(n) pval=z pval+a(1) fori=n-1:-1:1 end pval=zo *pval(+a(i) end: enc d
Horner's ruler 4 3 2 1 3 4 2 1 1 2 3 (( ) ) ( ) a x a x a x a pn x a a x a x a x = + + + − = + + + n=length(a); pval=a(n); for i=n-1:-1:1 pval=z*pval+a(i); end m=length(z);n=length(a); pval=zeros(m,1); For j=1:m pval(j)=a(n); for i=n-1:-1:1 pval(j)=z(j)*pval(j)+a(i); end;end Many points

Evalute at many points Function pval=Horner V(a, 2) mF=length(z); n=length(a) pval=a(n *ones(m, 1) fork=n-1:-1:1 pval=z "pval+a(k) en 2m flops All: 2mn flops 6 Script see next page
0 2 4 6 -2 -1 0 1 2 0 2 4 6 -2 -1 0 1 2 0 2 4 6 -2 -1 0 1 2 0 2 4 6 -2 -1 0 1 2 Evalute at many points Function pval=HornerV(a,Z) m=length(z);n=length(a); pval=a(n)*ones(m,1); for k=n-1:-1:1 pval=z.*pval+a(k); end 2m flops All:2mn flops Script see next page

o Script File: Show V 1% Plots 4 random cubic interpolants of sin(x)on [0, 2pi] %o Uses the vandermonde method close a :0-linspace(0, 2 pi, 100) yo= sin(x0) for eg=1: 4 Display cubic interpolants of sin(x). The abscissas are chosen x=2*pi*sort(rand( 4, 1) randomly sin(X a=Interp( y) p Val= Horner v(a,]O) subplot(2, 2, eg plot( xo, y0, 0, p Val, x,y, * axiS([02*p-22]) end
% Script File: ShowV % Plots 4 random cubic interpolants of sin(x) on [0,2pi]. % Uses the Vandermonde method. close all x0 = linspace(0,2*pi,100)'; y0 = sin(x0); for eg=1:4 x = 2*pi*sort(rand(4,1)); y = sin(x); a = InterpV(x,y); pVal = HornerV(a,x0); subplot(2,2,eg) plot(x0,y0,x0,pVal,'--',x,y,'*') axis([0 2*pi -2 2]) end Display cubic interpolants of sin(x). The abscissas are chosen randomly
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 复旦大学:《Matlab》(ppt实验英文版)Chapter 8 Nonlinear Equations and Optimization.ppt
- 复旦大学:《Matlab》(ppt实验英文版)Chapter 7 The QR and Cholesky Factorizations.ppt
- 复旦大学:《Matlab》(ppt实验英文版)Chapter 6 Linear systems.ppt
- 复旦大学:《Matlab》(ppt实验英文版)Chapte 4 Numerical Integration.ppt
- 复旦大学:《Matlab》(ppt实验英文版)Chapter3 Piecewise Polynomial Interpolation.ppt
- 《计算机网络基础》第7章 网络管理与网络安全.ppt
- 《计算机网络基础》第6章 网页制作技术.ppt
- 《计算机网络基础》第5章 Internet的使用.ppt
- 《小技巧让PDF文件与Word文档之间自由地转换》讲义.pdf
- 同济大学:《计算机文化》(第三版)第六章 网络基础.ppt
- 同济大学:《计算机文化》(第三版)第五章 应用软件和办公软件.ppt
- 同济大学:《计算机文化》(第三版)第四章 系统软件及其常用操作系统.ppt
- 同济大学:《计算机文化》(第三版)第一章 计算机与信息社会.ppt
- 《ASP网页数据库短训教程》第9章 Application对象与 Session对象.ppt
- 《ASP网页数据库短训教程》第8章 Request对象及其使用.ppt
- 《ASP网页数据库短训教程》第7章 ASP程序与ASP的内置对象.ppt
- 《ASP网页数据库短训教程》第6章 VBScript的对象编程.ppt
- 《ASP网页数据库短训教程》第5章 VBScript编程语言(二).ppt
- 《ASP网页数据库短训教程》第4章 VBScript编程语言(一).ppt
- 《ASP网页数据库短训教程》第3章 HTML语言介绍(二).ppt
- 复旦大学:《Matlab》(ppt实验英文版)Chapter 9 The Initial Value Problem.ppt
- 复旦大学:《Matlab》(ppt实验英文版)Chapter 5 Matrix computations.ppt
- 复旦大学:《Matlab》(ppt实验英文版)Chapter I power tools of the trade.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第1章 绪论.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第2章 线性表.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第3章 栈和队列.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第4章 串.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第5章 多维数组和广义表.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第6章 树.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第7章 图.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第8章 查找.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第9章 排序.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第七章 图.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第九章 排序.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第八章 查找.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)第十章 文件.ppt
- 同济大学:《数据结构》课程PPT教学课件(C++描述)目录.ppt
- 华南热带农业大学:《计算机导论》第1章 计算机基础知识计.ppt
- 华南热带农业大学:《计算机导论》第2章 微型计算机系统的组成.ppt
- 华南热带农业大学:《计算机导论》第3章 计算机操作系统.ppt