Vous êtes sur la page 1sur 25

MATLAB TP n˚4

Djelouah

Position du
problème
TP n˚4
Saisie des
données Programme MATLAB pour l’étude des
Calcul des
éléments
matriciels
oscillations libres des systèmes à deux
Solution finale degrés de liberté

H. Djelouah

Faculté de Physique
Université des Sciences et de la Technologie Houari Boumediene
Algérie

28 décembre 2009
MATLAB TP n˚4

Djelouah
1 Position du problème
Position du
problème
Formulation matricielle
Saisie des
Exemple d’étude
données

Calcul des
éléments
2 Saisie des données
matriciels

Solution finale 3 Calcul des éléments matriciels


Matrice dynamique
Matrice modale
Conditions initiales
Calcul des différentes constantes

4 Solution finale
Calcul de la solution finale
Représentation graphique
Formulation matricielle

MATLAB TP n˚4
Système d’équations différentielles
Djelouah
m11 q̈1 + m12 q̈2 + k11 q1 + k12 q2 = 0
Position du
problème m12 q̈1 + m22 q̈2 + k12 q1 + k22 q2 = 0
Formulation
matricielle
Exemple d’étude

Saisie des
données

Calcul des
éléments
matriciels

Solution finale
Formulation matricielle

MATLAB TP n˚4
Système d’équations différentielles
Djelouah
m11 q̈1 + m12 q̈2 + k11 q1 + k12 q2 = 0
Position du
problème m12 q̈1 + m22 q̈2 + k12 q1 + k22 q2 = 0
Formulation
matricielle
Exemple d’étude Ces deux équations peuvent s’écrire sous la forme matricielle
Saisie des
données
suivante :
       
Calcul des m11 m12 q̈1 k11 k12 q1 0
éléments + =
matriciels m12 m22 q̈2 k12 k22 q2 0
Solution finale
Formulation matricielle

MATLAB TP n˚4
Système d’équations différentielles
Djelouah
m11 q̈1 + m12 q̈2 + k11 q1 + k12 q2 = 0
Position du
problème m12 q̈1 + m22 q̈2 + k12 q1 + k22 q2 = 0
Formulation
matricielle
Exemple d’étude Ces deux équations peuvent s’écrire sous la forme matricielle
Saisie des
données
suivante :
       
Calcul des m11 m12 q̈1 k11 k12 q1 0
éléments + =
matriciels m12 m22 q̈2 k12 k22 q2 0
Solution finale
Ce qui nous permet d’écrire le système d’équations différentielles
sous une forme matricielle condensée :
[T ]{q̈} + [U]{q} = {0}
Formulation matricielle

MATLAB TP n˚4
Système d’équations différentielles
Djelouah
m11 q̈1 + m12 q̈2 + k11 q1 + k12 q2 = 0
Position du
problème m12 q̈1 + m22 q̈2 + k12 q1 + k22 q2 = 0
Formulation
matricielle
Exemple d’étude Ces deux équations peuvent s’écrire sous la forme matricielle
Saisie des
données
suivante :
       
Calcul des m11 m12 q̈1 k11 k12 q1 0
éléments + =
matriciels m12 m22 q̈2 k12 k22 q2 0
Solution finale
Ce qui nous permet d’écrire le système d’équations différentielles
sous une forme matricielle condensée :
[T ]{q̈} + [U]{q} = {0}
Les matrices [T ] et [U] sont les matrices carrées symétriques
définies respectivement par :
   
m11 m12 k11 k12
[T ] = et [U] =
m12 m22 k12 k22
Exemple : système masses-ressorts

MATLAB TP n˚4

Djelouah

Position du
problème
Formulation
matricielle
Exemple d’étude

Saisie des
données

Calcul des
éléments
matriciels

Solution finale
Exemple : système masses-ressorts

MATLAB TP n˚4

Djelouah

Position du
problème
Formulation
matricielle
Exemple d’étude

Saisie des Tester le programme sur cet exemple avec les valeurs suivantes :
m1 = m2 = 1kg, k1 = k2 = 1N.m−1 , K = 0.1N.m−1
données

Calcul des
éléments Conditions initiales : x10 = 1, x20 = 0, ẋ10 = 0, ẋ20 = 0.
matriciels

Solution finale
Exemple : système masses-ressorts

MATLAB TP n˚4

Djelouah

Position du
problème
Formulation
matricielle
Exemple d’étude

