import numpy as np print('------ 3.9 ---------------') print("Système sans solution.") A = np.array([[4, -6], [2, -3]], np.float64) b = np.array([17, 8], np.float64) try: v_sol = np.linalg.solve(A, b) # Essai de résolution du système d'équations. print("v_sol=", v_sol) except : print('Erreur, pas de solution.') print('------ 3.10 ---------------') print("Solution approchée d'un système d'équations linéaires.") A = np.array([[4, -6], [2, -3]], np.float64) b = np.array([17, 8], np.float64) v_sol = np.linalg.lstsq(A, b, rcond=None)[0] # Solution approchée "Least square" = "moindre carré" print("v_sol=", v_sol) print("a*v_sol=", np.dot(A, v_sol)) print('------ 3.11 ---------------') print("Autre exemple de système sans solution, avec solution approchée.") A = np.array([[4, -2, 4], [2, -5, 7], [6, -7, 11]], np.float64) b = np.array([12, 13, 26], np.float64) v_sol = np.linalg.lstsq(A, b, rcond=None)[0] # Solution approchée "Least square" = "moindre carré" print("v_sol=", v_sol) print("A*v_sol=", np.dot(A, v_sol))