TriL

Возвращает копию матрицы, заменив все элементы выше k-й диагонали на нули. Нижнетреугольная матрица.

matrix matrix::Tril(
  const int     ndiag=0      // индекс диагонали
   );

Параметры

ndiag=0

[in]  Диагональ, выше которой элементы заменяются на нули. ndiag = 0 (по умолчанию) — основная диагональ, ndiag < 0 — ниже, а ndiag > 0 — выше основной диагонали.

Возвращаемое значение

Матрица, нижний треугольник которой заполнен единицами, а все остальные места — нулями.

Пример на MQL5:

   matrix a={{1,2,3},{4,5,6},{7,8,9},{10,11,12}};
   matrix b=a.TriL(-1);
   Print("matrix b \n",b);
 
  /*
  matrix_c
  [[0,0,0]
  [4,0,0]
  [7,8,0]
  [10,11,12]]
  */

Пример на Python:

import numpy as np
 
a=np.tril([[1,2,3],[4,5,6],[7,8,9],[10,11,12]], -1)
 
[[ 0  0  0]
 [ 4  0  0]
 [ 7  8  0]
 [10 11 12]]