assumingAlso, _assumingAlso

Добавьте временное предположение

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

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

Синтаксис

calculation assumingAlso condition
calculation assumingAlso (expr, set)
_assumingAlso(calculation, condition)
_assumingAlso(calculation, (expr, set))

Описание

calculation assumingAlso condition оценивает calculation под всеми существующими предположениями наряду с новым предположением, что condition верен для того вычисления.

calculation assumingAlso(expr, set) временно присоединяет свойство set к идентификатору или выражению expr и оценивает calculation. Этот вызов учитывает все предыдущие предположения, содержащие идентификаторы, используемые в expr.

calculation assumingAlso condition эквивалентен _assumingAlso(calculation, condition).

calculation assumingAlso (expr, set) эквивалентен _assumingAlso(calculation, (expr, set)).

assumingAlso устанавливает временные предположения в дополнение к существующим постоянным предположениям. Здесь, condition сохраняется только, в то время как аргумент calculation оценен. После этой оценки удален condition. Поэтому это не влияет на дальнейшие вычисления. condition также удален, если оценка останавливается с ошибкой.

Если предположения содержат линейные уравнения с одной переменной, assumingAlso решает эти уравнения. Затем команда вставляет решения в calculation и оценивает результат. Смотрите Пример 3.

Если expr является списком, вектором или матрицей, используйте синтаксисы calculation assumingAlso(expr, set) и _assumingAlso(calculation, (expr, set)). Здесь, set задан как один из C_, R_, Q_, Z_, N_ или выражения, созданного с операциями присвоения, такими как union, intersect или minus. set также может быть функцией библиотеки Type, например, Type::Real, Type::Integer, Type::PosInt, и так далее.

Не используйте синтаксисы calculation assumingAlso (expr in set) (или его эквивалентный _assumingAlso(calculation, expr in set)) и calculation assumingAlso condition (или его эквивалентный _assumingAlso(calculation, condition)) для нескалярного expr.

Примеры

Пример 1

Решите это уравнение без любых предположений на переменной x:

solve(x^5 - x, x)

Предположим, что ваши вычисления имеют дело с вещественными числами только. В этом случае используйте функцию assume, чтобы установить постоянное предположение, что x действителен:

assume(x in R_)

Если вы решите то же уравнение теперь, вы получите три действительных решения:

solve(x^5 - x, x)

Чтобы получить только ненулевые решения для этого конкретного уравнения, используйте assumingAlso, чтобы временно добавить соответствующее предположение:

solve(x^5 - x, x) assumingAlso x <> 0

После решения этого уравнения MuPAD® отбрасывает временное предположение, но сохраняет постоянное:

getprop(x)

Пример 2

Если вы уже используете постоянное предположение и хотите добавить временное предположение на том же объекте, не используйте assuming. Это временно перезаписывает постоянное предположение:

assume(x in Z_):
solve(x^3 - (44*x^2)/3 + (148*x)/3 - 80/3 = 0, x) assuming x < 5

Вместо этого используйте assumingAlso:

solve(x^3 - (44*x^2)/3 + (148*x)/3 - 80/3 = 0, x) assumingAlso x < 5

Пример 3

Если предположения содержат линейные уравнения с одной переменной, assumingAlso решает уравнения, вставляет решения в выражение, и затем выполняет выражение:

a^2 + 1 assumingAlso a - 2 = 1;

assume и assumeAlso не решают уравнения:

assumeAlso(a - 2 = 1) ;
a^2 + 1

Параметры

calculation

Любая команда MuPAD или выражение, которое вы хотите выполнить под временным предположением.

condition

Равенство, неравенство, элемент отношения или булева комбинация (с операторами and или or).

expr

Идентификатор, математическое выражение, список, вектор или матрица, содержащая идентификаторы.

Если expr является списком, вектором или матрицей, то только синтаксисы calculation assumingAlso(expr, set) и _assumingAlso(calculation, (expr, set)) допустимы.

set

Свойство, представляющее набор чисел или набор, возвращенный solve. Этот набор может быть элементом Dom::Interval, Dom::ImageSet, piecewise или одного из C_, R_, Q_, Z_, N_. Это также может быть выражение, созданное с операциями присвоения, такими как union, intersect или minus. Для большего количества примеров смотрите Свойства.

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

assumingAlso возвращает результат оценки calculation.