sysorderСравните объекты согласно внутреннему порядку
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
sysorder(object1, object2)
sysorder(object1, object2) возвращает TRUE если MuPAD® внутренний порядок object1 меньше чем или равно порядку object2. В противном случае, FALSE возвращен.
Исключениями являются области.
Не нужно пытаться использовать внутренний порядок отсортировать объекты согласно определенным критериям. Например, не обязательно отражает естественное упорядоченное расположение чисел или строк. Далее, внутренний порядок может отличаться между различными версиями MuPAD.
Единственной функцией, на которую можно положиться, является своя уникальность. См. Пример 2.
Мы даем некоторые примеры как sysorder ведет себя в текущей версии MuPAD. Для чисел внутренний порядок равен естественному порядку:
sysorder(3, 4) = bool(3 <= 4), sysorder(45, 33) = bool(45 <= 33), sysorder(0, 4) = bool(0 <= 4)
![]()
sysorder(1/3, 1/4) = bool(1/3 <= 1/4), sysorder(-4, 2) = bool(-4 <= 2), sysorder(-4, -2) = bool(-4 <= -2)
![]()
Мы даем простое приложение sysorder. Предположим, мы хотим реализовать функциональный f, Скажем, чей только известное свойство является своей скошенностью f(-x) = -f(x). Выражения, включающие f должен быть упрощен автоматически, например, f(x) + f(-x) должен дать к нулю для любого аргумента x. Чтобы достигнуть этого, мы используем sysorder решить, ли вызов f(x) должен возвратить f(x) или -f(-x):
f := proc(x) begin
if sysorder(x, -x) then
return(-procname(-x))
else return(procname(x))
end_if;
end_proc:Для числовых аргументов, f предпочитает переписывать себя с положительными аргументами:
f(-3), f(3), f(-4.5), f(4.5), f(-2/3), f(2/3)
![]()
Для других аргументов результат затрудняет, чтобы предсказать:
f(x), f(-x), f(sqrt(2) + 1), f(-sqrt(2) - 1)
![]()
С этой реализацией, выражениями, включающими f упростите автоматически:
f(x) + f(-x) - f(3)*f(x) + f(-3)*f(-x) + sin(f(7)) + sin(f(-7))
![]()
delete f:
|
Произвольные объекты MuPAD |