Vous êtes sur la page 1sur 23

Analyse numérique pour ingénieurs

Cinquième édition

Utilisation de Matlab

André Fortin
Professeur titulaire
GIREF
Département de mathématiques et de statistique
Université Laval

31 août 2016
ii
Table des matières

1 Généralités sur Matlab 1


1.1 Installation de départ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Commandes de base utiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Fichiers SCRIPT de Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Fichiers FUNCTION de Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Programmes spécifiques au cours d’analyse numérique 3


2.1 Programmes du chapitre 1. Analyse d’erreurs . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Programmes du chapitre 2. Équations non linéaires . . . . . . . . . . . . . . . . . . . 5
2.3 Programmes du chapitre 3. Systèmes d’équations . . . . . . . . . . . . . . . . . . . . 7
2.4 Programmes du chapitre 5. Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.5 Programmes du chapitre 6. Dérivation et intégration . . . . . . . . . . . . . . . . . . 9
2.6 Programmes du chapitre 7. Équations différentielles . . . . . . . . . . . . . . . . . . 10

iii
iv Table des matières
Chapitre 1

Généralités sur Matlab

Ce texte est une très brève introduction à l’utilisation de Matlab pour le cours d’analyse nu-
mérique pour ingénieurs. Idéalement, vous devriez lire ce document assis devant votre ordinateur
pour essayer les commandes proposées. Le temps que vous mettrez à lire cette introduction vous
permettra sans doute de réaliser beaucoup plus vite les devoirs.

1.1 Installation de départ


Plusieurs des méthodes décrites dans le livre sont disponibles sous forme de programmes dans
le langage Matlab. Ces programmes sont disponibles à l’adresse :

http://www.giref.ulaval.ca/afortin/livre-ananum.html

Tous les codes MATLAB se trouvent dans l’archive zip nommée MATLAB.zip. Vous devez
enregistrer le fichier zip dans votre compte informatique ou dans votre ordinateur personnel et
décompresser l’archive. Cette archive contient les fichiers et répertoires suivants :

MATLAB/README
MATLAB/README.Linux
MATLAB/README.Win_FSG
MATLAB/README.Win_Mat
MATLAB/README.Win_PC
MATLAB/startup.m
MATLAB/exemples_fonctions/
MATLAB/programmes_matlab_analyse_numerique/
MATLAB/travail/

Les programmes principaux se trouvent dans le dossier :

programmes_matlab_analyse_numerique

Ces programmes nécessitent l’utilisation de fonctions dont on trouvera des exemples dans le dossier :

1
2 Chapitre 1

exemples_fonctions

Initialement, le dossier nommé

travail

est vide. Vous pouvez travailler dans ce répertoire pour modifier les programmes fournis ou créer
vos propres fonctions MATLAB. En travaillant dans ce répertoire vous éviterez de modifier ou
d’effacer par erreur l’un des programmes fournis.
Pour utiliser efficacement ces programmes MATLAB il faut prendre quelques minutes pour confi-
gurer votre environnement informatique. Il faut lire attentivement le contenu du fichier README
de l’archive zip et choisir la configuration appropriée à votre environnement informatique personnel.
Ce fichier va vous aiguiller selon votre situation :
— Si vous travailler avec le système d’exploitation Windows 7 et votre compte informatique de
la FSG : lire le fichier README.Win_FSG
— Si vous travailler avec la machine virtuelle Windows 7 dans le laboratoire informatique
VCH-1069 : lire le fichier README.Win_Mat
— Si vous utilisez MATLAB avec votre ordinateur personnel et le système d’exploitation Win-
dows : lire le fichier README.Win_PC
— Si vous travaillez sous Linux : lire le fichier README.Linux
Comme dernière étape, il est fortement conseillé de créer un fichier Matlab spécial appelé «star-
tup.m» qui indiquera à Matlab où se trouvent vos fichiers. Tout est clairement indiqué dans le
fichier «startup.m» fourni où vous devez décommenter les lignes correspondant à votre situation.
C’est facile et rapide.
Si tout va bien, vous avez maintenant accès à tous les programmes. Pour vous en assurer, tapez
l’instruction suivante dans la fenêtre commande de MATLAB (Command Window)

>> help newton

et vous devriez obtenir le résultat suivant :

Méthode de Newton en une variable pour résoudre f(x) = 0


