コード例 #1
0
ファイル: lab3.py プロジェクト: neseleznev/urfu-CompExp
def do_method_investigation(method, accuracy_list, verbose=True):
    for accuracy in accuracy_list:
        copy_of_system = []

        for i in range(len(set_of_equations)):
            copy_of_system.append([])
            for j in range(len(set_of_equations[i])):
                copy_of_system[i].append(
                    trim(set_of_equations[i][j], accuracy))

        try:
            print("\nAccuracy: ", accuracy)
            x_by_method = method(copy_of_system, accuracy, verbose)
            print("Answer:\n" + matrix_to_str(x_by_method) + "\n")
            print("Distance R3: " + str(distance_R3_vectors(x_by_method, X_asterisk)))
        except MethodError as e:
            print(e)
コード例 #2
0
ファイル: lab3.py プロジェクト: neseleznev/urfu-CompExp
def main():
    import subprocess
    subprocess.call("clear", shell=True)
    subprocess.call("cls", shell=True)

    print("\n[I]\t\t\tReal answer(X*):\n")
    print(matrix_to_str(X_asterisk))
    print("Proof:")
    import sys
    sys.stdout.write('http://www.wolframalpha.com/input/?i=gauss [')
    for row in set_of_equations[:-1]:
        sys.stdout.write(str(row) + ", ")
    sys.stdout.write(str(set_of_equations[-1]))
    sys.stdout.write(']\n\n')

    print("=" * 80)

    print("[II]\t\t\tCompact Gauss Scheme: ")
    do_method_investigation(compact_gauss_scheme, accuracy_list=[2, 4, 6])
    print("=" * 80)

    print("[III]\t\t\tGauss Scheme with main element: ")
    do_method_investigation(main_item_gauss_scheme, accuracy_list=[2, 4, 6])