permute.py 281 Bytes
Newer Older
rusty1s's avatar
rusty1s committed
1
2
3
4
5
import torch
from torch_sparse.tensor import SparseTensor


def permute(src: SparseTensor, perm: torch.Tensor) -> SparseTensor:
rusty1s's avatar
rusty1s committed
6
7
    assert src.is_quadratic()
    return src.index_select(0, perm).index_select(1, perm)
rusty1s's avatar
rusty1s committed
8
9
10


SparseTensor.permute = lambda self, perm: permute(self, perm)