REPUBLIQUE DU CAMEROUN REPUBLIC OF CAMEROON
******** ********
Paix-Travail-Patrie Peace-Work-Fatherland
******* *******
UNIVERSITÉ DE YAOUNDÉ I UNIVERSITY OF YAOUNDE I
***** *****
FACULTÉ DES SCIENCES FACULTY OF SCIENCES
***** *****
DÉPARTEMENT DE PHYSIQUE DEPARTEMENT OF PHYSICS
****** ******
COMPTE RENDU DES TRAVAUX PRATIQUES DE PHYSIQUE 332
TRAVAUX PRATIQUE (I) : PRISE EN MAIN DES
OUTILS MATLAB ET SIMULINK
GROUPE DE MARDI 10H-13H
PRESENTE PAR : FOUMANE ASSAKO AIME
MATRICULE: 23K2838
OPTION : MECANIQUE
ENCADREUR: Dr NZEPANG ANICET
RESPONSABLE DE L’UE : Pr MBINACK Clément
Anneé académique 2025-2026
I -)APPLICATIONS
A) APPLICATION DANS MATLAB
Soit le circuit RC ci-dessous :
UR
i R=10kΩ
e(t)=[Link](2πft)
C 1µF Uc
e ~ , f=1kHz
a) RESOLUTION THEORIQUE ET REPRESENTATION
1) determinons l’équation différentielle en fonction de la tension Uc aux bornes du
condensateur :
On a : Ur+Uc=e
RdUc
dt
+ cdUc
dt
=e
dUc Uc e
dt
+ RC = RC
(1)
2) déterminons les solutions analytiques Uc(t) :
dUc(t ) Uc(t) e
+ = ; Uc = Uch+ Uc
dt RC RC
Solution homogène UCh
dUcͪ ( t ) Ucͪ ( t )
+ =0 Uć (t)= De−1 / RC avec D ϵ R.
dt RC
Solution particulière UCp
Le second membres e(t)=[Link](2πft). La solution particulière UCp ayant la forme du second
membre, on a donc : Ucᵖ=Acos(2πft) + Bsin(2πft) .
dUc ᵖ Uc ᵖ 5
Ucᵖ vérifie l’équation (1)
dt
+ RC
= RC
.sin(2πft) (2)
B A 5 A=−5 wRC /¿ ²)
(2) ( –Aw)sin(wt) + (Bw + )cos(wt) = .sin(wt)
RC RC RC B=5/(1+ ( wRC )2 )
Solution générale UC
On a donc Uc(t)= De−1 / RC + Acos(2πft) + Bsin(2πft)
Cherchons la constante D :
A t=0s, le condensateur est déchargé ; soit q=0 c’est-a-dire Uc=0 ; on a alors :
Uc(t=0)=D+A=0 ; D’où D=-A. L’expréssion final de Uc(t) est alors :
A=−5 wRC /¿ ²)
Uc(t)=A( cos(wt) -e −1 / RC
) + Bsin(wt) avec B=5/(1+ ( wRC )2 )
W=2πf
3) réprésentation de la solution théorique sous MATLAB
b) RESOLUTION NUMERIQUE ET COMPARAISON
1)En utilisant la méthode de runge kutta d’ordre 4 (RK4) resolvons l’équation différentielle
trouver à la section précédente et représentons là sous MATLAB :
dUc(t ) e Uc 4(t )
L’équation (1) = - rk . Avec un pas h, on calcule
dt RC RC
k1=(5*sin(w*t(i))-uc_rk4(i))/(R*C)
k2=(5*sin(w*(t(i)+h/2))-(uc_rk4(i)+h*k1/2))/(R*C)
k3=(5*sin(w*(t(i)+h/2))-(uc_rk4(i)+h*k2/2))/(R*C)
k4=(5*sin(w*(t(i)+h))-(uc_rk4(i)+h*k3))/(R*C)
uc_rk4(i+1)=uc_rk4(i)+(h/6)*(k1+2*k2+2*k3+k4)
2) En utilisant la commande hold on , superposons les graphes de la solution analytique et
numerique :
3)on a plusieurs valeur de resistances : 10kΩ,20kΩ,50kΩ,70kΩ et 100kΩ
a)remplacons la valeur de R par un vecteur vertical contenant ces valeurs de R :
R_vec = [10*10^3; 20*10^3; 50*10^3; 70*10^3; 100*10^3]
b)pour chacune de ces valeurs de resistances,representons les solutions theorique et
numerique :
SOLUTION ANALYTIQUE :
SOLUTIONS NUMERIQUE :
4) En utilisant la commande ‘’subplot’’ ,Superposons tous les graphes sur une meme figure :
Interpretation des resultats : Dans cette partie, nous avons résolu l’équation
différentielle modélisant le comportement d’un circuit RC à l’aide de deux approches
complémentaires :
- une solution analytique, obtenue par méthode classique,
- une solution numérique, calculée via la méthode de Runge-Kutta d’ordre 4 (RK4).
La comparaison des deux courbes a montré une cohérence parfaite entre les deux solutions
lorsque le pas de calcul est suffisamment petit. Cela valide la précision et la fiabilité de la
méthode RK4 pour ce type de système.
Nous avons également étudié l’influence de la résistance R sur la forme de la tension
Uc(t). Nous avons constaté que plus R est grand, plus la réponse du circuit est lente (temps de
charge plus long), ce qui est conforme à l’analyse théorique du temps caractéristique τ = RC.
B) APPLICATION DANS SIMULINK
1)Procedons a la resolution de l’equqtion differentielle du circuit electrique ci-dessus en
construisant le diagramme bloc correspondant dans simulink :
2)visualisons la solution Uc(t) obtenu :
Interprétation des résultats : À travers la simulation du circuit RC sous Simulink, nous
avons pu observer la réponse du condensateur à une excitation sinusoïdale. La courbe obtenue
pour la tension Uc(t) montre un retard de phase par rapport à la tension d’entrée e(t), ainsi
qu’une atténuation de l’amplitude, caractéristiques typiques d’un filtre passe-bas.
Cette simulation confirme le comportement théorique attendu du circuit RC : Le
condensateur agit comme un élément de filtrage, Plus la fréquence augmente, plus l’amplitude
de Uc(t) diminue
INTRODUCTION
Dans le domaine des sciences et de l’ingénierie, la modélisation et la simulation
numérique occupent une place centrale dans l’analyse et la compréhension des systèmes
physiques. Pour cela, des outils puissants comme MATLAB et Simulink sont largement
utilisés dans le monde académique et professionnel. Ce premier travail pratique a pour
objectif de nous familiariser avec ces outils en nous initiant à leur utilisation dans un cadre
simple mais fondamental : l’étude d’un circuit électrique RC. À travers cette application, nous
serons amenés à :
- déterminer l’équation différentielle qui régit le comportement du circuit,
- résoudre cette équation analytiquement,
- comparer la solution obtenue à une solution numérique calculée avec la méthode de Runge-
Kutta d’ordre 4 (RK4),
- et enfin modéliser le circuit sous *Simulink*.
Ce TP constitue ainsi une première étape essentielle dans notre apprentissage de la
simulation numérique des systèmes dynamiques.
CONCLUSION
À l’issue de ce premier travail pratique, nous avons pu acquérir les bases de l’utilisation
de MATLAB et Simulink à travers l’étude d’un circuit RC simple. Ce TP nous a permis de :
- formuler une équation différentielle modélisant un phénomène physique réel,
- résoudre cette équation analytiquement et numériquement,
- comparer les deux approches et évaluer leur cohérence,
- et enfin simuler le comportement du circuit dans un environnement graphique avec
Simulink.
Ce TP nous a ainsi permis de mieux comprendre l’intérêt et la complémentarité entre
modélisation théorique et simulation numérique.
ANNEXES
1) programme de la solution analytique
close all
clear
clc
%% declaration des variables
R=10e3; C=1e-6; f=1e3; t0=0; tf=1e-1; h=1e-4;
t= t0:h:tf;
%% declaration des constantes A,B,w et bas
w=2*pi*f; bas=1+(w*R*C)^2; A=-5*w*R*C/bas; B=5/bas;
%% expresion de Uc
uc=A.*(cos(w.*t)-exp(-t/(R*C)))+ B.*sin(w.*t);
%% solution analytique graphique
figure
plot(t,uc,'g','linewidth',2)
xlabel('temps t en seconde')
ylabel('tension Uc')
title('REPRESENTATION DE LA SOLUTION THEORIQUE')
legend('fonction Uc(t)')
grid on; grid minor;
set(gca,'fontweight','bold')
set(gca,'fontsize',12)
2)programme de la solution numerique(Rk4)
close all
clear
clc
%% solution numerique: RK4
uc_rk4=zeros(size(t));
uc_rk4(1)=0; %condition initiale
for i=1:length(t)-1
k1=(5*sin(w*t(i))-uc_rk4(i))/(R*C);
k2=(5*sin(w*(t(i)+h/2))-(uc_rk4(i)+h*k1/2))/(R*C);
k3=(5*sin(w*(t(i)+h/2))-(uc_rk4(i)+h*k2/2))/(R*C);
k4=(5*sin(w*(t(i)+h))-(uc_rk4(i)+h*k3))/(R*C);
uc_rk4(i+1)=uc_rk4(i)+(h/6)*(k1+2*k2+2*k3+k4);
end
figure
plot(t,uc_rk4,'c','linewidth',1.5)
xlabel('temps t en seconde')
ylabel('tension Uc')
title('REPRESENTATION DE LA SOLUTION NUMERIQUE')
legend('fonction Uc_rk4(t)')
3) programme de la superposision des solutions
close all
clear
clc
%%superposition des solutions
figure
plot(t,uc,'g','linewidth',2);
hold on
plot(t,uc_rk4,'c','linewidth',1);
xlabel('temps en seconde')
ylabel('tension uc')
title('solution analytique vs solution numerique')
legend('solution analytique','solution numerique')
grid on; grid minor;
set(gca,'fontweight','bold')
set(gca,'fontsize',12)
4)programme de la variation des resistances
close all
clear
clc
%%etude de la variation de R
R_vec = [10e3; 20e3; 50e3; 70e3; 100e3];
gR = length(R_vec);
colors = lines(gR);Ch = 'mcbyr';
%%solution analytique
for j = 1:gR
R_vec = [10e3; 20e3; 50e3; 70e3; 100e3];
R = R_vec(j); bas=1+(w*R*C)^2; A=-5*w*R*C/bas; B=5/bas;
uc=A.*(cos(w.*t)-exp(-t/(R*C)))+ B.*sin(w.*t);
figure
plot(t, uc, 'Color', colors(j,:), 'LineWidth', 1.5);
xlabel('temps t en seconde')
ylabel('tension Uc')
title(['uc(t)analytique pour R = ', num2str(R/1000), 'Kohm']);
end
%%solutin numerique
for k=1:5
R = R_vec(k);
uc_rk4=zeros(size(t)); uc_rk4(1)=0; %condition initiale
for i=1:length(t)-1
k1=(5*sin(w*t(i))-uc_rk4(i))/(R*C);
k2=(5*sin(w*(t(i)+h/2))-(uc_rk4(i)+h*k1/2))/(R*C);
k3=(5*sin(w*(t(i)+h/2))-(uc_rk4(i)+h*k2/2))/(R*C);
k4=(5*sin(w*(t(i)+h))-(uc_rk4(i)+h*k3))/(R*C);
uc_rk4(i+1)=uc_rk4(i)+(h/6)*(k1+2*k2+2*k3+k4);
end
figure
plot(t, uc_rk4, Ch(k), 'linewidth', 2)
grid on, grid minor
xlabel('Temps (t) en second (s)')
ylabel('Tension Urk4 en volt (V)')
title(['uc_rk4 pour R = ', num2str(R/1000), 'KOhm'])
legend('Numerique Urk4')
end
5)programme pour la superposition de graphes en utilisant la commande subplot:
close all
clear
clc
%%superposition de tous les graphes sur la meme figure en utilisant subplot
x = 1; y = 2;
for k = 1:5
%%solution Analytique
R = R_vec(k); bas= 1+(R*C*w)^2 ;
A = 5*w*R*C/bas; B = 5/bas;
uc = A*(exp(-1/(R*C)*t) - cos(w*t)) + B*sin(w*t);
%%solution Numerique
uc_rk4=zeros(size(t)); uc_rk4(1)=0;
for i = 1:length(t)-1
k1=(5*sin(w*t(i))-uc_rk4(i))/(R*C);
k2=(5*sin(w*(t(i)+h/2))-(uc_rk4(i)+h*k1/2))/(R*C);
k3=(5*sin(w*(t(i)+h/2))-(uc_rk4(i)+h*k2/2))/(R*C);
k4=(5*sin(w*(t(i)+h))-(uc_rk4(i)+h*k3))/(R*C);
uc_rk4(i+1)=uc_rk4(i)+(h/6)*(k1+2*k2+2*k3+k4);
end
figure(14)
subplot(5,2,x); x = x+2;
plot(t, uc, 'Color', colors(k,:), 'LineWidth', 1.5); grid on
title(['ANALYTIQUE R = ', num2str(R/1000),'kohm'])
subplot(5,2,y); y = y + 2;
plot(t,uc_rk4, Ch(k), 'linewidth', 2), grid on
title(['NUMERIQUE R = ', num2str(R/1000), 'kohm'])
end
PLAN DU RAPPORT
INTRODUCTION
I) APLLICATIONS
A) APPLICATION DANS MATLAB
a) RESOLUTION THEORIQUE ET REPRESENTATION
b) RESOLUTION NUMERIQUE ET COMPARAISON
B) APPLICATION DANS SIMULINK
CONCLUSION
ANNEXES