Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

TP Analyse Numerique PDF

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 21

Analyse numrique sous MATLAB

Licence

C.MAAOUI

TP Analyse numrique
I.

Objectif du Tp

L'objectif de l'analyse numrique est de concevoir et d'tudier des mthodes de rsolution de


certains problmes mathmatiques, en gnral issus de la modlisation de problmes rels, et dont
on cherche calculer la solution l'aide d'un ordinateur.
Le Tp est structur en trois grandes parties.
1. Rsolution d'quations ;
2. Rgression et Interpolation ;
3. Intgration numrique.
Instructions suivre :
-

Crez un rpertoire sur votre compte dans lequel vous devrez mettre tous vos
programmes (fchiers .m).
Lancez MatLab.
Configurez le PATH avec le rpertoire cr plus haut.

Le rapport doit contenir :


- Les illustrations que vous jugez ncessaires.
- Les programmes raliss.

II.

Exercices

Systme linaire
Exercice l :
Rsoudre le systme suivant sous MATLAB :

x 4y z w 2
2 x 7 y z 2w 16
x 4 y z 2w 1
3 x 10 y 2 z 5w 15

Exercice 2 :
Soit le systme d'quations linaires mal conditionn suivant :
C.MAAOUI

1 1 1
2 3 4 x1 0.95
1 1 1 x 0.67

3 4 5 2

0
.
52
x
1 1 1 3
4 5 6

Qui est de la forme: AX = B


1. Calculer la solution de ce systme.
2. Remplacer B(3) par 0.53 et calculer la solution nouveau. Dterminer l'influence de la
variation de B(3) sur la solution.
3. Calculer le nombre de conditionnement de A. Qu'elle est la conclusion approprie.

Exercice 3:
Soit le circuit lectrique suivant :
40

i1

i2
i3

12V

6V

10

Figure1. Un rsaeu CC
- En utilisant la loi de Kirchhoff, calculer la valeur des trois courants il, i2, i3 sous MATLAB.

Equation polynomiale
Exercice 4 :
On donne le polynme suivant : px x 3 6 x 2 72 x 27
-Calculer les racines de ce polynme.
Exercice 5 :
La figure 2 reprsente le schma d'un systme de rtroaction, o K reprsente le gain.
R(s) +
-

G(s)

C(s)

K
Figure2. Systme rtroaction
1.
2.

Calculer la fonction de transfert du systme en boucle ferme.


On donne :

C.MAAOUI

G s

K
avec K=6.5
ss 2s 2 4s 5

Calculer les poles de la fonction de transfert en boucle ferme.


Exercice 6 :
Soit l'quation polynomiale suivante:

x 13 0

Elle possde clairement une racine triple x1 =x2=x3= 1.


1.
Dvelopper l'expression.
2.
Arranger les coefficients, selon les puissances dcroissant de x, dans un tableau c, et
excuter ensuite la commande roots(c).
3.
Recalculer les racines de l'quation, en utilisant le format long.
4.
Que peut-on conclure ?

Rgression et interpolation:
Exercice7 :
Etude de la viscosit dynamique d'un liquide en fonction de la temprature :
La variation de la viscosit dynamique de l'eau en fonction de la temprature T est modlise
par la formule de Walther :

n
T

. ln
0

T
e
o est la viscosit de ce liquide la temprature To = 273K et T = t + To.
Aprs une srie de mesures, on a relev les valeurs suivantes de (en Poise) et de t (en C)
t (C)

10

15

20

25

30

35

40

45

50

55

60

(Po)

1.7940

1.7393

1.6899

1.6451

1.6044

1.5673

1.5334

1.5023

1.4737

1.4474

1.4232

1.4007

1.3799

t (C)

65

70

75

80

85

90

92

93

94

95

97

98

100

(Po)

1.3606

1.3427

1.3260

1.3104

1.2959

1.2822

1.2770

1.2745

1.2720

1.2695

1.2646

1.2622

1.2575

