def resolution_cramer_avec_plu(P,L,U,b): """P : une matrice de permutation L : une matrice triangulaire inferieure U : une matrice triangulaire superieure b : une liste correspondant au vecteur B dans l'equation PLUX = B PLUX = B doit etre un systeme de cramer""" b = [[b[i]]for i in range(len(b))] b = permutation.produit_permut_g(permutation.transpose(P), b) b = [b[i][0] for i in range(len(b))] Y = resolution_tri_inf_cramer(L, b) X = resolution_tri_sup_cramer(U, Y) return X
def resolution_cramer(a,b): """a : une matrice b : une liste correspondant au vecteur B dans l'equation AX = B Le systeme A*X=B doit etre de Cramer sortie : la solution de A*X=B""" P, L, U = decomposition.decomposition_plu(a) P = permutation.matrice_permutation_inverse(P) b = [[b[i]]for i in range(len(b))] b = permutation.produit_permut_g(permutation.transpose(P), b) b = [b[i][0] for i in range(len(b))] Y = resolution_tri_inf_cramer(L, b) X = resolution_tri_sup_cramer(U, Y) return X