11
Compte rendu du TP Analyse numérique Auteurs : BATABA Eric ADJORA K. Gaston

Compte rendu du TP Analyse numérique - SiteW.com · Compte rendu du TP Analyse numérique Auteurs : BATABA Eric ADJORA K. Gaston . Sujet : Résolution numérique de l’équation

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

  • Compte rendu du TP Analyse

    numérique

    Auteurs :

    BATABA Eric

    ADJORA K. Gaston

  • Sujet : Résolution numérique de l’équation de Poisson et application à l’étude de la déformation

    d’une membrane

    Enoncé : Soit Equation de Poisson bidimensionnelle pour la déformation d’une

    membrane :

    ] [ ] [

    Avec

    .

    La membrane à l’équilibre correspond à une surface où est solution de la dite équation Apres approximation par différences finies on définit le vecteur

    Contenant les valeurs approchées de a calculer. Et

    Le problème s’écrit sous la forme

    (1)

    Avec La matrice s’écrit en bloc de taille N

    (

    )

    Où I désigne la matrice identité d’ordre N de s’écrit

    (

    )

  • La matrice est donc inversible et symétrique définie positive.

    Pour calculer numériquement la solution du système nous allons utiliser la méthode de Cholesky et la méthode SOR (méthode de relaxation). Ce dernier est intéressant ici car la matrice est creuse (ses coefficients non nuls ne sont localisés sur 5 diagonales).

    Implémentation de la méthode de relaxation (SOR)

    Question1 :

    La fonction a pour nom[ ] . Avec en paramètres

    qui sont successivement le coefficient de relaxation, le second membre et le vecteur

    .La fonction retourne donc qui est la solution puis le nombre

    d’incrémentation .La dite fonction se trouve dans le fichier scilab nommé : Fonction_SOR1.sci.

    Pour la tester on utilise un programme Programme_SOR1.sce

    Celui-ci initialise les paramètres :

    [ ]

    [ ]

    On a donc :

    [ ]

    Avec .

  • Question2 :

    Algorithme de relaxation

    Choisir un vecteur initial , le critère d’arrêt et le coefficient de relaxation .

    Créer avec .

    Créer avec

    Pour ;

    Pour ;

    Créer avec

    Pour ;

    Pour ;

    Tant que ou ou et .

    Calculer

    Calculer

    Calculer

    Ou bien comme souvent présenté dans les littératures

    Calculer

    Fin de Tant que Le programme proprement dit se trouve dans le fichier scilab du nom de Programme_SOR2.sce

    Pour le tester on a utilisé les paramètres initialisé comme suit :

    Donc la matrice a pour dimension

    [ ]

    [ ]

    Le paramètre de relaxation

    La tolérance .

    On a donc comme résultat avec ces valeurs :

    Un nombre d’itération

    Et la norme relative du dernier résidu .

  • Question3 : Ici on effectue un teste véritable du programme avec en entrée :

    Le programme dont le nom de fichier est Fonction_SOR3.sce récupère puis détermine puis nous

    donne donc la taille de nos matrices .

    Apres le calcule d’erreur on a comme valeur :

    .

    Question4 : Evolution de l’erreur relative en fonction de (nombre d’itération)

    Le programme de nom Fonction_SOR4.sce nous donne :

    On constate donc que l’erreur relative décroit exponentiellement avec .

  • Calculons la vitesse de convergence :

    Soit la vitesse :

    Avec la limite ici égale à zéro.

    On a donc .

    Puisque ] [ donc le suit converge linéairement.

    Question5 : La démonstration nous est donnée par le programme du nom de Fonction_SOR4.sce

    Question6 Nous reprenons donc la question 3 avec pour valeur en entrée :

    , et

    On se propose de tracer donc le graphe du nombre d’itérations en sortie du programme en fonction

    de avec [ [ et on choisit dans notre programme un pat de .

    On a donc :

    D’après la courbe pour on réalise moins d’interaction.

    La valeur de w quand on a

    est

    On remarque que ̃

  • NB :

    Le programme a pour nom de fichier Programme_SOR6.sce

    Et a un temps d’exécution d’en moyenne 5minute.

    Question7 : Pour comparer l’efficacité de ces différentes conditions d’arrêt on se propose de calculer l’erreur

    relative et de les comparer, nous garderont les même paramètres d’entrée que dans les questions 3

    et 4 :

    Avec la condition d’arrêt ‖ ‖

    ‖ ‖ ou

    . Résultat obtenue par le programme du nom de Programme_SOR3.sce

    Avec la condition ‖ ‖

    ‖ ‖ ou

    . Résultat obtenue par le programme du nom de Programme_SOR7-1.sce

    Avec la condition 0 ‖ ‖

    ‖ ‖ ‖ ‖ ou

    . Résultat obtenue par le programme du nom de Programme_SOR7-2.sce

    La conclusion est donc évidente la dernier condition d’arrêt ici est la plus précise. (Celle donné par

    Programme_SOR7-2.sce)

    Méthode de Cholesky

    Question8 :

    Le code scilab définissant la matrice sous forme de matrice creuse :

    [ ]

  • Le nom du fichier scilab contenant le programme est Programme_Cholesky8.sce

    Question9 Le programme se trouve dans le fichier Programme_Choleski9.sce

    Nous utilisons ici simplement un que nous initialison a un et le matrice initialisé dans le

    programme de la question 8.

    Question10 Pour la comparaison, puisque pour le calcul d’erreur avec la méthode de relaxation nous n’avons pu

    utiliser un

    nous utiliserons la meme variable d’entré pour la méthode de cholesky.

    On a avec relaxation :

    Avec cholesky :

    On remarque que la méthode utilisant cholesky est plus performances

    Faut aussi noté que avec cholesky et avec pour paramètre d’entrée

    On a :

    Qui est même inférieur à celui avec la relaxation pour

    NB : Le nom du programme est Programme_Cholesky10.sce

  • Calcul de la déformation d’une membrane

    Pour cette partie nous utiliseront la méthode de cholesky.

    Question11 : Pour avec on a :

    A gauche on a le graphe de et à droite celui de .

    Pour on a :

    A gauche toujours on a le graphe de et à droite celui de .

  • NB : Le programme a pour nom Programme_cholesky11.sce

    Question12 :

    Pour cette question nous avons prie ] [ avec un pat de

    On a comme résultats pour ces valeurs :

    NB : Nom du programme Programme_cholesky12.sce

    Question13 : Nos résultats obtenus nous emmènent à une conclusion :

    Avec un petit on a une meilleure précision.

    Question14 : Valeurs des paramètres choisies pour nos calculs :

    Sont les positions des doigts :

    On a comme positions :

    Le pas de discrétisation

  • La représentation du graphe de nous donne :

    NB : Nom du programme Programme_cholesky14.sce

    Conclusion

    Les connaissances tirées du projet ont été très bénéfiques pour nous du faite qu’il

    nous a permis de toucher du doigt les difficultés pouvant intervenir dans

    l’implémentation d’une méthode numérique et dans l’analyse des résultats obtenus, puis

    nous a permis de connaıtre différents outils (matrices creuses, factorisation de

    Cholesky,...) et de s’habituer à utilisation du help (l’aide) de Scilab.