Go to the first, previous, next, last section, table of contents.


単位の基本演算

単位表現 とは式であって、その基本は 数にひとつ以上の単位名を掛けたり割ったり (場合によっては整数べき乗)したものです。 実際は、値の部分も数である必要は無く、 単位名を伴う積や商はすべて単位表現と言えます。 単位コマンドの多くはどんな式でも受付けて、 式内に現れる全ての単位表現にコマンドを適用します。

単位名とは、その名前が unit table に載っている変数か、 さらにその名前の前に `k' (キロ)や `u' (マイクロ)等の プリフィックス文字を付けた変数です。 Calc ではかなりの組込み単位が unit table で提供されています; 組込み単位 参照 。 また、ユーザーが自前の単位を定義することもできます; ユーザー定義単位 参照 。

単位表現の値部分がちょうど `1' になったら、その部分は Calc の自動代数ルーチンによって省略されてしまうことに注意してください。 式 `1 mm'`mm' に「簡単化」されます。 しかしこれは単なる表示上の例外に過ぎず、`mm' は「1 ミリ」の代行として ちゃんと働きます。

単位表現を使った作業には、 代数的入力モード(代数的入力方式 参照 )が向いていることに お気づきでしょう。 さもなければ、単位を入力したいと思うたたびに忘れずにアポストロフ・キーを打たなければなりません。

u s (calc-simplify-units) [usimplify] コマンドは、 単位表現を簡単化します。 このコマンドはまず a s (calc-simplify) を使って、 単位表現を通常の代数式として簡単化し、 次に、ある項の単位を他の次元コンパチブルな単位に置換えることで もっと簡単化できそうな特徴を探します。 例えば、`5 m + 23 mm'`5.023 m' に簡単化されます。 次元コンパチブルだが名前の違う単位の和をとると、 右側の項が変換されて左の項の単位に統一されます。 常にこれを自動実行する方法は、簡単化モード 参照 。

単位の簡単化機構はまた、次元の等しい2単位の商を処理して `2 in s/L cm'`5.08 s/L' にしたり、 単位表現の分数べきを処理して `sqrt(9 mm^2)'`3 mm' にしたり、 `sqrt(9 acre)' をメートル単位にしたりします。 また、単位表現に floor, ceil, round, rounde, roundu, trunc, float, frac, abs, clean を適用する場合、 問題の演算は数値部分にだけ適用されるようにします。 最後に、角度の単位を伴う量の三角関数が、 その時点の角度モードに関係なく evaluate されます。

u c (calc-convert-units) コマンドは、 単位表現を新たな次元コンパチブルな単位に変換します。 例えば、与式が `55 mph'u c m/s RET とタイプすると、 `24.5872 m/s' が得られます。 ユーザーが要求した単位が元の単位に整合していない場合、 [要求単位]×[余った単位]の形式に変換されます。 例えば、`55 mph' を acres(エーカー:面積)に変換しようとすると、 `6.08e-3 acre / m s' が生成されます。 (Calc の標準記法では掛算が割算より強くバインドされるので、 この単位はエーカー毎メートル毎秒です。) 余った単位は、入力された単位と無関係に、 `m'`s' のような「基本」単位で表現されます。

特別な例外があって、 もしユーザーが単一な単位名を指定し、 かつ次元コンパチブルな単位が元の単位表現の中に存在すれば、 その単位は新しい単位に変換され、余った単位表現は(特例で)そのまま残されます。 例えば、与式 `980 cm/s^2' に対する u c ms コマンドは、 `s'`ms' に変えて `9.8e-4 cm/ms^2' を得ます。 「余りの単位」 `cm' は、 基本単位 `m' に変換されずに放置されます。

明示的な単位変換を使うことで、 u s コマンドよりも強力に単位をコントロールできます。 例えば、与式 `5 m + 23 mm' に対して、 u c m と打つか u c mm と打つかによって、 結果をメートル単位にするかミリメートル単位にするか指定できます。 (ついでに、お望みなら u c fath と打ってfathoms(尋:長さ)でも表現できます。)

特定の単位の組合せの代りに、 si, mks(siと同等), cgs 単位系の ひとつを指定する事もできます。 例えば、u c si RET は単位表現を国際単位系(SI)に変換します。 さらに、u c base は Calc の基本単位に変換します。 basesi とほとんど同じですが、 重さの単位には `kg' ではなく `g' を使います。

