数式処理プログラムMathematica
- Wolfram Research of Champaign, Illinois の数式処理プラグラム Mathematica は
私の理論物理研究ではまず第一にお世話になっている計算機プログラムです。
その品質、性能には概ね満足しているのですが、時々怪しい挙動を示します。
たとえば、(ver.10.0.1.0 です)
-
Integrate[1/(a^2 + Sin[k]^2)/Pi, {k, 0, Pi}]
の結果は0を返します。本当は 1/a/Sqrt[1+a^2] の筈ですが。
ただa に 1,2,3 等を代入すると正しい答えを返します。
-
Integrate[Sin[k]^2 Cos[k]^2/(a^2 + Sin[k]^2)/Pi, {k, 0, Pi}]
の結果には1/2+a^2 を返します。本当は1/2/(Sqrt[1+a^2]+a)^2なのに。
上と同様に、a に具体的な値を入れると正しい答えを返します。
- なぜなんでしょうね?
その他気がついたことがあればまとめて行く予定です。
Wolfram に問い合わせたところ、次の様にすれば解決するとのことでした(2014/12/24):
option PrincipalValue->True
実際うまくいきましたが、解決できないなら答えを出さないべきで、
間違った答えを出力するのはいかがなものでしょうね。
Last update: February 8, 2015.