^
, _power
Возведите выражение в степень
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
Для power
функция в MATLAB®, смотрите power
.
x ^ y _power(x
,y
)
x^y
вычисляет y
- степень th x
.
x^y
эквивалентно вызову функции _power(x, y)
.
Оператор степени ^
левоассоциативно: x^y^z
анализируется как (x^y)^z
. См. пример 2.
Если x
полином типа DOM_POLY
, затем y
должно быть неотрицательное целое число, меньшее, чем 231.
_power
перегружается для матричных областей (matrix
). В частности, x^(-1)
возвращает инверсию матричного x
.
Используйте powermod
вычислить модульные степени. См. Пример 3.
Математически, вызов sqrt(x)
эквивалентно x^(1/2)
. Отметьте, однако, тот sqrt
попытки упростить результат. См. Пример 4.
Если x
или y
элемент области с slot"_power"
, затем этим методом является использованный для расчета x^y
. Много областей библиотеки перегружают ^
оператор соответствующим "_power"
паз. Полномочия обрабатываются можно следующим образом:
x^y
ищется элементы областей библиотеки слева направо. Позвольте z
(любой x
или y
) будьте первым сроком, который не имеет одного из основных типов, обеспеченных ядром (числа, выражения, и т.д.). Если доменный d
= z::dom
= domtype(z)
имеет slot"_power"
, это называется в форме d::_power(x, y)
. Результат возвращен d::_power
результат x^y
.
Для конечных множеств X
Y
, степень X^Y
набор.
Вычисляются некоторые степени:
2^10, I^(-5), 0.3^(1/3), x^(1/2) + y^(-1/2), (x^(-10) + 1)^2
Используйте expand
“расширять” степени сумм:
(x + y)^2 = expand((x + y)^2)
Обратите внимание на то, что тождества, такие как (x*y)^z
= x^z * y^z
только содержите в определенных областях комплексной плоскости:
((-1)*(-1))^(1/2) <> (-1)^(1/2) * (-1)^(1/2)
Следовательно, следующий expand
команда не расширяет свой аргумент:
expand((x*y)^(1/2))
Оператор степени ^
левоассоциативно:
2^3^4 = (2^3)^4, x^y^z
Модульные степени могут быть вычислены непосредственно с помощью ^
и mod
. Однако powermod
более эффективно:
123^12345 mod 17 = powermod(123, 12345, 17)
Функциональный sqrt
приводит к более простым результатам, чем _power
:
sqrt(4*x*y), (4*x*y)^(1/2)
Для конечных множеств, X^Y
набор:
{a, b, c}^2, {a, b, c}^{q, r, s}
Различные области библиотеки, такие как матричные области или перегрузка областей класса вычетов _power
:
x := Dom::Matrix(Dom::IntegerMod(7))([[2, 3], [3, 4]]): x^2, x^(-1), x^3 * x^(-3)
delete x:
Этот пример демонстрирует поведение _power
на пользовательских областях. Без "power"
паз, степени доменных элементов обработаны как любые другие символьные степени:
myDomain := newDomain("myDomain"): x := new(myDomain, 1): x^2
type(x^2), op(x^2, 0), op(x^2, 1), op(x^2, 2)
После "_power"
паз задан, этот метод является использованными для расчета степенями myDomain
объекты:
myDomain::_power := proc() begin "The result" end: x^2
delete myDomain, x:
|
арифметические выражения, полиномы типа |
Арифметическое выражение, полином, интервал с плавающей точкой или набор.
x
Y