4.1.1 Пустые матрицы ¶
Матрица может иметь одну или обе размерности равными нулю, и операции с пустыми матрицами обрабатываются, как описано Карлом де Бором в Упражнение с пустой матрицей, SIGNUM, Том 25, страницы 2–6, 1990 и К. Н. Нетт и В. М. Хаддад, в Системно-теоретическое соответствующее представление концепции пустой матрицы, IEEE Transactions on Automatic Control, Том 38, Номер 5, май 1993. Вкратце, для скаляра s, m на n матрицы M(mxn), и m на n пустой матрицы [](mxn) (с одной или обеими размерностями равными нулю), следующие утверждения верны:
s * [](mxn) = [](mxn) * s = [](mxn)
[](mxn) + [](mxn) = [](mxn)
[](0xm) * M(mxn) = [](0xn)
M(mxn) * [](nx0) = [](mx0)
[](mx0) * [](0xn) = 0(mxn) По умолчанию, размерности пустой матрицы печатаются вместе с символом пустой матрицы, ‘[]’. Встроенная переменная print_empty_dimensions управляет этим поведением.
-
:
val =print_empty_dimensions()¶ -
:
old_val =print_empty_dimensions(new_val)¶ -
:
old_val =print_empty_dimensions(new_val, "local")¶ -
Запрос или установка внутренней переменной, которая управляет тем, печатаются ли размерности пустых матриц вместе со символом пустой матрицы, ‘[]’.
Например, выражение
zeros (3, 0)
выведет
ans = [](3x0)
При вызове изнутри функции с опцией
"local", переменная изменяется локально для функции и для всех вызываемых ею подпрограмм. Исходное значение переменной восстанавливается при выходе из функции.См. также: формат.
Пустые матрицы также могут использоваться в операторах присваивания в качестве удобного способа удаления строк или столбцов матриц. Смотрите Операторы присваивания.
При разборе Octave выражения с матрицей, оно проверяет элементы списка, чтобы определить, являются ли все они константами. Если да, то оно заменяет список на одну константную матрицу.
© 1996–2023 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v9.2.0/Empty-Matrices.html