ztrans:: addpattern

Добавьте, что шаблоны для Z преобразовывают

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

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

Синтаксис

ztrans::addpattern(pat, k, z, res, <vars, <conds>>)

Описание

ztrans::addpattern(pat, k, z, res) учит ztrans возвращаться.

Функция ztrans использует набор шаблонов для вычисления Z, преобразовывает. Можно расширить набор путем добавления собственных шаблонов. Чтобы добавить новый шаблон в сопоставителя, используйте ztrans::addpattern. MuPAD® не сохраняет пользовательские шаблоны постоянно. Новые шаблоны доступны на текущем сеансе MuPAD только.

Имена переменных, которые вы используете при вызове ztrans::addpattern, могут отличаться от имен, которые вы используете при вызове ztrans. Смотрите Пример 2.

Можно включать список свободных параметров и список условий на этих параметрах. Эти условия и результат защищены от преждевременной оценки. Это означает, что можно использовать  not iszero(a^2 - b) вместо hold( _not @ iszero )(a^2 - b).

Следующие условия обрабатывают предположения на идентификаторах по-другому:

  • a^2 - b <> 0 учитывает предположения на идентификаторах.

  •  not iszero(a^2 - b) игнорирует предположения на идентификаторах.

Смотрите пример 3.

Взаимодействия среды

Вызов ztrans::addpattern изменяет выражения, возвращенные будущими вызовами ztrans.

Примеры

Пример 1

Вычислите преобразование Z функционального foo. По умолчанию MuPAD не имеет шаблона для этой функции:

ztrans(foo(k), k, z)

Добавьте шаблон для преобразования Z foo с помощью ztrans::addpattern:

ztrans::addpattern(foo(k), k, z, bar(z)):

Теперь ztrans возвращает преобразование Z foo:

ztrans(foo(k), k, z)

После того, как вы добавляете, что новое преобразовывает шаблон, MuPAD может использовать тот шаблон косвенно:

ztrans(foo(k + 3), k, z)

Пример 2

Задайте преобразование Z foo(x) с помощью переменных x и y в качестве параметров:

ztrans::addpattern(x, x, y, y/(y^2-2*y+1)):

Функция ztrans распознает добавленный шаблон, даже если вы используете другие переменные в качестве параметров:

ztrans(s, s, t)

Пример 3

Используйте предположения при добавлении, что этот шаблон для Z преобразовывает:

ztrans::addpattern(FOO(x*k), k, z, sin(1/(x - 1/2))*BAR(z),
                                     [x], [abs(x) < 1]):
ztrans(FOO(x*k), k, z) assuming -1 < x < 1

Если |x | ≥ 1, вы не можете применить этот шаблон:

ztrans(FOO(x*k), k, z) assuming x >= 1

Если MuPAD не может определить, удовлетворены ли условия, он возвращает объект piecewise:

ztrans(FOO(x*k), k, z)

Обратите внимание на то, что получившееся выражение, задающее преобразование Z FOO(x*k) неявно, принимает, что значение x не является 1/2. Строгое определение шаблона:

ztrans::addpattern(BAR(x*k), k, z, sin(1/(x - 1/2))*FOO(z),
                   [x], [abs(x) < 1, x <> 1/2]):

Если или условия не удовлетворены или замена значениями в результат, дает ошибку, ztrans игнорирует шаблон. Для этого конкретного шаблона можно не использовать определение предположения x <> 1/2. Если x = 1/2, MuPAD выдает внутреннее “Деление на нуль”. ошибка и игнорирует шаблон:

ztrans(FOO(s/2),s,t)

Параметры

pat

Арифметическое выражение в переменной k, представляющей шаблон, чтобы соответствовать

k

Идентификатор или индексированный идентификатор, используемый в качестве переменной в шаблоне

z

Идентификатор или индексированный идентификатор, используемый в качестве переменной в результате

res

Арифметическое выражение в переменной k, представляющей шаблон для результата преобразования

vars

Список идентификаторов или индексированных идентификаторов, используемых в качестве “переменных шаблона” (заполнители в pat и res). Можно использовать переменные шаблона в качестве заполнителей почти для произвольных выражений MuPAD, не содержащих k или z. Можно ограничить их условиями, данными в дополнительном параметре conds.

conds

Список условий на переменных шаблона

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

Объект типа DOM_NULL