コード例 #1
0

def LUPMethod(size, a, b):
    print("Лабораторная работа 1.1")
    print("алгоритм LUP - разложения матриц ")
    print()
    print("Матрица")
    additional.PrintMatrix(a)
    additional.PrintVector(b)
    l, u, p = LUPSeparate(size, a)
    x = LUPSolve(size, l, u, b, p)
    print("L")
    additional.PrintMatrix(l)
    print("U")
    additional.PrintMatrix(u)
    print("L * U")
    additional.PrintMatrix(numpy.array(l) @ numpy.array(u))  # исправить
    print("Ответ")
    additional.PrintVector(x)
    print("Ответ, почлученный при помощи numpy")
    additional.PrintVector(numpy.linalg.solve(a, b))


if __name__ == '__main__':
    size, a, b, _ = additional.GetStatement("1.txt")
    LUPMethod(size, a, b)
'''
задание 3 -- получить обратную матрицу из задания 1 (lup разложение)

задание 4 -- проверить что A * x = lambda * x
'''
コード例 #2
0
        additional.PrintMatrix(q)

        rootType = GetRootTipe(size, a, precision)
        if additional.HaveNoRoot(rootType):
            if step:
                step = False
            else:
                return Solve(a, rootType)

    return None


def QRMethod(size, a, precision):
    print("Лабораторная работа 1.5")
    print("Алгоритм QR – разложения матриц")
    print()
    print("Матрица")
    additional.PrintMatrix(a)
    x = QRMain(size, a, precision)
    print("Ответ")
    additional.PrintVector(x)

    x, u = numpy.linalg.eig(a)
    print("Ответ, почлученный через numpy.linalg")
    additional.PrintVector(x)


if __name__ == '__main__':
    size, a, b, precision = additional.GetStatement("55.txt")
    QRMethod(size, a, precision)