Programmeur: A. Fortin (4 avril 1996)
Référence: Analyse numérique pour ingénieurs, A. Fortin,
Presses internationales Polytechnique, 2011
Section 2.4
...

Si vous obtenez

newton not found.

il faut s’assurer que le contenu du fichier startup.m est approprié et qu’il a bien été exécuté à
l’ouverture du logiciel MATLAB.
Généralités sur Matlab 3

1.2 Commandes de base utiles


Voici quelques commandes utiles que vous devez connaître pour utiliser Matlab.
help : La commande help donne une liste des répertoires des fonctions Matlab, tandis que
la commande help sujet donne de l’information sur un répertoire, une commande ou une
fonction particulière.
format : Il y a plusieurs types de format d’affichage dans Matlab. Voici ceux que l’on utilise
le plus couramment. Ainsi, suivant le format, 4/3 s’écriera :
format short (c’est le format qui est donné par défaut) (1.3333)
format short e (1.3333e+00)
format long (1.33333333333333)
format long e (1.33333333333333e+00)
format compact (comprime l’affichage à l’écran)
size : Pour connaître la dimension de la variable A (qui peut être une matrice, un vecteur ou
un scalaire), on tape la commande size(A).
plot : Si x et y sont deux vecteurs de même longueur, alors la fonction plot(x, y) tracera un
graphique du vecteur y en fonction du vecteur x. La commande «help plot» permettra de
voir comment mettre de la couleur, des symboles, etc.
print : Cette commande permet d’imprimer un graphique Matlab.
Le point-virgule ( ;) : Le fait de mettre un point-virgule ( ;) à la suite d’une commande
Matlab empêche l’affichage à l’écran des résultats de celle-ci. Pour débugger un programme,
il est souvent utile d’enlever le point virgule pour voir ce qui se passe.

1.3 Fichiers SCRIPT de Matlab


Les fichiers SCRIPT de Matlab sont simplement des fichiers de texte (ASCII) que vous pouvez
créer avec l’éditeur de Matlab et que vous nommez comme vous le voulez, mais avec un suffixe «.m».
L’éditeur de Matabl ajoutera ce suffixe automatiquement. Ces fichiers sont utiles pour pouvoir écrire
un programme complet dans un même fichier que l’on peut conserver. Cela permet ainsi de corriger
facilement au besoin un programme tout en évitant de devoir entrer toutes ses commandes une par
une à chaque utilisation.
Une remarque importante au sujet de Matlab est que ce logiciel considère toutes les variables
comme des matrices. Il ne faut donc pas s’étonner que Matlab respecte scrupuleusement les règles
sur les produits matriciels et les produits matrice-vecteur. On peut ainsi additionner des vecteurs
pourvu qu’ils soient de même dimension, faire le produit de deux matrices si elles sont compatibles.
Il est très simple de manipuler des vecteurs et des matrices dans Matlab.
>> b = [1 2 3]

b =

1 2 3
>> A = [1 2 3; 4 5 6; 7 8 9]
4 Chapitre 1

A =

1 2 3
4 5 6
7 8 9
On a ainsi le vecteur b (1 par 3) et la matrice A (3 par 3). Si on essaie le produit A ∗ b
>> A*b
Error using *
Inner matrix dimensions must agree.
car le produit n’est pas compatible. Par contre, le vecteur transposé (de dimension 3 par 1) fera
l’affaire et on peut faire l’opération A ∗ b0 :
A*b’

ans =

14
32
50
Il existe aussi des opérateurs qui agissent terme à terme sur les vecteurs et les matrices et qui
sont très utiles en pratique. On les note
.^ .* et ./

On peut ainsi multiplier terme à terme deux vecteurs ou deux matrices ayant exactement les mêmes
dimensions :
>> b = [1 2 3] ;
>> c = [-1 2 -3];
>> b.*c

ans =

-1 4 -9
>> b./c

ans =

-1 1 -1
>> b.^3

ans =
Généralités sur Matlab 5

1 8 27
>> cos(b)

ans =

5.403023058681398e-01 -4.161468365471424e-01 -9.899924966004454e-01


