diff --git a/Hilbert.py b/Hilbert.py index 28f8d68..55fb55d 100644 --- a/Hilbert.py +++ b/Hilbert.py @@ -1,12 +1,18 @@ -from scipy.linalg import inv, hilbert, invhilbert +from scipy.linalg import * import numpy as np -print("Inverse Hilbert Matrix n = 3: ") -print(invhilbert(3),True) -print("Inverse Hilbert Matrix n = 4: ") -print(invhilbert(4,True)) -print("Inverse Hilbert Matrix n = 5: ") -print(invhilbert(5,True)) +#print("Inverse Hilbert Matrix n = 3: ") +#print(invhilbert(3)) +#print("Matrix Multiplication H(3) * H^-1(3)") +#print(hilbert(3).dot(invhilbert(3))) +#print("Inverse Hilbert Matrix n = 4: ") +#print(invhilbert(4,True)) +#print("Matrix Multiplication H(4) * H^-1(4)") +#print(hilbert(4).dot(invhilbert(4))) +#print("Inverse Hilbert Matrix n = 5: ") +#print(invhilbert(5,True)) +#print("Matrix Multiplication H(5) * H^-1(5)") +#print(hilbert(5).dot(invhilbert(5))) def HilbertApprox(n,m): @@ -17,8 +23,13 @@ def HilbertApprox(n,m): # j = round(j,m) # j = round(j,m) # [round(i,m) for i in h[0]] - print("For H(", n, ") rounded to ", m, "decimal places:") - print(inv(h).round(m)) + #print("For H(", n, ") rounded to ", m, "decimal places:") + #print(inv(h).round(m)) + #print("Matrix Multiplication H(",n,") * H^-1(",n,") for rounded matrix") + p1 = (h.dot(inv(h).round(m))).round(5) + p2 = invhilbert(n) + print("Percentage-Error For n = ",n," m = ",m) + print(np.divide(p2,p1)*100) HilbertApprox(3,2) HilbertApprox(4,2)