def test_kron_large(self): n = 2**16 a = construct.eye(1, n, n - 1) b = construct.eye(n, 1, 1 - n) construct.kron(a, a) construct.kron(b, b)
def test_kron(self): cases = [] cases.append(array([[0]])) cases.append(array([[-1]])) cases.append(array([[4]])) cases.append(array([[10]])) cases.append(array([[0], [0]])) cases.append(array([[0, 0]])) cases.append(array([[1, 2], [3, 4]])) cases.append(array([[0, 2], [5, 0]])) cases.append(array([[0, 2, -6], [8, 0, 14]])) cases.append(array([[5, 4], [0, 0], [6, 0]])) cases.append(array([[5, 4, 4], [1, 0, 0], [6, 0, 8]])) cases.append(array([[0, 1, 0, 2, 0, 5, 8]])) cases.append(array([[0.5, 0.125, 0, 3.25], [0, 2.5, 0, 0]])) for a in cases: for b in cases: expected = np.kron(a, b) for fmt in sparse_formats: result = construct.kron(csr_matrix(a), csr_matrix(b), format=fmt) assert_equal(result.format, fmt) assert_array_equal(result.todense(), expected)
def test_kron(self): cases = [] cases.append(array([[0]])) cases.append(array([[-1]])) cases.append(array([[4]])) cases.append(array([[10]])) cases.append(array([[0],[0]])) cases.append(array([[0,0]])) cases.append(array([[1,2],[3,4]])) cases.append(array([[0,2],[5,0]])) cases.append(array([[0,2,-6],[8,0,14]])) cases.append(array([[5,4],[0,0],[6,0]])) cases.append(array([[5,4,4],[1,0,0],[6,0,8]])) cases.append(array([[0,1,0,2,0,5,8]])) cases.append(array([[0.5,0.125,0,3.25],[0,2.5,0,0]])) for a in cases: for b in cases: result = construct.kron(csr_matrix(a),csr_matrix(b)).todense() expected = np.kron(a,b) assert_array_equal(result,expected)