Для первой части вы должны использовать круглые скобки, чтобы указать желаемую группировку. Когда вы пишете a ` b/c
, это интерпретируется как a ` (b/c)
, но в этом случае вы хотите (a ` b)/c
. (Группировка работает таким образом, потому что предполагается, что такие вещи, как x ` m/s
более распространены, чем (x ` m)/s
.)
(%i2) σ_N: (10000`N)/(50`mm*10`mm);
N
(%o2) 20 ` ---
2
mm
Просто для удовольствия, давайте проверим размеры этого количества. Думаю, это должна быть сила / площадь.
(%i3) dimensions (%);
mass
(%o3) ------------
2
length time
(%i4) dimensions (N);
length mass
(%o4) -----------
2
time
(%i5) dimensions (mm);
(%o5) length
Мне кажется,
Что касается второй части, я не понимаю, что вы пытаетесь сделать. Переменная newts
имеет единицы измерения, эквивалентные N/s
, поэтому я не понимаю, почему вы пытаетесь преобразовать ее в N
, и я не понимаю, почему вы пытаетесь добавить N/s
к N
. В любом случае, вот что я могу с этим сделать.
(%i6) newts: 123`kg*m/s^3;
kg m
(%o6) 123 ` ----
3
s
(%i7) newts `` N/s;
N
(%o7) 123 ` -
s
Когда добавляются количества с разными размерами, ezunits
просто позволяет ему стоять; это не вызывает ошибки или чего-то еще.
(%i8) newts + 321 ` kg*m/s^2;
kg m kg m
(%o8) 321 ` ---- + 123 ` ----
2 3
s s
Причина в том, что он позволяет использовать такие вещи, как 3`sheep + 2`horse
или x`hour + y`dollar
- коэффициент конверсии можно определить постфактум. В целом, я считаю, что математическая установка допускает переосмысление выражений постфактум.