1. Tracer l'volution de en fonction de T pour les valeurs mesures (en nuage de points *).
2. Ecrire un algorithme valuant les paramtres inconnues, par la mthode des moindres carrs,
partir de l'ensemble des donnes (i, Ti).
3. Dterminer la valeur de l'exposant n.
4. Sur le mme graphe, tracer (en trait continu) l'volution du modle prdit ( en fonction de T).
5. Prdire la valeur de pour T= 32 C
6. Conclusions?
ln( )
T
, x 0 , ensuite on cherche un polynme de degr
Indications : On pourra choisir y
T
ln( 0 )
n (modle de prdiction).

C.MAAOUI

Intgration numrique:
Exercice 8 :

2
Calculer xdx par la rgle de trapze en utilisant cinq ordonnes. Que peut-on conclure ?
0
Exercice 9:
Les donnes mtorologiques, telles que les vitesses de vent, sont importantes dans la conception
des systmes de chauffage et d'air conditionn. Le tableau 1 contient les vitesses de vent
moyennes, mesures en janvier de chaque anne de 1969 1974, Berlin-tempelhof.
Les donnes, en m/s, sont reproduites partir du standard allemand DIN 4710.
1.
Complter le tableau en calculant la moyenne arithmtique des vitesses dans toutes
les directions.
2.
En considrant que les vitesses de vent V, sont des chantillons de fonctions
continues de la direction , calculer la moyenne telle que :
2
Vd
m 0

2
O est bien sr exprime en radians.
3.
Comparer les rsultats obtenus par (1) et par (2).

N
3.4

NE
3.5

E
4.0

Direction
SE
S
3.6
3.3

SW
3.6

W
3.8

NW
4.6

Moyenne
?

Tableau 1. Vitesses de vent moyennes Berlin-Tempelhof en janvier, exprimes en m/s.


Exercice 10:
1.

Calculer lintgrale suivante:

2.
3.

6
sin xdx
0
crire la fonction sinus et utiliser la fonction quad pour calculer lintgrale.
Comparer votre rsultat avec la valeur obtenue en (2).

Exercice 11:
C.MAAOUI

1.

Calculer lintgrale suivante:

2.
3.
4.

6 2x
e sin xdx
0
crire la fonction expsin et utiliser la fonction quad pour calculer lintgrale.
Tracer la fonction expsin avec la fonction fpIot;
Comparer votre rsultat avec la valeur obtenue en 2.

C.MAAOUI

Annexe
III. Rsolution d'quations
III.1 Systmes d'quations linaires
Un systme d'quations

a11 x1 a12 x 21 ... a1n x n b1


a 21 x1 a 22 x 2 ... a 2 n x n b2
...
a 31 x1 a 32 x 2 ... a 3n x n b3
Pour lequel toutes les variables sont de degrs 1 est, par dfinition, un systme d'quations
linaires. Ce systme s'crit sous la forme: A.X B
a11 a12 ... a1n
x1
b1



a 21 a 22 ... a 2n
x2
b2
A
,
X

,
B



... ... ...

...
...
a

b
a
... a
x
mn
m1 m2
n
m
A est appel la matrice de coefficient et X le vecteur de solution.
On peut distinguer plusieurs critres pour caractriser ces quations par:
1.
le nombre d'quation m qui peut tre infrieur, gal ou suprieur au nombre
d'inconnues n;
2.
les valeurs, nulles ou non, des termes b , b ,............, bm ;
1 2
3.
la valeur de certains dterminants forms par les coefficients a , a ,...., a
, et les
11 12
mm
termes y , y ,..............., y .
1 2
m
Si nous analysons ces diffrents cas, il est possible de savoir si une solution existe et dans ce cas
si elle est unique.

III.1.1 Equations linaires inhomognes


Une quation de la forme a x a x ... a x b , dont le terme b ne multiplie aucune
1 1
2 2
n n
variables est dite inhomogne.
Pour le systme A.X B , si m=n, A est une matrice carre, et si detA est non nul, A-1 existe.
La solution du systme s'obtient par:
A 1 AX X A 1B
Par exemple, pour le systme suivant :
C.MAAOUI

