Diagonal
Diagonal
torch_diagonal(self, outdim, dim1 = 1L, dim2 = 2L, offset = 0L)
self |
(Tensor) the input tensor. Must be at least 2-dimensional. |
outdim |
dimension name if |
dim1 |
(int, optional) first dimension with respect to which to take diagonal. Default: 0. |
dim2 |
(int, optional) second dimension with respect to which to take diagonal. Default: 1. |
offset |
(int, optional) which diagonal to consider. Default: 0 (main diagonal). |
Returns a partial view of input
with the its diagonal elements
with respect to dim1
and dim2
appended as a dimension
at the end of the shape.
The argument offset
controls which diagonal to consider:
If offset
= 0, it is the main diagonal.
If offset
> 0, it is above the main diagonal.
If offset
< 0, it is below the main diagonal.
Applying torch_diag_embed
to the output of this function with
the same arguments yields a diagonal matrix with the diagonal entries
of the input. However, torch_diag_embed
has different default
dimensions, so those need to be explicitly specified.
if (torch_is_installed()) { a = torch_randn(c(3, 3)) a torch_diagonal(a, offset = 0) torch_diagonal(a, offset = 1) x = torch_randn(c(2, 5, 4, 2)) torch_diagonal(x, offset=-1, dim1=1, dim2=2) }
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.