348
9 Polynˆ omes orthogonaux en th´ eorie de l’approximation
Programme 72 - coefherm : Coefficients des polynˆ omes d’Hermite
function [a,b]=coefherm(n)
%COEFHERM Coefficients des polynˆ omes de Hermite.
% [A,B]=COEFHERM(N): A et B sont les coefficients alpha(k) et beta(k)
% du polynˆ ome de Hermite de degr´ e N.
if n<=1, error(’n doit ˆ etre >1 ’); end
a=zeros(n,1); b=zeros(n,1); b(1)=sqrt(4.*atan(1.)); k=[2:n];
b(k)=0.5*(k-1); return
Programme 73 - zplege : Noeuds et poids des formules de Gauss-Legendre
function [x,w]=zplege(n)
%ZPLEGE formule de Gauss-Legendre.
% [X,W]=ZPLEGE(N) calcule les noeuds et les poids de la
% formule de Gauss-Legendre `
a N noeuds.
if n<=1, error(’n doit ˆ etre >1’); end
[a,b]=coeflege(n);
JacM=diag(a)+diag(sqrt(b(2:n)),1)+diag(sqrt(b(2:n)),-1);
[w,x]=eig(JacM); x=diag(x); scal=2; w=w(1,:)’.ˆ2*scal;
[x,ind]=sort(x); w=w(ind); return
Programme 74 - zplagu : Noeuds et poids des formules de Gauss-Laguerre
function [x,w]=zplagu(n)
%ZPLAGU formule de Gauss-Laguerre.
% [X,W]=ZPLAGU(N) calcule les noeuds et les poids de la
% formule de Gauss-Laguerre `
a N noeuds.
if n<=1, error(’n doit ˆ etre >1 ’); end
[a,b]=coeflagu(n);
JacM=diag(a)+diag(sqrt(b(2:n)),1)+diag(sqrt(b(2:n)),-1);
[w,x]=eig(JacM); x=diag(x); w=w(1,:)’.ˆ2; return
Programme 75 - zpherm : Noeuds et poids des formules de Gauss-Hermite
function [x,w]=zpherm(n)
%ZPHERM formule de Gauss-Hermite.
% [X,W]=ZPHERM(N) calcule les noeuds et les poids de la
% formule de Gauss-Hermite `
a N noeuds.
if n<=1, error(’n doit ˆ etre >1 ’); end
[a,b]=coefherm(n);
JacM=diag(a)+diag(sqrt(b(2:n)),1)+diag(sqrt(b(2:n)),-1);
[w,x]=eig(JacM); x=diag(x); scal=sqrt(pi); w=w(1,:)’.ˆ2*scal;
[x,ind]=sort(x); w=w(ind); return
Précédent

- 354/540

Suivant