Vous êtes sur la page 1sur 3

UNIVERSITE TAHAR MOULAY DE SAIDA

FACULTE DE TECHNOLOGIE / DEPARTEMENT D’ELECTROTECHNIQUE


Niveau: 2ème LMD Electrotechnique Année universitaire 2023/2024

- TRAVAUX PRATIQUES N°06 -


Fichiers de fonctions
1. Programmer sous MATLAB
1.1 Scripts et fonctions
Il est possible d’enregistrer une séquence d’instructions dans un fichier (M-file) et de les faire exécuter par
MATLAB. On distingue deux types de M-file, les fichiers de scripts et les fichiers de fonctions. Un script est un
ensemble d’instructions MATLAB qui joue le rôle de programme principal. Les fichiers fonctions ont deux rôles.
Ils permettent à l’utilisateur de définir des fonctions qui ne figurent pas parmi les fonctions MATLAB incorporées
et de les utiliser de la même manière que ces dernières (ces fonctions sont nommées « fonctions utilisateur »).

On définit la fonction fonc de la manière suivante :


Function [vars1,…, varsn]=fonc(vare1,…, varem)
Séquence d’instructions


vars1,…, varsn sont les variables de sortie de la fonction ;
vare1,…, varem sont les variables d’entrée de la fonction ;
Séquence d’instructions est le corps de la fonction.

Le fichier doit impérativement commencer par le mot-clé function. Suit entre crochets les variables de sortie de
la fonction, le symbole =, le nom de la fonction et enfin les variables d’entrée entre parenthèses. Si la fonction ne
possède qu’une seule variable de sortie, les crochets sont inutiles. Il est impératif que la fonction ayant pour non
fonc soit enregistrée dans un fichier de nom fonc.m sans quoi cette fonction ne sera pas « visible » par
MATLAB.

1.2 Opérateurs de comparaison et opérateurs logiques


Les opérateurs de comparaison sont : Les opérateurs logiques sont :
== égal à (x == y) & et (x & y)
> strictement plus grand que (x > y) | ou (x | y)
< strictement plus petit que (x < y) ~ non (~ x)
>= plus grand ou égal à (x ≥ y)
<= plus petit ou égal à (x ≤ y)
~= différent de (x ~= y)

Page 1 / 3
A titre d’exemple, la fonction mention donnée ci-dessous, retourne la mention obtenue en fonction de la
moyenne transmise.
fichier mention.m
function mention= mention(moy) >> mention(19.5)
if moy>=18 ans =
mention='Excellent'; Excellent
elseif moy>=16 >> mention(13.5)
mention='Très bien'; ans =
elseif moy>=14 Assez bien
mention='Bien';
elseif moy>=12 >> mention(8.5)
mention='Assez bien'; ans =
elseif moy>=10 Ajourné(e)
mention='Passable'; >>
else
mention='Ajourné(e)';
end

Voici un exemple pour calculer n!


fichier fac.m
function nfac=fac(n)
nfac = 1;
for k = 1:n
nfac = nfac*k;
end
>> fac(4) 6
ans = >> fac(5)
24 ans =
>> fac(3) 120
ans =

Voici un exemple pour calculer les puissances entières d’un nombre et s’arrêter lorsque le résultat dépasse une
valeur donnée.
fichier exwhile.m
function puissance=exwhile(x,Max) >> exwhile(2,4000)
n=0; ans =
while x^n <= Max 11
n=n+1; >> 2^11
end ans =
puissance=n-1; 2048
>> 2^12
ans =
4096
>>

Page 2 / 3
Travail demandé
Exercice 1 :
Ecrire une fonction qui permet de calculer le module et l’argument de la forme exponentielle à partir de la forme
algébrique.
a) Tester votre fonction pour les nombres :
z1 = 3 , z 2 = −2 , z 3 = −i , z4 = 3i , z5 = 1 − i , z6 =−1 + i 3 , z7 =−5 + i5 3 , Z8= 2 + 3i

b) Déterminer le module et l’augment de chacun des nombres complexes suivants :

z1 = −1 + i , z2 = i , z 3 = −2 , z4 = 6 − i 2 , z5 = 1− i 3

Exercice 2 :
Ecrire une fonction qui permet de calculer la partie réelle et la partie imaginaire de la forme algébrique à partir de
la forme exponentielle.
Tester votre fonction pour les nombres :
𝑧1 = 𝑒 𝑖𝜋 ; 𝑧2 = 𝑒 −𝑖2𝜋 ; 𝑧3 = 𝑒 𝑖𝜋/2 ; 𝑧4 = 𝑒 𝑖2𝜋/3 ;

Exercice 3 :
Ecrire une fonction qui permet de résoudre une équation du 2ème degré de la forme : ax2+bx+c=0
où a, b, c sont des coefficients réels
Posant le discriminant : Δ=b2−4ac
Le nombre de solutions de l'équation dépend du signe du discriminant.
- Si Δ>0, alors l'équation admet deux solutions réelles notées x1 et x2
−b − ∆ −b + ∆
On=
a alors : x1 =et x2
2a 2a
- Si Δ=0, alors l'équation admet une solution réelle double notée x0;
−b
on a alors : x0 =
2a
- Si Δ<0, alors l'équation n'admet pas de solution réelle, mais deux solutions complexes
conjuguées notées x1 et x2 ; on a alors :
−b − i −∆ −b + i −∆
=x1 = et x2
2a 2a

Exercice 4 : Théorème de Kennelly (équivalence triangle-étoile)


Ecrire une fonction qui permet permet de passer d’un schéma en triangle (ou montage en П) à un schéma en étoile (ou
montage en Ƭ) et réciproquement.
Montage en étoile (ou Ƭ) Montage en triangle (ou П)
RA RB RAB
A B A B
RAC RBC
RC

C C

On a les relations :
𝑅𝐴𝐵 . 𝑅𝐴𝐶 𝑅𝐴𝐵 . 𝑅𝐵𝐶 𝑅𝐴𝐶 . 𝑅𝐵𝐶
𝑅𝐴 = ,𝑅 = ,𝑅 =
𝑅𝐴𝐵 + 𝑅𝐴𝐶 + 𝑅𝐵𝐶 𝐵 𝑅𝐴𝐵 + 𝑅𝐴𝐶 + 𝑅𝐵𝐶 𝐶 𝑅𝐴𝐵 + 𝑅𝐴𝐶 + 𝑅𝐵𝐶
Ou encore :
𝑅𝐴 .𝑅𝐵 +𝑅𝐴 .𝑅𝐶 +𝑅𝐵 .𝑅𝐶 𝑅𝐴 .𝑅𝐵 +𝑅𝐴 .𝑅𝐶 +𝑅𝐵 .𝑅𝐶 𝑅𝐴 .𝑅𝐵 +𝑅𝐴 .𝑅𝐶 +𝑅𝐵 .𝑅𝐶
𝑅𝐴𝐵 = , 𝑅𝐴𝐶 = , 𝑅𝐵𝐶 =
𝑅𝐶 𝑅𝐵 𝑅𝐴

Tester votre fonction pour les nombres : 𝑅𝐴 = 30Ω, 𝑅𝐵 = 30Ω, 𝑅𝐶 = 30Ω

Page 3 / 3

Vous aimerez peut-être aussi