示例#1
0
    def gauss_jordan_switch_column_test(self):
        """Test the gauss jordan algorithm if the first values is zero.

        This test checks, if the lines are switched correctly.
        """
        rows = 3
        cols = 6
        data = [
                    [0, 2, 0, 1, 0, 0],
                    [2, 3, 0, 0, 1, 0],
                    [3, 4, 1, 0, 0, 1]
                ]
        mtrx = Matrix(cols, rows)
        mtrx.initialize(data, rowBased=True)

        exRes = [
                    [1.0, 0.0, 0.0],
                    [0.0, 1.0, 0.0],
                    [0.0, 0.0, 1.0],
                    [-0.75, 0.5, 0.25],
                    [0.5, 0.0, -1.5],
                    [0.0, 0.0, 1.0]
        ]

        res = mtrx.gauss_jordan()
        self.assertEqual(res.matrix, exRes)
示例#2
0
    def gauss_jordan_test(self):
        """Test gauss_jordan algorithm for the calculation of the inverse."""
        rows = 3
        cols = 6
        data = [[1, 2, 0, 1, 0, 0], [2, 3, 0, 0, 1, 0], [3, 4, 1, 0, 0, 1]]
        mtrx = Matrix(cols, rows)
        mtrx.initialize(data, rowBased=True)

        exRes = [[1, 0, 0], [0, 1, 0], [0, 0, 1], [-3, 2, 1], [2, -1, -2],
                 [0, 0, 1]]
        res = mtrx.gauss_jordan()
        self.assertEqual(res.matrix, exRes)
示例#3
0
    def gauss_jordan_linear_equation_system_test(self):
        """Test gauss_jordan algorithm to solve a linear equation system."""
        rows = 3
        cols = 4
        data = [[1, 1, 1, 0], [4, 2, 1, 1], [9, 3, 1, 3]]
        mtrx = Matrix(cols, rows)
        mtrx.initialize(data, rowBased=True)
        # 2-dimensional list exRes[column][rows]
        exRes = [[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0],
                 [0.5, -0.5, 0]]
        res = mtrx.gauss_jordan()

        self.assertEqual(res.matrix, exRes)
示例#4
0
    def gauss_jordan_switch_column_test(self):
        """Test the gauss jordan algorithm if the first values is zero.

        This test checks, if the lines are switched correctly.
        """
        rows = 3
        cols = 6
        data = [[0, 2, 0, 1, 0, 0], [2, 3, 0, 0, 1, 0], [3, 4, 1, 0, 0, 1]]
        mtrx = Matrix(cols, rows)
        mtrx.initialize(data, rowBased=True)

        exRes = [[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0],
                 [-0.75, 0.5, 0.25], [0.5, 0.0, -1.5], [0.0, 0.0, 1.0]]

        res = mtrx.gauss_jordan()
        self.assertEqual(res.matrix, exRes)
示例#5
0
    def gauss_jordan_linear_equation_system_test(self):
        """Test gauss_jordan algorithm to solve a linear equation system."""
        rows = 3
        cols = 4
        data = [
                    [1, 1, 1, 0],
                    [4, 2, 1, 1],
                    [9, 3, 1, 3]
                ]
        mtrx = Matrix(cols, rows)
        mtrx.initialize(data, rowBased=True)
        # 2-dimensional list exRes[column][rows]
        exRes = [
                    [1.0, 0.0, 0.0],
                    [0.0, 1.0, 0.0],
                    [0.0, 0.0, 1.0],
                    [0.5, -0.5,  0]
                ]
        res = mtrx.gauss_jordan()

        self.assertEqual(res.matrix, exRes)
示例#6
0
    def gauss_jordan_test(self):
        """Test gauss_jordan algorithm for the calculation of the inverse."""
        rows  = 3
        cols  = 6
        data  = [
                    [1, 2, 0, 1, 0, 0],
                    [2, 3, 0, 0, 1, 0],
                    [3, 4, 1, 0, 0, 1]
                ]
        mtrx  = Matrix(cols, rows)
        mtrx.initialize(data, rowBased=True)

        exRes = [
                    [1, 0, 0],
                    [0, 1, 0],
                    [0, 0, 1],
                    [-3, 2, 1],
                    [2, -1, -2],
                    [0, 0, 1]
                ]
        res = mtrx.gauss_jordan()
        self.assertEqual(res.matrix, exRes)