def main(): from constants import A2_21 as A, b2_21 as b start_time = time.time() x = solve(A, b) solve_time = time.time() print("Roots:") print_vector(x) check_roots(A, x, b) det = gk.determinant(A) det_time = time.time() print print("Determinant: {}".format(det)) print inversed = gk.inverse(A) inverse_time = time.time() print("Inverse matrix:") print_matrix(inversed, precision=8) print("Check inverse matrix:") print_matrix(multiply(inversed, A)) print("Time elapsed: ") print( "\tSolution:\t{} ms\n\tDeterminant:\t{} ms\n\tInversion:\t{} ms\n\tOverall:\t{} ms" .format((solve_time - start_time) * 1000, (det_time - solve_time) * 1000, (inverse_time - det_time) * 1000, (inverse_time - start_time) * 1000))
def main(): from constants import A3_21 as A, b3_21 as b start_time = time.time() x = solve(A, b) solve_time = time.time() print("Roots:") print_vector(x) check_roots(A, x, b) print("Time elapsed: ") print("\tSolution:\t{} ms".format((solve_time - start_time) * 1000))
def main(): from constants import A3_21 as A, b3_21 as b start_time = time.time() print("Correctness and stability check: {}".format(is_stable(A))) check_time = time.time() x, det = solve(A, b) solve_time = time.time() print("Roots:") print_vector(x) check_roots(A, x, b) print print("Determinant: {}".format(det)) print("Time elapsed: ") print( "\tCheck: \t\t{} ms\n\tSolution:\t{} ms\n-------------\n\tOverall:\t{} ms" .format((check_time - start_time) * 1000, (solve_time - check_time) * 1000, (solve_time - start_time) * 1000))
for i in xrange(n - 1): col = transpose([get_row(L, i)[i:]]) H = get_householder_reflection_matrix(col) if (i != 0): for j in xrange(i): H = extend_householder_matrix(H) L = multiply(L, H) Q = multiply(H, Q) householders_reflections.append(H) params_matrix_list.append(L) C = [] for i in xrange(len(L)): C.append(L[i] + [B[i][0]]) print_matrix(C, round_elem=True) y = transpose([[backward_left(C, i) for i in xrange(len(C))]]) x = multiply(transpose(Q), y) print_matrix(x) check_roots(A, [xi[0] for xi in x], B) print "\ndetA = detQ * detL = " + str( get_determinant(len(householders_reflections), L)) print "\ninv(A) = inv(L) * inv(Q) = inv(L) * Q' (транспонированая) = " inversed = get_invariant(L, Q) print_matrix(inversed) print("Check inverse matrix:") print_matrix(multiply(inversed, A))