Ces opérations n’auraient aucun sens autrement. L’utilisation de ces opérations permet de mani-
puler des vecteurs et des matrices très efficacement. Il faut toutefois être conscient que ce ne sont
pas des opérations matricielles ou vectorielles classiques. Par exemple :
>> b^3
Error using ^
Inputs must be a scalar and a square matrix.
To compute elementwise POWER, use POWER (.^) instead.
n’a pas de sens puisque l’on ne peut mettre un vecteur au cube.
Nous présentons maintenant deux exemples de fichiers SCRIPT de Matlab que vous pouvez
essayer de reproduire dans votre répertoire de travail.
1. Le fichier SCRIPT suivant calcule la précision machine  (voir l’exemple du chapitre 1).
% Fichier precision.m
% -----------------
% Ce programme MATLAB calcule la precision machine
% (voir l’algorithme 1.1 page 17 du livre)
%
epsilon = 1.0;
while (1.0 + epsilon) > 1.0
epsilon = epsilon / 2.0;
end
% On remultiplie par 2
epsilon = epsilon * 2.0
%
Une fois ce fichier créé et sauvegardé, il suffit pour l’exécuter sur Matlab d’entrer :
>> precision
et toutes les commandes contenues dans le fichier seront exécutées. Vous avez ensuite accès à
toutes les variables qui ont été définies dans le fichier SCRIPT. On dit de ces variables qu’elles
sont globales. C’est exactement comme si vous aviez tapé chaque commande à l’écran. Par
exemple, la variable epsilon est accessible en entrant :
>> epsilon
epsilon =
2.2e-16
6 Chapitre 1

2. Le fichier SCRIPT suivant permet de dessiner la courbe paramétrée :


cos t sin t
 
(x1 (t), x2 (t)) = ,
t t
dans l’intervalle [π, 20π] par incrément de π/16 et qui décrit une spirale.
% Fichier spirale.m
% -----------------
% Ce programme MATLAB dessine une spirale
%
% Le vecteur t va de pi à 20pi par incrément de pi/16
t = pi: pi/16: 20*pi;
%
x1 = cos(t) ./ t; Noter l’utilisation de l’opération ./
x2 = sin(t) ./ t;
%
% Le graphique
%
plot(x1,x2,’r’)
% Le titre du graphique et la signification des axes
%
title(’Spirale’)
xlabel(’x1 = cos t / t’)
ylabel(’x2 = sin t / t’)
%
Pour exécuter :
>> spirale
ce qui produira la figure 1.1. Les variables
t, x1, x2
sont maintenant disponibles et l’on peut poursuivre les calculs.

1.4 Fichiers FUNCTION de Matlab


On a souvent besoin de manipuler des fonctions mathématiques plus ou moins complexes. Les
fonctions trigonométriques, exponentielles, logarithmiques de même qu’une grande variété d’autres
fonctions sont disponibles directement dans matlab.
On peut aussi créer nos propres fonctions. Pour les fonctions simples, il est préférable de créer
des fonctions dites «anonymes» dont la syntaxe est :
f_anonym = @ (x) x.^2 -2
pour une fonction d’une variable ou encore
f_anonym2 = @ (x,y) x.^2 + y.^2 -2
Généralités sur Matlab 7

Figure 1.1 – Exemple de figure

pour une fonction de deux variables. On peut ensuite les utiliser par la commande :
>> a = f_anonym(3)

a =

7
>> b = f_anonym2(1,2)

b =

3
>> vec1 = [1 2 3] ;
>> vec2 = [4 5 6] ;
>> f_anonym(vec1)

ans =

-1 2 7
>> f_anonym(vec1,vec2)

ans =

15 27 43
On notera que l’utilisation du produit «.*» dans les définitions permet de prendre des vecteurs en
arguments.
8 Chapitre 1

Pour les fonctions plus complexes, on doit créer un fichier FUNCTION. À la différence des
fichiers SCRIPT de Matlab, les fichiers FUNCTION ont une syntaxe plus rigoureuse. En effet, tout
comme pour une fonction mathématique, un fichier FUNCTION possède des arguments d’entrée et
des arguments de sortie. Pour pouvoir utiliser un fichier FUNCTION, il suffit de créer à l’aide de
l’éditeur de Matlab un fichier texte (ASCII) que vous pouvez nommer comme vous voulez pourvu
qu’il soit muni du suffixe «.m» tout comme pour les fichiers SCRIPT.
Par exemple, si l’on veut utiliser la fonction mathématique f (x) = x2 , on peut éditer un fichier
nommé par exemple «fonc.m» qui s’écrit :
% Un exemple de fichier FUNCTION
% ------------------------------
function y = fonc(x)
y = x .^ 2;
et le tour est joué. Il est préférable d’utiliser le même nom de fichier que celui de la
fonction elle-même.
Remarquez la syntaxe de la première ligne (après les 2 lignes de commentaires) qui doit abso-
lument être respectée. Notez ici encore l’utilisation de l’opérateur «.^» qui permettra d’utiliser un
vecteur comme argument d’entrée x. Il est d’ailleurs recommandé de toujours utiliser les opérateurs :
.^ .* et ./

