Отделите модули от выражения
Отделите модули от выражения 10*t*u.m/u.s
, где u = symunit
, путем предоставления двух выходных аргументов для separateUnits
.
u = symunit; syms t speed = 10*t*u.m/u.s; [Data,Units] = separateUnits(speed)
Data = 10*t Units = 1*([m]/[s])
Возвращает только выражение с удаленными модулями путем задания одного выходного аргумента.
Data = separateUnits(speed)
Data = 10*t
Когда выражение имеет несовместимые модули, separateUnits
ошибки. Модули несовместимы, когда они не имеют одинаковых размерностей, таких как длина или время.
Отделите модули от 2*u.m + 3*u.s
, где u = symunit
. separateUnits
функция выдает ошибку. Вместо этого, чтобы перечислить модули измерения во входе, используйте findUnits
.
u = symunit; [Data,Units] = separateUnits(2*u.m + 3*u.s)
Error using separateUnits (line 52) Argument has incompatible units.
Когда вход имеет несогласованные модули, которые могут быть преобразованы в тот же модуль, то separateUnits
выполняет преобразование и возвращает разделенный результат. Модули противоречивы, когда они не могут быть преобразованы друг в друга с коэффициентом преобразования 1
Отделите модули от 2*u.m + 30*u.cm
. Несмотря на то, что модули различаются, separateUnits
преобразует их в тот же модуль измерения и возвращает разделенный результат.
u = symunit; [Data,Units] = separateUnits(2*u.m + 30*u.cm)
Data = 230 Units = [cm]
checkUnits
| findUnits
| isUnit
| newUnit
| str2symunit
| symunit
| symunit2str
| unitConversionFactor