aesara.tensor.tril

Contents

aesara.tensor.tril#

aesara.tensor.tril(m, k=0)[source]#

Lower triangle of an array.

Return a copy of an array with elements above the k-th diagonal zeroed. For arrays with ndim exceeding 2, tril will apply to the final two axes.

Parameters:
  • m (array_like, shape (..., M, N)) – Input array.

  • k (int, optional) – Diagonal above which to zero elements. k = 0 (the default) is the main diagonal, k < 0 is below it and k > 0 is above.

Returns:

tril – Lower triangle of m, of same shape and data-type as m.

Return type:

ndarray, shape (…, M, N)

See also

triu

Same thing, only for the upper triangle.

Examples

>>> at.tril(np.arange(1,13).reshape(4,3), -1).eval()
array([[ 0,  0,  0],
       [ 4,  0,  0],
       [ 7,  8,  0],
       [10, 11, 12]])
>>> at.tril(np.arange(3*4*5).reshape(3, 4, 5)).eval()
array([[[ 0,  0,  0,  0,  0],
        [ 5,  6,  0,  0,  0],
        [10, 11, 12,  0,  0],
        [15, 16, 17, 18,  0]],
[[20, 0, 0, 0, 0],

[25, 26, 0, 0, 0], [30, 31, 32, 0, 0], [35, 36, 37, 38, 0]],

[[40, 0, 0, 0, 0],

[45, 46, 0, 0, 0], [50, 51, 52, 0, 0], [55, 56, 57, 58, 0]]])