Ejemplo n.º 1
0
def test_constructors():
    int_row = 10
    int_col = 20
    # int row/col
    m1 = Matrix(int_row, int_col)
    check_dense_mat(m1, int_row, int_col)

    # int row/col w/ name
    m2 = Matrix("m2", int_row, int_col)
    check_dense_mat(m2, int_row, int_col, "m2")

    dim_row = Dimension([3, 2, 1, 4])
    dim_col = Dimension([4, 2, 0, 2])
    # dim row/col (default sym)
    m3 = Matrix("m3", dim_row, dim_col)
    check_block_sparse_mat(m3, 4, dim_row, dim_col, "m3")

    # dim row/col symm specified
    m4 = Matrix("m4", dim_row, dim_col, 2)
    check_block_sparse_mat(m4, 4, dim_row, dim_col, "m4", 2)
Ejemplo n.º 2
0
def build_random_mat(rdim, cdim, symmetry=0):
    m = Matrix("test", rdim, cdim, symmetry)
    for h in range(m.nirrep()):
        block_shape = (m.rows(h), m.cols(h ^ m.symmetry()))
        m.nph[h][:, :] = np.random.randn(*block_shape)
    return m