2x x 2
1
2
x x 5
1
2
Nous pouvons utiliser MATLAB pour calculer
A=[2 -1;1 1];
B=[2;5];
X=inv(A)*B
X=
2.3333
2.6667

La fonction MATLAB rats fournit une approximation rationnelle de largument.


Dans ce cas, on obtient les fractions rationnelles exactes qui sont solution du systme
rats(X)
ans =
7/3
8/3

Conclusion
Si le nombre d'quations est gal au nombre d'inconnues, c'est dire si m=n et si det(A)0, le
systme admet alors une solution unique.
III.1.2 Equations linaires homognes
Un systme d'quations linaires dont les membres de droite sont nuls est dit homogne.
AX 0
1.
si det(A) # 0, la seule solution possible est X = 0 (toutes les variables sont nulles),
appele solution triviale.
2.
Si det(A)=0, plusieurs solution sont possibles.
Dans ce cas, il faut calculer le rang de la matrice A pour dduire le nombre de variables
indpendantes. Plus gnralement, supposons qu' partir de A, on puisse extraire une matrice rpar-r mineure o les r lignes et les r colonnes slectionnes ne sont pas ncessairement contigus,
dont le dterminant (d'ordre r) est non nul, et telle que tout dterminant d'ordre r+l extrait de la
mme matrice A soit nul : on dit alors que A est de rang r.
La fonction MATLAB rank donne directement le rang d'une matrice
A=[3 4 -2;-2 3 -4
5 1 2;-9 5 -10];
rank(A)
ans =
2

C.MAAOUI

Cela signifie que nous sommes en mesures de rsoudre un systme de deux quations deux
inconnues; la troisime inconnues a une valeur choisie arbitrairement.
III.1.3 Rsolution dquations linaires avec MATLAB
Considrons nouveau les equations:

2x x 2
1
2
x x 5
1
2
Avec MATLAB, nous pouvons les rsoudre l'aide de l'oprateur anti-slash, \ , comme suit :
A=[2 -1;1 1];
B=[2;5];
X=A\B
X=
2.3333
2.6667

Cette solution repose sur la modification d'une technique appele l'limination de Gauss.
L'oprateur anti-slash,'\', donne systmatiquement un rsultat qui n'est pas ncessairement la
solution du systme, mais cela peut tre une solution particulire (c.a.d l'une des solutions
possibles). Le thorme de Kronecker-Capelli permettra de dterminer si le systme possde une
solution, et si elle est unique.
Pour un systme donn A.X B , la matrice augmente du systme est la matrice [A B]. Selon le
thorme de Kronecker-Capelli : Un systme possde une solution si et seulement si sa matrice
de coefficient appele A et sa matrice augmente sont de mme rang. Appelons r ce rang et n le
nombre d'inconnues. Si r =n, la solution est unique, et si r < n, le systme a un nombre infini de
solutions.
rank(A),rank([A B])
ans =
2
ans =
2

Considrons maintenant le systme indtermin


2 x 3x 4 x 4
1
2
3
x x x 5
1
2
3
on obtient:
A=[2 3 4;1 1 1];
B=[4;5];
rank(A),rank([A B])
ans =
2
ans =
2

C.MAAOUI

10

La solution MATLAB est une solution particulire. Il est ais de vrifier que la solution gnrale
du systme est:
x 11 x , x 6 2 x
1
3
2
3
La matrice A, de dimensions 2 par 3 n'est pas une matrice carre et n'est par consquent pas
inversible. On peut dfinir une matrice P, de dimension 3 par 2 appele pseudo-inverse de A
La fonction MATLAB pinv permet de calculer la matrice pseudo-inverse.
X=pinv(A)*B
X=
7.1667
1.6667
-3.8333

a) Systmes d'quations surdtermins -solution au sens de moindres carrs.