Saisie des Tester le programme sur cet exemple avec les valeurs suivantes :
m1 = m2 = 1kg, k1 = k2 = 1N.m−1 , K = 0.1N.m−1
données

Calcul des
éléments Conditions initiales : x10 = 1, x20 = 0, ẋ10 = 0, ẋ20 = 0.
matriciels

Solution finale
Les matrices [T ] et [U] s’écrivent :
   
m 0 1 0
[T ] = =
0 m 0 1
   
k +K −K 1.1 −0.1
[U] = =
−K k +K −0.1 1.1
Saisie des données

MATLAB TP n˚4

Djelouah
Commandes MATLAB
Position du
problème
Commandes préliminaires
Saisie des
clc
données
clear
Calcul des
éléments close
matriciels

Solution finale
Saisie du nombre de degrés de liberté et de l’intervalle de temps

%————–Nombre de degrés de liberté————–


n=2 ;
%——————Durée de l’étude———————
np=10000 ;
duree=200 ;
t=0 :duree/np :duree ;
Saisie des données

MATLAB TP n˚4

Djelouah
Commandes MATLAB
Position du
problème commandes
Saisie des
données
input
Calcul des
for...end
éléments
matriciels
num2str
Solution finale

Saisie des éléments de la matrice [M]


for i=1 :n
for j=1 :n
m(i,j)=input([’m(’ num2str(i) ’,’ num2str(j) ’) = ’]) ;
end
end
Saisie des données

MATLAB TP n˚4

Djelouah
Commandes MATLAB
Position du
problème commandes
Saisie des
données
input
Calcul des
for...end
éléments
matriciels
num2str
Solution finale

Saisie des éléments de la matrice [M]


for i=1 :n
for j=1 :n
m(i,j)=input([’m(’ num2str(i) ’,’ num2str(j) ’) = ’]) ;
end
end
Saisie des données

MATLAB TP n˚4

Djelouah
Commandes MATLAB
Position du
problème commandes
Saisie des
données
input
Calcul des
for...end
éléments
matriciels
num2str
Solution finale

Saisie des éléments de la matrice [U]


Écrire les lignes de programme pour la saisie des éléments de la
matrice [U]
Saisie des données

MATLAB TP n˚4

Djelouah
Commandes MATLAB
Position du
problème commandes
Saisie des
données
input
Calcul des
for...end
éléments
matriciels
num2str
Solution finale

Saisie des éléments de la matrice [U]


for i=1 :n
for j=1 :n
k(i,j)=input([’k(’ num2str(i) ’,’ num2str(j) ’) = ’]) ;
end
end
Saisie des données

MATLAB TP n˚4

Djelouah
Commandes MATLAB
Position du
problème commandes
Saisie des
données
input
Calcul des
for...end
éléments
matriciels
num2str
Solution finale

Saisie des conditions initiales x0


for i=1 :n
x0(i)=input([’x0(’ num2str(i) ’) = ’])
end
Saisie des données

MATLAB TP n˚4

Djelouah
Commandes MATLAB
Position du
problème commandes
Saisie des
données
input
Calcul des
for...end
éléments
matriciels
num2str
Solution finale

Saisie des conditions initiales xpoint0


Écrire les lignes de programme pour la saisie de ẋ0
Saisie des données

MATLAB TP n˚4

Djelouah
Commandes MATLAB
Position du
problème commandes
Saisie des
données
input
Calcul des
for...end
éléments
matriciels
num2str
Solution finale

Saisie des conditions initiales xpoint0


for i=1 :n
xpoint0(i)=input([’xpoint0(’ num2str(i) ’) = ’]) ;
end
Matrice dynamique

MATLAB TP n˚4

Djelouah

Position du
problème

Saisie des
données

Calcul des Matrice dynamique


éléments
matriciels
−1
Matrice dynamique [L] = [T ] [U]
Matrice modale
Conditions initiales
Calcul des
différentes
constantes %Calcul de la matrice dynamique
Solution finale
dyn=inv(m)*k ;
Calcul des valeurs propres et des vecteurs
propres
MATLAB TP n˚4

Djelouah
Calcul des valeurs propres et des vecteurs propres
Position du
problème [L]{q} = ω 2 [I]{q}
Saisie des
données
On remarque que ω 2 représente une valeur propre de la matrice
Calcul des
éléments [L]. Les carrés des pulsations propres ω1 et ω2 sont donc les
matriciels
Matrice dynamique
valeurs propres de la matrice dynamique [L]
Matrice modale
Conditions initiales
Calcul des
différentes
constantes