u c コマンドは他に、 複合単位(いくつかの次元コンパチブルな単位の和として表現される)も 受付けます。 例えば、`30.5 in'`mi+ft+in' (マイル, フィート, インチ) に 変換すると `2 ft + 6.5 in' になります。 Calc はまず、単位名を相対的に大きい順に並べ、 そして入力量のうち、[いちばん大きい単位]×[整数]で表現できる量を求め、 残りを次の単位で表現すべく同様に繰返します。 その結果、いちばん小さい単位にだけは 非整数の量が付く可能性があります。 一般的な組合せのために、標準単位名が用意されています。 mfi`mi+ft+in' で、 tpo`ton+lb+oz' を表します。 複合単位はあたかも a x コマンドのように展開され、 `(ft+in)/hr'`ft/hr+in/hr' になります。

スタックにある値が単位を伴っていない場合、 u c はプロンプトを出して、 まず現在の単位、次に変換後の単位の入力を求めます。 両方の単位が次元コンパチブルな場合、 その結果にも単位は付きません。 例えば、スタックにある 2 に対して u c cm RET in RET とタイプすると、 5.08 になります。

u b (calc-base-units) コマンドは、u c base の短縮形で、 スタック top の単位表現を base 単位系に変換します。 u s が思うような変換をしないときは、u b を試してください。

u c コマンドと u b コマンドは、 `degC'`K' のような温度の単位を相対温度として扱います。 例えば、u c`10 degC'`18 degF' に変換します。 つまり摂氏10℃の温度変化は、華氏18度の温度変化に相当します。

u t (calc-convert-temperature) コマンドは、 温度の絶対値そのものを変換します。 スタック上の値は温度の単位だけを用いた単純な表現でなければなりません。 このコマンドは `10 degC' を、 華氏スケールにおける同じ温度 `50 degF' に変換します。

u r (calc-remove-units) コマンドは、 スタック top の式から単位を取除きます。 u x (calc-extract-units) コマンドは、 式から単位部分だけを抽出します。 これらのコマンドは、本質的に、 式の中で単位のように見える部分(あるいは見えない部分)を定数1に置換え、 それから式を簡単化しています。

u a (calc-autorange-units) コマンドは、 k (キロ)のような単位プリフィックスを付加して、 数値部分を妥当な範囲にしておくオートレンジ機能を On/Off します。 このモードは u b を除くすべての単位変換コマンドと u s に影響します。 例えば、オートレンジ機能が On のとき、 `12345 Hz'`12.345 kHz' に簡単化されます。 オートレンジ機能は Hzm のような単位には便利ですが、 fttbsp のような非メトリック単位には 好ましくないでしょう。 (前述の複合単位の方が向いています。)

オートレンジ機能は常に左端の単位名にプリフィックスを付加します。 Calc は数値部分が 1.0 以上になるような最大のプリフィックスを選択します。 それで、調整された時間量は小さいほうから順に `1 ms, 10 ms, 100 ms, 1 s, 10 s, 100 s, 1 ks' のようになります。 一般的に言って、 数値部分が区間 `[1 .. 1000)' の範囲に入るように調整されますが、 これにはいくつか例外があります。 まず第1に、単位がべき乗の場合に調整は不可能で `0.1 s^2'`100000 ms^2' になってしまいます。 第2に、「センチ」プリフィックスは cm(センチメートル)形式を許しますが、 他の単位には適用されません。 「デシ-」,「デカ-」,「ヘクト-」は何処にも使われません。 従って、ミリメートルの許される区間は `[1 .. 10)'、 そしてセンチメートルの許される区間は `[1 .. 100)' です。 最後に、オートレンジの結果生じる単位が実際に別の意味で使われている場合は、 そのプリフィックスは使われません。 `1e-15 t' は普通なら"femto-ton"ですが、 ft はフィートと混同されてしまうので、 代りに `1000 at' (1000 atto-tons) と書かれます。


Go to the first, previous, next, last section, table of contents.     利用度数