~=
, _approx
Аппроксимированное равенство
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
x ~= y _approx(x
,y
)
x ~= y
символизирует аппроксимированное равенство.
x ~= y
эквивалентен вызову функции _approx(x, y)
.
Оператор ~=
возвращает символьное выражение, представляющее аппроксимированное равенство для численных значений x
и y
. Вызовы bool(x ~= y)
и проверка is(x ~= y)
, удовлетворен ли |float((x - y)/x)| < 10^(-DIGITS)
, обеспечили x ≠ 0
и y ≠ 0
. Таким образом TRUE
возвращен, если x
и y
совпадают в относительной числовой точности, заданной DIGITS
. Для x = 0
критерием является |float(y)| < 10^(-DIGITS)
. Для y = 0
критерием является |float(x)| < 10^(-DIGITS)
. Если или x
или y
содержат символьный объект, который не может быть преобразован в действительное или комплексное число с плавающей запятой, функции, bool
и is
возвращают значение UNKNOWN
.
Аппроксимированные равенства имеют два операнда: левая сторона и правая сторона. Используйте lhs
и rhs
, чтобы извлечь эти операнды.
a ~= b
не эквивалентен a - b ~= 0
.
В следующем примере отметьте различие между синтаксическим и числовым равенством. Числа 1.5 и совпадают численно. Однако 1.5 имеет доменный тип DOM_FLOAT
, тогда как имеет доменный тип DOM_RAT
. Следовательно, они не рассматриваются как равные в следующем синтаксическом тесте:
1.5 = 3/2; bool(%)
Для уравнений с числами с плавающей запятой используйте оператор ~=
вместо =
. bool
функций и is
тестируют, совпадают ли приближения с плавающей точкой до относительной точности, данной DIGITS
:
1.5 ~= 3/2; bool(1.5 ~= 3/2); is(1.5 ~= 3/2);
|
Произвольные объекты MuPAD® |
Выражение типа "_approx"
.