無理数 \(\frac{\sqrt{b}} { \sqrt{d}} \) の有理化について
無理数 \(\frac{\sqrt{b}} { \sqrt{d}} \) を有理化すると、 \(\frac{\sqrt{bd}} {d} \) となる。しかし、rat() を使っても
となって、分子の無理数が計算されない。ここで rootscontract() を使って分子の根号の積を計算しようとしても
となって有理化する前の式に戻ってしまう。しかし、下の場合は
と、分子の根号計算をしてくれる。
根号は指数に変換して処理
これは Maxima内部では sqrt(a) つまり \( \sqrt{a}\) は \(a^{\frac{1}{2}}\) と表現しているからだ。したがって\[ \frac{\sqrt{2} \times \sqrt{3}}{3} \]は\[ 2^{\frac{1}{2}} \times 3^{\frac{1}{2}} \times 3^{-1} \] と解釈されて \[ 2^{\frac{1}{2}} \times 3^{- \frac{1}{2}}\] と計算して \[ \frac{\sqrt{2}}{\sqrt{3}} \] と出力される。
\( \frac{\sqrt{ab}}{b}\) と出力する方法
この様な意図しない結果が現れるのは有理化後に分子が全て無理数を含むの積で表されているときだけ起こり、以下のような例では
と有理化して分子を計算してくれる。つまり、 \( \frac{\sqrt{a}}{\sqrt{b}}\) を有理化するときだけ起こると考えてよい。そこで以下のような関数を定義した。
\[ ratio(x,y) := \frac{rat(\frac{x}{y}) y^2}{y^2}\]
ただし、\( y=\sqrt{m} (m>0)\)
これで正しく計算される。
参考
1. Maxima (虎の備忘録)
3. Maxima Manual(de)
4. Maxima 5.29.1 Manual
5. Maxima (eBook en)
2013/02/22
2013/02/19
Ubuntu Maxima で根号を含む無理数、複素数の計算
根号を含む無理数や、複素数
Maxima で自然数や整数、有理数の四則演算をするには、数学と同じように入力して計算すればいい。無理数や複素数についても加法と減法なら同様に計算出来る。(参考:1)
しかし、根号を含む無理数や、複素数の乗法、除法については数学と同じように入力しても計算してくれない。この場合は以下のように計算する。
乗法
複素数の乗法
虚数の乗法 \(bi \times di\) は数学と同じように計算できる。(実数部が共に0の場合)
それ以外の複素数 \((a + bi) \times (c + di) \) の場合には expand(式) を使って多項式の展開のように計算する。
根号を含む無理数の乗法
\(\sqrt{b} \times \sqrt{d} \) の場合には rootscontract(式) を使う。
\((a + \sqrt{b}) \times (c + \sqrt{d}) \) の場合には rootscontract(expand(式)) とする。
除法(分母の有理化)
数学と同じように入力しても計算してくれるが、分母の有理化がなされない。分母を有理化するには rat(式) を使い、オプション変数 algebraic の値を true にしておく。 (分母を有理化するには2つのオプション変数 algebraic と ratalgdenom の値を true にしておく必要がある。しかし、 ratalgdenom の初期値は true なので、通常は algebraic:true; と指定するだけでよい。 algebraicの初期値は false である。)
複素数の除法
分母が虚数の場合はそのまま入力しても有理化される。しかし、その他の場合は上記のとおりに計算する。
根号を含む無理数の除法
参考
1~2 Maxima について
3~5 Maxima を一通り学べる。
6~8 Maxima の詳しい説明
9~11 マニュアル、eBook
1. Maxima (虎の備忘録)
2. Maxima で遊ぼう
3. Maxima による数式処理
4. Maxima(de)
5. Maxima Overview
7. Professional Maxima
登録:
投稿
(
Atom
)