dans la définition des fichiers FUNCTION sauf si effectivement on y utilise des produits matriciels
classiques.
Pour utiliser la fonction du fichier «fonc.m», il suffit d’entrer au clavier :
» fonc(2)
ans =
4
On peut aussi placer le résultat dans une autre variable :
» b = fonc(5)
b =
25
ou encore puisque l’on peut utiliser des vecteurs :
» vecteur = [ 1 2 3];
» reponse = fonc(vecteur)
reponse =
1 4 9
qui est également un vecteur.
À la différence des fichiers SCRIPT, les variables à l’intérieur d’un fichier FUNCTION ne sont
pas disponibles à l’extérieur. On dit qu’elles sont locales. Si l’on essaie d’obtenir la valeur des
variables locales x et y :
Généralités sur Matlab 9

» x
??? Undefined function or variable x.
» y
??? Undefined function or variable y.
Matlab ne les reconnaît pas.
La syntaxe plus générale des fichiers FUNCTION est la suivante :
function [y1, y2, y3, ... yn] = fonc2(x1,x2,x3,... xm)
et l’ on a une fonction de m arguments d’entrée et de n arguments de sortie. Par exemple, dans le
fichier «cercle.m», on a programmé le périmètre et l’aire d’un cercle en fonction de son rayon :
function [peri, aire] = cercle(R)
%
% argument d’entrée:
% le rayon: R
% arguments de sortie:
% le périmètre: peri
% l’aire: aire
peri = 2 * pi * R;
aire = pi * R.^2;
Pour utiliser cette fonction, il n’est pas nécessaire d’utiliser les mêmes noms de variables que
ceux utilisés dans le fichier FUNCTION lui-même. Il suffit de s’assurer qu’il y a le même nombre
d’arguments d’entrée et de sortie. On peut se servir de cette fonction en écrivant par exemple :
[y1, y2] = cercle(3)
y1 =
18.8496

y2 =
28.2743
Notez que les variables peri, aire et R sont locales. Par contre, les variables y1 et y2 sont bien
définies et contiennent respectivement le périmètre et l’aire du cercle. On aurait pu aussi écrire :
» rayon = 5;
» [per, surf] = cercle(rayon)
per =
31.4159

surf =
78.5398
Ce sont maintenant les variables per, surf et rayon qui sont définies (les variables y1, y2 le
sont aussi à moins qu’on ne les ait effacées).
En terminant, notons que, dans un fichier FUNCTION, on ne programme que le strict nécessaire
au calcul des variables de sortie en fonction des variables d’entrée. Il ne faut pas y mettre de
commandes superflues. Par exemple, dans la définition de la FUNCTION «fonc.m», si l’on ajoute
des commandes pour tracer cette fonction dans l’intervalle [0, 5], chaque fois que le fichier «fonc.m»
sera appelé, un graphique sera produit, ce qui peut devenir gênant. Si l’on souhaite tracer cette
fonction, on créera plutôt un fichier SCRIPT «tracer.m» de la forme :
% Fichier tracer.m
%
% Partition de l’intervalle [0,5]
x = 0 : 0.01 : 5.0 ;
% Evaluation de la fonction sur tout le vecteur x
y = fonc(x);
% Graphique de la fonction
plot(x,y, ’-’)
qui produira le graphique souhaité.
Notons enfin que les algorithmes pour le cours d’analyse numérique ont été programmés à l’aide
de fichiers FUNCTION : bissect.m, newton.m, etc.
2 Chapitre 1
Chapitre 2

Programmes spécifiques au cours


d’analyse numérique