On dit un systme est surdtermin quand le nombre d'quations m, est suprieur au nombre
inconnues, n. Les m quations sont alors indpendantes.
Pour rsoudre ce systme, une mthode de moindre carr existe. Cette mthode consiste
minimiser la somme des erreurs leves au carr.
1
AX B X At A At B

Exemple
2 x1 x 2 2

x1 x 5 2
6 x1 x 2 5
A=[2 -1;1 1;6 -1];
B=[2;5;-5];
X1=inv(A'*A)*A'*B
X1 =
-0.0946
2.4459

Remarque
X2=A\B
X2 =
-0.0946
2.4459

Comme nous l'avons spcifie prcdemment, A\B retourne toujours un rsultat. La signification
de ce rsultat diffre des cas rencontrs. Ainsi dans cet exemple la solution obtenue est au sens
des moindres carrs.

C.MAAOUI

11

b) Systme mal conditionn


On dit qu'un systme est mal conditionn si de faibles variations dans les donnes produisent
d'importantes variations des rsultats.
Considrons l'exemple suivant:
1 1 x1 2
1 1.01 x 2.01

A=[1 1;1 1.01];


B=[2; 2.01];
X=A\B
X=
1.0000
1.0000

Si on affiche le rsultat avec le format long, on obtient une erreur trs faible qui est la solution
calcule par MATLAB.
format long
X=A\B
X=
1.00000000000002
0.99999999999998

Modifiant lgrement l'un des lments de A:


A(1,2)=1.005;
X=A\B
X=
-0.00999999999991
1.99999999999991

Une modification de valeur des lments de la matrice A ou B provoque une variation du rsultat
X.
On peut estimer la sensibilit de la solution des changements de coefficients des matrices A ou
B, l'aide du nombre de conditionnement. Avec MATLAB, on peut obtenir le nombre de
conditionnement de la matrice A par la commande suivante:
cond(A)
ans =
806.0238

Un principe de base est que lorsque le nombre de conditionnement est exprim sous la forme
suivante a.10 k , 1 a 9 . On considre gnralement que les k derniers chiffres significatifs du
rsultat ne sont pas fiables et doivent tre ignors. Dans cet exemple, on peut exprimer le nombre
deconditionnement par 8 x 102, ce qui signifie que les deux derniers chiffres des solutions ne
doivent pas tre pris en compte.
C.MAAOUI

12

III.1.4 Equations polynomiales -Introduction


La forme gnrale d'une quation polynomiale de degrs n est la suivante :
a xn a
x n 1 ... a x a 0 ..(1)
n
n 1
1
0
Une solution, ou racine, de l'quation est un nombre xi, rel ou complexe, tel que
a xn a
x n 1 ... a xi a 0 ...(2)
n i
n 1 i
1
0
Le thorme fondamental de l'algbre tablit qu'une quation polynomiale de degrs n a
exactement n racines. Soit x1 , x 2 ,...x n , ces racines, le polynme de l'quation (1) peut tre rcrit
a n x x1 x x2 ....x xn 1 x x n 0
a) Recherche des racines polynomiales avec MATLAB
La fonction roots de MATLAB dtermine les solutions d'quations polynomiales. L'argument de
cette fonction correspond au tableau de coefficients polynomiaux ordonns selon les puissances
dcroissantes de l'inconnues. Par exemple, pour l'quation:
x 5 2 x 4 2 x 3 3x 2 x 4 0
Le tableau des coefficients correspondant dans MATLAB est le suivant :
c=[1 -2 2 3 1 4];

Et la solution est obtenue par


solution=roots(c)
solution =
1.5336 + 1.4377i
1.5336 - 1.4377i
-1.0638
-0.0017 + 0.9225i
-0.0017 - 0.9225i

b) Recherche des coefficients polynomiaux partir des racines


Pour un tableau de racines polynomiales donn, poly dtermine les coefficients polynomiaux
ordonns selon les puissances dcroissantes de l'inconnues. Dans notre exemple
poly(solution)
ans =
1.0000 -2.0000

