Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.4.0 - Русский

Change language to:
English - Français - 日本語 - Português -

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Elementary Functions > Элементарные матрицы > diag

diag

включение или исключение диагонали

Последовательность вызова

[y]=diag(vm, [k])

Аргументы

vm

вектор или матрица (полная или разрежённая)

k

целое число (значение по умолчанию: 0)

y

вектор или матрица

Описание

Для vm, вектора-строки (или вектора-столбца) с n элементами, diag(vm) возвращает диагональную матрицу с элементами из vm вдоль главной диагонали.

diag(vm,k) является матрицей (n+abs(k))x(n+abs(k)) с элементами из vm вдоль k-той диагонали. k=0 является главной диагональю; для верхних диагоналей k>0; для нижних диагоналей k<0.

Для матрицы vm, diag(vm,k) является вектором-столбцом, составленным из элементов k-той диагонали в vm. diag(vm) является главной диагональю vm. diag(diag(x)) является диагональной матрицей.

Если vm является разрежённой матрицей, то diag(vm,k) возвращает разряжённую матрицу.

Чтобы построить диагональную линейную систему, используйте sysdiag.

Заметьте, что eye(A).*A возвращает диагональную матрицу, построенную с диагональными элементами из A. Это правильно для любой матрицы (констант, полиномиальной, рациональной, линейной системы пространств-состояний, ...).

Примеры

diag([1,2])
 
A=[1,2;3,4];
diag(A)  // главная диагональ
diag(A,1) 
 
diag(sparse(1:10))  // разряжённую диагональная матрица
 
// формируем трёхдиагональную матрицу размером 2*m+1
m=5;diag(-m:m) +  diag(ones(2*m,1),1) +diag(ones(2*m,1),-1)

Смотрите также

  • sysdiag — соединение блочно-диагональной системы
  • sparse — sparse matrix definition
Report an issue
<< Элементарные матрицы Элементарные матрицы eye >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Oct 01 17:41:04 CEST 2012