Tous les programmes fournis fonctionnent essentiellement de la même manière, avec des argu-
ments d’entrée et de sortie qui varient suivant la méthode. Un simple copier-coller des exemples
d’appel (obtenu à l’aide la commande «help») est souvent suffisant pour les utiliser. Vous pouvez
aussi vous inspirer des programmes fournis pour créer vos propres applications dans Matlab.

2.1 Programmes du chapitre 1. Analyse d’erreurs


Il n’y a pas de programme spécifique au chapitre 1. Nous soulignons simplement deux points
importants.
Notation IEEE On notera que Matlab travaille en double précision en respectant la notation
IEEE. Vous pouvez essayer des commandes comme :
>> 1/0

ans =

Inf
>> 0/0

ans =

NaN

eps C’est une variable interne de Matlab qui contient la précision machine (en double précision).
>> eps

ans =

3
4 Chapitre 2

2.220446049250313e-16

L’exemple de la section 1.3 illustre comment créer un fichier SCRIPT pour déterminer la
précision machine.
Programmes spécifiques 5

2.2 Programmes du chapitre 2. Équations non linéaires


1. Méthode de la bissection :
bissection.m
2. Méthode des points fixes :
points_fixes.m
3. Méthode de Newton :
newton.m
4. Méthode de la sécante :
secante.m
5. Méthode de Steffenson :
steffenson.m
Les méthodes de la bissection, de Newton et de la sécante nécessitent de définir la fonction f (x)
dont on cherche les racines. La fonction :
fonc.m
en est un exemple. Rappelons que la méthode de Newton nécessite aussi la dérivée de la fonction :
derivee_fonc.m
dont on trouvera des exemples dans le répertoire :
exemples_fonctions
On peut aussi utiliser des fonctions dites «anonymes» dont la syntaxe pourrait être :
f_anonym = @ (x) x.^2 -2
pour la fonction et
f_anonym_der = @ (x) 2*x
pour sa dérivée.
Les méthodes des points fixes et de Steffenson utilisent une fonction g(x) comme dans le fichier :
g.m
dont on trouvera aussi un exemple au même endroit.
Pour obtenir l’aide en ligne dans le logiciel Matlab, il suffit d’utiliser la commande «help» suivi
du nom du programme matlab (sans le suffixe .m), comme par exemple
help newton
du chapitre 2 qui fera apparaître :
6 Chapitre 2

Méthode de Newton en une variable pour résoudre f(x) = 0


Programmeur: A. Fortin (4 avril 1996)
Référence: Analyse numérique pour ingénieurs, A. Fortin,
Presses internationales Polytechnique, 2011
Section 2.4

Exemples d’appel:

[x, err] = newton(’fonc’, ’derivee_fonc’, 2.0, 10, 1.0e-6)


[x, err] = newton(’fonc’, ’derivee_fonc’, 2.0, 10, 1.0e-6, ’resul.dat’)

Si vous avec une fonction anonyme (@) (on ne met pas les apostrophes)
[x, err] = newton(f_anonyme, df_anonyme, 2.0, 10, 1.0e-6)
[x, err] = newton(f_anonyme, df_anonyme, 2.0, 10, 1.0e-6, ’resul.dat’)
Arguments

Entree:
1) f: Le nom entre apostrophes (’ ’) du fichier .m contenant la fonction f(x).
comme par exemple ’fonc’ (correspondant à un fichier fonc.m)
ou encore le nom de la fonction anonyme comme par exemple
f_anonyme = @(x) x*x - 2.;
2) df: mêmes indications qu’au point 1 mais pour la dérivée de la fonction;
3) x0: Vous devez fournir un estimé initial.
4) nmax: Vous devez fournir le nombre maximal d’itérations.
5) epsilon: Vous devez fournir le critère d’arrêt.
6) resul: Si vous voulez les résultats dans un fichier, vous
devez fournir le nom entre apostrophes (’ ’) de ce fichier.
Exemple: ’resul.dat’ qui créera un fichier nommé resul.dat.
Retour:
1) x est un vecteur contenant les différentes itérations.
2) S’il y a convergence, err est le vecteur dont les composantes sont |x_n - r|,
r étant la racine trouvée. Sinon, err est une matrice vide.

Il suffit donc de modifier à votre guise les arguments pour résoudre un problème à l’aide de la
méthode de Newton.
Programmes spécifiques 7

2.3 Programmes du chapitre 3. Systèmes d’équations