Solution finale
Calcul des valeurs propres et des vecteurs
propres
MATLAB TP n˚4

Djelouah
Calcul des valeurs propres et des vecteurs propres
Position du
problème [L]{q} = ω 2 [I]{q}
Saisie des
données
On remarque que ω 2 représente une valeur propre de la matrice
Calcul des
éléments [L]. Les carrés des pulsations propres ω1 et ω2 sont donc les
matriciels
Matrice dynamique
valeurs propres de la matrice dynamique [L]
Matrice modale
Conditions initiales
Calcul des Lignes de programme à écrire en noir.
différentes
constantes Répondre aux questions en rouge
Solution finale

%Calcul des valeurs propres et des vecteurs propres


[v , d]=eig(dyn) ;← eig () ?
que contient v ?
que contient d ?
omega=sqrt(diag(d))← sqrt(), diag() ? ;
Matrice modale

MATLAB TP n˚4

Djelouah Matrice modale [µ]


Position du
problème
La matrice [ µ ] dont les colonnes sont constituées par les
Saisie des vecteurs modaux est appelée matrice modale, elle est définie par
données
 
Calcul des
1 1
éléments
[µ] =
matriciels
Matrice dynamique
µ1 µ2
Matrice modale
Conditions initiales
Calcul des Lignes de programme à écrire en noir.
différentes
constantes Répondre aux questions en rouge
Solution finale

On met 1 dans la première ligne de v


for i=1 :n
mu( :,i)=[v (:, i)/v (1, i)] ;
end
↑Commenter ces lignes
Tenir compte des conditions initiales

MATLAB TP n˚4

Djelouah
Conditions initiales
Position du    
problème A11 cos (φ1 ) −1 x10
= [µ] (1)
Saisie des
données
A12 cos (φ2 ) x20
   
Calcul des
éléments −ω1 A11 sin (φ1 ) −1 ẋ10
= [µ] (2)
matriciels
Matrice dynamique
−ω2 A12 sin (φ2 ) ẋ20
Matrice modale
Conditions initiales
Calcul des
différentes
constantes
Exemples :
Solution finale
Tenir compte des conditions initiales
muinv=inv(mu) ;
a=muinv*x0’ ;
b=muinv*xpoint0’ ;
Cas particulier des systèmes à deux degrés de
liberté
MATLAB TP n˚4

Djelouah

Position du Calcul des φi et des Aij


problème

Saisie des On calcule tan(φ1 ) et tan (φ2 ) puis on déduit les expressions de
données

Calcul des
A11 et A12 .
éléments
matriciels
Matrice dynamique
Matrice modale
Calcul des phi et des Aij
Conditions initiales
Calcul des omega1=omega(1) ;
différentes
constantes omega2=omega(2) ;
Solution finale
phi1=-atan(b(1)/a(1)/omega1) ;
phi2=-atan(b(2)/a(2)/omega2) ;
a11=a(1)/cos(phi1) ;
a12=a(2)/cos(phi2) ;
Solution finale

MATLAB TP n˚4

Djelouah

Position du
problème
Solution finale
Saisie des
données
x1 = a11 cos (ω1 t + φ1 ) + a12 cos (ω2 t + φ2 )
Calcul des
éléments x2 = µ1 a11 cos (ω1 t + φ1 ) + µ2 a12 cos (ω2 t + φ2 )
matriciels

Solution finale
Calcul de la solution
finale %solution finale
Représentation
graphique
mu1=mu(2,1) ;
mu2=mu(2,2) ;
x1=a11*cos(omega1*t+phi1)+a12*cos(omega2*t+phi2) ;
x2=mu1*a11*cos(omega1*t+phi1)+mu2*a12*cos(omega2*t+phi2) ;
Représentation graphique

MATLAB TP n˚4

Djelouah
Représentation graphique
Position du
problème Utiliser subplot(211) pour représenter les deux courbes
Saisie des
données
superposées x1 (t) et x2 (t).
Calcul des
éléments
matriciels
%Graphes
Solution finale
Calcul de la solution
finale
subplot(211)
Représentation
graphique
plot(t,x1)
xlabel(’temps’) ;
ylabel(’x1’) ;
title(’Oscillateur à deux degrés de liberté’) ;
subplot(212)
plot(t,x2)
xlabel(’temps’) ;
ylabel(’x2’) ;

Vous aimerez peut-être aussi