Coucou à tous!
Je suis entrain de plancher sur de la factorisation LU. J'ai écrit un programme qui, selon la valeur d'une variable v me permet de factoriser une matrice A en LU (qd v=1), résoudre A.X=B (qd v=2), et qui calcule le produit matriciel de A.Y (qd v=3).
Pour cela j'ai créé une subroutine factolu qui a en paramètre v, et un petit menu dans mon programme principal qui demande à l'utilisateur de choisir ce qu'il veut faire. Ce menu apparait en boucle sauf si l'utilisateur choisit v=0 (ce qui quitte le programme). En testant, il n'y a aucun souci pour la factorisation, aucun problème non plus pour la multiplication matricielle. Par contre, pour résoudre A.X=B (avec X un vecteur inconnu donc), on a besoin de la factorisation LU, et visiblement (avec quelques tests) je me suis rendue compte que même en faisant v=1 d'abord, puis v=2, les matrices L et U ne sont pas gardées en mémoire. Comment faire? D'après l'énoncé de mon exercice, je ne dois pas les passer en paramètre de ma subroutine factolu.
Je demande surtout une explication pur comprendre. Merci beaucoup!![]()
Partager