IV

2.0000

3.0000

1.0000

4.0000

Rgression et interpolation

IV. 1 Introduction
Dans cette partie, nous prsenterons des fonctions utilises pour l'interpolation polynomiale. Ces
fonctions peuvent tre utilises pour ajuster des courbes exponentielles et de puissance. Les
techniques dcrites dans cette partie sont employes pour obtenir des relations entre des donnes
exprimentales, c'est l'objet de la rgression. En ingnierie, les rgressions sont employes dans

C.MAAOUI

13

des applications qui vont au-del de la simple interpolation. Par exemple, la forme gnrale de
l'quation qui caractrise un certain processus peut tre connue thoriquement, mais pas les
valeurs des coefficients qui apparaissent dans l'quation. Des tests sont ensuite effectus pour ce
processus, et les variables concernes sont mesures. La courbe de la forme thorique attendue est
ajuste aux donnes exprimentales par regression.
IV.2 Ajustement polynomial
Considrons la table de temprature par rapport la densit de l'eau suivante. On peut dterminer
la densit de l'eau en interpolant linairement.
Densite t/m3
0.99987
0.99997
1
0.99997
0.99988
0.99973
0.99953
0.99927
0.99897

Temprature C
0
2
4
6
8
10
12
14
16

Si on trace la courbe de la densit en fonction de la temprature, on obtient


1

0.9998

0.9996

0.9994

0.9992

0.999

0.9988

10

12

14

16

Densit de leau
L'tude graphique nous montre qu'une courbe du second ou du troisime degr serait plus
adapte.
Supposons que l'exprience a fourni m couple de donnes (xi,yi), et qu'une courbe du second degr
s'ajuste parfaitement ces donnes, nous devons dterminer les trois coefficient cl,, c2,, c3 de
l'quation suivante :
y c x 2 c x c ..(4)
1
2
3
qui minimisent la somme des erreurs au carr

C.MAAOUI

14

2
m
2

y c x c x c
i 1 i
2 i
3
i 1
Nous pouvons construire des matrices A, Y et C et utiliser l'oprateur anti-slash pour obtenir la
matrice des coefficients cl,, c2,, c3. Nous pouvons galement dfinir la drivation de la mthode
des moindres carrs
x12 x1 1
y1
c1
2

y
x2 x2 1
2

A
, Y
, C c 2

...
... ... ...
c 3


y
x m2 x m 1
m

et montrer que C At A At Y
Ces oprations peuvent tre ralises plus rapidement avec MATLAB. La fonction polyfit gnre
la matrice A et la rsout pour C.
1

C2=polyfit(x,y,2)
C2 =
-0.0000

0.0001

0.9999

Pour plus de precision


format long
C2
C2 =
-0.00000718073593 0.00005755844156 0.99987836363636

Par concquent: c1 C 21, c 2 C 22, c3 C 23,


Nous pouvons substituer les coefficients ci-dessus dans l'quation (4) et calculer les ordonnes de
la courbe. MATLAB fournit une alternative plus simple. Pour un tableau de coefficient C2
donns, la fonction polyval retourne les valeurs du polynme ajust aux points dfinis par le
tableau x.
y2=polyval(C2,x)

A partir des valeurs de y, nous avons dduit la relation entre x, y. La technique est par consquent
appele rgression.
Remarque:
On peut tester des rgressions polynomiales de degr plus lev. Il y a cependant une limite pour
le degr du polynme capable de s'ajuster un jeu de donnes.
Soit n le degr dsir, on doit dterminer n+ 1 coefficients. Si le nombre m d'observations de
couples (x, y) est tel que:
1.
m < n+l, alors le problme est indtermin.
2.
Si m = n + 1, et qu'il n'y a pas deux valeurs de x gales entre elle, la procdure des
moindres carrs fournit le polynme qui passe par tous les points donns.

C.MAAOUI

15

