Vous êtes sur la page 1sur 13

Université Abdelmalek Essaadi

Faculté des Sciences et Techniques Tanger

Projet simulation numérique effectué par le logiciel Scilab

Travail effectué par :


KCHOURI Rim
Hlou Afaf

Encadrée par : BELHAJ Hassan

1ère année Master Sc de l’environnement

Année universitaire : 2021-2022


Scilab
Le logiciel scilab est un logiciel libre de calcul numérique multi‐plate‐
forme fournissant un environnement de calcul pour des applications
scientifiques.
Il possède un langage de programmation orienté calcul numérique
de haut niveau.Il peut être utilisé pour le traitement du signal,
l’analyse statistique, le traitement d’images, les simulations de
dynamique des fluides, l’optimisation numérique, et la modélisation
et simulation de systèmes dynamiques explicites et implicites.

Scilab peut exécuter des instructions en ligne de commande, ainsi


que des fichiers de commande (scripts) contenant des instructions
(format texte).

1
TP 1

Exercice 1
1) On définit la matrice de Hilbert de n lignes et colonnes, par création d’une nouvelle fonction sur Scilab,
qu’on va appeler tout simplement hil, et qui va créer à chaque fois une nouvelle matrice de Hilbert en

définissant le nombre n comme suit :

On définit aussi la fonction b pour créer le vecteur :

2) En utilisant les fonctions déclarées dans la première étape précédente, on peut calculer facilement les
matrices A et les vecteurs b pour les cas suivants :
 Pour n = 3 :

2

3) Pour réaliser la factorisation LU des matrices précédentes, le programme Scilab dispose de la fonction
lu(A) pour calculer directement les matrices L et U de cette factorisation. Ainsi, on aura :
 Pour n = 3 :

 Pour n = 5 :

3

 Pour n = 10 :

4

4) Essayons maintenant de résoudre le système Ax=b à l’aide de Scilab, pour cela, nous déclarons d’abord
les variables A (matrice de Hilbert de n = 5), sa décomposition en matrices L et U, et le vecteur b
solution :

5
calcul du vecteur Y, ‘’ le produit de l’inverse de la matrice L et le vecteur solution b’’ :

Finalement, le vecteur résultat X est tout simplement le produit entre l’inverse de la matrice U et le
vecteur précédent Y. On trouve ainsi :

6
TP 3
L’équation différentielle (P) : y’(t)= (a-by(t))y(t)
y(t)= y0

avec: t ∈ ]0,T]

1- Nous allons programmer sur Scilab une fonction qui va utiliser le schéma d’Euler pour
résoudre l’équation différentielle (P)

les paramètres d’entrée:

t0 : temps initial, fixé à 0


tf : temps final, fixée dans cet exercice à 10
N : nombre de points de discrétisation

7
f : fonction définissant l’équation différentielle
y0 : valeur initiale de calcul de la solution approchée

Prenons comme y0 la valeur initiale 1, et calculons le résultat de la discrétisation pour


les valeurs de N suivantes :

Pour N=10 :

Pour N = 20 :

8
Pour N = 100 :

2- On résoudre (P) à l’aide de la fonction (ode) de Scilab

3- Les solutions approchées trouvées par la méthode EE et par la méthode ODE

9
4- les solutions approchées obtenues par la méthode (EE) pour :

y0 = 0,01
y0 = 0,1
y0 = 0,5
y0 = 1 

10
On trouve graphiquement :

11
12

Vous aimerez peut-être aussi