combinatorics.py 文件源码

python
阅读 31 收藏 0 点赞 0 评论 0

项目:quadpy 作者: nschloe 项目源码 文件源码
def pm_roll(n, v):
    '''Returns `2**k * n` number of points of dimension `n` such that

    p[0] = [+-v[0], ..., +-v[k], 0, ..., 0]
    p[1] = [0, +-v[0], ..., +-v[k], 0, ..., 0]
    ...
    p[n-1] = [+-v[1], ..., +-v[k], 0, ..., 0, +-v[0]]

    with all +- configurations.
    '''
    k = len(v)
    assert k <= n

    pm_v = pm_array(v)

    r0 = numpy.zeros((len(pm_v), n), dtype=pm_v.dtype)
    r0[:, :k] = pm_v

    return numpy.concatenate([
        numpy.roll(r0, i, axis=1)
        for i in range(n)
        ])


# TODO remove
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号