Модули измерения
u = symunit
u = symunit
возвращает модульный набор. Затем задайте любой модуль при помощи u.
unit
. Например, задайте метры 3
как 3*u.m
. Общие альтернативные названия для модулей поддерживаются, такие как u.meter
и u.metre
. Множественные числа не поддержаны.
Прежде, чем задать модули, загрузите модули при помощи symunit
. Затем задайте модуль при помощи записи через точку.
Задайте длину метров 3
. Можно также использовать, искажает u.meter
или u.metre
.
u = symunit; length = 3*u.m
length = 3*[m]
Используйте расширение вкладки, чтобы найти имена модулей. Введите u.
, нажмите Tab и продолжите вводить.
Укажите, что ускорение из-за силы тяжести метров 9.81
в секунду придало квадратную форму. Поскольку модули являются символьными выражениями, числовые входные параметры преобразованы, чтобы потребовать символьные значения. Здесь, 9.81
преобразован в 981/100
.
g = 9.81*u.m/u.s^2
g = (981/100)*([m]/[s]^2)
Если вы незнакомы с различиями между символьной и числовой арифметикой, смотрите, Выбирают Symbolic or Numeric Arithmetic.
Модули ведут себя как символьные выражения, когда вы выполняете стандартные операции на них. Для числовых операций разделите значение от модулей, замены для любых символьных параметров, и преобразуйте результат удвоиться.
Найдите скорость требуемой переместиться км 5
в часы 2
.
u = symunit; d = 5*u.km; t = 2*u.hr; s = d/t
s = (5/2)*([km]/[h])
Значение 5/2
является символьным. Можно предпочесть дважды вывод или потребовать дважды выведенный для функции MATLAB®, которая не принимает символьные значения. Преобразуйте, чтобы удвоиться путем разделения числового значения с помощью separateUnits
и затем с помощью double
.
[sNum,sUnits] = separateUnits(s)
sNum = 5/2 sUnits = 1*([km]/[h])
sNum = double(sNum)
sNum = 2.5000
Для полного модульного рабочего процесса смотрите Модули Примера по Измерению.
Используйте свой предпочтительный модуль путем перезаписи модулей с помощью unitConvert
. Кроме того, вместо того, чтобы задать определенные модули, можно указать, что вывод должен быть с точки зрения единиц СИ.
Вычислите силу, требуемую ускорять 2
kg 5
m/s2. Выражение автоматически не переписано с точки зрения Ньютонов.
u = symunit; m = 2*u.kg; a = 5*u.m/u.s^2; F = m*a
F = 10*(([kg]*[m])/[s]^2)
Преобразуйте выражение в ньютоны при помощи unitConvert
.
F = unitConvert(F,u.N)
F = 10*[N]
Преобразуйте 5
cm в дюймы.
length = 5*u.cm; length = unitConvert(length,u.in)
length = (250/127)*[in]
Преобразуйте length
в единицы СИ. Результат исчисляется в метрах.
length = unitConvert(length,'SI')
length = (1/20)*[m]
Упростите выражения, содержащие модули той же размерности при помощи simplify
. Модули автоматически не упрощаются или проверяются на непротиворечивость, если вы не вызываете simplify
.
u = symunit; expr = 300*u.cm + 40*u.inch + 2*u.m
expr = 300*[cm] + 40*[in] + 2*[m]
expr = simplify(expr)
expr = (3008/5)*[cm]
simplify
автоматически выбирает модуль, чтобы переписать с точки зрения. Чтобы выбрать определенный модуль, смотрите, Преобразовывают Между Модулями.
По умолчанию температуры приняты, чтобы представлять перепад температур. Например, 5*u.Celsius
представляет перепад температур 5 градусов Цельсия. Это предположение позволяет арифметические операции на температурных значениях и преобразовании между температурными шкалами.
Чтобы представлять абсолютные температуры, используйте степени Келвин так, чтобы вы не отличали абсолютную температуру от перепада температур.
Преобразуйте градусы Цельсия 23
в Келвина, обработав температуру сначала как перепад температур и затем как абсолютная температура.
u = symunit; T = 23*u.Celsius; diffK = unitConvert(T,u.K)
diffK = 23*[K]
absK = unitConvert(T,u.K,'Temperature','absolute')
absK = (5923/20)*[K]
1
представляет безразмерную единицу. Следовательно, isUnit(sym(1))
возвращает логический 1
(true
).
Определенные нелинейные модули, такие как децибелы, не реализованы, потому что арифметические операции не возможны для этих модулей.
Вместо того, чтобы использовать запись через точку, чтобы задать модули, можно альтернативно использовать вход строки в качестве symunit(unit)
. Например, symunit('m')
задает модульный метр.
checkUnits
| isUnit
| newUnit
| separateUnits
| symunit2str
| unitConversionFactor
| unitConvert
| unitInfo