Nous avons implémenté un code Scilab en dimension 1 et 2
En dimension 1 :
La dimension 1 constitue les premiers pas :
familiarisation avec les méthodes VF, prise en main du code, principes
de mise en oeuvre.
On peut résoudre le problème de Laplace avec des
conditions aux bords de Dirichlet
ou/et de Neumann non homogène. L'écriture du schéma est donnée de deux
manières différentes tout d'abord avec l'approche différences finies
puis en assemblant les termes par interface.
Ensuite, on ajoute un coefficient de diffusion
variable k(x) et la prise en compte d'un éventuel terme source de Dirac.
En dimension 2 :
L'une des difficultés de la dimension 2 est la gestion du maillage. On travaille à l'aide de la structure suivante :
*Numéro
des deux sommets
maillage.aretes(k,_DEB),
maillage.aretes(k,_FIN)
* Numéros des deux volumes K et L
maillage.aretes(k,_K), maillage.aretes(k,_L)
* Mesure de l'arête et la distance entre K et L
maillage.aretes(k,_MES), maillage.aretes(k,_DKL)
* Mesure des quarts de diamant
maillage.aretes(k,_MES_K_DEB), ...
* Label (>=0 à l'intérieur, =-1 sur le bord Dirichlet, <-1 sur le bord Neumann
maillage.aretes(k,_LABEL).
Grâce à cette structure de maillage, on a implémenté
le schéma VF classique à 2 points (VF4) ou le schéma DDFV pour les
problèmes de diffusion anisotrope.
Deux programmes sont donnés, le premier permet de tracer la solution et
d'évaluer l'erreur faite, le second permet de mettre en évidence
l'ordre de convergence du schéma. De plus, la structure de maillage
fournie rend complétement exploitable notre code scilab pour approcher
d'autres problèmes.* Numéros des deux volumes K et L
* Mesure de l'arête et la distance entre K et L
* Mesure des quarts de diamant
* Label (>=0 à l'intérieur, =-1 sur le bord Dirichlet, <-1 sur le bord Neumann