Отделите модули от выражения
Отделите модули от выражения 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