Spec-Zone.ru › Octave 5

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

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

x + y

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

x .+ y

Поэлементное сложение. Этот оператор эквивалентен +.

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 — квадратной матрицей, результат вычисляется с использованием разложения по собственным значениям. Если x является квадратной матрицей, результат вычисляется путем многократного умножения, если y — целое число, и с помощью разложения по собственным значениям, если y не является целым числом. Возникает ошибка, если x и 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.

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, minus.

© 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/v5.2.0/Arithmetic-Ops.html

Spec-Zone.ru

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