3.

Nous ne pouvons employer le terme de rgression que si m > n + 1. Cette condition


est importante si l'on veut appliquer la technique de rgression des donnes
exprimentales.
Les erreurs, appeles rsidus, sont calcules comme suit
resid=y-polyval(C2,x)
resid =
1.0e-005 *
-0.83636363633621
0.52424242426019
0.62943722944908
0.47922077922591
0.07359307359067
-0.58744588744553
-0.50389610388724
-0.67575757574101
0.89696969699515

IV.3 Interpolation polynomiale


Dans l'exemple prcdent, lest entres sont 0, 2, ., 16C. Nous pouvons utiliser le coefficient
C2, pour calculer les densits de l'eau 1, 3, .., 15C.
xi=1:15;
yi=polyval(C2,xi);
plot(x,y,xi,yi,'o')

0.9998

0.9996

0.9994

0.9992

0.999

0.9988

10

12

14

16

Interpolation linaire de la densit de leau


a) Evaluation de la qualit d'une regression
Nous avons trouv que l'exemple prcdent peut tre prsent par un polynme d'ordre 2 ou
d'ordre 3. Nous allons voir quelle approximation est meilleure ?
Pour l'ordre 3, nous avons les coefficients suivants
y c1 x 3 c 2 x 2 c3 x c 4

C.MAAOUI

16

C3=polyfit(x,y,3)
C3 =
0.00000005997475 -0.00000862012987 0.00006624278499 0.99987030303030
y3=polyval(C3,x);

Pour comparer entre les deux approximations, nous allons calculer la somme des erreurs au carr
resid2=y-y2;
resid3=y-y3;
SSE2=sum(resid2.^2)
SSE2 =
3.465800865807020e-010
SSE3=sum(resid3.^2)
SSE3 =
1.839826839831241e-011

Il apparat que les rsidus de la rgression du troisime degr sont plus faibles que ceux de la
rgression du second degr.

IV.4 Rgression de puissance


Les courbes polynomiales ne sont pas les seules courbes utilises pour ajuster des donnes. Par
exemple, certains phnomnes peuvent tre modliss par une fonction puissance.
y ax b o a et b sont des constantes.
Ce type d'quation caractrise gnralement des processus croissants rapidement.
Si les donnes sont disperses autour d'une courbe en fonction puissance, leur representation sur
des axes chelle logarithmique devrait tre proche d'une ligne droite.
ln y ln a b ln x
Posons u=lnx, v=lny, alors v ln a bu
u=log(x);v=log(y);
c=polyfit(u,v,1);
a=exp(c(2));
b=c(1);
y=a*x.^2;

IV.5 Rgression exponentielle


Les donnes qui suivent approximativement une loi exponentielle peuvent tre rduites une
rgression linaire
y ae bx
En prenant le logarithme de chaque membre de
obtenons v ln a bx . La relation entre x et v est linaire.
C.MAAOUI

l'quation avec

v ln y , nous

17

u=x ; v=log(y);
c=polyfit(u,v,1);
a=exp(c(2));
b=c(1);
y=a*exp(b*x);

Intgration numrique

Cette partie prsente la fonction d'intgration trapz. Les exemples sont bass essentiellement sur
des fonctions intgrer dfinies par des expressions mathmatiques.
De nombreux problmes d'ingnierie ncessitent le calcul de l'intgrale d'une function borne
un intervalle [a,b].
b
f x dx
a
Il est souvent difficile, voire impossible, de calculer cette intgrale de manire analytique.
Dans de pareil cas, nous pouvons l'approcher par la somme pondre d'un certain nombre de
valeurs, f(xo), f(xl), .... f(xn), values, ou mesures en n points.
b
n
f x dx ai f xi
i 1
a