Matlab possède sa fonction propre pour la décomposition LU . On peut l’appeler par la com-
mande :
[P, L, U] = lu(A)
On peut résoudre un système linéaire de la forme Ax = b à l’aide des commandes :
b1 = P*b; % Permutation du vecteur b
y = L\b1; % Système triangulaire inférieur
x = U\y; % Système triangulaire inférieur

ou de manière encore plus concise par la commande :


x = A\b ;
qui fait toutes ces opérations d’un seul coup. On peut aussi calculer le déterminant d’une matrice
par la commande :
det(A) ;
sa norme par la commande :
norm(A,1) ou norm(A,inf);
son conditionnement par la commande :
cond(A,1) ou cond(A,inf);
et son inverse par :
inv(A) ;
Nous vous fournissons de plus un programme pour la méthode de Newton pour les systèmes :
systeme_non_lineaire.m
On peut voir un exemple de système non linéaire dans le fichier
sys.m
8 Chapitre 2

2.4 Programmes du chapitre 5. Interpolation


1. Le polynôme de Newton :
polynome_newton.m
2. La spline cubique :
spline_cubique.m
Utiliser la commande «help» pour voir comment les utiliser. Par exemple :
>> x = [0 1 2 3];
>> y = [1 2 9 28];
>> eval = [0 : 0.01: 3];
>> [c, a, D, fx] = polynome_newton(x, y, eval);
>> plot(eval, fx)
calculera le polynôme de Newton dont les xi sont dans le vecteur x, les yi dans le vecteur y. Le
polynôme sera évalué sur une partition de l’intervalle [0, 3] par incrément de 0,01. Les valeurs
interpolées sont placées dans le vecteur f x et on peut ensuite tracer le polynôme.
Programmes spécifiques 9

2.5 Programmes du chapitre 6. Dérivation et intégration


1. Méthode des trapèzes :
int_trapezes.m
2. Méthode de Simpson 1/3 :
int_simpson13.m
3. Méthode de Simpson 3/8 :
int_simpson38.m
4. Méthode de Boole :
int_boole.m
5. Méthode de Romberg :
int_romberg.m
6. Méthode de Gauss-legendre :
int_gauss.m
7. Méthode des splines cubiques :
int_spline_cubique.m
Toutes ces méthodes utilisent un fichier contenant la fonction à intégrer comme le fichier «fonc.m»,
ou encore une fonction anonyme ou encore, un vecteur contenant les valeurs de la fonction aux
points d’intégration. Utiliser la commande «help» pour voir comment les utiliser.
Par exemple :
>> fn = @ (x) sin(x);
>> I = int_trapezes(fn, 0, pi/2, 8)
I =

9.967851718861696e-01
>> I = int_simpson13(fn, 0, pi/2, 8)

I =

1.000008295523968e+00

a calculé l’intégrale de la fonction y = sin(x) dans l’intervalle [0, π/2] avec 8 sous-intervalles en
utilisant respectivement les méthodes des trapèzes et Simpson 1/3.
10 Chapitre 2

2.6 Programmes du chapitre 7. Équations différentielles


1. Méthode d’Euler explicite :
euler_explicite.m
2. Méthode d’Euler modifiée :
euler_modifiee.m
3. Méthode du point milieu :
point_milieu.m
4. Méthode du Runge-Kutta d’ordre 4 :
runge_kutta4.m
5. Méthode de tir
tir.m
6. Méthode de tir non linéaire
tir_non_lineaire.m
Toutes les méthodes de résolution d’équations différentielles ont besoin de connaître la fonction
f (t, y). On peut créer des fonctions anonymes ou encore, on trouvera un exemple dans le fichier
eq_diff.m
dans le cas d’une équation différentielle ou encore :
systeme_eq_diff.m
pour un système.
Par exemple :

>> fn = @(t,y) -y + t + 1;
>> [t,y] = euler_explicite(fn, 0.0, [1], 0.1, 10)

résoudra l’équation différentielle y 0 (t) = −y + t + 1 sous la condition y(0) = 1. On fera 10 pas de


longueur 0,1.
La méthode de tir linéaire utilise les fonctions :
a0.m, a1.m, a2.m
tandis que la variante non linéaire utilise un fichier :
systeme_tir.m
dont vous trouverez des exemples dans le répertoire «exemples_fonctions». La commande «type
a0» permet par exemple de voir le contenu de la fonction «a0.m».