\section{Sujet: Résolution d'une EDP par la méthode des différences finis et  visualisation}


Le but est de résoudre numériquement l' équation suivante:

Trouver $u$ une fonction régulière de $\Omega=]0,1[^2$ dans $\mathbb{R}$ tel que
\begin{equation} -\Delta u = f , \qquad \mbox{dans}\quad \Omega\label{eq:lap} \end{equation}
et telle que $u$ soit nulle sur le bord du carré $\Omega$ et où  l'opérateur $ \Delta$ est défini par $\Delta  u = \frac{\partial^2 u}{\partial x^2} +  \frac{\partial^2 u}{\partial y^2} $.

\bigskip
Pour cela nous utiliserons une méthode aux différences finis.
Nous allons calculé une approximation de la  fonction $u$  aux points   $x_{n,m} $,
noté $u_{n,m}$, où les points  $x_{n,m}$  sont $ (h_1 n, h_2 m)$ avec 
$ h_1 = 1/N$ et $h_2 =1/M$, pour $n= 0, ..., N,$ et $m=0,...,M$.

Le schéma aux différences finis pour approcher $\Delta$ par  $\Delta_d$ au 
 point interne $x_{n,m}$  (c'est-à-dire $ n$ différent de $0$ ou $N$ et $ m$ différent de $0$ ou $M$) , c'est à dire:

$$\forall  (n,m)\in \{1,...,N-1\}\times m=\{1,...,M-1\}\quad  \Delta_d u_{n,m} =  \frac{u_{n-1,m}+u_{n+1,m}-2 u_{n,m}}{ h_1^2} +  \frac{u_{n,m-1}+u_{n,m-1}-2 u_{n,m}}{ h_2^2} = f(x_{n,m}).  $$

Remarque $u_{n,m}$ est connue et nulle sur les point du bord, c'est-à-dire $n\in\{0,N\}$ ou  $m\in\{0,M\}$.

\subsection{Projet 12/ UMFPACK}
Le projet est de numéroté les inconnues du systèmes linéaire, pour 
 construire la matrice creuse du système linéaire (où l'on ne stocke que les éléments non nuls)

Il existe plusieurs bibliothèque sur le toile (WEB)  pour résoudre de grand système linéaire creux. Vous  utiliserez le logiciel UMFPACK, qu'il faut trouver, compiler, tester, valider.

Afin de valider programme problème, il faut trouver des solutions du problème (\ref{eq:lap}), le plus simple de de construire une solution manufacture, c'est à dire choisir
un fonction analytique $\phi$ nulle  sur le bord de $\Omega$, et de calculer $f = - \Delta \phi$. 

 Pour, finir, vous utiliserez 
 la bibliothèque GLUT, pour visualiser la représentation 3D de votre solution.
 
 Il faut tester votre programme, pour une famille de $N,M$ allant $5$ à $100$, 
 faire des courbes de temps calcul, etc ... 
 
 \subsection{Projet 13/ SuperLU}
Le projet est de numéroté les inconnues du systèmes linéaire, pour 
 construire la matrice creuse du système linéaire (où l'on ne stocke que les éléments non nuls)

Il existe plusieurs bibliothèque sur le toile (WEB)  pour résoudre de grand système linéaire creux. Vous  utiliserez le logiciel SuperLU, qu'il faut trouver, compiler, tester, valider.

Afin de valider programme problème, il faut trouver des solutions du problème (\ref{eq:lap}), le plus simple de de construire une solution manufacture, c'est à dire choisir
un fonction analytique $\phi$ nulle  sur le bord de $\Omega$, et de calculer $f = - \Delta \phi$. 

 Pour, finir, vous utiliserez 
 la bibliothèque GLUT, pour visualiser la représentation 3D de votre solution.
 
 Il faut tester votre programme, pour une famille de $N,M$ allant $5$ à $100$, 
 faire des courbes de temps calcul, etc ... 


 
  