Les coefficients ai sont appels multiplicateurs ou poids. Voici les exemples o il faut recourir
l'intgration numriques:
1. La fonction intgrer est donne sous forme d'expression mathmatique, mais son
intgrale ne peut s'exprimer en termes de fonctions lmentaires. En voici quelques
exemples:
1
x
dx
x 2 sin x dx, cos x dx,
e
x
x
ln x , 1 x 4 .
0
2. Certaines intgrales de fonctions sont dfinies par des tableaux de valeurs, values ou
mesures, en un certain nombre de points. Pour ces fonctions n'ayant pas d'expressions
mathmatiques, nous utilisons le terme de fonction intgrer sous forme de tableau.
Il est existe plusieurs mthodes pour extraire des formules d'intgration numrique, galement
appeles formules de quadrature.
b
1. En suivant un raisonnement gomtrique, considrons f x dx l'aire situe sous la
a
courbe f(x), entre x=a et x=b.

C.MAAOUI

18

2. En approximant la fonction f(x) par un polynme d'interpolation, P(x), et en intgrant ce


b
b
rsultat au lieu de la fonction de dpart, tel que : f x dx Px dx
a
a
3. En dveloppant la fonction en srie de Taylor ou de MarcLaurin, et en l'intgrant.
V. 1 La rgle de Trapze
Considrons la fonction f(x) reprsente dans la figure 1. Nous supposons que nous connaissons
x
2
les valeurs f(xl), f(x2),.. ,f(x7) et que nous voulons calculer l'intgrale dfinie par : I f x dx
x
1
f(x
)
f(x
)
4
5
f(x3)
f(x6)
f(x7)
f(x2)
f(x8)
f(x1)

x1

x2

x3

x4

x5

x6

x7

x8

Figure1. Drivation par la rgle de trapze

L'intgrale de cette fonction reprsente l'aire sous la courbe f(x).


f x1 f x 2
f x 3 f x 2
I x 2 x1
x 3 x 2
..................
(5)
2
2
Pour des espacements en x constants, x 2 x1 x3 x 2 ... h lquation (5) peut se rduire la
forme simple :
1

I h f x f x f x ... f x
1
2
3
n
2
La fonction MATLAB trapz permet de calculer l'intgrale de la fonction.
Exemple


90

90

sin xdx,

cos xdx

Nous savons que les deux intgrales valent exactement 1. Avec MATLAB, nous pouvons
procder de la faon suivante:

C.MAAOUI

19

angle=0:15:90;x=(pi*angle/180)';
y=[sin(x) cos(x)];
trapz(x,y)
ans =
0.99428188829216 0.99428188829216

L'erreur est gale 0.57% de la valeur relle.


Comme nous avons utilis les valeurs de sinx et cosx calcules pour des points x quidistants,
nous aurions pu appeler la fonction trapz avec seulement un argument, et multiplier le rsultat
par la taille de l'intervalle.
h=pi*15/180;
h*trapz(y)
ans =
0.99428188829216 0.99428188829216

Pour amliorer le rsultat, essayez un pas en x plus petit, par exemple


angle=0:5:90;x=(pi*angle/180)';
y=[sin(x) cos(x)];
trapz(x,y)
ans =
0.99936529981242 0.99936529981242

V.3 Fonctions de qudrature de MATLAB


MATLAB contient une fonction pour l'intgration numrique quad ou dblquad pour la double
intgration. Ces fonctions de qudrature prennent en argument une expression explicite qui permet
le calcul de la fonction pour toute valeur des variables indpendantes et des bornes de
l'intgration. Bien sr, ce calcul est possible uniquement lorsque la fonction intgrer est dfinie
explicitement en termes de fonctions calculables.
La syntaxe des fonctions de quadrature fournies par MATLAB est dcrite dans l'aide du logiciel.
b 2
y
x b
a2
Prenons a=l et b=2, l'quation devient : y 3x 2 3
L'intgrale de cette fonction dans un intervalle [-1,1] est calcule sous MATLAB comme suit :

C.MAAOUI

20

area=quad(-3*x.^2+3,-1,1);
area =

4.0000

C.MAAOUI

21

Vous aimerez peut-être aussi