revert
Вернитесь полиномы, списки, символьные строки и таблицы, инвертируйте последовательные расширения
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
revert(object
)
revert
инвертирует упорядоченное расположение элементов в списке и упорядоченное расположение символов в строке, а также упорядоченное расположение коэффициентов в полиноме. Для таблиц это подкачивает индексы и записи. Для последовательного расширения это возвращает функциональную инверсию.
revert
является общей функцией, чтобы вычислить инверсии относительно функционального состава или инвертировать порядок операндов. Этот тип функциональности может быть расширен к дальнейшим типам объектов через перегрузку.
В настоящее время библиотека MuPAD® обеспечивает функциональность для строк, полиномов, списков и таблиц, где revert
инвертирует порядок элементов, коэффициентов или символов, соответственно. В таблицах записи превращены в индексы и наоборот. Например, revert(table(x = y, 2 = 4))
приводит к таблице table(y = x, 4 = 2)
. Для последовательных расширений возвращена функциональная инверсия.
Для всех других типов объектов MuPAD, которые не перегружают revert
, символьное выражение, revert(object)
возвращен.
revert
работает со списками и символьными строками:
revert([1, 2, 3, 4, 5])
revert("nuf si DAPuM ni gnimmargorP")
revert
работает с рядом:
revert(series(sin(x), x)) = series(arcsin(x), x)
revert
работает с таблицами:
t := table(): t[x] := 1: t[y] := 2: t[z] := 3: T := revert(t): T[1], T[2], T[3]
Остерегайтесь: если запись хранится под несколькими отличными индексами, revert
сокращает количество табличных операндов:
revert(table(x = 1, y = 1, z = 3))
Функциональная инверсия расширения exp
вокруг x = 0
является расширением обратной функции ln
вокруг x = exp(0) = 1
:
revert(series(exp(x), x, 3)) = series(ln(x), x = 1, 2)
delete t, T:
revert
вычисляет реверс полинома:
revert(poly(x^3 + 2*x + 5))
То же самое работает на многомерные полиномы, также:
revert(poly(x^3 + 2*x*y + 5*x + 6*y + 7))
Мы, возможно, достигли того же самого путем замены всем indeterminates их инверсиями; однако, revert
работает быстрее.
numer(evalp(poly(x^3 + 2*x*y + 5*x + 6*y + 7), x = 1/x, y = 1/y))
Для всех других типов объектов возвращен символьный вызов функции:
revert(x + y)
Следующее последовательное расширение не имеет типа Series::Puiseux
. Вместо этого производится обобщенное расширение типа Series::gseries
. Следовательно, revert
не вычисляет инверсию:
revert(series(exp(-x)/(1 + x), x = infinity, 3))
|
Полином, список, символьная строка, таблица или последовательное расширение типа |
Объект того же типа как входной объект или символьный вызов типа "revert"
.
object