Spec-Zone.ru › Octave 7

8.3 Арифметические операторы

Следующие арифметические операторы доступны и работают со скалярами и матрицами. Операторы и функции поэлементного действия транслируют (см. Трансляцию).

x + y ¶

Сложение (всегда выполняется поэлементно). Если оба операнда являются матрицами, число строк и столбцов должно совпадать, или они должны быть транслируемы к одной форме.

x - y ¶

Вычитание (всегда выполняется поэлементно). Если оба операнда являются матрицами, число строк и столбцов обоих должно совпадать, или они должны быть транслируемы к одной форме.

x * y ¶

Умножение матриц. Число столбцов x должно совпадать с числом строк y.

x .* y ¶

Поэлементное умножение. Если оба операнда являются матрицами, число строк и столбцов должно совпадать, или они должны быть транслируемы к одной форме.

x / y ¶

Правое деление. По концепции эквивалентно выражению

(inv (y') * x')'

но оно вычисляется без вычисления обратной матрицы y’.

Если система не квадратная или матрица коэффициентов является вырожденной, вычисляется решение с минимальной нормой.

x ./ y ¶

Поэлементное правое деление.

x \ y ¶

Левое деление. По концепции эквивалентно выражению

inv (x) * y

но оно вычисляется без вычисления обратной матрицы x.

Если система не квадратная или матрица коэффициентов является вырожденной, вычисляется решение с минимальной нормой.

x .\ y ¶

Поэлементное левое деление. Каждый элемент y делится на соответствующий элемент x.

x ^ y ¶

Оператор степени. Если x и y являются скалярами, этот оператор возвращает x в степени y. Если x является скаляром, а y – квадратной матрицей, результат вычисляется с использованием разложения по собственным значениям. Если x является квадратной матрицей, результат вычисляется посредством многократного умножения, если y является целым числом, и с помощью разложения по собственным значениям, если y не является целым числом. Возникает ошибка, если оба x и y являются матрицами.

Реализация этого оператора требует улучшения.

x .^ y ¶

Поэлементный оператор степени. Если оба операнда являются матрицами, число строк и столбцов должно совпадать, или они должны быть транслируемы к одной форме. Если возможно несколько комплексных результатов, выбирается тот, у которого наименьший неотрицательный аргумент (угол). Это правило может вернуть комплекный корень, даже если действительный корень также возможен. Используйте realpow, realsqrt, cbrt, или nthroot, если предпочтительнее действительный результат.

-x ¶

Отрицание.

+x ¶

Унарный плюс. Этот оператор не оказывает влияния на операнд.

x’ ¶

Комплексно-сопряженный транспонированный. Для действительных аргументов этот оператор эквивалентен оператору транспонирования. Для комплексных аргументов этот оператор эквивалентен выражению

conj (x.')
x.’ ¶

Транспонирование.

Обратите внимание, что поскольку операторы поэлементного действия Octave начинаются с «.», существует потенциальная неоднозначность для выражений, таких как

1./m

потому что точка может быть интерпретирована как часть константы или как часть оператора. Для разрешения этого конфликта Octave обрабатывает выражение так, как будто вы набрали

(1) ./ m

а не

(1.) / m

Хотя это несовместимо с обычным поведением лексера Octave, который обычно предпочитает разбивать вход на токены, выбирая наиболее длинное возможное совпадение в любой заданной точке, в этом случае это более полезно.

: ctranspose (x) ¶

Возвращает комплексно-сопряженный транспонированный x.

Эта функция и x' эквивалентны.

См. также: transpose.

: ldivide (x, y) ¶

Возвращает поэлементное левое деление x и y.

Эта функция и x .\ y эквивалентны.

См. также: rdivide, mldivide, times, plus.

: minus (x, y) ¶

Эта функция и x - y эквивалентны.

См. также: plus, uminus.

: mldivide (x, y) ¶

Возвращает левое матричное деление x и y.

Эта функция и x \ y эквивалентны.

Если система не квадратная или матрица коэффициентов является вырожденной, вычисляется решение с минимальной нормой.

См. также: mrdivide, ldivide, rdivide, linsolve.

: mpower (x, y) ¶

Возвращает матричную операцию возведения в степень x в y степени.

Эта функция и x ^ y эквивалентны.

См. также: power, mtimes, plus, minus.

: mrdivide (x, y) ¶

Возвращает правое матричное деление x и y.

Эта функция и x / y эквивалентны.

Если система не квадратная или матрица коэффициентов является вырожденной, вычисляется решение с минимальной нормой.

См. также: mldivide, rdivide, plus, minus.

: mtimes (x, y) ¶
: mtimes (x1, x2, …) ¶

Возвращает произведение матричного умножения входных данных.

Эта функция и x * y эквивалентны. Если задано больше аргументов, умножение применяется кумулятивно слева направо:

(…((x1 * x2) * x3) * …)

См. также: times, plus, minus, rdivide, mrdivide, mldivide, mpower.

: plus (x, y) ¶
: plus (x1, x2, …) ¶

Эта функция и x + y эквивалентны.

Если задано больше аргументов, суммирование применяется кумулятивно слева направо:

(…((x1 + x2) + x3) + …)

См. также: minus, uplus.

: power (x, y) ¶

Возвращает поэлементную операцию возведения x в степень y.

Эта функция и x .^ y эквивалентны.

Если возможно несколько комплексных результатов, возвращается тот, у которого наименьший неотрицательный аргумент (угол). Используйте realpow, realsqrt, cbrt, или nthroot, если предпочтительнее действительный результат.

См. также: mpower, realpow, realsqrt, cbrt, nthroot.

: rdivide (x, y) ¶

Возвращает поэлементное правое деление x на y.

Эта функция и x ./ y эквивалентны.

См. также: ldivide, mrdivide, times, plus.

: times (x, y) ¶
: times (x1, x2, …) ¶

Возвращает поэлементное произведение входных данных.

Эта функция и x .* y эквивалентны. Если указано больше аргументов, умножение применяется кумулятивно слева направо:

(…((x1 .* x2) .* x3) .* …)

См. также: mtimes, rdivide.

: transpose (x) ¶

Возвращает транспонированную матрицу x.

Эта функция и x.' эквивалентны.

См. также: ctranspose.

: uminus (x) ¶

Эта функция и - x эквивалентны.

См. также: uplus, minus.

: uplus (x) ¶

Эта функция и + x эквивалентны.

См. также: uminus, plus.

© 1996–2022 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/v7.2.0/Arithmetic-Ops.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API