/, _divide

Разделите выражения

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

x / y
_divide(x, y)

Описание

x/y вычисляет частное x и y.

x/y эквивалентно вызову функции _divide(x, y).

Для количеств типа Type::Numeric, частное возвращено как номер.

Если никакой x ни y элементы областей библиотеки с "_divide" методы, x/y внутренне представлен как x * y^(-1) = _mult(x, _power(y, -1)).

Если x или y элемент области с slot"_divide", затем этим методом является использованный для расчета x/y. Много областей библиотеки перегружают / оператор соответствующим "_divide" паз. Частные обрабатываются можно следующим образом:

x/y ищется элементы областей библиотеки слева направо. Позвольте z (любой x или y) будьте первым сроком, который не имеет одного из основных типов, обеспеченных ядром (числа, выражения, и т.д.). Если доменный d = z::dom = domtype(z) имеет slot"_divide", это называется в форме d::_divide(x, y). Результат возвращен d::_divide результат x/y.

См. Пример в качестве примера 4 и Пример 5.

Полиномы типа DOM_POLY может быть разделен на /, если у них есть тот же indeterminates и тот же содействующий звонок, и если деление без остатка возможно. Функциональный divide может быть использован для расчета частное полиномов с термином остатка.

Для конечных множеств XY, частное X/Y набор.

Примеры

Пример 1

Частное чисел упрощено до номера:

1234/234, 7.5/7, 6*I/2

Внутренне, символьное частное x/y представлен как продукт x * y^(-1):

type(x/y), op(x/y, 0), op(x/y, 1), op(x/y, 2)

op(op(x/y, 2), 0), op(op(x/y, 2), 1), op(op(x/y, 2), 2)

Пример 2

Для конечных множеств XY, частное X/Y набор:

{a, b, c} / {2, 3}

Пример 3

Полиномы типа DOM_POLY может быть разделен на / если у них есть тот же indeterminates, тот же содействующий звонок, и если деление без остатка возможно:

poly(x^2 - 1, [x]) / poly(x - 1, [x])

poly(x^2 - 1, [x]) / poly(x - 2, [x])

Функциональный divide предоставляет делению остаток:

divide(poly(x^2 - 1, [x]), poly(x - 2, [x]))

Полиномы должны иметь тот же indeterminates и тот же содействующий звонок:

poly(x^2 - 1, [x, y]) / poly(x - 1, [x])
Error: Invalid argument. [divide]

Пример 4

Различные области библиотеки, такие как матричная перегрузка областей _divide. Матричная область задает x/y как x * (1/y), где 1/y инверсия y:

x := Dom::Matrix(Dom::Integer)([[1, 2], [3, 4]]):
y := Dom::Matrix(Dom::Rational)([[10, 11], [12, 13]]):
x/y

Инверсия x имеет рациональные записи. Поэтому 1/x возвращает FAIL, потому что звонок компонента x Dom::Integer. Следовательно, также y/x возвращает FAIL:

y/x

delete x, y:

Пример 5

Этот пример демонстрирует поведение _divide на пользовательских областях. В первом случае ниже, пользовательская область не имеет "_divide"паз. Таким образом x/y преобразовывается к x * (1/y):

Do := newDomain("Do"): x := new(Do, 1): y := new(Do, 2):
x/y; op(x/y, 0..2)

После slot"_divide" задан в доменном Do, этот метод используется, чтобы разделить элементы:

Do::_divide := proc() begin "The Result" end: x/y

delete Do, x, y:

Возвращаемые значения

Арифметическое выражение, полином или набор.

Перегруженный

xY

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

Функции MuPAD