Académique Documents
Professionnel Documents
Culture Documents
avril 2000
Le chier Matlab elimin.m est ` votre disposition. A partir de la donne de a e ai , i = 1, N , ci , i = 1, N 1, et du vecteur b, cet algorithme rsoud le syst`me e e linaire Ax = b, o` A est donne par (1). Cet algorithme est incomplet, vous devez e u e le complter. Pour tester lalgorithme, vous pouvez considrer le cas o` ai = 2, e e u i = 1, ..., N , ci = 1 i = 1, ..., N 1 et bi = 1, i = 1, ..., N . Il est alors facile 1 de vrier que la solution du syst`me linaire est donne par xi = i(N + 1 i), e e e e 2 i = 1, ..., N .
Le chier elimin.m function [b]=elimin(N) % % function [b]=elimin(N) % --------------------% Etant donne un entier N, lalgorithme delimination de Gauss % est utilise pour resoudre le systeme lineaire Ax=b, % ou A est la matrice tridiagonale symetrique % de diagonale a, sous et sur-diagonales c. % % parametres % % N : nombre dinconnues du systeme lineaire % a : N-vecteur, diagonale de A % c : (N-1)-vecteur, sous et sur-diagonales de A % b : N-vecteur, second membre du systeme lineaire en entree, % solution du systeme lineaire Ax=b en sortie % u : (N-1)-vecteur, utilise lors de lelimination de Gauss % % exemple dappel : b=elimin(10) % % % remplissage de la matrice A et du second membre b % for i=1:N a(i)=2.; c(i)=-1; b(i)=1.; end % % algorithme delimination de Gauss % u(1)=c(1)/a(1); b(1)=b(1)/a(1); for i=1:N-1 p = a(i+1)-?*?; u(i+1)=?/p; b(i+1) = (b(i+1) - ? * ?) / p; end % % resolution du systeme lineaire triangulaire superieur % for i=N-1:-1:1 b(i) = b(i) - ? * ?; end Excution du chier elimin.m avec Matlab e Pour excuter le chier elimin.m, vous utiliserez le logiciel Matlab. e Sur Internet Explorer, clickez sur elimin.m, puis enregistrez le chier elimin.m sur le disque temp. Lancer le programme Matlab, ouvrez le chier elimin.m et compltez-le. e Dans la fentre Matlab, tapez cd C :\temp, puis b=elimin(10) pour excuter e e le chier elimin.m avec N = 10. Exercice supplmentaire e Soit A la N N matrice dnie par (1) et soit D une N N matrice de e e e coecients dij , i, j = 1, ..., N donns. Ecrire un algorithme pour rsoudre AE = D o` E est une N N matrice ` dterminer. Sinspirer de lalgorithme (2) et nutiliser u a e e quun seul tableau supplmentaire, de coecients dij , i, j = 1, ..., N . En entre de e lalgorithme, les coecients dij seront les coecients de la matrice D. En sortie de lalgorithme, les coecients dij seront les coecients de la matrice E.