\documentclass[a4paper, 10pt]{article}

\usepackage{ananu}
\usepackage{graphicx}
%\usepackage{wrapfig}

\begin{document}

%%  Le titre du TP
\title{\textbf{Résolution de Systèmes Linéaires}}

%%  Commande de page de garde avec 5 arguments (les arguments entre accolades) :
%   1er argument : Numéro du TP (ici TP No 0).
%   2e argument : Numéro du binôme (ici No A00, c'est-à-dire groupe A, binôme 00).
%   3e et 4e arguments : Prénoms et noms du binôme.
%   5 argument : Prénom et nom dans le cas d'un trinôme (ici le champ est laissé vide).

\pageGardeAnaNu{1}{D}{Souleyemen BOUARFA} {Tung Bach NGUYEN}{  }
\clearpage
\section{Introduction}
Dans ce TP noté, nous allons nous intéresser à la résolution d'un système linéaire ainsi qu'à la qualité de la solution.  Nous allons donc grâce à Scilab, résoudre une équation du type :

\large{$$Ax=b; A\in\mathbb{R}\up{n*n}, x,b\in\mathbb{R}\up{n}$$}

Pour résoudre ce genre d'équation, nous avons à notre disposition deux méthodes différentes, la méthode itérative et la méthode directe. Nous allons aussi nous intéresser aux éventuelles erreurs de ces deux méthodes et en faire brièvement une comparaison.


\section{Partie A : Matrice à conditionnement donné}
Pour résoudre un système linéaire de type $Ax=b$, il nous faut dans un premier temps déterminer la matrice A. Pour trouver cette matrice, il nous a fallu construire une matrice diagonale qu'on nommera $\Delta$ et deux matrices orthogonales U et V. De plus, nous allons utiliser la norme matricielle qui est compatible avec la multiplication de matrice.
Pour obtenir la matrice diagonale $\Delta$, il nous faut appliquer la formule suivante qu'on utilisera sur Scilab :

$\Delta$  = diag (1, $k^\frac{-1}{n-1}$, $k^\frac{-1}{n-2}$, ..., $k^{-1}$)

Nous allons pour cela utiliser les valeurs de conditionnement $k=10$, $10^3$ et $10^6$. Dans cette première partie, nous allons fixer la valeur de la dimension n à 10. Comme nous l'avons dit précédemment, la qualité du résultat diffère selon la taille de la matrice et nous allons la faire varier dans la prochaine partie.

Nous avons donc réussi à créer une fonction sur Scilab qui nous a permis de construire cette matrice diagonale.

\clearpage
\begin{figure}[h]
\begin{center}
\includegraphics{fig1.jpg}
\end{center}
\caption{Fonction diagonale}
\label{Fonction diagonale}
\end{figure}

Cette fonction prendra en paramètre la valeur k et n. Ainsi, nous pourrons modifier les valeurs de k et n par la suite selon nos besoins. Par contre, nous avons essayé de lancer la fonction avec une matrice de 50,100 et 1500, cela devient vite illisible, et pour les calculs d’erreurs dans la prochaine partie, interminable.
Nous avons donc testé notre fonction comme prévu avec un n fixe qui est égale à 10 et une variation de la valeur du conditionnement ($k=10$, $10^3$, $10^6$).




\subsection{Méthode de résolution directe}
Cette méthode fait partie de la bibliothèque de Scilab. Il s'agit de la fonction $linsolve$, utilisable ainsi :
$$[x]=linsolve(A,b);$$

\subsection{Méthode itérative}
Ici, on utilise la méthode Jacobi

\subsection{\'Evaluation du nombre d'itérations}
Utilisation de la fonction $spec$ de la bibliothèque de Scilab.
\\$$[lambda]=spec(A)$$ range dans $lambda$ les valeurs propres de A, selon l'ordre croissant algébrique.

\subsection{Influence de la relaxation}
Même démarche que pour le nombre d'itérations mais en utilisant le coefficient de relaxation. On comparera avec les résultats sans relaxation.

\section{Résultats}



\end{document}